working on sicp 3-25