But it looks like you're storing the intermediate results in the `out` hash, and not returning `self`.