--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/CharacterEncoderImplementations__AdobeStandard.st Wed Apr 26 16:00:01 2017 +0200
@@ -0,0 +1,925 @@
+"
+ COPYRIGHT (c) 2017 by eXept Software AG
+ All Rights Reserved
+
+ This software is furnished under a license and may be used
+ only in accordance with the terms of that license and with the
+ inclusion of the above copyright notice. This software may not
+ be provided or otherwise made available to, or used by, any
+ other person. No title to or ownership of the software is
+ hereby transferred.
+"
+"{ Package: 'stx:libbasic' }"
+
+"{ NameSpace: CharacterEncoderImplementations }"
+
+SingleByteEncoder subclass:#AdobeStandard
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Collections-Text-Encodings'
+!
+
+!AdobeStandard class methodsFor:'documentation'!
+
+copyright
+"
+ COPYRIGHT (c) 2017 by eXept Software AG
+ All Rights Reserved
+
+ This software is furnished under a license and may be used
+ only in accordance with the terms of that license and with the
+ inclusion of the above copyright notice. This software may not
+ be provided or otherwise made available to, or used by, any
+ other person. No title to or ownership of the software is
+ hereby transferred.
+"
+!
+
+documentation
+"
+ Adobe Standard Encoding.
+ see https://www.compart.com/en/unicode/charsets/Adobe-Standard-Encoding
+
+ [see with:]
+ CharacterEncoderImplementations::AdobeStandard showCharacterSet
+
+ [author:]
+ Claus Gittinger
+"
+! !
+
+!AdobeStandard class methodsFor:'mapping'!
+
+mapFileURL1_relativePathName
+ ^ 'VENDORS/ADOBE/stdenc.txt'
+!
+
+mapping
+"
+# From: http://www.unicode.org/Public/MAPPINGS/VENDORS/ADOBE/stdenc.txt
+
+#
+# Name: Adobe Standard Encoding to Unicode
+# Unicode version: 2.0
+# Table version: 1.0
+# Date: 2011 July 12
+#
+# Copyright (c) 1991-2011 Unicode, Inc. All Rights reserved.
+#
+# This file is provided as-is by Unicode, Inc. (The Unicode Consortium). No
+# claims are made as to fitness for any particular purpose. No warranties of
+# any kind are expressed or implied. The recipient agrees to determine
+# applicability of information provided. If this file has been provided on
+# magnetic media by Unicode, Inc., the sole remedy for any claim will be
+# exchange of defective media within 90 days of receipt.
+#
+# Unicode, Inc. hereby grants the right to freely use the information
+# supplied in this file in the creation of products supporting the
+# Unicode Standard, and to make copies of this file in any form for
+# internal or external distribution as long as this notice remains
+# attached.
+#
+# Format: 4 tab-delimited fields:
+#
+# (1) The Unicode value (in hexadecimal)
+# (2) The Adobe Standard Encoding code point (in hexadecimal)
+# (3) # Unicode name
+# (4) # PostScript character name
+#
+# General Notes:
+#
+# The Unicode values in this table were produced as the result of applying
+# the algorithm described in the section 'Populating a Unicode space' in the
+# document 'Unicode and Glyph Names,' at
+# http://partners.adobe.com/asn/developer/typeforum/unicodegn.html
+# to the characters encoded in Adobe Standard Encoding. Note that some
+# Standard Encoding characters, such as 'space', are mapped to 2 Unicode
+# values. Refer to the above document for more details.
+#
+# 2011 July 12: The above link is no longer valid. For comparable,
+# more current information, see the document, 'Glyph', at:
+# <http://www.adobe.com/devnet/opentype/archives/glyph.html>
+#
+# Revision History:
+#
+# [v1.0, 2011 July 12]
+# Updated terms of use to current wording.
+# Updated contact information and document link.
+# No changes to the mapping data.
+#
+# [v0.2, 30 March 1999]
+# Different algorithm to produce Unicode values (see notes above) results in
+# some character codes being mapped to 2 Unicode values. Updated Unicode
+# names to Unicode 2.0 names.
+#
+# [v0.1, 5 May 1995] First release.
+#
+# Use the Unicode reporting form <http://www.unicode.org/reporting.html>
+# for any questions or comments or to report errors in the data.
+#
+0020 20 # SPACE # space
+00A0 20 # NO-BREAK SPACE # space
+0021 21 # EXCLAMATION MARK # exclam
+0022 22 # QUOTATION MARK # quotedbl
+0023 23 # NUMBER SIGN # numbersign
+0024 24 # DOLLAR SIGN # dollar
+0025 25 # PERCENT SIGN # percent
+0026 26 # AMPERSAND # ampersand
+2019 27 # RIGHT SINGLE QUOTATION MARK # quoteright
+0028 28 # LEFT PARENTHESIS # parenleft
+0029 29 # RIGHT PARENTHESIS # parenright
+002A 2A # ASTERISK # asterisk
+002B 2B # PLUS SIGN # plus
+002C 2C # COMMA # comma
+002D 2D # HYPHEN-MINUS # hyphen
+00AD 2D # SOFT HYPHEN # hyphen
+002E 2E # FULL STOP # period
+002F 2F # SOLIDUS # slash
+0030 30 # DIGIT ZERO # zero
+0031 31 # DIGIT ONE # one
+0032 32 # DIGIT TWO # two
+0033 33 # DIGIT THREE # three
+0034 34 # DIGIT FOUR # four
+0035 35 # DIGIT FIVE # five
+0036 36 # DIGIT SIX # six
+0037 37 # DIGIT SEVEN # seven
+0038 38 # DIGIT EIGHT # eight
+0039 39 # DIGIT NINE # nine
+003A 3A # COLON # colon
+003B 3B # SEMICOLON # semicolon
+003C 3C # LESS-THAN SIGN # less
+003D 3D # EQUALS SIGN # equal
+003E 3E # GREATER-THAN SIGN # greater
+003F 3F # QUESTION MARK # question
+0040 40 # COMMERCIAL AT # at
+0041 41 # LATIN CAPITAL LETTER A # A
+0042 42 # LATIN CAPITAL LETTER B # B
+0043 43 # LATIN CAPITAL LETTER C # C
+0044 44 # LATIN CAPITAL LETTER D # D
+0045 45 # LATIN CAPITAL LETTER E # E
+0046 46 # LATIN CAPITAL LETTER F # F
+0047 47 # LATIN CAPITAL LETTER G # G
+0048 48 # LATIN CAPITAL LETTER H # H
+0049 49 # LATIN CAPITAL LETTER I # I
+004A 4A # LATIN CAPITAL LETTER J # J
+004B 4B # LATIN CAPITAL LETTER K # K
+004C 4C # LATIN CAPITAL LETTER L # L
+004D 4D # LATIN CAPITAL LETTER M # M
+004E 4E # LATIN CAPITAL LETTER N # N
+004F 4F # LATIN CAPITAL LETTER O # O
+0050 50 # LATIN CAPITAL LETTER P # P
+0051 51 # LATIN CAPITAL LETTER Q # Q
+0052 52 # LATIN CAPITAL LETTER R # R
+0053 53 # LATIN CAPITAL LETTER S # S
+0054 54 # LATIN CAPITAL LETTER T # T
+0055 55 # LATIN CAPITAL LETTER U # U
+0056 56 # LATIN CAPITAL LETTER V # V
+0057 57 # LATIN CAPITAL LETTER W # W
+0058 58 # LATIN CAPITAL LETTER X # X
+0059 59 # LATIN CAPITAL LETTER Y # Y
+005A 5A # LATIN CAPITAL LETTER Z # Z
+005B 5B # LEFT SQUARE BRACKET # bracketleft
+005C 5C # REVERSE SOLIDUS # backslash
+005D 5D # RIGHT SQUARE BRACKET # bracketright
+005E 5E # CIRCUMFLEX ACCENT # asciicircum
+005F 5F # LOW LINE # underscore
+2018 60 # LEFT SINGLE QUOTATION MARK # quoteleft
+0061 61 # LATIN SMALL LETTER A # a
+0062 62 # LATIN SMALL LETTER B # b
+0063 63 # LATIN SMALL LETTER C # c
+0064 64 # LATIN SMALL LETTER D # d
+0065 65 # LATIN SMALL LETTER E # e
+0066 66 # LATIN SMALL LETTER F # f
+0067 67 # LATIN SMALL LETTER G # g
+0068 68 # LATIN SMALL LETTER H # h
+0069 69 # LATIN SMALL LETTER I # i
+006A 6A # LATIN SMALL LETTER J # j
+006B 6B # LATIN SMALL LETTER K # k
+006C 6C # LATIN SMALL LETTER L # l
+006D 6D # LATIN SMALL LETTER M # m
+006E 6E # LATIN SMALL LETTER N # n
+006F 6F # LATIN SMALL LETTER O # o
+0070 70 # LATIN SMALL LETTER P # p
+0071 71 # LATIN SMALL LETTER Q # q
+0072 72 # LATIN SMALL LETTER R # r
+0073 73 # LATIN SMALL LETTER S # s
+0074 74 # LATIN SMALL LETTER T # t
+0075 75 # LATIN SMALL LETTER U # u
+0076 76 # LATIN SMALL LETTER V # v
+0077 77 # LATIN SMALL LETTER W # w
+0078 78 # LATIN SMALL LETTER X # x
+0079 79 # LATIN SMALL LETTER Y # y
+007A 7A # LATIN SMALL LETTER Z # z
+007B 7B # LEFT CURLY BRACKET # braceleft
+007C 7C # VERTICAL LINE # bar
+007D 7D # RIGHT CURLY BRACKET # braceright
+007E 7E # TILDE # asciitilde
+00A1 A1 # INVERTED EXCLAMATION MARK # exclamdown
+00A2 A2 # CENT SIGN # cent
+00A3 A3 # POUND SIGN # sterling
+2044 A4 # FRACTION SLASH # fraction
+2215 A4 # DIVISION SLASH # fraction
+00A5 A5 # YEN SIGN # yen
+0192 A6 # LATIN SMALL LETTER F WITH HOOK # florin
+00A7 A7 # SECTION SIGN # section
+00A4 A8 # CURRENCY SIGN # currency
+0027 A9 # APOSTROPHE # quotesingle
+201C AA # LEFT DOUBLE QUOTATION MARK # quotedblleft
+00AB AB # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK # guillemotleft
+2039 AC # SINGLE LEFT-POINTING ANGLE QUOTATION MARK # guilsinglleft
+203A AD # SINGLE RIGHT-POINTING ANGLE QUOTATION MARK # guilsinglright
+FB01 AE # LATIN SMALL LIGATURE FI # fi
+FB02 AF # LATIN SMALL LIGATURE FL # fl
+2013 B1 # EN DASH # endash
+2020 B2 # DAGGER # dagger
+2021 B3 # DOUBLE DAGGER # daggerdbl
+00B7 B4 # MIDDLE DOT # periodcentered
+2219 B4 # BULLET OPERATOR # periodcentered
+00B6 B6 # PILCROW SIGN # paragraph
+2022 B7 # BULLET # bullet
+201A B8 # SINGLE LOW-9 QUOTATION MARK # quotesinglbase
+201E B9 # DOUBLE LOW-9 QUOTATION MARK # quotedblbase
+201D BA # RIGHT DOUBLE QUOTATION MARK # quotedblright
+00BB BB # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK # guillemotright
+2026 BC # HORIZONTAL ELLIPSIS # ellipsis
+2030 BD # PER MILLE SIGN # perthousand
+00BF BF # INVERTED QUESTION MARK # questiondown
+0060 C1 # GRAVE ACCENT # grave
+00B4 C2 # ACUTE ACCENT # acute
+02C6 C3 # MODIFIER LETTER CIRCUMFLEX ACCENT # circumflex
+02DC C4 # SMALL TILDE # tilde
+00AF C5 # MACRON # macron
+02C9 C5 # MODIFIER LETTER MACRON # macron
+02D8 C6 # BREVE # breve
+02D9 C7 # DOT ABOVE # dotaccent
+00A8 C8 # DIAERESIS # dieresis
+02DA CA # RING ABOVE # ring
+00B8 CB # CEDILLA # cedilla
+02DD CD # DOUBLE ACUTE ACCENT # hungarumlaut
+02DB CE # OGONEK # ogonek
+02C7 CF # CARON # caron
+2014 D0 # EM DASH # emdash
+00C6 E1 # LATIN CAPITAL LETTER AE # AE
+00AA E3 # FEMININE ORDINAL INDICATOR # ordfeminine
+0141 E8 # LATIN CAPITAL LETTER L WITH STROKE # Lslash
+00D8 E9 # LATIN CAPITAL LETTER O WITH STROKE # Oslash
+0152 EA # LATIN CAPITAL LIGATURE OE # OE
+00BA EB # MASCULINE ORDINAL INDICATOR # ordmasculine
+00E6 F1 # LATIN SMALL LETTER AE # ae
+0131 F5 # LATIN SMALL LETTER DOTLESS I # dotlessi
+0142 F8 # LATIN SMALL LETTER L WITH STROKE # lslash
+00F8 F9 # LATIN SMALL LETTER O WITH STROKE # oslash
+0153 FA # LATIN SMALL LIGATURE OE # oe
+00DF FB # LATIN SMALL LETTER SHARP S # germandbls
+
+"
+! !
+
+!AdobeStandard methodsFor:'encoding & decoding'!
+
+decode:codeArg
+ "Automagically generated by generateCode - do not modify.
+ Decode from my encoding into unicode."
+
+ |code "{ Class: SmallInteger }"|
+
+ code := codeArg.
+ code <= 16r1F ifTrue:[
+ ^ self decodingError.
+ ].
+ code > 16rFB ifTrue:[
+ ^ self decodingError.
+ ].
+ [
+ |t|
+ t := #(
+ "16r0020" 16r00A0 " NO-BREAK SPACE # space "
+ "16r0021" 16r0021 " EXCLAMATION MARK # exclam "
+ "16r0022" 16r0022 " QUOTATION MARK # quotedbl "
+ "16r0023" 16r0023 " NUMBER SIGN # numbersign "
+ "16r0024" 16r0024 " DOLLAR SIGN # dollar "
+ "16r0025" 16r0025 " PERCENT SIGN # percent "
+ "16r0026" 16r0026 " AMPERSAND # ampersand "
+ "16r0027" 16r2019 " RIGHT SINGLE QUOTATION MARK # quoteright "
+ "16r0028" 16r0028 " LEFT PARENTHESIS # parenleft "
+ "16r0029" 16r0029 " RIGHT PARENTHESIS # parenright "
+ "16r002A" 16r002A " ASTERISK # asterisk "
+ "16r002B" 16r002B " PLUS SIGN # plus "
+ "16r002C" 16r002C " COMMA # comma "
+ "16r002D" 16r00AD " SOFT HYPHEN # hyphen "
+ "16r002E" 16r002E " FULL STOP # period "
+ "16r002F" 16r002F " SOLIDUS # slash "
+ "16r0030" 16r0030 " DIGIT ZERO # zero "
+ "16r0031" 16r0031 " DIGIT ONE # one "
+ "16r0032" 16r0032 " DIGIT TWO # two "
+ "16r0033" 16r0033 " DIGIT THREE # three "
+ "16r0034" 16r0034 " DIGIT FOUR # four "
+ "16r0035" 16r0035 " DIGIT FIVE # five "
+ "16r0036" 16r0036 " DIGIT SIX # six "
+ "16r0037" 16r0037 " DIGIT SEVEN # seven "
+ "16r0038" 16r0038 " DIGIT EIGHT # eight "
+ "16r0039" 16r0039 " DIGIT NINE # nine "
+ "16r003A" 16r003A " COLON # colon "
+ "16r003B" 16r003B " SEMICOLON # semicolon "
+ "16r003C" 16r003C " LESS-THAN SIGN # less "
+ "16r003D" 16r003D " EQUALS SIGN # equal "
+ "16r003E" 16r003E " GREATER-THAN SIGN # greater "
+ "16r003F" 16r003F " QUESTION MARK # question "
+ "16r0040" 16r0040 " COMMERCIAL AT # at "
+ "16r0041" 16r0041 " LATIN CAPITAL LETTER A # A "
+ "16r0042" 16r0042 " LATIN CAPITAL LETTER B # B "
+ "16r0043" 16r0043 " LATIN CAPITAL LETTER C # C "
+ "16r0044" 16r0044 " LATIN CAPITAL LETTER D # D "
+ "16r0045" 16r0045 " LATIN CAPITAL LETTER E # E "
+ "16r0046" 16r0046 " LATIN CAPITAL LETTER F # F "
+ "16r0047" 16r0047 " LATIN CAPITAL LETTER G # G "
+ "16r0048" 16r0048 " LATIN CAPITAL LETTER H # H "
+ "16r0049" 16r0049 " LATIN CAPITAL LETTER I # I "
+ "16r004A" 16r004A " LATIN CAPITAL LETTER J # J "
+ "16r004B" 16r004B " LATIN CAPITAL LETTER K # K "
+ "16r004C" 16r004C " LATIN CAPITAL LETTER L # L "
+ "16r004D" 16r004D " LATIN CAPITAL LETTER M # M "
+ "16r004E" 16r004E " LATIN CAPITAL LETTER N # N "
+ "16r004F" 16r004F " LATIN CAPITAL LETTER O # O "
+ "16r0050" 16r0050 " LATIN CAPITAL LETTER P # P "
+ "16r0051" 16r0051 " LATIN CAPITAL LETTER Q # Q "
+ "16r0052" 16r0052 " LATIN CAPITAL LETTER R # R "
+ "16r0053" 16r0053 " LATIN CAPITAL LETTER S # S "
+ "16r0054" 16r0054 " LATIN CAPITAL LETTER T # T "
+ "16r0055" 16r0055 " LATIN CAPITAL LETTER U # U "
+ "16r0056" 16r0056 " LATIN CAPITAL LETTER V # V "
+ "16r0057" 16r0057 " LATIN CAPITAL LETTER W # W "
+ "16r0058" 16r0058 " LATIN CAPITAL LETTER X # X "
+ "16r0059" 16r0059 " LATIN CAPITAL LETTER Y # Y "
+ "16r005A" 16r005A " LATIN CAPITAL LETTER Z # Z "
+ "16r005B" 16r005B " LEFT SQUARE BRACKET # bracketleft "
+ "16r005C" 16r005C " REVERSE SOLIDUS # backslash "
+ "16r005D" 16r005D " RIGHT SQUARE BRACKET # bracketright "
+ "16r005E" 16r005E " CIRCUMFLEX ACCENT # asciicircum "
+ "16r005F" 16r005F " LOW LINE # underscore "
+ "16r0060" 16r2018 " LEFT SINGLE QUOTATION MARK # quoteleft "
+ "16r0061" 16r0061 " LATIN SMALL LETTER A # a "
+ "16r0062" 16r0062 " LATIN SMALL LETTER B # b "
+ "16r0063" 16r0063 " LATIN SMALL LETTER C # c "
+ "16r0064" 16r0064 " LATIN SMALL LETTER D # d "
+ "16r0065" 16r0065 " LATIN SMALL LETTER E # e "
+ "16r0066" 16r0066 " LATIN SMALL LETTER F # f "
+ "16r0067" 16r0067 " LATIN SMALL LETTER G # g "
+ "16r0068" 16r0068 " LATIN SMALL LETTER H # h "
+ "16r0069" 16r0069 " LATIN SMALL LETTER I # i "
+ "16r006A" 16r006A " LATIN SMALL LETTER J # j "
+ "16r006B" 16r006B " LATIN SMALL LETTER K # k "
+ "16r006C" 16r006C " LATIN SMALL LETTER L # l "
+ "16r006D" 16r006D " LATIN SMALL LETTER M # m "
+ "16r006E" 16r006E " LATIN SMALL LETTER N # n "
+ "16r006F" 16r006F " LATIN SMALL LETTER O # o "
+ "16r0070" 16r0070 " LATIN SMALL LETTER P # p "
+ "16r0071" 16r0071 " LATIN SMALL LETTER Q # q "
+ "16r0072" 16r0072 " LATIN SMALL LETTER R # r "
+ "16r0073" 16r0073 " LATIN SMALL LETTER S # s "
+ "16r0074" 16r0074 " LATIN SMALL LETTER T # t "
+ "16r0075" 16r0075 " LATIN SMALL LETTER U # u "
+ "16r0076" 16r0076 " LATIN SMALL LETTER V # v "
+ "16r0077" 16r0077 " LATIN SMALL LETTER W # w "
+ "16r0078" 16r0078 " LATIN SMALL LETTER X # x "
+ "16r0079" 16r0079 " LATIN SMALL LETTER Y # y "
+ "16r007A" 16r007A " LATIN SMALL LETTER Z # z "
+ "16r007B" 16r007B " LEFT CURLY BRACKET # braceleft "
+ "16r007C" 16r007C " VERTICAL LINE # bar "
+ "16r007D" 16r007D " RIGHT CURLY BRACKET # braceright "
+ "16r007E" 16r007E " TILDE # asciitilde "
+ "16r007F" 16r0000 " invalid "
+ "16r0080" 16r0000 " invalid "
+ "16r0081" 16r0000 " invalid "
+ "16r0082" 16r0000 " invalid "
+ "16r0083" 16r0000 " invalid "
+ "16r0084" 16r0000 " invalid "
+ "16r0085" 16r0000 " invalid "
+ "16r0086" 16r0000 " invalid "
+ "16r0087" 16r0000 " invalid "
+ "16r0088" 16r0000 " invalid "
+ "16r0089" 16r0000 " invalid "
+ "16r008A" 16r0000 " invalid "
+ "16r008B" 16r0000 " invalid "
+ "16r008C" 16r0000 " invalid "
+ "16r008D" 16r0000 " invalid "
+ "16r008E" 16r0000 " invalid "
+ "16r008F" 16r0000 " invalid "
+ "16r0090" 16r0000 " invalid "
+ "16r0091" 16r0000 " invalid "
+ "16r0092" 16r0000 " invalid "
+ "16r0093" 16r0000 " invalid "
+ "16r0094" 16r0000 " invalid "
+ "16r0095" 16r0000 " invalid "
+ "16r0096" 16r0000 " invalid "
+ "16r0097" 16r0000 " invalid "
+ "16r0098" 16r0000 " invalid "
+ "16r0099" 16r0000 " invalid "
+ "16r009A" 16r0000 " invalid "
+ "16r009B" 16r0000 " invalid "
+ "16r009C" 16r0000 " invalid "
+ "16r009D" 16r0000 " invalid "
+ "16r009E" 16r0000 " invalid "
+ "16r009F" 16r0000 " invalid "
+ "16r00A0" 16r0000 " invalid "
+ "16r00A1" 16r00A1 " INVERTED EXCLAMATION MARK # exclamdown "
+ "16r00A2" 16r00A2 " CENT SIGN # cent "
+ "16r00A3" 16r00A3 " POUND SIGN # sterling "
+ "16r00A4" 16r2215 " DIVISION SLASH # fraction "
+ "16r00A5" 16r00A5 " YEN SIGN # yen "
+ "16r00A6" 16r0192 " LATIN SMALL LETTER F WITH HOOK # florin "
+ "16r00A7" 16r00A7 " SECTION SIGN # section "
+ "16r00A8" 16r00A4 " CURRENCY SIGN # currency "
+ "16r00A9" 16r0027 " APOSTROPHE # quotesingle "
+ "16r00AA" 16r201C " LEFT DOUBLE QUOTATION MARK # quotedblleft "
+ "16r00AB" 16r00AB " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK # guillemotleft "
+ "16r00AC" 16r2039 " SINGLE LEFT-POINTING ANGLE QUOTATION MARK # guilsinglleft "
+ "16r00AD" 16r203A " SINGLE RIGHT-POINTING ANGLE QUOTATION MARK # guilsinglright "
+ "16r00AE" 16rFB01 " LATIN SMALL LIGATURE FI # fi "
+ "16r00AF" 16rFB02 " LATIN SMALL LIGATURE FL # fl "
+ "16r00B0" 16r0000 " invalid "
+ "16r00B1" 16r2013 " EN DASH # endash "
+ "16r00B2" 16r2020 " DAGGER # dagger "
+ "16r00B3" 16r2021 " DOUBLE DAGGER # daggerdbl "
+ "16r00B4" 16r2219 " BULLET OPERATOR # periodcentered "
+ "16r00B5" 16r0000 " invalid "
+ "16r00B6" 16r00B6 " PILCROW SIGN # paragraph "
+ "16r00B7" 16r2022 " BULLET # bullet "
+ "16r00B8" 16r201A " SINGLE LOW-9 QUOTATION MARK # quotesinglbase "
+ "16r00B9" 16r201E " DOUBLE LOW-9 QUOTATION MARK # quotedblbase "
+ "16r00BA" 16r201D " RIGHT DOUBLE QUOTATION MARK # quotedblright "
+ "16r00BB" 16r00BB " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK # guillemotright "
+ "16r00BC" 16r2026 " HORIZONTAL ELLIPSIS # ellipsis "
+ "16r00BD" 16r2030 " PER MILLE SIGN # perthousand "
+ "16r00BE" 16r0000 " invalid "
+ "16r00BF" 16r00BF " INVERTED QUESTION MARK # questiondown "
+ "16r00C0" 16r0000 " invalid "
+ "16r00C1" 16r0060 " GRAVE ACCENT # grave "
+ "16r00C2" 16r00B4 " ACUTE ACCENT # acute "
+ "16r00C3" 16r02C6 " MODIFIER LETTER CIRCUMFLEX ACCENT # circumflex "
+ "16r00C4" 16r02DC " SMALL TILDE # tilde "
+ "16r00C5" 16r02C9 " MODIFIER LETTER MACRON # macron "
+ "16r00C6" 16r02D8 " BREVE # breve "
+ "16r00C7" 16r02D9 " DOT ABOVE # dotaccent "
+ "16r00C8" 16r00A8 " DIAERESIS # dieresis "
+ "16r00C9" 16r0000 " invalid "
+ "16r00CA" 16r02DA " RING ABOVE # ring "
+ "16r00CB" 16r00B8 " CEDILLA # cedilla "
+ "16r00CC" 16r0000 " invalid "
+ "16r00CD" 16r02DD " DOUBLE ACUTE ACCENT # hungarumlaut "
+ "16r00CE" 16r02DB " OGONEK # ogonek "
+ "16r00CF" 16r02C7 " CARON # caron "
+ "16r00D0" 16r2014 " EM DASH # emdash "
+ "16r00D1" 16r0000 " invalid "
+ "16r00D2" 16r0000 " invalid "
+ "16r00D3" 16r0000 " invalid "
+ "16r00D4" 16r0000 " invalid "
+ "16r00D5" 16r0000 " invalid "
+ "16r00D6" 16r0000 " invalid "
+ "16r00D7" 16r0000 " invalid "
+ "16r00D8" 16r0000 " invalid "
+ "16r00D9" 16r0000 " invalid "
+ "16r00DA" 16r0000 " invalid "
+ "16r00DB" 16r0000 " invalid "
+ "16r00DC" 16r0000 " invalid "
+ "16r00DD" 16r0000 " invalid "
+ "16r00DE" 16r0000 " invalid "
+ "16r00DF" 16r0000 " invalid "
+ "16r00E0" 16r0000 " invalid "
+ "16r00E1" 16r00C6 " LATIN CAPITAL LETTER AE # AE "
+ "16r00E2" 16r0000 " invalid "
+ "16r00E3" 16r00AA " FEMININE ORDINAL INDICATOR # ordfeminine "
+ "16r00E4" 16r0000 " invalid "
+ "16r00E5" 16r0000 " invalid "
+ "16r00E6" 16r0000 " invalid "
+ "16r00E7" 16r0000 " invalid "
+ "16r00E8" 16r0141 " LATIN CAPITAL LETTER L WITH STROKE # Lslash "
+ "16r00E9" 16r00D8 " LATIN CAPITAL LETTER O WITH STROKE # Oslash "
+ "16r00EA" 16r0152 " LATIN CAPITAL LIGATURE OE # OE "
+ "16r00EB" 16r00BA " MASCULINE ORDINAL INDICATOR # ordmasculine "
+ "16r00EC" 16r0000 " invalid "
+ "16r00ED" 16r0000 " invalid "
+ "16r00EE" 16r0000 " invalid "
+ "16r00EF" 16r0000 " invalid "
+ "16r00F0" 16r0000 " invalid "
+ "16r00F1" 16r00E6 " LATIN SMALL LETTER AE # ae "
+ "16r00F2" 16r0000 " invalid "
+ "16r00F3" 16r0000 " invalid "
+ "16r00F4" 16r0000 " invalid "
+ "16r00F5" 16r0131 " LATIN SMALL LETTER DOTLESS I # dotlessi "
+ "16r00F6" 16r0000 " invalid "
+ "16r00F7" 16r0000 " invalid "
+ "16r00F8" 16r0142 " LATIN SMALL LETTER L WITH STROKE # lslash "
+ "16r00F9" 16r00F8 " LATIN SMALL LETTER O WITH STROKE # oslash "
+ "16r00FA" 16r0153 " LATIN SMALL LIGATURE OE # oe "
+ "16r00FB" 16r00DF " LATIN SMALL LETTER SHARP S # germandbls "
+ ) at:(code - 16r1F).
+ t == 0 ifFalse:[^ t].
+ ^ self decodingError.
+ ] value.
+!
+
+encode:unicodeArg
+ "Automagically generated by generateCode - do not modify.
+ Encode from unicode into my encoding."
+
+ |unicode "{ Class: SmallInteger }"|
+
+ unicode := unicodeArg.
+ unicode <= 16r20 ifTrue:[
+ ^ self decodingError.
+ ].
+ unicode <= 16r26 ifTrue:[ ^ unicode ].
+ unicode > 16rFB02 ifTrue:[
+ ^ self encodingError.
+ ].
+ unicode <= 16r2219 ifTrue:[
+ unicode <= 16r2DD ifTrue:[
+ unicode <= 16r192 ifTrue:[
+ unicode <= 16r153 ifTrue:[
+ unicode <= 16rF8 ifTrue:[
+ [
+ |t|
+ t := #[
+ "16r0027" 16rA9 " APOSTROPHE # quotesingle "
+ "16r0028" 16r28 " LEFT PARENTHESIS # parenleft "
+ "16r0029" 16r29 " RIGHT PARENTHESIS # parenright "
+ "16r002A" 16r2A " ASTERISK # asterisk "
+ "16r002B" 16r2B " PLUS SIGN # plus "
+ "16r002C" 16r2C " COMMA # comma "
+ "16r002D" 16r00 " invalid "
+ "16r002E" 16r2E " FULL STOP # period "
+ "16r002F" 16r2F " SOLIDUS # slash "
+ "16r0030" 16r30 " DIGIT ZERO # zero "
+ "16r0031" 16r31 " DIGIT ONE # one "
+ "16r0032" 16r32 " DIGIT TWO # two "
+ "16r0033" 16r33 " DIGIT THREE # three "
+ "16r0034" 16r34 " DIGIT FOUR # four "
+ "16r0035" 16r35 " DIGIT FIVE # five "
+ "16r0036" 16r36 " DIGIT SIX # six "
+ "16r0037" 16r37 " DIGIT SEVEN # seven "
+ "16r0038" 16r38 " DIGIT EIGHT # eight "
+ "16r0039" 16r39 " DIGIT NINE # nine "
+ "16r003A" 16r3A " COLON # colon "
+ "16r003B" 16r3B " SEMICOLON # semicolon "
+ "16r003C" 16r3C " LESS-THAN SIGN # less "
+ "16r003D" 16r3D " EQUALS SIGN # equal "
+ "16r003E" 16r3E " GREATER-THAN SIGN # greater "
+ "16r003F" 16r3F " QUESTION MARK # question "
+ "16r0040" 16r40 " COMMERCIAL AT # at "
+ "16r0041" 16r41 " LATIN CAPITAL LETTER A # A "
+ "16r0042" 16r42 " LATIN CAPITAL LETTER B # B "
+ "16r0043" 16r43 " LATIN CAPITAL LETTER C # C "
+ "16r0044" 16r44 " LATIN CAPITAL LETTER D # D "
+ "16r0045" 16r45 " LATIN CAPITAL LETTER E # E "
+ "16r0046" 16r46 " LATIN CAPITAL LETTER F # F "
+ "16r0047" 16r47 " LATIN CAPITAL LETTER G # G "
+ "16r0048" 16r48 " LATIN CAPITAL LETTER H # H "
+ "16r0049" 16r49 " LATIN CAPITAL LETTER I # I "
+ "16r004A" 16r4A " LATIN CAPITAL LETTER J # J "
+ "16r004B" 16r4B " LATIN CAPITAL LETTER K # K "
+ "16r004C" 16r4C " LATIN CAPITAL LETTER L # L "
+ "16r004D" 16r4D " LATIN CAPITAL LETTER M # M "
+ "16r004E" 16r4E " LATIN CAPITAL LETTER N # N "
+ "16r004F" 16r4F " LATIN CAPITAL LETTER O # O "
+ "16r0050" 16r50 " LATIN CAPITAL LETTER P # P "
+ "16r0051" 16r51 " LATIN CAPITAL LETTER Q # Q "
+ "16r0052" 16r52 " LATIN CAPITAL LETTER R # R "
+ "16r0053" 16r53 " LATIN CAPITAL LETTER S # S "
+ "16r0054" 16r54 " LATIN CAPITAL LETTER T # T "
+ "16r0055" 16r55 " LATIN CAPITAL LETTER U # U "
+ "16r0056" 16r56 " LATIN CAPITAL LETTER V # V "
+ "16r0057" 16r57 " LATIN CAPITAL LETTER W # W "
+ "16r0058" 16r58 " LATIN CAPITAL LETTER X # X "
+ "16r0059" 16r59 " LATIN CAPITAL LETTER Y # Y "
+ "16r005A" 16r5A " LATIN CAPITAL LETTER Z # Z "
+ "16r005B" 16r5B " LEFT SQUARE BRACKET # bracketleft "
+ "16r005C" 16r5C " REVERSE SOLIDUS # backslash "
+ "16r005D" 16r5D " RIGHT SQUARE BRACKET # bracketright "
+ "16r005E" 16r5E " CIRCUMFLEX ACCENT # asciicircum "
+ "16r005F" 16r5F " LOW LINE # underscore "
+ "16r0060" 16rC1 " GRAVE ACCENT # grave "
+ "16r0061" 16r61 " LATIN SMALL LETTER A # a "
+ "16r0062" 16r62 " LATIN SMALL LETTER B # b "
+ "16r0063" 16r63 " LATIN SMALL LETTER C # c "
+ "16r0064" 16r64 " LATIN SMALL LETTER D # d "
+ "16r0065" 16r65 " LATIN SMALL LETTER E # e "
+ "16r0066" 16r66 " LATIN SMALL LETTER F # f "
+ "16r0067" 16r67 " LATIN SMALL LETTER G # g "
+ "16r0068" 16r68 " LATIN SMALL LETTER H # h "
+ "16r0069" 16r69 " LATIN SMALL LETTER I # i "
+ "16r006A" 16r6A " LATIN SMALL LETTER J # j "
+ "16r006B" 16r6B " LATIN SMALL LETTER K # k "
+ "16r006C" 16r6C " LATIN SMALL LETTER L # l "
+ "16r006D" 16r6D " LATIN SMALL LETTER M # m "
+ "16r006E" 16r6E " LATIN SMALL LETTER N # n "
+ "16r006F" 16r6F " LATIN SMALL LETTER O # o "
+ "16r0070" 16r70 " LATIN SMALL LETTER P # p "
+ "16r0071" 16r71 " LATIN SMALL LETTER Q # q "
+ "16r0072" 16r72 " LATIN SMALL LETTER R # r "
+ "16r0073" 16r73 " LATIN SMALL LETTER S # s "
+ "16r0074" 16r74 " LATIN SMALL LETTER T # t "
+ "16r0075" 16r75 " LATIN SMALL LETTER U # u "
+ "16r0076" 16r76 " LATIN SMALL LETTER V # v "
+ "16r0077" 16r77 " LATIN SMALL LETTER W # w "
+ "16r0078" 16r78 " LATIN SMALL LETTER X # x "
+ "16r0079" 16r79 " LATIN SMALL LETTER Y # y "
+ "16r007A" 16r7A " LATIN SMALL LETTER Z # z "
+ "16r007B" 16r7B " LEFT CURLY BRACKET # braceleft "
+ "16r007C" 16r7C " VERTICAL LINE # bar "
+ "16r007D" 16r7D " RIGHT CURLY BRACKET # braceright "
+ "16r007E" 16r7E " TILDE # asciitilde "
+ "16r007F" 16r00 " invalid "
+ "16r0080" 16r00 " invalid "
+ "16r0081" 16r00 " invalid "
+ "16r0082" 16r00 " invalid "
+ "16r0083" 16r00 " invalid "
+ "16r0084" 16r00 " invalid "
+ "16r0085" 16r00 " invalid "
+ "16r0086" 16r00 " invalid "
+ "16r0087" 16r00 " invalid "
+ "16r0088" 16r00 " invalid "
+ "16r0089" 16r00 " invalid "
+ "16r008A" 16r00 " invalid "
+ "16r008B" 16r00 " invalid "
+ "16r008C" 16r00 " invalid "
+ "16r008D" 16r00 " invalid "
+ "16r008E" 16r00 " invalid "
+ "16r008F" 16r00 " invalid "
+ "16r0090" 16r00 " invalid "
+ "16r0091" 16r00 " invalid "
+ "16r0092" 16r00 " invalid "
+ "16r0093" 16r00 " invalid "
+ "16r0094" 16r00 " invalid "
+ "16r0095" 16r00 " invalid "
+ "16r0096" 16r00 " invalid "
+ "16r0097" 16r00 " invalid "
+ "16r0098" 16r00 " invalid "
+ "16r0099" 16r00 " invalid "
+ "16r009A" 16r00 " invalid "
+ "16r009B" 16r00 " invalid "
+ "16r009C" 16r00 " invalid "
+ "16r009D" 16r00 " invalid "
+ "16r009E" 16r00 " invalid "
+ "16r009F" 16r00 " invalid "
+ "16r00A0" 16r20 " NO-BREAK SPACE # space "
+ "16r00A1" 16rA1 " INVERTED EXCLAMATION MARK # exclamdown "
+ "16r00A2" 16rA2 " CENT SIGN # cent "
+ "16r00A3" 16rA3 " POUND SIGN # sterling "
+ "16r00A4" 16rA8 " CURRENCY SIGN # currency "
+ "16r00A5" 16rA5 " YEN SIGN # yen "
+ "16r00A6" 16r00 " invalid "
+ "16r00A7" 16rA7 " SECTION SIGN # section "
+ "16r00A8" 16rC8 " DIAERESIS # dieresis "
+ "16r00A9" 16r00 " invalid "
+ "16r00AA" 16rE3 " FEMININE ORDINAL INDICATOR # ordfeminine "
+ "16r00AB" 16rAB " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK # guillemotleft "
+ "16r00AC" 16r00 " invalid "
+ "16r00AD" 16r2D " SOFT HYPHEN # hyphen "
+ "16r00AE" 16r00 " invalid "
+ "16r00AF" 16r00 " invalid "
+ "16r00B0" 16r00 " invalid "
+ "16r00B1" 16r00 " invalid "
+ "16r00B2" 16r00 " invalid "
+ "16r00B3" 16r00 " invalid "
+ "16r00B4" 16rC2 " ACUTE ACCENT # acute "
+ "16r00B5" 16r00 " invalid "
+ "16r00B6" 16rB6 " PILCROW SIGN # paragraph "
+ "16r00B7" 16r00 " invalid "
+ "16r00B8" 16rCB " CEDILLA # cedilla "
+ "16r00B9" 16r00 " invalid "
+ "16r00BA" 16rEB " MASCULINE ORDINAL INDICATOR # ordmasculine "
+ "16r00BB" 16rBB " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK # guillemotright "
+ "16r00BC" 16r00 " invalid "
+ "16r00BD" 16r00 " invalid "
+ "16r00BE" 16r00 " invalid "
+ "16r00BF" 16rBF " INVERTED QUESTION MARK # questiondown "
+ "16r00C0" 16r00 " invalid "
+ "16r00C1" 16r00 " invalid "
+ "16r00C2" 16r00 " invalid "
+ "16r00C3" 16r00 " invalid "
+ "16r00C4" 16r00 " invalid "
+ "16r00C5" 16r00 " invalid "
+ "16r00C6" 16rE1 " LATIN CAPITAL LETTER AE # AE "
+ "16r00C7" 16r00 " invalid "
+ "16r00C8" 16r00 " invalid "
+ "16r00C9" 16r00 " invalid "
+ "16r00CA" 16r00 " invalid "
+ "16r00CB" 16r00 " invalid "
+ "16r00CC" 16r00 " invalid "
+ "16r00CD" 16r00 " invalid "
+ "16r00CE" 16r00 " invalid "
+ "16r00CF" 16r00 " invalid "
+ "16r00D0" 16r00 " invalid "
+ "16r00D1" 16r00 " invalid "
+ "16r00D2" 16r00 " invalid "
+ "16r00D3" 16r00 " invalid "
+ "16r00D4" 16r00 " invalid "
+ "16r00D5" 16r00 " invalid "
+ "16r00D6" 16r00 " invalid "
+ "16r00D7" 16r00 " invalid "
+ "16r00D8" 16rE9 " LATIN CAPITAL LETTER O WITH STROKE # Oslash "
+ "16r00D9" 16r00 " invalid "
+ "16r00DA" 16r00 " invalid "
+ "16r00DB" 16r00 " invalid "
+ "16r00DC" 16r00 " invalid "
+ "16r00DD" 16r00 " invalid "
+ "16r00DE" 16r00 " invalid "
+ "16r00DF" 16rFB " LATIN SMALL LETTER SHARP S # germandbls "
+ "16r00E0" 16r00 " invalid "
+ "16r00E1" 16r00 " invalid "
+ "16r00E2" 16r00 " invalid "
+ "16r00E3" 16r00 " invalid "
+ "16r00E4" 16r00 " invalid "
+ "16r00E5" 16r00 " invalid "
+ "16r00E6" 16rF1 " LATIN SMALL LETTER AE # ae "
+ "16r00E7" 16r00 " invalid "
+ "16r00E8" 16r00 " invalid "
+ "16r00E9" 16r00 " invalid "
+ "16r00EA" 16r00 " invalid "
+ "16r00EB" 16r00 " invalid "
+ "16r00EC" 16r00 " invalid "
+ "16r00ED" 16r00 " invalid "
+ "16r00EE" 16r00 " invalid "
+ "16r00EF" 16r00 " invalid "
+ "16r00F0" 16r00 " invalid "
+ "16r00F1" 16r00 " invalid "
+ "16r00F2" 16r00 " invalid "
+ "16r00F3" 16r00 " invalid "
+ "16r00F4" 16r00 " invalid "
+ "16r00F5" 16r00 " invalid "
+ "16r00F6" 16r00 " invalid "
+ "16r00F7" 16r00 " invalid "
+ "16r00F8" 16rF9 " LATIN SMALL LETTER O WITH STROKE # oslash "
+ ] at:(unicode - 16r26).
+ t == 0 ifFalse:[^ t].
+ ^ self encodingError
+ ] value.
+ ].
+ unicode <= 16r130 ifTrue:[
+ ^ self encodingError
+ ].
+ unicode == 16r131 ifTrue:[
+ (#[
+ "16r0131" 1 " LATIN SMALL LETTER DOTLESS I # dotlessi "
+ ] at:(unicode - 304)) ~~ 0 ifTrue:[^ unicode].
+ ^ self encodingError
+ ].
+ unicode <= 16r140 ifTrue:[
+ ^ self encodingError
+ ].
+ [
+ |t|
+ t := #[
+ "16r0141" 16rE8 " LATIN CAPITAL LETTER L WITH STROKE # Lslash "
+ "16r0142" 16rF8 " LATIN SMALL LETTER L WITH STROKE # lslash "
+ "16r0143" 16r00 " invalid "
+ "16r0144" 16r00 " invalid "
+ "16r0145" 16r00 " invalid "
+ "16r0146" 16r00 " invalid "
+ "16r0147" 16r00 " invalid "
+ "16r0148" 16r00 " invalid "
+ "16r0149" 16r00 " invalid "
+ "16r014A" 16r00 " invalid "
+ "16r014B" 16r00 " invalid "
+ "16r014C" 16r00 " invalid "
+ "16r014D" 16r00 " invalid "
+ "16r014E" 16r00 " invalid "
+ "16r014F" 16r00 " invalid "
+ "16r0150" 16r00 " invalid "
+ "16r0151" 16r00 " invalid "
+ "16r0152" 16rEA " LATIN CAPITAL LIGATURE OE # OE "
+ "16r0153" 16rFA " LATIN SMALL LIGATURE OE # oe "
+ ] at:(unicode - 16r140).
+ t == 0 ifFalse:[^ t].
+ ^ self encodingError
+ ] value.
+ ].
+ unicode <= 16r191 ifTrue:[
+ ^ self encodingError
+ ].
+ ^ "16r0192" 16r00A6 " LATIN SMALL LETTER F WITH HOOK # florin "
+ ].
+ unicode <= 16r2C5 ifTrue:[
+ ^ self encodingError
+ ].
+ [
+ |t|
+ t := #[
+ "16r02C6" 16rC3 " MODIFIER LETTER CIRCUMFLEX ACCENT # circumflex "
+ "16r02C7" 16rCF " CARON # caron "
+ "16r02C8" 16r00 " invalid "
+ "16r02C9" 16rC5 " MODIFIER LETTER MACRON # macron "
+ "16r02CA" 16r00 " invalid "
+ "16r02CB" 16r00 " invalid "
+ "16r02CC" 16r00 " invalid "
+ "16r02CD" 16r00 " invalid "
+ "16r02CE" 16r00 " invalid "
+ "16r02CF" 16r00 " invalid "
+ "16r02D0" 16r00 " invalid "
+ "16r02D1" 16r00 " invalid "
+ "16r02D2" 16r00 " invalid "
+ "16r02D3" 16r00 " invalid "
+ "16r02D4" 16r00 " invalid "
+ "16r02D5" 16r00 " invalid "
+ "16r02D6" 16r00 " invalid "
+ "16r02D7" 16r00 " invalid "
+ "16r02D8" 16rC6 " BREVE # breve "
+ "16r02D9" 16rC7 " DOT ABOVE # dotaccent "
+ "16r02DA" 16rCA " RING ABOVE # ring "
+ "16r02DB" 16rCE " OGONEK # ogonek "
+ "16r02DC" 16rC4 " SMALL TILDE # tilde "
+ "16r02DD" 16rCD " DOUBLE ACUTE ACCENT # hungarumlaut "
+ ] at:(unicode - 16r2C5).
+ t == 0 ifFalse:[^ t].
+ ^ self encodingError
+ ] value.
+ ].
+ unicode <= 16r2012 ifTrue:[
+ ^ self encodingError
+ ].
+ unicode <= 16r203A ifTrue:[
+ [
+ |t|
+ t := #[
+ "16r2013" 16rB1 " EN DASH # endash "
+ "16r2014" 16rD0 " EM DASH # emdash "
+ "16r2015" 16r00 " invalid "
+ "16r2016" 16r00 " invalid "
+ "16r2017" 16r00 " invalid "
+ "16r2018" 16r60 " LEFT SINGLE QUOTATION MARK # quoteleft "
+ "16r2019" 16r27 " RIGHT SINGLE QUOTATION MARK # quoteright "
+ "16r201A" 16rB8 " SINGLE LOW-9 QUOTATION MARK # quotesinglbase "
+ "16r201B" 16r00 " invalid "
+ "16r201C" 16rAA " LEFT DOUBLE QUOTATION MARK # quotedblleft "
+ "16r201D" 16rBA " RIGHT DOUBLE QUOTATION MARK # quotedblright "
+ "16r201E" 16rB9 " DOUBLE LOW-9 QUOTATION MARK # quotedblbase "
+ "16r201F" 16r00 " invalid "
+ "16r2020" 16rB2 " DAGGER # dagger "
+ "16r2021" 16rB3 " DOUBLE DAGGER # daggerdbl "
+ "16r2022" 16rB7 " BULLET # bullet "
+ "16r2023" 16r00 " invalid "
+ "16r2024" 16r00 " invalid "
+ "16r2025" 16r00 " invalid "
+ "16r2026" 16rBC " HORIZONTAL ELLIPSIS # ellipsis "
+ "16r2027" 16r00 " invalid "
+ "16r2028" 16r00 " invalid "
+ "16r2029" 16r00 " invalid "
+ "16r202A" 16r00 " invalid "
+ "16r202B" 16r00 " invalid "
+ "16r202C" 16r00 " invalid "
+ "16r202D" 16r00 " invalid "
+ "16r202E" 16r00 " invalid "
+ "16r202F" 16r00 " invalid "
+ "16r2030" 16rBD " PER MILLE SIGN # perthousand "
+ "16r2031" 16r00 " invalid "
+ "16r2032" 16r00 " invalid "
+ "16r2033" 16r00 " invalid "
+ "16r2034" 16r00 " invalid "
+ "16r2035" 16r00 " invalid "
+ "16r2036" 16r00 " invalid "
+ "16r2037" 16r00 " invalid "
+ "16r2038" 16r00 " invalid "
+ "16r2039" 16rAC " SINGLE LEFT-POINTING ANGLE QUOTATION MARK # guilsinglleft "
+ "16r203A" 16rAD " SINGLE RIGHT-POINTING ANGLE QUOTATION MARK # guilsinglright "
+ ] at:(unicode - 16r2012).
+ t == 0 ifFalse:[^ t].
+ ^ self encodingError
+ ] value.
+ ].
+ unicode <= 16r2214 ifTrue:[
+ ^ self encodingError
+ ].
+ [
+ |t|
+ t := #[
+ "16r2215" 16rA4 " DIVISION SLASH # fraction "
+ "16r2216" 16r00 " invalid "
+ "16r2217" 16r00 " invalid "
+ "16r2218" 16r00 " invalid "
+ "16r2219" 16rB4 " BULLET OPERATOR # periodcentered "
+ ] at:(unicode - 16r2214).
+ t == 0 ifFalse:[^ t].
+ ^ self encodingError
+ ] value.
+ ].
+ unicode <= 16rFB00 ifTrue:[
+ ^ self encodingError
+ ].
+ ^ #[
+ "16rFB01" 16rAE " LATIN SMALL LIGATURE FI # fi "
+ "16rFB02" 16rAF " LATIN SMALL LIGATURE FL # fl "
+ ] at:(unicode - 16rFB00).
+! !
+
+!AdobeStandard class methodsFor:'documentation'!
+
+version
+ ^ '$Header$'
+!
+
+version_CVS
+ ^ '$Header$'
+! !
+