 }
 
 /// A disposable that will dispose of any number of other disposables.
-class CompositeDisposable: Disposable {
+@final class CompositeDisposable: Disposable {
 	var _disposables: Atomic<Disposable[]?>
 	
 	var disposed: Bool {


/// A disposable that, upon deinitialization, will automatically dispose of
/// another disposable.
class ScopedDisposable: Disposable {
	/// The disposable which will be disposed when the ScopedDisposable
	/// deinitializes.
	let innerDisposable: Disposable

}

/// A disposable that will optionally dispose of another disposable.
@final class SerialDisposable: Disposable {
	struct _State {
		var innerDisposable: Disposable? = nil
		var disposed = false
