public static function unsignedShiftRight( $a, $b ) {
		if ( $b == 0 ) {
			return $a;
		}
		if ( $a & 0x80000000 ) {
			return ( ( $a & 0x7fffffff ) >> $b ) | ( 0x40000000 >> ( $b - 1 ) );
		} else {
			return $a >> $b;
		}
	}
public static function unsignedShiftRight( $a, $b ) {
		if ( $b == 0 ) {
			return $a;
		}
		if ( $a & 0x80000000 ) {
			return ( ( $a & 0x7fffffff ) >> $b ) | ( 0x40000000 >> ( $b - 1 ) );
		} else {
			return $a >> $b;
		}
	}
public static function unsignedShiftRight ( $ a , $ b ) { if ( $ b == 0 ) { return $ a ; } if ( $ a & 0x80000000 ) { return ( ( $ a & 0x7fffffff ) >> $ b ) | ( 0x40000000 >> ( $ b - 1 ) ) ; } else { return $ a >> $ b ; } }
Shift a signed integer right as if it were unsigned
@param int $a
@param int $b
@return int
Shift a signed integer right as if it were unsigned