sub BuildKey { my( $radius, $x, $y, $z )= @_; my $sizeRange= $radius <= 2 ? 0 : $radius <= 10 ? 1 : 2; my $width= $bandWidth[$sizeRange]; if( 0 == $width ) { return pack "c", $sizeRange; } for my $c ( $x, $y, $z ) { $c= int($c/$width); $c ^= 0x8000_0000; } return return pack "cNNN", $sizeRange, $x, $y, $z; }