use super::glyphnames::Glyph;

pub const MAC_ROMAN_ENCODING: [Option<u16>; 256] = [
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::space),
	Some(Glyph::exclam),
	Some(Glyph::quotedbl),
	Some(Glyph::numbersign),
	Some(Glyph::dollar),
	Some(Glyph::percent),
	Some(Glyph::ampersand),
	Some(Glyph::quotesingle),
	Some(Glyph::parenleft),
	Some(Glyph::parenright),
	Some(Glyph::asterisk),
	Some(Glyph::plus),
	Some(Glyph::comma),
	Some(Glyph::hyphen),
	Some(Glyph::period),
	Some(Glyph::slash),
	Some(Glyph::zero),
	Some(Glyph::one),
	Some(Glyph::two),
	Some(Glyph::three),
	Some(Glyph::four),
	Some(Glyph::five),
	Some(Glyph::six),
	Some(Glyph::seven),
	Some(Glyph::eight),
	Some(Glyph::nine),
	Some(Glyph::colon),
	Some(Glyph::semicolon),
	Some(Glyph::less),
	Some(Glyph::equal),
	Some(Glyph::greater),
	Some(Glyph::question),
	Some(Glyph::at),
	Some(Glyph::A),
	Some(Glyph::B),
	Some(Glyph::C),
	Some(Glyph::D),
	Some(Glyph::E),
	Some(Glyph::F),
	Some(Glyph::G),
	Some(Glyph::H),
	Some(Glyph::I),
	Some(Glyph::J),
	Some(Glyph::K),
	Some(Glyph::L),
	Some(Glyph::M),
	Some(Glyph::N),
	Some(Glyph::O),
	Some(Glyph::P),
	Some(Glyph::Q),
	Some(Glyph::R),
	Some(Glyph::S),
	Some(Glyph::T),
	Some(Glyph::U),
	Some(Glyph::V),
	Some(Glyph::W),
	Some(Glyph::X),
	Some(Glyph::Y),
	Some(Glyph::Z),
	Some(Glyph::bracketleft),
	Some(Glyph::backslash),
	Some(Glyph::bracketright),
	Some(Glyph::asciicircum),
	Some(Glyph::underscore),
	Some(Glyph::grave),
	Some(Glyph::a),
	Some(Glyph::b),
	Some(Glyph::c),
	Some(Glyph::d),
	Some(Glyph::e),
	Some(Glyph::f),
	Some(Glyph::g),
	Some(Glyph::h),
	Some(Glyph::i),
	Some(Glyph::j),
	Some(Glyph::k),
	Some(Glyph::l),
	Some(Glyph::m),
	Some(Glyph::n),
	Some(Glyph::o),
	Some(Glyph::p),
	Some(Glyph::q),
	Some(Glyph::r),
	Some(Glyph::s),
	Some(Glyph::t),
	Some(Glyph::u),
	Some(Glyph::v),
	Some(Glyph::w),
	Some(Glyph::x),
	Some(Glyph::y),
	Some(Glyph::z),
	Some(Glyph::braceleft),
	Some(Glyph::bar),
	Some(Glyph::braceright),
	Some(Glyph::asciitilde),
	None,
	Some(Glyph::Adieresis),
	Some(Glyph::Aring),
	Some(Glyph::Ccedilla),
	Some(Glyph::Eacute),
	Some(Glyph::Ntilde),
	Some(Glyph::Odieresis),
	Some(Glyph::Udieresis),
	Some(Glyph::aacute),
	Some(Glyph::agrave),
	Some(Glyph::acircumflex),
	Some(Glyph::adieresis),
	Some(Glyph::atilde),
	Some(Glyph::aring),
	Some(Glyph::ccedilla),
	Some(Glyph::eacute),
	Some(Glyph::egrave),
	Some(Glyph::ecircumflex),
	Some(Glyph::edieresis),
	Some(Glyph::iacute),
	Some(Glyph::igrave),
	Some(Glyph::icircumflex),
	Some(Glyph::idieresis),
	Some(Glyph::ntilde),
	Some(Glyph::oacute),
	Some(Glyph::ograve),
	Some(Glyph::ocircumflex),
	Some(Glyph::odieresis),
	Some(Glyph::otilde),
	Some(Glyph::uacute),
	Some(Glyph::ugrave),
	Some(Glyph::ucircumflex),
	Some(Glyph::udieresis),
	Some(Glyph::dagger),
	Some(Glyph::degree),
	Some(Glyph::cent),
	Some(Glyph::sterling),
	Some(Glyph::section),
	Some(Glyph::bullet),
	Some(Glyph::paragraph),
	Some(Glyph::germandbls),
	Some(Glyph::registered),
	Some(Glyph::copyright),
	Some(Glyph::trademark),
	Some(Glyph::acute),
	Some(Glyph::dieresis),
	Some(Glyph::notequal),
	Some(Glyph::AE),
	Some(Glyph::Oslash),
	Some(Glyph::infinity),
	Some(Glyph::plusminus),
	Some(Glyph::lessequal),
	Some(Glyph::greaterequal),
	Some(Glyph::yen),
	Some(Glyph::mu),
	Some(Glyph::partialdiff),
	Some(Glyph::summation),
	Some(Glyph::product),
	Some(Glyph::pi),
	Some(Glyph::integral),
	Some(Glyph::ordfeminine),
	Some(Glyph::ordmasculine),
	Some(Glyph::Omega),
	Some(Glyph::ae),
	Some(Glyph::oslash),
	Some(Glyph::questiondown),
	Some(Glyph::exclamdown),
	Some(Glyph::logicalnot),
	Some(Glyph::radical),
	Some(Glyph::florin),
	Some(Glyph::approxequal),
	Some(Glyph::Delta),
	Some(Glyph::guillemotleft),
	Some(Glyph::guillemotright),
	Some(Glyph::ellipsis),
	Some(Glyph::space),
	Some(Glyph::Agrave),
	Some(Glyph::Atilde),
	Some(Glyph::Otilde),
	Some(Glyph::OE),
	Some(Glyph::oe),
	Some(Glyph::endash),
	Some(Glyph::emdash),
	Some(Glyph::quotedblleft),
	Some(Glyph::quotedblright),
	Some(Glyph::quoteleft),
	Some(Glyph::quoteright),
	Some(Glyph::divide),
	Some(Glyph::lozenge),
	Some(Glyph::ydieresis),
	Some(Glyph::Ydieresis),
	Some(Glyph::fraction),
	Some(Glyph::currency),
	Some(Glyph::guilsinglleft),
	Some(Glyph::guilsinglright),
	Some(Glyph::fi),
	Some(Glyph::fl),
	Some(Glyph::daggerdbl),
	Some(Glyph::periodcentered),
	Some(Glyph::quotesinglbase),
	Some(Glyph::quotedblbase),
	Some(Glyph::perthousand),
	Some(Glyph::Acircumflex),
	Some(Glyph::Ecircumflex),
	Some(Glyph::Aacute),
	Some(Glyph::Edieresis),
	Some(Glyph::Egrave),
	Some(Glyph::Iacute),
	Some(Glyph::Icircumflex),
	Some(Glyph::Idieresis),
	Some(Glyph::Igrave),
	Some(Glyph::Oacute),
	Some(Glyph::Ocircumflex),
	Some(Glyph::apple),
	Some(Glyph::Ograve),
	Some(Glyph::Uacute),
	Some(Glyph::Ucircumflex),
	Some(Glyph::Ugrave),
	Some(Glyph::dotlessi),
	Some(Glyph::circumflex),
	Some(Glyph::tilde),
	Some(Glyph::macron),
	Some(Glyph::breve),
	Some(Glyph::dotaccent),
	Some(Glyph::ring),
	Some(Glyph::cedilla),
	Some(Glyph::hungarumlaut),
	Some(Glyph::ogonek),
	Some(Glyph::caron),
];

pub const MAC_EXPERT_ENCODING: [Option<u16>; 256] = [
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::space),
	Some(Glyph::exclamsmall),
	Some(Glyph::Hungarumlautsmall),
	Some(Glyph::centoldstyle),
	Some(Glyph::dollaroldstyle),
	Some(Glyph::dollarsuperior),
	Some(Glyph::ampersandsmall),
	Some(Glyph::Acutesmall),
	Some(Glyph::parenleftsuperior),
	Some(Glyph::parenrightsuperior),
	Some(Glyph::twodotenleader),
	Some(Glyph::onedotenleader),
	Some(Glyph::comma),
	Some(Glyph::hyphen),
	Some(Glyph::period),
	Some(Glyph::fraction),
	Some(Glyph::zerooldstyle),
	Some(Glyph::oneoldstyle),
	Some(Glyph::twooldstyle),
	Some(Glyph::threeoldstyle),
	Some(Glyph::fouroldstyle),
	Some(Glyph::fiveoldstyle),
	Some(Glyph::sixoldstyle),
	Some(Glyph::sevenoldstyle),
	Some(Glyph::eightoldstyle),
	Some(Glyph::nineoldstyle),
	Some(Glyph::colon),
	Some(Glyph::semicolon),
	None,
	Some(Glyph::threequartersemdash),
	None,
	Some(Glyph::questionsmall),
	None,
	None,
	None,
	None,
	Some(Glyph::Ethsmall),
	None,
	None,
	Some(Glyph::onequarter),
	Some(Glyph::onehalf),
	Some(Glyph::threequarters),
	Some(Glyph::oneeighth),
	Some(Glyph::threeeighths),
	Some(Glyph::fiveeighths),
	Some(Glyph::seveneighths),
	Some(Glyph::onethird),
	Some(Glyph::twothirds),
	None,
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::ff),
	Some(Glyph::fi),
	Some(Glyph::fl),
	Some(Glyph::ffi),
	Some(Glyph::ffl),
	Some(Glyph::parenleftinferior),
	None,
	Some(Glyph::parenrightinferior),
	Some(Glyph::Circumflexsmall),
	Some(Glyph::hypheninferior),
	Some(Glyph::Gravesmall),
	Some(Glyph::Asmall),
	Some(Glyph::Bsmall),
	Some(Glyph::Csmall),
	Some(Glyph::Dsmall),
	Some(Glyph::Esmall),
	Some(Glyph::Fsmall),
	Some(Glyph::Gsmall),
	Some(Glyph::Hsmall),
	Some(Glyph::Ismall),
	Some(Glyph::Jsmall),
	Some(Glyph::Ksmall),
	Some(Glyph::Lsmall),
	Some(Glyph::Msmall),
	Some(Glyph::Nsmall),
	Some(Glyph::Osmall),
	Some(Glyph::Psmall),
	Some(Glyph::Qsmall),
	Some(Glyph::Rsmall),
	Some(Glyph::Ssmall),
	Some(Glyph::Tsmall),
	Some(Glyph::Usmall),
	Some(Glyph::Vsmall),
	Some(Glyph::Wsmall),
	Some(Glyph::Xsmall),
	Some(Glyph::Ysmall),
	Some(Glyph::Zsmall),
	Some(Glyph::colonmonetary),
	Some(Glyph::onefitted),
	Some(Glyph::rupiah),
	Some(Glyph::Tildesmall),
	None,
	None,
	Some(Glyph::asuperior),
	Some(Glyph::centsuperior),
	None,
	None,
	None,
	None,
	Some(Glyph::Aacutesmall),
	Some(Glyph::Agravesmall),
	Some(Glyph::Acircumflexsmall),
	Some(Glyph::Adieresissmall),
	Some(Glyph::Atildesmall),
	Some(Glyph::Aringsmall),
	Some(Glyph::Ccedillasmall),
	Some(Glyph::Eacutesmall),
	Some(Glyph::Egravesmall),
	Some(Glyph::Ecircumflexsmall),
	Some(Glyph::Edieresissmall),
	Some(Glyph::Iacutesmall),
	Some(Glyph::Igravesmall),
	Some(Glyph::Icircumflexsmall),
	Some(Glyph::Idieresissmall),
	Some(Glyph::Ntildesmall),
	Some(Glyph::Oacutesmall),
	Some(Glyph::Ogravesmall),
	Some(Glyph::Ocircumflexsmall),
	Some(Glyph::Odieresissmall),
	Some(Glyph::Otildesmall),
	Some(Glyph::Uacutesmall),
	Some(Glyph::Ugravesmall),
	Some(Glyph::Ucircumflexsmall),
	Some(Glyph::Udieresissmall),
	None,
	Some(Glyph::eightsuperior),
	Some(Glyph::fourinferior),
	Some(Glyph::threeinferior),
	Some(Glyph::sixinferior),
	Some(Glyph::eightinferior),
	Some(Glyph::seveninferior),
	Some(Glyph::Scaronsmall),
	None,
	Some(Glyph::centinferior),
	Some(Glyph::twoinferior),
	None,
	Some(Glyph::Dieresissmall),
	None,
	Some(Glyph::Caronsmall),
	Some(Glyph::osuperior),
	Some(Glyph::fiveinferior),
	None,
	Some(Glyph::commainferior),
	Some(Glyph::periodinferior),
	Some(Glyph::Yacutesmall),
	None,
	Some(Glyph::dollarinferior),
	None,
	None,
	Some(Glyph::Thornsmall),
	None,
	Some(Glyph::nineinferior),
	Some(Glyph::zeroinferior),
	Some(Glyph::Zcaronsmall),
	Some(Glyph::AEsmall),
	Some(Glyph::Oslashsmall),
	Some(Glyph::questiondownsmall),
	Some(Glyph::oneinferior),
	Some(Glyph::Lslashsmall),
	None,
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::Cedillasmall),
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::OEsmall),
	Some(Glyph::figuredash),
	Some(Glyph::hyphensuperior),
	None,
	None,
	None,
	None,
	Some(Glyph::exclamdownsmall),
	None,
	Some(Glyph::Ydieresissmall),
	None,
	Some(Glyph::onesuperior),
	Some(Glyph::twosuperior),
	Some(Glyph::threesuperior),
	Some(Glyph::foursuperior),
	Some(Glyph::fivesuperior),
	Some(Glyph::sixsuperior),
	Some(Glyph::sevensuperior),
	Some(Glyph::ninesuperior),
	Some(Glyph::zerosuperior),
	None,
	Some(Glyph::esuperior),
	Some(Glyph::rsuperior),
	Some(Glyph::tsuperior),
	None,
	None,
	Some(Glyph::isuperior),
	Some(Glyph::ssuperior),
	Some(Glyph::dsuperior),
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::lsuperior),
	Some(Glyph::Ogoneksmall),
	Some(Glyph::Brevesmall),
	Some(Glyph::Macronsmall),
	Some(Glyph::bsuperior),
	Some(Glyph::nsuperior),
	Some(Glyph::msuperior),
	Some(Glyph::commasuperior),
	Some(Glyph::periodsuperior),
	Some(Glyph::Dotaccentsmall),
	Some(Glyph::Ringsmall),
	None,
	None,
	None,
	None,
];

pub const WIN_ANSI_ENCODING: [Option<u16>; 256] = [
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::space),
	Some(Glyph::exclam),
	Some(Glyph::quotedbl),
	Some(Glyph::numbersign),
	Some(Glyph::dollar),
	Some(Glyph::percent),
	Some(Glyph::ampersand),
	Some(Glyph::quotesingle),
	Some(Glyph::parenleft),
	Some(Glyph::parenright),
	Some(Glyph::asterisk),
	Some(Glyph::plus),
	Some(Glyph::comma),
	Some(Glyph::hyphen),
	Some(Glyph::period),
	Some(Glyph::slash),
	Some(Glyph::zero),
	Some(Glyph::one),
	Some(Glyph::two),
	Some(Glyph::three),
	Some(Glyph::four),
	Some(Glyph::five),
	Some(Glyph::six),
	Some(Glyph::seven),
	Some(Glyph::eight),
	Some(Glyph::nine),
	Some(Glyph::colon),
	Some(Glyph::semicolon),
	Some(Glyph::less),
	Some(Glyph::equal),
	Some(Glyph::greater),
	Some(Glyph::question),
	Some(Glyph::at),
	Some(Glyph::A),
	Some(Glyph::B),
	Some(Glyph::C),
	Some(Glyph::D),
	Some(Glyph::E),
	Some(Glyph::F),
	Some(Glyph::G),
	Some(Glyph::H),
	Some(Glyph::I),
	Some(Glyph::J),
	Some(Glyph::K),
	Some(Glyph::L),
	Some(Glyph::M),
	Some(Glyph::N),
	Some(Glyph::O),
	Some(Glyph::P),
	Some(Glyph::Q),
	Some(Glyph::R),
	Some(Glyph::S),
	Some(Glyph::T),
	Some(Glyph::U),
	Some(Glyph::V),
	Some(Glyph::W),
	Some(Glyph::X),
	Some(Glyph::Y),
	Some(Glyph::Z),
	Some(Glyph::bracketleft),
	Some(Glyph::backslash),
	Some(Glyph::bracketright),
	Some(Glyph::asciicircum),
	Some(Glyph::underscore),
	Some(Glyph::grave),
	Some(Glyph::a),
	Some(Glyph::b),
	Some(Glyph::c),
	Some(Glyph::d),
	Some(Glyph::e),
	Some(Glyph::f),
	Some(Glyph::g),
	Some(Glyph::h),
	Some(Glyph::i),
	Some(Glyph::j),
	Some(Glyph::k),
	Some(Glyph::l),
	Some(Glyph::m),
	Some(Glyph::n),
	Some(Glyph::o),
	Some(Glyph::p),
	Some(Glyph::q),
	Some(Glyph::r),
	Some(Glyph::s),
	Some(Glyph::t),
	Some(Glyph::u),
	Some(Glyph::v),
	Some(Glyph::w),
	Some(Glyph::x),
	Some(Glyph::y),
	Some(Glyph::z),
	Some(Glyph::braceleft),
	Some(Glyph::bar),
	Some(Glyph::braceright),
	Some(Glyph::asciitilde),
	Some(Glyph::bullet),
	Some(Glyph::Euro),
	Some(Glyph::bullet),
	Some(Glyph::quotesinglbase),
	Some(Glyph::florin),
	Some(Glyph::quotedblbase),
	Some(Glyph::ellipsis),
	Some(Glyph::dagger),
	Some(Glyph::daggerdbl),
	Some(Glyph::circumflex),
	Some(Glyph::perthousand),
	Some(Glyph::Scaron),
	Some(Glyph::guilsinglleft),
	Some(Glyph::OE),
	Some(Glyph::bullet),
	Some(Glyph::Zcaron),
	Some(Glyph::bullet),
	Some(Glyph::bullet),
	Some(Glyph::quoteleft),
	Some(Glyph::quoteright),
	Some(Glyph::quotedblleft),
	Some(Glyph::quotedblright),
	Some(Glyph::bullet),
	Some(Glyph::endash),
	Some(Glyph::emdash),
	Some(Glyph::tilde),
	Some(Glyph::trademark),
	Some(Glyph::scaron),
	Some(Glyph::guilsinglright),
	Some(Glyph::oe),
	Some(Glyph::bullet),
	Some(Glyph::zcaron),
	Some(Glyph::Ydieresis),
	Some(Glyph::space),
	Some(Glyph::exclamdown),
	Some(Glyph::cent),
	Some(Glyph::sterling),
	Some(Glyph::currency),
	Some(Glyph::yen),
	Some(Glyph::brokenbar),
	Some(Glyph::section),
	Some(Glyph::dieresis),
	Some(Glyph::copyright),
	Some(Glyph::ordfeminine),
	Some(Glyph::guillemotleft),
	Some(Glyph::logicalnot),
	Some(Glyph::hyphen),
	Some(Glyph::registered),
	Some(Glyph::macron),
	Some(Glyph::degree),
	Some(Glyph::plusminus),
	Some(Glyph::twosuperior),
	Some(Glyph::threesuperior),
	Some(Glyph::acute),
	Some(Glyph::mu),
	Some(Glyph::paragraph),
	Some(Glyph::periodcentered),
	Some(Glyph::cedilla),
	Some(Glyph::onesuperior),
	Some(Glyph::ordmasculine),
	Some(Glyph::guillemotright),
	Some(Glyph::onequarter),
	Some(Glyph::onehalf),
	Some(Glyph::threequarters),
	Some(Glyph::questiondown),
	Some(Glyph::Agrave),
	Some(Glyph::Aacute),
	Some(Glyph::Acircumflex),
	Some(Glyph::Atilde),
	Some(Glyph::Adieresis),
	Some(Glyph::Aring),
	Some(Glyph::AE),
	Some(Glyph::Ccedilla),
	Some(Glyph::Egrave),
	Some(Glyph::Eacute),
	Some(Glyph::Ecircumflex),
	Some(Glyph::Edieresis),
	Some(Glyph::Igrave),
	Some(Glyph::Iacute),
	Some(Glyph::Icircumflex),
	Some(Glyph::Idieresis),
	Some(Glyph::Eth),
	Some(Glyph::Ntilde),
	Some(Glyph::Ograve),
	Some(Glyph::Oacute),
	Some(Glyph::Ocircumflex),
	Some(Glyph::Otilde),
	Some(Glyph::Odieresis),
	Some(Glyph::multiply),
	Some(Glyph::Oslash),
	Some(Glyph::Ugrave),
	Some(Glyph::Uacute),
	Some(Glyph::Ucircumflex),
	Some(Glyph::Udieresis),
	Some(Glyph::Yacute),
	Some(Glyph::Thorn),
	Some(Glyph::germandbls),
	Some(Glyph::agrave),
	Some(Glyph::aacute),
	Some(Glyph::acircumflex),
	Some(Glyph::atilde),
	Some(Glyph::adieresis),
	Some(Glyph::aring),
	Some(Glyph::ae),
	Some(Glyph::ccedilla),
	Some(Glyph::egrave),
	Some(Glyph::eacute),
	Some(Glyph::ecircumflex),
	Some(Glyph::edieresis),
	Some(Glyph::igrave),
	Some(Glyph::iacute),
	Some(Glyph::icircumflex),
	Some(Glyph::idieresis),
	Some(Glyph::eth),
	Some(Glyph::ntilde),
	Some(Glyph::ograve),
	Some(Glyph::oacute),
	Some(Glyph::ocircumflex),
	Some(Glyph::otilde),
	Some(Glyph::odieresis),
	Some(Glyph::divide),
	Some(Glyph::oslash),
	Some(Glyph::ugrave),
	Some(Glyph::uacute),
	Some(Glyph::ucircumflex),
	Some(Glyph::udieresis),
	Some(Glyph::yacute),
	Some(Glyph::thorn),
	Some(Glyph::ydieresis),
];

pub const STANDARD_ENCODING: [Option<u16>; 256] = [
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::space),
	Some(Glyph::exclam),
	Some(Glyph::quotedbl),
	Some(Glyph::numbersign),
	Some(Glyph::dollar),
	Some(Glyph::percent),
	Some(Glyph::ampersand),
	Some(Glyph::quoteright),
	Some(Glyph::parenleft),
	Some(Glyph::parenright),
	Some(Glyph::asterisk),
	Some(Glyph::plus),
	Some(Glyph::comma),
	Some(Glyph::hyphen),
	Some(Glyph::period),
	Some(Glyph::slash),
	Some(Glyph::zero),
	Some(Glyph::one),
	Some(Glyph::two),
	Some(Glyph::three),
	Some(Glyph::four),
	Some(Glyph::five),
	Some(Glyph::six),
	Some(Glyph::seven),
	Some(Glyph::eight),
	Some(Glyph::nine),
	Some(Glyph::colon),
	Some(Glyph::semicolon),
	Some(Glyph::less),
	Some(Glyph::equal),
	Some(Glyph::greater),
	Some(Glyph::question),
	Some(Glyph::at),
	Some(Glyph::A),
	Some(Glyph::B),
	Some(Glyph::C),
	Some(Glyph::D),
	Some(Glyph::E),
	Some(Glyph::F),
	Some(Glyph::G),
	Some(Glyph::H),
	Some(Glyph::I),
	Some(Glyph::J),
	Some(Glyph::K),
	Some(Glyph::L),
	Some(Glyph::M),
	Some(Glyph::N),
	Some(Glyph::O),
	Some(Glyph::P),
	Some(Glyph::Q),
	Some(Glyph::R),
	Some(Glyph::S),
	Some(Glyph::T),
	Some(Glyph::U),
	Some(Glyph::V),
	Some(Glyph::W),
	Some(Glyph::X),
	Some(Glyph::Y),
	Some(Glyph::Z),
	Some(Glyph::bracketleft),
	Some(Glyph::backslash),
	Some(Glyph::bracketright),
	Some(Glyph::asciicircum),
	Some(Glyph::underscore),
	Some(Glyph::quoteleft),
	Some(Glyph::a),
	Some(Glyph::b),
	Some(Glyph::c),
	Some(Glyph::d),
	Some(Glyph::e),
	Some(Glyph::f),
	Some(Glyph::g),
	Some(Glyph::h),
	Some(Glyph::i),
	Some(Glyph::j),
	Some(Glyph::k),
	Some(Glyph::l),
	Some(Glyph::m),
	Some(Glyph::n),
	Some(Glyph::o),
	Some(Glyph::p),
	Some(Glyph::q),
	Some(Glyph::r),
	Some(Glyph::s),
	Some(Glyph::t),
	Some(Glyph::u),
	Some(Glyph::v),
	Some(Glyph::w),
	Some(Glyph::x),
	Some(Glyph::y),
	Some(Glyph::z),
	Some(Glyph::braceleft),
	Some(Glyph::bar),
	Some(Glyph::braceright),
	Some(Glyph::asciitilde),
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::exclamdown),
	Some(Glyph::cent),
	Some(Glyph::sterling),
	Some(Glyph::fraction),
	Some(Glyph::yen),
	Some(Glyph::florin),
	Some(Glyph::section),
	Some(Glyph::currency),
	Some(Glyph::quotesingle),
	Some(Glyph::quotedblleft),
	Some(Glyph::guillemotleft),
	Some(Glyph::guilsinglleft),
	Some(Glyph::guilsinglright),
	Some(Glyph::fi),
	Some(Glyph::fl),
	None,
	Some(Glyph::endash),
	Some(Glyph::dagger),
	Some(Glyph::daggerdbl),
	Some(Glyph::periodcentered),
	None,
	Some(Glyph::paragraph),
	Some(Glyph::bullet),
	Some(Glyph::quotesinglbase),
	Some(Glyph::quotedblbase),
	Some(Glyph::quotedblright),
	Some(Glyph::guillemotright),
	Some(Glyph::ellipsis),
	Some(Glyph::perthousand),
	None,
	Some(Glyph::questiondown),
	None,
	Some(Glyph::grave),
	Some(Glyph::acute),
	Some(Glyph::circumflex),
	Some(Glyph::tilde),
	Some(Glyph::macron),
	Some(Glyph::breve),
	Some(Glyph::dotaccent),
	Some(Glyph::dieresis),
	None,
	Some(Glyph::ring),
	Some(Glyph::cedilla),
	None,
	Some(Glyph::hungarumlaut),
	Some(Glyph::ogonek),
	Some(Glyph::caron),
	Some(Glyph::emdash),
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::AE),
	None,
	Some(Glyph::ordfeminine),
	None,
	None,
	None,
	None,
	Some(Glyph::Lslash),
	Some(Glyph::Oslash),
	Some(Glyph::OE),
	Some(Glyph::ordmasculine),
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::ae),
	None,
	None,
	None,
	Some(Glyph::dotlessi),
	None,
	None,
	Some(Glyph::lslash),
	Some(Glyph::oslash),
	Some(Glyph::oe),
	Some(Glyph::germandbls),
	None,
	None,
	None,
	None,
];

#[allow(dead_code)]
pub const EXPERT_ENCODING: [Option<u16>; 256] = [
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::space),
	Some(Glyph::exclamsmall),
	Some(Glyph::Hungarumlautsmall),
	None,
	Some(Glyph::dollaroldstyle),
	Some(Glyph::dollarsuperior),
	Some(Glyph::ampersandsmall),
	Some(Glyph::Acutesmall),
	Some(Glyph::parenleftsuperior),
	Some(Glyph::parenrightsuperior),
	Some(Glyph::twodotenleader),
	Some(Glyph::onedotenleader),
	Some(Glyph::comma),
	Some(Glyph::hyphen),
	Some(Glyph::period),
	Some(Glyph::fraction),
	Some(Glyph::zerooldstyle),
	Some(Glyph::oneoldstyle),
	Some(Glyph::twooldstyle),
	Some(Glyph::threeoldstyle),
	Some(Glyph::fouroldstyle),
	Some(Glyph::fiveoldstyle),
	Some(Glyph::sixoldstyle),
	Some(Glyph::sevenoldstyle),
	Some(Glyph::eightoldstyle),
	Some(Glyph::nineoldstyle),
	Some(Glyph::colon),
	Some(Glyph::semicolon),
	Some(Glyph::commasuperior),
	Some(Glyph::threequartersemdash),
	Some(Glyph::periodsuperior),
	Some(Glyph::questionsmall),
	None,
	Some(Glyph::asuperior),
	Some(Glyph::bsuperior),
	Some(Glyph::centsuperior),
	Some(Glyph::dsuperior),
	Some(Glyph::esuperior),
	None,
	None,
	None,
	Some(Glyph::isuperior),
	None,
	None,
	Some(Glyph::lsuperior),
	Some(Glyph::msuperior),
	Some(Glyph::nsuperior),
	Some(Glyph::osuperior),
	None,
	None,
	Some(Glyph::rsuperior),
	Some(Glyph::ssuperior),
	Some(Glyph::tsuperior),
	None,
	Some(Glyph::ff),
	Some(Glyph::fi),
	Some(Glyph::fl),
	Some(Glyph::ffi),
	Some(Glyph::ffl),
	Some(Glyph::parenleftinferior),
	None,
	Some(Glyph::parenrightinferior),
	Some(Glyph::Circumflexsmall),
	Some(Glyph::hyphensuperior),
	Some(Glyph::Gravesmall),
	Some(Glyph::Asmall),
	Some(Glyph::Bsmall),
	Some(Glyph::Csmall),
	Some(Glyph::Dsmall),
	Some(Glyph::Esmall),
	Some(Glyph::Fsmall),
	Some(Glyph::Gsmall),
	Some(Glyph::Hsmall),
	Some(Glyph::Ismall),
	Some(Glyph::Jsmall),
	Some(Glyph::Ksmall),
	Some(Glyph::Lsmall),
	Some(Glyph::Msmall),
	Some(Glyph::Nsmall),
	Some(Glyph::Osmall),
	Some(Glyph::Psmall),
	Some(Glyph::Qsmall),
	Some(Glyph::Rsmall),
	Some(Glyph::Ssmall),
	Some(Glyph::Tsmall),
	Some(Glyph::Usmall),
	Some(Glyph::Vsmall),
	Some(Glyph::Wsmall),
	Some(Glyph::Xsmall),
	Some(Glyph::Ysmall),
	Some(Glyph::Zsmall),
	Some(Glyph::colonmonetary),
	Some(Glyph::onefitted),
	Some(Glyph::rupiah),
	Some(Glyph::Tildesmall),
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::exclamdownsmall),
	Some(Glyph::centoldstyle),
	Some(Glyph::Lslashsmall),
	None,
	None,
	Some(Glyph::Scaronsmall),
	Some(Glyph::Zcaronsmall),
	Some(Glyph::Dieresissmall),
	Some(Glyph::Brevesmall),
	Some(Glyph::Caronsmall),
	None,
	Some(Glyph::Dotaccentsmall),
	None,
	None,
	Some(Glyph::Macronsmall),
	None,
	None,
	Some(Glyph::figuredash),
	Some(Glyph::hypheninferior),
	None,
	None,
	Some(Glyph::Ogoneksmall),
	Some(Glyph::Ringsmall),
	Some(Glyph::Cedillasmall),
	None,
	None,
	None,
	Some(Glyph::onequarter),
	Some(Glyph::onehalf),
	Some(Glyph::threequarters),
	Some(Glyph::questiondownsmall),
	Some(Glyph::oneeighth),
	Some(Glyph::threeeighths),
	Some(Glyph::fiveeighths),
	Some(Glyph::seveneighths),
	Some(Glyph::onethird),
	Some(Glyph::twothirds),
	None,
	None,
	Some(Glyph::zerosuperior),
	Some(Glyph::onesuperior),
	Some(Glyph::twosuperior),
	Some(Glyph::threesuperior),
	Some(Glyph::foursuperior),
	Some(Glyph::fivesuperior),
	Some(Glyph::sixsuperior),
	Some(Glyph::sevensuperior),
	Some(Glyph::eightsuperior),
	Some(Glyph::ninesuperior),
	Some(Glyph::zeroinferior),
	Some(Glyph::oneinferior),
	Some(Glyph::twoinferior),
	Some(Glyph::threeinferior),
	Some(Glyph::fourinferior),
	Some(Glyph::fiveinferior),
	Some(Glyph::sixinferior),
	Some(Glyph::seveninferior),
	Some(Glyph::eightinferior),
	Some(Glyph::nineinferior),
	Some(Glyph::centinferior),
	Some(Glyph::dollarinferior),
	Some(Glyph::periodinferior),
	Some(Glyph::commainferior),
	Some(Glyph::Agravesmall),
	Some(Glyph::Aacutesmall),
	Some(Glyph::Acircumflexsmall),
	Some(Glyph::Atildesmall),
	Some(Glyph::Adieresissmall),
	Some(Glyph::Aringsmall),
	Some(Glyph::AEsmall),
	Some(Glyph::Ccedillasmall),
	Some(Glyph::Egravesmall),
	Some(Glyph::Eacutesmall),
	Some(Glyph::Ecircumflexsmall),
	Some(Glyph::Edieresissmall),
	Some(Glyph::Igravesmall),
	Some(Glyph::Iacutesmall),
	Some(Glyph::Icircumflexsmall),
	Some(Glyph::Idieresissmall),
	Some(Glyph::Ethsmall),
	Some(Glyph::Ntildesmall),
	Some(Glyph::Ogravesmall),
	Some(Glyph::Oacutesmall),
	Some(Glyph::Ocircumflexsmall),
	Some(Glyph::Otildesmall),
	Some(Glyph::Odieresissmall),
	Some(Glyph::OEsmall),
	Some(Glyph::Oslashsmall),
	Some(Glyph::Ugravesmall),
	Some(Glyph::Uacutesmall),
	Some(Glyph::Ucircumflexsmall),
	Some(Glyph::Udieresissmall),
	Some(Glyph::Yacutesmall),
	Some(Glyph::Thornsmall),
	Some(Glyph::Ydieresissmall),
];

#[allow(dead_code)]
pub const SYMBOL_ENCODING: [Option<u16>; 256] = [
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::space),
	Some(Glyph::exclam),
	Some(Glyph::universal),
	Some(Glyph::numbersign),
	Some(Glyph::existential),
	Some(Glyph::percent),
	Some(Glyph::ampersand),
	Some(Glyph::suchthat),
	Some(Glyph::parenleft),
	Some(Glyph::parenright),
	Some(Glyph::asteriskmath),
	Some(Glyph::plus),
	Some(Glyph::comma),
	Some(Glyph::minus),
	Some(Glyph::period),
	Some(Glyph::slash),
	Some(Glyph::zero),
	Some(Glyph::one),
	Some(Glyph::two),
	Some(Glyph::three),
	Some(Glyph::four),
	Some(Glyph::five),
	Some(Glyph::six),
	Some(Glyph::seven),
	Some(Glyph::eight),
	Some(Glyph::nine),
	Some(Glyph::colon),
	Some(Glyph::semicolon),
	Some(Glyph::less),
	Some(Glyph::equal),
	Some(Glyph::greater),
	Some(Glyph::question),
	Some(Glyph::congruent),
	Some(Glyph::Alpha),
	Some(Glyph::Beta),
	Some(Glyph::Chi),
	Some(Glyph::Delta),
	Some(Glyph::Epsilon),
	Some(Glyph::Phi),
	Some(Glyph::Gamma),
	Some(Glyph::Eta),
	Some(Glyph::Iota),
	Some(Glyph::theta1),
	Some(Glyph::Kappa),
	Some(Glyph::Lambda),
	Some(Glyph::Mu),
	Some(Glyph::Nu),
	Some(Glyph::Omicron),
	Some(Glyph::Pi),
	Some(Glyph::Theta),
	Some(Glyph::Rho),
	Some(Glyph::Sigma),
	Some(Glyph::Tau),
	Some(Glyph::Upsilon),
	Some(Glyph::sigma1),
	Some(Glyph::Omega),
	Some(Glyph::Xi),
	Some(Glyph::Psi),
	Some(Glyph::Zeta),
	Some(Glyph::bracketleft),
	Some(Glyph::therefore),
	Some(Glyph::bracketright),
	Some(Glyph::perpendicular),
	Some(Glyph::underscore),
	Some(Glyph::radicalex),
	Some(Glyph::alpha),
	Some(Glyph::beta),
	Some(Glyph::chi),
	Some(Glyph::delta),
	Some(Glyph::epsilon),
	Some(Glyph::phi),
	Some(Glyph::gamma),
	Some(Glyph::eta),
	Some(Glyph::iota),
	Some(Glyph::phi2),
	Some(Glyph::kappa),
	Some(Glyph::lambda),
	Some(Glyph::mu),
	Some(Glyph::nu),
	Some(Glyph::omicron),
	Some(Glyph::pi),
	Some(Glyph::theta),
	Some(Glyph::rho),
	Some(Glyph::sigma),
	Some(Glyph::tau),
	Some(Glyph::upsilon),
	Some(Glyph::omega1),
	Some(Glyph::omega),
	Some(Glyph::xi),
	Some(Glyph::psi),
	Some(Glyph::zeta),
	Some(Glyph::braceleft),
	Some(Glyph::bar),
	Some(Glyph::braceright),
	Some(Glyph::similar),
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	None,
	Some(Glyph::Upsilon1),
	Some(Glyph::minute),
	Some(Glyph::lessequal),
	Some(Glyph::fraction),
	Some(Glyph::infinity),
	Some(Glyph::florin),
	Some(Glyph::club),
	Some(Glyph::diamond),
	Some(Glyph::heart),
	Some(Glyph::spade),
	Some(Glyph::arrowboth),
	Some(Glyph::arrowleft),
	Some(Glyph::arrowup),
	Some(Glyph::arrowright),
	Some(Glyph::arrowdown),
	Some(Glyph::degree),
	Some(Glyph::plusminus),
	Some(Glyph::second),
	Some(Glyph::greaterequal),
	Some(Glyph::multiply),
	Some(Glyph::proportional),
	Some(Glyph::partialdiff),
	Some(Glyph::bullet),
	Some(Glyph::divide),
	Some(Glyph::notequal),
	Some(Glyph::equivalence),
	Some(Glyph::approxequal),
	Some(Glyph::ellipsis),
	Some(Glyph::arrowvertex),
	Some(Glyph::arrowhorizex),
	Some(Glyph::carriagereturn),
	Some(Glyph::aleph),
	Some(Glyph::Ifraktur),
	Some(Glyph::Rfraktur),
	Some(Glyph::weierstrass),
	Some(Glyph::circlemultiply),
	Some(Glyph::circleplus),
	Some(Glyph::emptyset),
	Some(Glyph::intersection),
	Some(Glyph::union),
	Some(Glyph::propersuperset),
	Some(Glyph::reflexsuperset),
	Some(Glyph::notsubset),
	Some(Glyph::propersubset),
	Some(Glyph::reflexsubset),
	Some(Glyph::element),
	Some(Glyph::notelement),
	Some(Glyph::angle),
	Some(Glyph::gradient),
	Some(Glyph::registerserif),
	Some(Glyph::copyrightserif),
	Some(Glyph::trademarkserif),
	Some(Glyph::product),
	Some(Glyph::radical),
	Some(Glyph::dotmath),
	Some(Glyph::logicalnot),
	Some(Glyph::logicaland),
	Some(Glyph::logicalor),
	Some(Glyph::arrowdblboth),
	Some(Glyph::arrowdblleft),
	Some(Glyph::arrowdblup),
	Some(Glyph::arrowdblright),
	Some(Glyph::arrowdbldown),
	Some(Glyph::lozenge),
	Some(Glyph::angleleft),
	Some(Glyph::registersans),
	Some(Glyph::copyrightsans),
	Some(Glyph::trademarksans),
	Some(Glyph::summation),
	Some(Glyph::parenlefttp),
	Some(Glyph::parenleftex),
	Some(Glyph::parenleftbt),
	Some(Glyph::bracketlefttp),
	Some(Glyph::bracketleftex),
	Some(Glyph::bracketleftbt),
	Some(Glyph::bracelefttp),
	Some(Glyph::braceleftmid),
	Some(Glyph::braceleftbt),
	Some(Glyph::braceex),
	None,
	Some(Glyph::angleright),
	Some(Glyph::integral),
	Some(Glyph::integraltp),
	Some(Glyph::integralex),
	Some(Glyph::integralbt),
	Some(Glyph::parenrighttp),
	Some(Glyph::parenrightex),
	Some(Glyph::parenrightbt),
	Some(Glyph::bracketrighttp),
	Some(Glyph::bracketrightex),
	Some(Glyph::bracketrightbt),
	Some(Glyph::bracerighttp),
	Some(Glyph::bracerightmid),
	Some(Glyph::bracerightbt),
	None,
];
