@override Future<void> close() { final pending = _swampCloseFuture; if (pending != null) return pending; final parentClose = super.close(); return _swampCloseFuture = _closeSwamp(parentClose); }