Synchronizing shared abstract types | Synapse