ch05 init
5-1 implement
5-2 init