 	}
 
 	public func dispose() {
-		if state.tryDispose() {
-			_inner.swap(nil)?.dispose()
-		}
+		guard state.tryDispose() else { return }
+		_inner.swap(nil)?.dispose()
 	}
 
 	deinit {


		set(disposable) {
			_inner.swap(disposable)?.dispose()
			if let disposable = disposable, isDisposed {
				disposable.dispose()
			}

	}

	public func dispose() {
		guard state.tryDispose(), let disposables = disposables.swap(nil) else { return }

		for disposable in disposables {
			disposable.dispose()
		}
	}

