main 구현완료