일단은 잘 동작하는데, side effect 에 대해서는 아직 모르겠다.