code: @Override
      public int getFromU16SingleLead(char codeUnit){
          int value;
          int ix;
          
          ix = index[codeUnit >> UTRIE2_SHIFT_2];
          ix = (ix << UTRIE2_INDEX_SHIFT) + (codeUnit & UTRIE2_DATA_MASK);
          value = data32[ix];
          return value;
  
      }
docs: Get a Trie2 value for a UTF-16 code unit.
  
  This function returns the same value as get() if the input
  character is outside of the lead surrogate range
  
  There are two values stored in a Trie2 for inputs in the lead
  surrogate range.  This function returns the alternate value,
  while Trie2.get() returns the main value.
  
  @param codeUnit a 16 bit code unit or lead surrogate value.
  @return the value