refactoring 작업 (Prototype으로 변경)