sub dispose { my ($self) = @_; foreach (@{$self->childNodes}) { undef $_->{parentNode}; undef $_->{ownerDocument}; if (defined $_->{childNodes}) { $_->decycle(); } } }