 
 	/// Used to ensure that events are serialized during delivery to observers.
 	private let sendLock = NSLock()
-
-	/// Disposes of the generator provided at initialization time.
-	private let generatorDisposable = SerialDisposable()
-
-	/// When set to `true`, the Signal should interrupt as soon as possible.
-	private let interrupted = Atomic(false)
 
 	/// Initializes a Signal that will immediately invoke the given generator,
 	/// then forward events sent to the given observer.

						sink.put(event)
					}

					let shouldInterrupt = !event.isTerminating && self.interrupted.value
					if shouldInterrupt {
						self.interrupt()
					}

	/// be disposed as well.
	public init(_ generator: Observer -> Disposable?) {
		sendLock.name = "org.reactivecocoa.ReactiveCocoa.Signal"

		let generatorDisposable = SerialDisposable()

		/// When set to `true`, the Signal should interrupt as soon as possible.
		let interrupted = Atomic(false)

		let sink = Observer { event in
			switch event {
