each as Event.class: {"kind":"payment","id":"p1","amount":10.0} {"kind":"refund","id":"r1","amount":4.0} {"kind":"login","user":"ann"} {"kind":"F07SealedHierarchies$Logout","user":"ann"} round trip equal: true payment 10.0 refund 4.0 login ann logout ann nested sealed type read as Audit.class: Login[user=bo]