@override Future<void> leave() { if (_leaving != null) return _leaving!; _control.cancel(); return _leaving = _close(); }