comefrom: <awangdev>Maximum XOR of Two Numbers in an Array_1.java
code: public int findMaximumXOR(int[] nums) {
          if (nums == null || nums.length == 0) {
              return 0;
          }
          int res = 0, mask = 0;
          for (int i = 31; i >= 0; i--) {
              mask = mask | (1 << i);
              final Set<Integer> set = new HashSet<>();
              for (int num : nums) {
                  set.add(num & mask);
              }
              
              int temp = res | (1 << i);
              for (int prefix : set) {
                  if (set.contains(temp ^ prefix)) {
                      res = temp;
                      break;
                  }
              }
          }
          return res;
      }
masked: public int sample_funcname ( int [ ] var_0 ) {
    if ( var_0 == null || var_0 . length == 0 ) {
      return 0 ;
    }
    int var_4 = 0 , var_5 = 0 ;
    for ( int var_7 = 31 ;
    var_7 >= 0 ;
    var_7 -- ) {
      var_5 = var_5 | ( 1 << var_7 ) ;
      final Set < Integer > var_12 = new HashSet < > ( ) ;
      for ( int var_13 : var_0 ) {
        var_12 . add ( var_13 & var_5 ) ;
      }
      int var_15 = var_4 | ( 1 << var_7 ) ;
      for ( int var_16 : var_12 ) {
        if ( var_12 . contains ( var_15 ^ var_16 ) ) {
          var_4 = var_15 ;
          break ;
        }
      }
    }
    return var_4 ;
  }
  