finished ex01
finished ex02
finished ex03
finished ex04