full clojure example is immutable from outside
but in clojures we can break things inside
freezing clojured object