(root)/
Python-3.12.0/
Lib/
encodings/
cp720.py
       1  """Python Character Mapping Codec cp720 generated on Windows:
       2  Vista 6.0.6002 SP2 Multiprocessor Free with the command:
       3    python Tools/unicode/genwincodec.py 720
       4  """#"
       5  
       6  
       7  import codecs
       8  
       9  ### Codec APIs
      10  
      11  class ESC[4;38;5;81mCodec(ESC[4;38;5;149mcodecsESC[4;38;5;149m.ESC[4;38;5;149mCodec):
      12  
      13      def encode(self,input,errors='strict'):
      14          return codecs.charmap_encode(input,errors,encoding_table)
      15  
      16      def decode(self,input,errors='strict'):
      17          return codecs.charmap_decode(input,errors,decoding_table)
      18  
      19  class ESC[4;38;5;81mIncrementalEncoder(ESC[4;38;5;149mcodecsESC[4;38;5;149m.ESC[4;38;5;149mIncrementalEncoder):
      20      def encode(self, input, final=False):
      21          return codecs.charmap_encode(input,self.errors,encoding_table)[0]
      22  
      23  class ESC[4;38;5;81mIncrementalDecoder(ESC[4;38;5;149mcodecsESC[4;38;5;149m.ESC[4;38;5;149mIncrementalDecoder):
      24      def decode(self, input, final=False):
      25          return codecs.charmap_decode(input,self.errors,decoding_table)[0]
      26  
      27  class ESC[4;38;5;81mStreamWriter(ESC[4;38;5;149mCodec,ESC[4;38;5;149mcodecsESC[4;38;5;149m.ESC[4;38;5;149mStreamWriter):
      28      pass
      29  
      30  class ESC[4;38;5;81mStreamReader(ESC[4;38;5;149mCodec,ESC[4;38;5;149mcodecsESC[4;38;5;149m.ESC[4;38;5;149mStreamReader):
      31      pass
      32  
      33  ### encodings module API
      34  
      35  def getregentry():
      36      return codecs.CodecInfo(
      37          name='cp720',
      38          encode=Codec().encode,
      39          decode=Codec().decode,
      40          incrementalencoder=IncrementalEncoder,
      41          incrementaldecoder=IncrementalDecoder,
      42          streamreader=StreamReader,
      43          streamwriter=StreamWriter,
      44      )
      45  
      46  
      47  ### Decoding Table
      48  
      49  decoding_table = (
      50      '\x00'      #  0x00 -> CONTROL CHARACTER
      51      '\x01'      #  0x01 -> CONTROL CHARACTER
      52      '\x02'      #  0x02 -> CONTROL CHARACTER
      53      '\x03'      #  0x03 -> CONTROL CHARACTER
      54      '\x04'      #  0x04 -> CONTROL CHARACTER
      55      '\x05'      #  0x05 -> CONTROL CHARACTER
      56      '\x06'      #  0x06 -> CONTROL CHARACTER
      57      '\x07'      #  0x07 -> CONTROL CHARACTER
      58      '\x08'      #  0x08 -> CONTROL CHARACTER
      59      '\t'        #  0x09 -> CONTROL CHARACTER
      60      '\n'        #  0x0A -> CONTROL CHARACTER
      61      '\x0b'      #  0x0B -> CONTROL CHARACTER
      62      '\x0c'      #  0x0C -> CONTROL CHARACTER
      63      '\r'        #  0x0D -> CONTROL CHARACTER
      64      '\x0e'      #  0x0E -> CONTROL CHARACTER
      65      '\x0f'      #  0x0F -> CONTROL CHARACTER
      66      '\x10'      #  0x10 -> CONTROL CHARACTER
      67      '\x11'      #  0x11 -> CONTROL CHARACTER
      68      '\x12'      #  0x12 -> CONTROL CHARACTER
      69      '\x13'      #  0x13 -> CONTROL CHARACTER
      70      '\x14'      #  0x14 -> CONTROL CHARACTER
      71      '\x15'      #  0x15 -> CONTROL CHARACTER
      72      '\x16'      #  0x16 -> CONTROL CHARACTER
      73      '\x17'      #  0x17 -> CONTROL CHARACTER
      74      '\x18'      #  0x18 -> CONTROL CHARACTER
      75      '\x19'      #  0x19 -> CONTROL CHARACTER
      76      '\x1a'      #  0x1A -> CONTROL CHARACTER
      77      '\x1b'      #  0x1B -> CONTROL CHARACTER
      78      '\x1c'      #  0x1C -> CONTROL CHARACTER
      79      '\x1d'      #  0x1D -> CONTROL CHARACTER
      80      '\x1e'      #  0x1E -> CONTROL CHARACTER
      81      '\x1f'      #  0x1F -> CONTROL CHARACTER
      82      ' '         #  0x20 -> SPACE
      83      '!'         #  0x21 -> EXCLAMATION MARK
      84      '"'         #  0x22 -> QUOTATION MARK
      85      '#'         #  0x23 -> NUMBER SIGN
      86      '$'         #  0x24 -> DOLLAR SIGN
      87      '%'         #  0x25 -> PERCENT SIGN
      88      '&'         #  0x26 -> AMPERSAND
      89      "'"         #  0x27 -> APOSTROPHE
      90      '('         #  0x28 -> LEFT PARENTHESIS
      91      ')'         #  0x29 -> RIGHT PARENTHESIS
      92      '*'         #  0x2A -> ASTERISK
      93      '+'         #  0x2B -> PLUS SIGN
      94      ','         #  0x2C -> COMMA
      95      '-'         #  0x2D -> HYPHEN-MINUS
      96      '.'         #  0x2E -> FULL STOP
      97      '/'         #  0x2F -> SOLIDUS
      98      '0'         #  0x30 -> DIGIT ZERO
      99      '1'         #  0x31 -> DIGIT ONE
     100      '2'         #  0x32 -> DIGIT TWO
     101      '3'         #  0x33 -> DIGIT THREE
     102      '4'         #  0x34 -> DIGIT FOUR
     103      '5'         #  0x35 -> DIGIT FIVE
     104      '6'         #  0x36 -> DIGIT SIX
     105      '7'         #  0x37 -> DIGIT SEVEN
     106      '8'         #  0x38 -> DIGIT EIGHT
     107      '9'         #  0x39 -> DIGIT NINE
     108      ':'         #  0x3A -> COLON
     109      ';'         #  0x3B -> SEMICOLON
     110      '<'         #  0x3C -> LESS-THAN SIGN
     111      '='         #  0x3D -> EQUALS SIGN
     112      '>'         #  0x3E -> GREATER-THAN SIGN
     113      '?'         #  0x3F -> QUESTION MARK
     114      '@'         #  0x40 -> COMMERCIAL AT
     115      'A'         #  0x41 -> LATIN CAPITAL LETTER A
     116      'B'         #  0x42 -> LATIN CAPITAL LETTER B
     117      'C'         #  0x43 -> LATIN CAPITAL LETTER C
     118      'D'         #  0x44 -> LATIN CAPITAL LETTER D
     119      'E'         #  0x45 -> LATIN CAPITAL LETTER E
     120      'F'         #  0x46 -> LATIN CAPITAL LETTER F
     121      'G'         #  0x47 -> LATIN CAPITAL LETTER G
     122      'H'         #  0x48 -> LATIN CAPITAL LETTER H
     123      'I'         #  0x49 -> LATIN CAPITAL LETTER I
     124      'J'         #  0x4A -> LATIN CAPITAL LETTER J
     125      'K'         #  0x4B -> LATIN CAPITAL LETTER K
     126      'L'         #  0x4C -> LATIN CAPITAL LETTER L
     127      'M'         #  0x4D -> LATIN CAPITAL LETTER M
     128      'N'         #  0x4E -> LATIN CAPITAL LETTER N
     129      'O'         #  0x4F -> LATIN CAPITAL LETTER O
     130      'P'         #  0x50 -> LATIN CAPITAL LETTER P
     131      'Q'         #  0x51 -> LATIN CAPITAL LETTER Q
     132      'R'         #  0x52 -> LATIN CAPITAL LETTER R
     133      'S'         #  0x53 -> LATIN CAPITAL LETTER S
     134      'T'         #  0x54 -> LATIN CAPITAL LETTER T
     135      'U'         #  0x55 -> LATIN CAPITAL LETTER U
     136      'V'         #  0x56 -> LATIN CAPITAL LETTER V
     137      'W'         #  0x57 -> LATIN CAPITAL LETTER W
     138      'X'         #  0x58 -> LATIN CAPITAL LETTER X
     139      'Y'         #  0x59 -> LATIN CAPITAL LETTER Y
     140      'Z'         #  0x5A -> LATIN CAPITAL LETTER Z
     141      '['         #  0x5B -> LEFT SQUARE BRACKET
     142      '\\'        #  0x5C -> REVERSE SOLIDUS
     143      ']'         #  0x5D -> RIGHT SQUARE BRACKET
     144      '^'         #  0x5E -> CIRCUMFLEX ACCENT
     145      '_'         #  0x5F -> LOW LINE
     146      '`'         #  0x60 -> GRAVE ACCENT
     147      'a'         #  0x61 -> LATIN SMALL LETTER A
     148      'b'         #  0x62 -> LATIN SMALL LETTER B
     149      'c'         #  0x63 -> LATIN SMALL LETTER C
     150      'd'         #  0x64 -> LATIN SMALL LETTER D
     151      'e'         #  0x65 -> LATIN SMALL LETTER E
     152      'f'         #  0x66 -> LATIN SMALL LETTER F
     153      'g'         #  0x67 -> LATIN SMALL LETTER G
     154      'h'         #  0x68 -> LATIN SMALL LETTER H
     155      'i'         #  0x69 -> LATIN SMALL LETTER I
     156      'j'         #  0x6A -> LATIN SMALL LETTER J
     157      'k'         #  0x6B -> LATIN SMALL LETTER K
     158      'l'         #  0x6C -> LATIN SMALL LETTER L
     159      'm'         #  0x6D -> LATIN SMALL LETTER M
     160      'n'         #  0x6E -> LATIN SMALL LETTER N
     161      'o'         #  0x6F -> LATIN SMALL LETTER O
     162      'p'         #  0x70 -> LATIN SMALL LETTER P
     163      'q'         #  0x71 -> LATIN SMALL LETTER Q
     164      'r'         #  0x72 -> LATIN SMALL LETTER R
     165      's'         #  0x73 -> LATIN SMALL LETTER S
     166      't'         #  0x74 -> LATIN SMALL LETTER T
     167      'u'         #  0x75 -> LATIN SMALL LETTER U
     168      'v'         #  0x76 -> LATIN SMALL LETTER V
     169      'w'         #  0x77 -> LATIN SMALL LETTER W
     170      'x'         #  0x78 -> LATIN SMALL LETTER X
     171      'y'         #  0x79 -> LATIN SMALL LETTER Y
     172      'z'         #  0x7A -> LATIN SMALL LETTER Z
     173      '{'         #  0x7B -> LEFT CURLY BRACKET
     174      '|'         #  0x7C -> VERTICAL LINE
     175      '}'         #  0x7D -> RIGHT CURLY BRACKET
     176      '~'         #  0x7E -> TILDE
     177      '\x7f'      #  0x7F -> CONTROL CHARACTER
     178      '\x80'
     179      '\x81'
     180      '\xe9'      #  0x82 -> LATIN SMALL LETTER E WITH ACUTE
     181      '\xe2'      #  0x83 -> LATIN SMALL LETTER A WITH CIRCUMFLEX
     182      '\x84'
     183      '\xe0'      #  0x85 -> LATIN SMALL LETTER A WITH GRAVE
     184      '\x86'
     185      '\xe7'      #  0x87 -> LATIN SMALL LETTER C WITH CEDILLA
     186      '\xea'      #  0x88 -> LATIN SMALL LETTER E WITH CIRCUMFLEX
     187      '\xeb'      #  0x89 -> LATIN SMALL LETTER E WITH DIAERESIS
     188      '\xe8'      #  0x8A -> LATIN SMALL LETTER E WITH GRAVE
     189      '\xef'      #  0x8B -> LATIN SMALL LETTER I WITH DIAERESIS
     190      '\xee'      #  0x8C -> LATIN SMALL LETTER I WITH CIRCUMFLEX
     191      '\x8d'
     192      '\x8e'
     193      '\x8f'
     194      '\x90'
     195      '\u0651'    #  0x91 -> ARABIC SHADDA
     196      '\u0652'    #  0x92 -> ARABIC SUKUN
     197      '\xf4'      #  0x93 -> LATIN SMALL LETTER O WITH CIRCUMFLEX
     198      '\xa4'      #  0x94 -> CURRENCY SIGN
     199      '\u0640'    #  0x95 -> ARABIC TATWEEL
     200      '\xfb'      #  0x96 -> LATIN SMALL LETTER U WITH CIRCUMFLEX
     201      '\xf9'      #  0x97 -> LATIN SMALL LETTER U WITH GRAVE
     202      '\u0621'    #  0x98 -> ARABIC LETTER HAMZA
     203      '\u0622'    #  0x99 -> ARABIC LETTER ALEF WITH MADDA ABOVE
     204      '\u0623'    #  0x9A -> ARABIC LETTER ALEF WITH HAMZA ABOVE
     205      '\u0624'    #  0x9B -> ARABIC LETTER WAW WITH HAMZA ABOVE
     206      '\xa3'      #  0x9C -> POUND SIGN
     207      '\u0625'    #  0x9D -> ARABIC LETTER ALEF WITH HAMZA BELOW
     208      '\u0626'    #  0x9E -> ARABIC LETTER YEH WITH HAMZA ABOVE
     209      '\u0627'    #  0x9F -> ARABIC LETTER ALEF
     210      '\u0628'    #  0xA0 -> ARABIC LETTER BEH
     211      '\u0629'    #  0xA1 -> ARABIC LETTER TEH MARBUTA
     212      '\u062a'    #  0xA2 -> ARABIC LETTER TEH
     213      '\u062b'    #  0xA3 -> ARABIC LETTER THEH
     214      '\u062c'    #  0xA4 -> ARABIC LETTER JEEM
     215      '\u062d'    #  0xA5 -> ARABIC LETTER HAH
     216      '\u062e'    #  0xA6 -> ARABIC LETTER KHAH
     217      '\u062f'    #  0xA7 -> ARABIC LETTER DAL
     218      '\u0630'    #  0xA8 -> ARABIC LETTER THAL
     219      '\u0631'    #  0xA9 -> ARABIC LETTER REH
     220      '\u0632'    #  0xAA -> ARABIC LETTER ZAIN
     221      '\u0633'    #  0xAB -> ARABIC LETTER SEEN
     222      '\u0634'    #  0xAC -> ARABIC LETTER SHEEN
     223      '\u0635'    #  0xAD -> ARABIC LETTER SAD
     224      '\xab'      #  0xAE -> LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
     225      '\xbb'      #  0xAF -> RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
     226      '\u2591'    #  0xB0 -> LIGHT SHADE
     227      '\u2592'    #  0xB1 -> MEDIUM SHADE
     228      '\u2593'    #  0xB2 -> DARK SHADE
     229      '\u2502'    #  0xB3 -> BOX DRAWINGS LIGHT VERTICAL
     230      '\u2524'    #  0xB4 -> BOX DRAWINGS LIGHT VERTICAL AND LEFT
     231      '\u2561'    #  0xB5 -> BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
     232      '\u2562'    #  0xB6 -> BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
     233      '\u2556'    #  0xB7 -> BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
     234      '\u2555'    #  0xB8 -> BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
     235      '\u2563'    #  0xB9 -> BOX DRAWINGS DOUBLE VERTICAL AND LEFT
     236      '\u2551'    #  0xBA -> BOX DRAWINGS DOUBLE VERTICAL
     237      '\u2557'    #  0xBB -> BOX DRAWINGS DOUBLE DOWN AND LEFT
     238      '\u255d'    #  0xBC -> BOX DRAWINGS DOUBLE UP AND LEFT
     239      '\u255c'    #  0xBD -> BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
     240      '\u255b'    #  0xBE -> BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
     241      '\u2510'    #  0xBF -> BOX DRAWINGS LIGHT DOWN AND LEFT
     242      '\u2514'    #  0xC0 -> BOX DRAWINGS LIGHT UP AND RIGHT
     243      '\u2534'    #  0xC1 -> BOX DRAWINGS LIGHT UP AND HORIZONTAL
     244      '\u252c'    #  0xC2 -> BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
     245      '\u251c'    #  0xC3 -> BOX DRAWINGS LIGHT VERTICAL AND RIGHT
     246      '\u2500'    #  0xC4 -> BOX DRAWINGS LIGHT HORIZONTAL
     247      '\u253c'    #  0xC5 -> BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
     248      '\u255e'    #  0xC6 -> BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
     249      '\u255f'    #  0xC7 -> BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
     250      '\u255a'    #  0xC8 -> BOX DRAWINGS DOUBLE UP AND RIGHT
     251      '\u2554'    #  0xC9 -> BOX DRAWINGS DOUBLE DOWN AND RIGHT
     252      '\u2569'    #  0xCA -> BOX DRAWINGS DOUBLE UP AND HORIZONTAL
     253      '\u2566'    #  0xCB -> BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
     254      '\u2560'    #  0xCC -> BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
     255      '\u2550'    #  0xCD -> BOX DRAWINGS DOUBLE HORIZONTAL
     256      '\u256c'    #  0xCE -> BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
     257      '\u2567'    #  0xCF -> BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
     258      '\u2568'    #  0xD0 -> BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
     259      '\u2564'    #  0xD1 -> BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
     260      '\u2565'    #  0xD2 -> BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
     261      '\u2559'    #  0xD3 -> BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
     262      '\u2558'    #  0xD4 -> BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
     263      '\u2552'    #  0xD5 -> BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
     264      '\u2553'    #  0xD6 -> BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
     265      '\u256b'    #  0xD7 -> BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
     266      '\u256a'    #  0xD8 -> BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
     267      '\u2518'    #  0xD9 -> BOX DRAWINGS LIGHT UP AND LEFT
     268      '\u250c'    #  0xDA -> BOX DRAWINGS LIGHT DOWN AND RIGHT
     269      '\u2588'    #  0xDB -> FULL BLOCK
     270      '\u2584'    #  0xDC -> LOWER HALF BLOCK
     271      '\u258c'    #  0xDD -> LEFT HALF BLOCK
     272      '\u2590'    #  0xDE -> RIGHT HALF BLOCK
     273      '\u2580'    #  0xDF -> UPPER HALF BLOCK
     274      '\u0636'    #  0xE0 -> ARABIC LETTER DAD
     275      '\u0637'    #  0xE1 -> ARABIC LETTER TAH
     276      '\u0638'    #  0xE2 -> ARABIC LETTER ZAH
     277      '\u0639'    #  0xE3 -> ARABIC LETTER AIN
     278      '\u063a'    #  0xE4 -> ARABIC LETTER GHAIN
     279      '\u0641'    #  0xE5 -> ARABIC LETTER FEH
     280      '\xb5'      #  0xE6 -> MICRO SIGN
     281      '\u0642'    #  0xE7 -> ARABIC LETTER QAF
     282      '\u0643'    #  0xE8 -> ARABIC LETTER KAF
     283      '\u0644'    #  0xE9 -> ARABIC LETTER LAM
     284      '\u0645'    #  0xEA -> ARABIC LETTER MEEM
     285      '\u0646'    #  0xEB -> ARABIC LETTER NOON
     286      '\u0647'    #  0xEC -> ARABIC LETTER HEH
     287      '\u0648'    #  0xED -> ARABIC LETTER WAW
     288      '\u0649'    #  0xEE -> ARABIC LETTER ALEF MAKSURA
     289      '\u064a'    #  0xEF -> ARABIC LETTER YEH
     290      '\u2261'    #  0xF0 -> IDENTICAL TO
     291      '\u064b'    #  0xF1 -> ARABIC FATHATAN
     292      '\u064c'    #  0xF2 -> ARABIC DAMMATAN
     293      '\u064d'    #  0xF3 -> ARABIC KASRATAN
     294      '\u064e'    #  0xF4 -> ARABIC FATHA
     295      '\u064f'    #  0xF5 -> ARABIC DAMMA
     296      '\u0650'    #  0xF6 -> ARABIC KASRA
     297      '\u2248'    #  0xF7 -> ALMOST EQUAL TO
     298      '\xb0'      #  0xF8 -> DEGREE SIGN
     299      '\u2219'    #  0xF9 -> BULLET OPERATOR
     300      '\xb7'      #  0xFA -> MIDDLE DOT
     301      '\u221a'    #  0xFB -> SQUARE ROOT
     302      '\u207f'    #  0xFC -> SUPERSCRIPT LATIN SMALL LETTER N
     303      '\xb2'      #  0xFD -> SUPERSCRIPT TWO
     304      '\u25a0'    #  0xFE -> BLACK SQUARE
     305      '\xa0'      #  0xFF -> NO-BREAK SPACE
     306  )
     307  
     308  ### Encoding table
     309  encoding_table=codecs.charmap_build(decoding_table)