# SICP Solutions

### Section - 2.2 - Hierarchical Data and the Closure Property

Example/Test:

#### (c)

I attempted in writing procedure that visits each branch of the mobile only once.

To do that a procedure chk-balance is written which returns weight of the mobile if mobile is balanced else it returns a negative number. As can be seen in code this helps in avoiding multiple visits to each branch.

Example/Test:

#### (d)

The modified constructors will cause changes only in selectors right-branch and branch-structure.