 		}
 
 		self.disposables = Atomic(bag)
+		self.state = DisposableState()
 	}
 	
 	/// Initialize a `CompositeDisposable` containing the given sequence of

	}

	public func dispose() {
		innerDisposable.dispose()
	}
}


	/// disposable is automatically disposed.
	public var innerDisposable: Disposable? {
		get {
			return _innerDisposable.value
		}

		set(d) {
			_innerDisposable.swap(d)?.dispose()
			if let d = d, isDisposed {
				d.dispose()
			}
		}
	}
