better serialisation support