/// MacExpertEncoding as defined in Adobe Technical Note #5014
/// Used for expert fonts (small caps, old-style figures, etc.)
const MAC_EXPERT_ENCODING: [EncodingEntry; 256] = [
// 0-31: Control characters (undefined)
(0, ".notdef", None), (1, ".notdef", None), (2, ".notdef", None), (3, ".notdef", None),
(4, ".notdef", None), (5, ".notdef", None), (6, ".notdef", None), (7, ".notdef", None),
(8, ".notdef", None), (9, "tab", Some('\t')), (10, "lf", Some('\n')), (11, ".notdef", None),
(12, "ff", Some('\x0C')), (13, "cr", Some('\r')), (14, ".notdef", None), (15, ".notdef", None),
(16, ".notdef", None), (17, ".notdef", None), (18, ".notdef", None), (19, ".notdef", None),
(20, ".notdef", None), (21, ".notdef", None), (22, ".notdef", None), (23, ".notdef", None),
(24, ".notdef", None), (25, ".notdef", None), (26, ".notdef", None), (27, ".notdef", None),
(28, ".notdef", None), (29, ".notdef", None), (30, ".notdef", None), (31, ".notdef", None),
// 32-63: Basic punctuation and digits
(32, "space", Some(' ')),
(33, "exclam", Some('!')),
(34, "quotedbl", Some('"')),
(35, "numbersign", Some('#')),
(36, "dollar", Some('$')),
(37, "percent", Some('%')),
(38, "ampersand", Some('&')),
(39, "quoteright", Some('\'')),
(40, "parenleft", Some('(')),
(41, "parenright", Some(')')),
(42, "asterisk", Some('*')),
(43, "plus", Some('+')),
(44, "comma", Some(',')),
(45, "hyphen", Some('-')),
(46, "period", Some('.')),
(47, "slash", Some('/')),
(48, "zero", Some('0')),
(49, "one", Some('1')),
(50, "two", Some('2')),
(51, "three", Some('3')),
(52, "four", Some('4')),
(53, "five", Some('5')),
(54, "six", Some('6')),
(55, "seven", Some('7')),
(56, "eight", Some('8')),
(57, "nine", Some('9')),
(58, "colon", Some(':')),
(59, "semicolon", Some(';')),
(60, "less", Some('<')),
(61, "equal", Some('=')),
(62, "greater", Some('>')),
(63, "question", Some('?')),
// 64-95: Uppercase letters and symbols
(64, "at", Some('@')),
(65, "A", Some('A')),
(66, "B", Some('B')),
(67, "C", Some('C')),
(68, "D", Some('D')),
(69, "E", Some('E')),
(70, "F", Some('F')),
(71, "G", Some('G')),
(72, "H", Some('H')),
(73, "I", Some('I')),
(74, "J", Some('J')),
(75, "K", Some('K')),
(76, "L", Some('L')),
(77, "M", Some('M')),
(78, "N", Some('N')),
(79, "O", Some('O')),
(80, "P", Some('P')),
(81, "Q", Some('Q')),
(82, "R", Some('R')),
(83, "S", Some('S')),
(84, "T", Some('T')),
(85, "U", Some('U')),
(86, "V", Some('V')),
(87, "W", Some('W')),
(88, "X", Some('X')),
(89, "Y", Some('Y')),
(90, "Z", Some('Z')),
(91, "bracketleft", Some('[')),
(92, "backslash", Some('\\')),
(93, "bracketright", Some(']')),
(94, "asciicircum", Some('^')),
(95, "underscore", Some('_')),
// 96-127: Lowercase and symbols
(96, "quoteleft", Some('`')),
(97, "a", Some('a')),
(98, "b", Some('b')),
(99, "c", Some('c')),
(100, "d", Some('d')),
(101, "e", Some('e')),
(102, "f", Some('f')),
(103, "g", Some('g')),
(104, "h", Some('h')),
(105, "i", Some('i')),
(106, "j", Some('j')),
(107, "k", Some('k')),
(108, "l", Some('l')),
(109, "m", Some('m')),
(110, "n", Some('n')),
(111, "o", Some('o')),
(112, "p", Some('p')),
(113, "q", Some('q')),
(114, "r", Some('r')),
(115, "s", Some('s')),
(116, "t", Some('t')),
(117, "u", Some('u')),
(118, "v", Some('v')),
(119, "w", Some('w')),
(120, "x", Some('x')),
(121, "y", Some('y')),
(122, "z", Some('z')),
(123, "braceleft", Some('{')),
(124, "bar", Some('|')),
(125, "braceright", Some('}')),
(126, "asciitilde", Some('~')),
(127, ".notdef", None),
// 128-159: Undefined in MacExpertEncoding
(128, ".notdef", None), (129, ".notdef", None), (130, ".notdef", None), (131, ".notdef", None),
(132, ".notdef", None), (133, ".notdef", None), (134, ".notdef", None), (135, ".notdef", None),
(136, ".notdef", None), (137, ".notdef", None), (138, ".notdef", None), (139, ".notdef", None),
(140, ".notdef", None), (141, ".notdef", None), (142, ".notdef", None), (143, ".notdef", None),
(144, ".notdef", None), (145, ".notdef", None), (146, ".notdef", None), (147, ".notdef", None),
(148, ".notdef", None), (149, ".notdef", None), (150, ".notdef", None), (151, ".notdef", None),
(152, ".notdef", None), (153, ".notdef", None), (154, ".notdef", None), (155, ".notdef", None),
(156, ".notdef", None), (157, ".notdef", None), (158, ".notdef", None), (159, ".notdef", None),
// 160-255: Expert characters (small caps, superior, ligatures, etc.)
(160, "space", Some('\u{00A0}')), // no-break space
(161, "exclamsmall", Some('!')), // small '!'
(162, "Hungarumlautsmall", None), // double acute (no standard Unicode)
(163, "dollaroldstyle", Some('$')), // old-style $
(164, "dollarsuperior", Some('$')), // superior $
(165, "ampersandsmall", Some('&')), // small &
(166, "Acutesmall", None), // acute accent (no standard)
(167, "parenleftsuperior", None), // superior (
(168, "parenrightsuperior", None), // superior )
(169, "twosuperior", Some('²')), // ²
(170, "threesuperior", Some('³')), // ³
(171, "onesuperior", Some('¹')), // ¹
(172, "sixsuperior", Some('\u{2076}')), // ⁶
(173, "sevensuperior", Some('\u{2077}')), // ⁷
(174, "zerosuperior", Some('⁰')), // ⁰
(175, "foursuperior", Some('\u{2074}')), // ⁴
(176, "fivesuperior", Some('\u{2075}')), // ⁵
(177, "ninesuperior", Some('\u{2079}')), // ⁹
(178, "eightsuperior", Some('\u{2078}')), // ⁸
(179, "commasuperior", None), // superior ,
(180, "hyphensuperior", None), // superior -
(181, "periodsuperior", None), // superior .
(182, "questiondownsmall", Some('¿')), // ¿ small
(183, "Gravesmall", None), // grave accent
(184, "Asmallcap", Some('A')), // small cap A → semantically 'A'
(185, "Bsmallcap", Some('B')),
(186, "Csmallcap", Some('C')),
(187, "Dsmallcap", Some('D')),
(188, "Esmallcap", Some('E')),
(189, "Fsmallcap", Some('F')),
(190, "Gsmallcap", Some('G')),
(191, "Hsmallcap", Some('H')),
(192, "Ismallcap", Some('I')),
(193, "Jsmallcap", Some('J')),
(194, "Ksmallcap", Some('K')),
(195, "Lsmallcap", Some('L')),
(196, "Msmallcap", Some('M')),
(197, "Nsmallcap", Some('N')),
(198, "Osmallcap", Some('O')),
(199, "Psmallcap", Some('P')),
(200, "Qsmallcap", Some('Q')),
(201, "Rsmallcap", Some('R')),
(202, "Ssmallcap", Some('S')),
(203, "Tsmallcap", Some('T')),
(204, "Usmallcap", Some('U')),
(205, "Vsmallcap", Some('V')),
(206, "Wsmallcap", Some('W')),
(207, "Xsmallcap", Some('X')),
(208, "Ysmallcap", Some('Y')),
(209, "Zsmallcap", Some('Z')),
(210, "exclamdownsmall", Some('¡')), // ¡ small
(211, "centoldstyle", Some('¢')), // old-style cent → map to ¢
(212, "tonossuperior", None), // tonos (Greek)
(213, "caronsmall", None), // caron (háček)
(214, "tonossuperior", None),
(215, "hungarumlautnorwegian", Some('˝')), // Hungarian umlaut
(216, "Lslashsmall", None),
(217, "circlecenteropen", None),
(218, "periodcenteredsmall", Some('·')), // middle dot
(219, "colonsmall", Some(':')),
(220, "commareversed", Some(',')),
(221, "hyphenbullet", Some('•')), // bullet or dash
(222, "gravefullstop", None),
(223, "afii57929", None),
(224, "afii57930", None),
(225, "afii57641", None),
(226, "afii57642", None),
(227, "afii57643", None),
(228, "afii57644", None),
(229, "afii57645", None),
(230, "afii57658", None),
(231, "afii57659", None),
(232, "afii57660", None),
(233, "afii57661", None),
(234, "afii57662", None),
(235, "afii57663", None),
(236, "afii57664", None),
(237, "afii57665", None),
(238, "afii57666", None),
(239, "afii57667", None),
(240, "afii57668", None),
(241, "afii57669", None),
(242, "afii57670", None),
(243, "afii57671", None),
(244, "afii57672", None),
(245, "afii57673", None),
(246, "afii57674", None),
(247, "afii57675", None),
(248, "afii57676", None),
(249, "afii57677", None),
(250, "afii57678", None),
(251, "afii57679", None),
(252, "afii57680", None),
(253, "afii57681", None),
(254, "afii57682", None),
(255, "afii57683", None),
];