sclass CreatedDeletedChanged { srecord Created(A a) extends CreatedDeletedChanged {} srecord Deleted(A a) extends CreatedDeletedChanged {} srecord Changed(A a, A b) extends CreatedDeletedChanged {} }