 }
 
 private final class Dispatcher<State: VueFlux.State> {
-    private typealias Entry = (key: Key, observer: (State.Action) -> Void)
-    private typealias Buffer = (nextKey: Key, entries: ContiguousArray<Entry>)
+    private typealias Subscription = (key: Key, observer: (State.Action) -> Void)
+    private typealias Buffer = (nextKey: Key, subscriptions: ContiguousArray<Subscription>)
     
     static var shared: Dispatcher<State> {
         return DispatcherContext.shared.dispatcher(for: State.self)
     }
     
-    private let buffer = Atomic<Buffer>((nextKey: Key.first, entries: []))
+    private let buffer = Atomic<Buffer>((nextKey: Key.first, subscriptions: []))
     
     init() {}
     
     func dispatch(action: State.Action) {
         buffer.synchronized { buffer in
-            for entry in buffer.entries {
+            for entry in buffer.subscriptions {
                 entry.observer(action)
             }
         }

    @inline(__always)
    private func unsubscribe(for key: Key) {
        buffer.modify { buffer in
            for index in buffer.entries.startIndex..<buffer.entries.endIndex where buffer.entries[index].key == key {
                buffer.entries.remove(at: index)
                break
            }
        }

                }
            }
            
            buffer.subscriptions.append((key: key, observer: observer))
            return disposable
        }
    }
