public Task <EventStream> GetEventStream(string streamName, int startVersion, int?untilVersion) { if (!Streams.ContainsKey(streamName)) { return(Task.FromResult <EventStream>(null)); } var stream = Streams[streamName]; return(Task.FromResult(EventStream.FromEnumerator(stream.Skip(startVersion).Take(untilVersion ?? 1000000).GetEnumerator()))); }