public void Save(Stream stream) { if (stream == null) { throw new ArgumentNullException(nameof(stream)); } using (var writer = new BioStateEventMapWriter(stream)) { // Sections writer.Write(StateEvents.Count); foreach (var stateEvent in StateEvents) { writer.Write(stateEvent.Key); writer.Write(stateEvent.Value); } } }