finished ch01.ex04