from __future__ import annotations
from typing import Any
from enum import IntEnum
from enum import auto

class UnicodeScript(IntEnum):
    kBasicLatin = auto()
    kLatin1Supplement = auto()
    kLatinExtendedA = auto()
    kLatinExtendedB = auto()
    kIPAExtension = auto()
    kSpacingModifier = auto()
    kCombiningDiacritical = auto()
    kGreek = auto()
    kCyrillic = auto()
    kArmenian = auto()
    kHebrew = auto()
    kArabic = auto()
    kSyriac = auto()
    kThaana = auto()
    kDevanagari = auto()
    kBengali = auto()
    kGurmukhi = auto()
    kGujarati = auto()
    kOriya = auto()
    kTamil = auto()
    kTelugu = auto()
    kKannada = auto()
    kMalayalam = auto()
    kSinhala = auto()
    kThai = auto()
    kLao = auto()
    kTibetan = auto()
    kMyanmar = auto()
    kGeorgian = auto()
    kHangulJamo = auto()
    kEthiopic = auto()
    kCherokee = auto()
    kUnifiedCanadianAboriginalSyllabics = auto()
    kOgham = auto()
    kRunic = auto()
    kKhmer = auto()
    kMongolian = auto()
    kLatinExtendedAdditional = auto()
    kGreekExtended = auto()
    kGeneralPunctuation = auto()
    kSuperSubScript = auto()
    kCurrencySymbolScript = auto()
    kSymbolCombiningMark = auto()
    kLetterlikeSymbol = auto()
    kNumberForm = auto()
    kArrow = auto()
    kMathOperator = auto()
    kMiscTechnical = auto()
    kControlPicture = auto()
    kOpticalCharacter = auto()
    kEnclosedAlphanumeric = auto()
    kBoxDrawing = auto()
    kBlockElement = auto()
    kGeometricShape = auto()
    kMiscSymbol = auto()
    kDingbat = auto()
    kBraillePatterns = auto()
    kCJKRadicalsSupplement = auto()
    kKangxiRadicals = auto()
    kIdeographicDescriptionCharacters = auto()
    kCJKSymbolPunctuation = auto()
    kHiragana = auto()
    kKatakana = auto()
    kBopomofo = auto()
    kHangulCompatibilityJamo = auto()
    kKanbun = auto()
    kBopomofoExtended = auto()
    kEnclosedCJKLetterMonth = auto()
    kCJKCompatibility = auto()
    kCJKUnifiedIdeographsExtensionA = auto()
    kCJKUnifiedIdeograph = auto()
    kYiSyllables = auto()
    kYiRadicals = auto()
    kHangulSyllable = auto()
    kHighSurrogate = auto()
    kHighPrivateUseSurrogate = auto()
    kLowSurrogate = auto()
    kPrivateUse = auto()
    kCJKCompatibilityIdeograph = auto()
    kAlphabeticPresentation = auto()
    kArabicPresentationA = auto()
    kCombiningHalfMark = auto()
    kCJKCompatibilityForm = auto()
    kSmallFormVariant = auto()
    kArabicPresentationB = auto()
    kNoScript = auto()
    kHalfwidthFullwidthForm = auto()
    kScriptCount = auto()
