Use `sd2 is sd3`, etc, instead of `(sd2 == sd3)` is true, etc.
In `equals`, use toArray to arrive at the `other` argument's
number of keys, to avoid stackblow.