code: @Deprecated
      @Override
      protected int writeValueAndFinal(int i, boolean isFinal) {
          if(0<=i && i<=CharsTrie.kMaxOneUnitValue) {
              return write(i|(isFinal ? CharsTrie.kValueIsFinal : 0));
          }
          int length;
          if(i<0 || i>CharsTrie.kMaxTwoUnitValue) {
              intUnits[0]=(char)(CharsTrie.kThreeUnitValueLead);
              intUnits[1]=(char)(i>>16);
              intUnits[2]=(char)i;
              length=3;
          // } else if(i<=CharsTrie.kMaxOneUnitValue) {
          //     intUnits[0]=(char)(i);
          //     length=1;
          } else {
              intUnits[0]=(char)(CharsTrie.kMinTwoUnitValueLead+(i>>16));
              intUnits[1]=(char)i;
              length=2;
          }
          intUnits[0]=(char)(intUnits[0]|(isFinal ? CharsTrie.kValueIsFinal : 0));
          return write(intUnits, length);
      }
docs: {@inheritDoc}
  @deprecated This API is ICU internal only.
  @hide draft / provisional / internal are hidden on Android