for($self->{center}{floor}{room}{bay}{rack}{unit}{port}) { last if --$_->{timecount}; close($_->{handle}), last unless $_->{transmitted} or $_->{received} $_->{timecount} = $_->{timeout}; $_->{transmitted} = $_->{recieved} = 0; }