{ if ((c < 0x0041 || c > 0x005a) && (c < 0x0061 || c > 0x007a) && c != ':' && c != '_' && (c < 0x00c0 || c > 0x00d6) && (c < 0x00d8 || c > 0x00f6) && (c < 0x00f8 || c > 0x02ff) && (c < 0x0370 || c > 0x037d) && (c < 0x037f || c > 0x1fff) && (c < 0x200c || c > 0x200d) && (c < 0x2070 || c > 0x218f) && (c < 0x2c00 || c > 0x2fef) && (c < 0x3001 || c > 0xd7ff) && (c < 0xf900 || c > 0xfdcf) && (c < 0xfdf0 || c > 0xfffd) && (c < 0x10000 || c > 0xeffff)) return false; }
return ((c >= 0x0041 && c <= 0x005a) || (c >= 0x0061 && c <= 0x007a) || c == 0x3a | c == 0x5f | (c >= 0xC0 && c <= 0xD6) || (c >= 0xD8 && c <= 0xF6) || (c >= 0xF8 && c <= 0x2FF) || (c >= 0x370 && c <= 0x37D) || (c >= 0x37F && c <= 0x1FFF) || (c >= 0x200C && c <= 0x200D) || (c >= 0x2070 && c <= 0x218F) || (c >= 0x2C00 && c <= 0x2FEF) || (c >= 0x3001 && c <= 0xD7FF) || (c >= 0xF900 && c <= 0xFDCF) || (c >= 0xFDF0 && c <= 0xFFFD) || (c >= 0x10000 && c <= 0xEFFFF));
  private boolean isNameStartCharacter(char c)  {    if (input.xml11)      {        if ((c < 0x0041 || c > 0x005a) &&            (c < 0x0061 || c > 0x007a) &&            c != ':' && c != '_' &&            (c < 0x00c0 || c > 0x00d6) &&            (c < 0x00d8 || c > 0x00f6) &&            (c < 0x00f8 || c > 0x02ff) &&            (c < 0x0370 || c > 0x037d) &&            (c < 0x037f || c > 0x1fff) &&            (c < 0x200c || c > 0x200d) &&            (c < 0x2070 || c > 0x218f) &&            (c < 0x2c00 || c > 0x2fef) &&            (c < 0x3001 || c > 0xd7ff) &&            (c < 0xf900 || c > 0xfdcf) &&            (c < 0xfdf0 || c > 0xfffd) &&            (c < 0x10000 || c > 0xeffff))          return false;      }    else      {        int type = Character.getType(c);        switch (type)          {          case Character.LOWERCASE_LETTER: // Ll          case Character.UPPERCASE_LETTER: // Lu          case Character.OTHER_LETTER: // Lo          case Character.TITLECASE_LETTER: // Lt          case Character.LETTER_NUMBER: // Nl            if ((c > 0xf900 && c < 0xfffe) ||                (c >= 0x20dd && c <= 0x20e0))              {                // Compatibility area and Unicode 2.0 exclusions                return false;              }            break;          default:            if (c != ':' && c != '_' && (c < 0x02bb || c > 0x02c1) &&                c != 0x0559 && c != 0x06e5 && c != 0x06e6)              return false;           }      }    return true;  }