Why do we need that (seems to work without DESTROY)? > +sub DESTROY { > + my ($self) = @_; > + > + # delete self referenced mux > + $self->{mux} = undef; > +}