question: public static final String stringEncode ( final double lon , final double lat , final int level ) { final long hashedVal = BitUtil . flipFlop ( XGeoUtils . mortonHash ( lon , lat ) ) ; StringBuilder geoHash = new StringBuilder ( ) ; short precision = 0 ; final short msf = ( XGeoUtils . BITS << 1 ) - 5 ; long mask = 31L << msf ; do { geoHash . append ( BASE_32 [ ( int ) ( ( mask & hashedVal ) > > > ( msf - ( precision * 5 ) ) ) ] ) ; mask >>>= 5 ; } while ( ++ precision < level ) ; return geoHash . toString ( ) ; }
target:  Encode to a level specific geohash string from full resolution longitude, latitude