sub _file_containing { my ( $self, $id ) = @_; opendir my $dir, $self->{ update_dir } or return; my $ret; while ( my $file = readdir $dir ) { next if $file !~ /^\d+$/ || $file > $id; $ret = $file if $ret < $file; } return "$self->{update_dir}/$ret"; }