 
 import Foundation
 
-/// Represents an object that can be “disposed,” usually associated with freeing
+/// Represents something that can be “disposed,” usually associated with freeing
 /// resources or canceling work.
-@class_protocol protocol Disposable {
+protocol Disposable {
 	/// Whether this disposable has been disposed already.
 	var disposed: Bool { get }
 

}

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


/// A disposable that only flips `disposed` upon disposal, and performs no other
/// work.
struct SimpleDisposable: Disposable {
	var _disposed = Atomic(false)

	var disposed: Bool {
