diff options
author | Karl Berry <karl@freefriends.org> | 2023-05-12 20:34:18 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2023-05-12 20:34:18 +0000 |
commit | d98986c2e45bd42cd86cc671e9c787bd3b0ae7bf (patch) | |
tree | 2321b766639e6b2e3faacf5ee6882e57029189c5 /Master/texmf-dist | |
parent | 9bf3b02f8a5f474b534bfc3aa17d771c82ef934d (diff) |
unicode-math-input (12may23)
git-svn-id: svn://tug.org/texlive/trunk@67085 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
7 files changed, 4193 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/unicode-math-input/DEPENDS.txt b/Master/texmf-dist/doc/latex/unicode-math-input/DEPENDS.txt new file mode 100644 index 00000000000..030077db7c3 --- /dev/null +++ b/Master/texmf-dist/doc/latex/unicode-math-input/DEPENDS.txt @@ -0,0 +1,3 @@ +expl3 +iftex +l3keys2e diff --git a/Master/texmf-dist/doc/latex/unicode-math-input/README b/Master/texmf-dist/doc/latex/unicode-math-input/README new file mode 100644 index 00000000000..5533cf62610 --- /dev/null +++ b/Master/texmf-dist/doc/latex/unicode-math-input/README @@ -0,0 +1,24 @@ +unicode-math-input -- Allow entering Unicode symbols in math formulas +Allow entering Unicode symbols in math formulas. + +Released under the LaTeX Project Public License v1.3c or later +See http://www.latex-project.org/lppl.txt + +Report bugs at https://github.com/user202729/TeXlib + +======== + +Copyright 2022-2023 user202729 + +This work may be distributed and/or modified under the conditions of the +LaTeX Project Public License (LPPL), either version 1.3c of this license or +(at your option) any later version. The latest version of this license is in +the file: + + http://www.latex-project.org/lppl.txt + +This work has the LPPL maintenance status `maintained'. + +The Current Maintainer of this work is user202729. + +This work consists of the files unicode-math-input.sty, unicode-math-input-script.py, unicode-math-input-table.tex. diff --git a/Master/texmf-dist/doc/latex/unicode-math-input/unicode-math-input-script.py b/Master/texmf-dist/doc/latex/unicode-math-input/unicode-math-input-script.py new file mode 100644 index 00000000000..a3dbbb46254 --- /dev/null +++ b/Master/texmf-dist/doc/latex/unicode-math-input/unicode-math-input-script.py @@ -0,0 +1,591 @@ +#!/bin/python3 +# This file is not used while TeX is running. It's for generating unicode-math-input-table.tex file only. +# This requires pythonimmediate (not sure which version is compatible but commit 63f94476a5cb11e33db1215a9bf7c17657d9773d on Python 3.10.10 is) + +from __future__ import annotations + +from pythonimmediate.engine import ChildProcessEngine +from pythonimmediate.engine import default_engine +from pythonimmediate import* +import pythonimmediate +from collections import defaultdict +import os +import json +import subprocess +import re +import sys +import unicodedata +import functools +from dataclasses import dataclass + +# ======== + +print(r'% This file is automatically generated from unicode-math-input-script.py.') + + + +# ======== start a luatex engine +engine=ChildProcessEngine("luatex", env={**os.environ, "hash_extra": "0"}) +# https://tex.stackexchange.com/questions/574607/tex-hashtokens-incomplete +default_engine.set_engine(engine) + +Catcode.active("a").meaning_str() + + +""" +from the TeXbook: + +(INITEX starts out with +\mathcode x = x for all characters x that are neither letters nor digits. The ten digits +have \mathcode x = x+"7000; the 52 letters have \mathcode x = x+"7100.) +""" +# ======== reset all mathcode to 0 +TokenList([r"\directlua", TokenList.fstr( +r""" +for i=0, 0x10ffff do + tex.setmathcode(i, {0, 0, 0}) +end +""" +)]).execute() + +# ======== load unicode-math +execute(r''' +\documentclass{article} +\usepackage{unicode-math} +\begin{document} +''') + +# ======== print changed mathcodes (we aim to support all of these) +changed_mathcodes = TokenList([r"\directlua", TokenList.fstr( +r""" +for i=0, 0x10ffff do + local cls, family, pos=table.unpack(tex.getmathcode(i)) + if not ( + --(cls==0 and family==0 and pos==i) or (cls==7 and family==1 and pos==i) + (cls==0 and family==0 and pos==0) + ) then + tex.print(-2, i .. ":"..utf8.char(i)..":" .. cls..' '..family..' '..pos .. "\n") + end +end +""" +)]).expand_x().str() + +changed_chars: set[str] = set() +for line in changed_mathcodes.splitlines(): + match = re.fullmatch(r'(\d+):(.):(\d+) (\d+) (\d+)', line) + assert match + unicode_char = match[2] + assert match[2]==chr(int(match[1])), match + if match[3]=="8" and match[4]=="0" and match[5]=="0": + code = Umathcode.active + else: + code = Umathcode(int(match[4]), MathClass.lookup(int(match[3])), int(match[5])) + changed_chars.add(unicode_char) + +# ======== parse the unicode math table + +path = subprocess.run(["kpsewhich", "unicode-math-table.tex"], stdout=subprocess.PIPE).stdout +lines = Path(path.decode('u8').strip('\n')).read_text().splitlines() +lines = [line for line in lines if line and not line.startswith("%")] +unicode_math_table_=defaultdict(list) +for line in lines: + match = re.fullmatch(r'\\UnicodeMathSymbol{"(.*)}{\\(.*?) *}{\\math(.*)}{(.*)}%', line) + assert match + unicode_char=chr(int(match[1], 16)) + csname=match[2] + #unicode_math_table_.append(Item(unicode_char=unicode_char, csname=csname)) + unicode_math_table_[unicode_char].append(csname) +unicode_math_table={unicode_char: tuple(csnames) for unicode_char, csnames in unicode_math_table_.items()} + +# ======== check how much of the table is valid on unicode-math/luatex + +def getdelcode(x: str)->tuple[int, int, int, int]: + return tuple(map(int, TokenList([r"\directlua", TokenList.fstr( # type: ignore + r""" + for _, v in ipairs(tex.getdelcode(""" + str(ord(x)) + r""")) do tex.sprint(v..",") end + """ + )]).expand_x().str().rstrip(",").split(","))) + +@functools.lru_cache(maxsize=None) +def meaning(csname: str)->str: + return T[csname].meaning_str() + +@functools.lru_cache(maxsize=None) +def good_delimiter(meaning: str, ch: str)->bool: + math = umathcode[ch] + o = ord(ch) + if math.family!=0 or math.position!=o: return False + a, b, c, d = getdelcode(ch) + if a!=0 or b!=o or c!=0 or d!=0: return False + other = f'\\protected macro:->\\Udelimiter {math.cls.value}\\symoperators "{o:05X}\\scan_stop: ' + return meaning==other + +specially_handled = { + match[1] for match in + re.finditer(r'\\__umi_special_handle{(.)}', Path("unicode-math-input.sty").read_text()) + } + +not_handled = {*"⎴⎵⏜⏝⏞⏟⟌\u03a2\U0001d455"} + +math_alphabet_translate = { + "mup" : None, + "mbf" : "umiMathbf", + "mit" : "umiMathit", + "mbfit" : "umiMathbfit", # https://tex.stackexchange.com/questions/14395/bold-italic-vectors + "mscr" : "umiMathscr", + "mbfscr" : "umiMathbfscr", # https://tex.stackexchange.com/questions/23455/latex-calligraphic-script-bold + "mfrak" : "umiMathfrak", + "Bbb" : "umiMathbb", + "mitBbb" : "umiMathbbit", # https://tex.stackexchange.com/questions/16645/blackboard-italic-font + "mbffrak" : "umiMathbffrak", # https://tex.stackexchange.com/questions/610696/may-i-have-bold-mathfraktur + "msans" : "umiMathsf", + "mbfsans" : "umiMathsfbf", # https://tex.stackexchange.com/questions/340097/bold-sans-serif-math-font + "mitsans" : "umiMathsfit", + "mbfitsans": "umiMathsfbfit", + "mtt" : "umiMathtt", + } +math_alphabet_translate = dict(sorted(math_alphabet_translate.items(), key=lambda x: -len(x[0]))) # match against longest prefix first +math_alphabet_csname_translation = { + "alpha": r"\alpha", + "Alpha": r"\Alpha", + "beta": r"\beta", + "Beta": r"\Beta", + "chi": r"\chi", + "Chi": r"\Chi", + "delta": r"\delta", + "Delta": r"\Delta", + "digamma": r"\digamma", + "Digamma": r"\Digamma", + "epsilon": r"\epsilon", + "Epsilon": r"\Epsilon", + "eta": r"\eta", + "Eta": r"\Eta", + "gamma": r"\gamma", + "Gamma": r"\Gamma", + "iota": r"\iota", + "Iota": r"\Iota", + "kappa": r"\kappa", + "Kappa": r"\Kappa", + "lambda": r"\lambda", + "Lambda": r"\Lambda", + "mu": r"\mu", + "Mu": r"\Mu", + "nabla": r"\nabla", + "nu": r"\nu", + "Nu": r"\Nu", + "omega": r"\omega", + "Omega": r"\Omega", + "omicron": r"\omicron", + "Omicron": r"\Omicron", + "partial": r"\partial", + "phi": r"\phi", + "Phi": r"\Phi", + "pi": r"\pi", + "Pi": r"\Pi", + "psi": r"\psi", + "Psi": r"\Psi", + "rho": r"\rho", + "Rho": r"\Rho", + "sigma": r"\sigma", + "Sigma": r"\Sigma", + "sum": r"\sum", + "tau": r"\tau", + "Tau": r"\Tau", + "theta": r"\theta", + "Theta": r"\Theta", + "upsilon": r"\upsilon", + "Upsilon": r"\Upsilon", + "varepsilon": r"\varepsilon", + "varkappa": r"\varkappa", + "varphi": r"\varphi", + "varpi": r"\varpi", + "varrho": r"\varrho", + "varsigma": r"\varsigma", + "vartheta": r"\vartheta", + "varTheta": r"\varTheta", + "xi": r"\xi", + "Xi": r"\Xi", + "zeta": r"\zeta", + "Zeta": r"\Zeta", + "a": "a", + "A": "A", + "b": "b", + "B": "B", + "c": "c", + "C": "C", + "d": "d", + "D": "D", + "e": "e", + "E": "E", + "f": "f", + "F": "F", + "g": "g", + "G": "G", + "h": "h", + "H": "H", + "i": "i", + "I": "I", + "j": "j", + "J": "J", + "k": "k", + "K": "K", + "l": "l", + "L": "L", + "m": "m", + "M": "M", + "n": "n", + "N": "N", + "o": "o", + "O": "O", + "p": "p", + "P": "P", + "q": "q", + "Q": "Q", + "r": "r", + "R": "R", + "s": "s", + "S": "S", + "t": "t", + "T": "T", + "u": "u", + "U": "U", + "v": "v", + "V": "V", + "w": "w", + "W": "W", + "x": "x", + "X": "X", + "y": "y", + "Y": "Y", + "z": "z", + "Z": "Z", + "zero" : "0", + "one" : "1", + "two" : "2", + "three": "3", + "four" : "4", + "five" : "5", + "six" : "6", + "seven": "7", + "eight": "8", + "nine" : "9", + } + +math_alphabet_redundant_greek = { + r"\Alpha" : "A", + r"\Beta" : "B", + r"\Chi" : "X", + r"\Digamma": "F", + r"\Epsilon": "E", + r"\Eta" : "H", + r"\Iota" : "I", + r"\Kappa" : "K", + r"\Mu" : "M", + r"\Nu" : "N", + r"\omicron": "o", + r"\Omicron": "O", + r"\Rho" : "P", + r"\Tau" : "T", + r"\Zeta" : "Z", + } + +extra_synonyms = {v: u for u in + [ + ["adots", "iddots"] + ] + for v in u} + +## + +remaining_chars = changed_chars - {*unicode_math_table} - specially_handled - not_handled +remaining_chars = {x for x in remaining_chars if ord(x) >= 0x80} + +for i in range(ord("!"), ord("~")+1): + fullch=chr(0xff00+i-0x20) + assert unicodedata.name(fullch) == "FULLWIDTH " + unicodedata.name(chr(i)) + if fullch in remaining_chars: remaining_chars.remove(fullch) + print(r'\__umi_define_char{' + fullch + r'}{\char'+str(i)+' }') + +defined_csnames = {x for l in unicode_math_table.values() for x in l} + + +pdf_engine=ChildProcessEngine("pdftex") +execute(r""" +\documentclass{article} +\usepackage{amsmath} +\usepackage{amssymb} +\usepackage{amsfonts} +\usepackage{mathrsfs} +\begin{document} +""", engine=pdf_engine) + +for unicode_char, csnames_ in unicode_math_table.items(): + csnames = [*csnames_] + if unicodedata.combining(unicode_char) != 0: + if 0: + print( + repr(unicode_char), + f"U+{ord(unicode_char):04X}", + unicodedata.name(unicode_char), + "mathcode: ", umathcode[unicode_char], + {csname: meaning(csname) for csname in csnames}, + f" -- good: {good}" if good else "" + ) + for csname in csnames: + assert "Umathaccent" in meaning(csname), (unicode_char, unicodedata.name(unicode_char), csname, meaning(csname)) + continue # don't support combining characters + + is_combining2="COMBINING" in unicodedata.name(unicode_char).split() + if is_combining2: + for csname in csnames: + assert csname in "enclosecircle enclosesquare enclosediamond enclosetriangle".split(), (unicode_char, csname) + assert len(csnames)==1 + + optional_space=" " if is_combining2 else "" + + if ord(unicode_char) <= 0x7f: continue + if unicode_char in specially_handled or unicode_char in not_handled: continue + # + bad_or_delimiter = [csname for csname in csnames if meaning(csname) != "the character " + unicode_char] + delimiter = [csname for csname in bad_or_delimiter if good_delimiter(meaning(csname), unicode_char)] + bad = [*{*bad_or_delimiter} - {*delimiter}] + is_delimiter = delimiter or getdelcode(unicode_char)!=(-1, 0, 0, 0) + # in unicode-math: + # the situation with ⟨/langle and ↑/uparrow is different + # in both cases the character gets assigned mathcode and delcode so \left⟨ and \left↑ both work + # in langle case the macro is defined to be \protected macro:->\Udelimiter 4\symoperators "027E8\scan_stop: + # this is because of @@_set_math_open logic which sets the macro like that + # (I don't know why it doesn't just do the thing below) + # in uparrow case the macro is defined to be "the character ↑" + # then delcode is assigned in @@_assign_delcode manually + if bad: + good = [*set(csnames) - set(bad)] + print( + repr(unicode_char), + f"U+{ord(unicode_char):04X}", + unicodedata.name(unicode_char), + "mathcode: ", umathcode[unicode_char], + "bad: ", {csname: meaning(csname) for csname in bad}, + f" -- good: {good}" if good else "" + ) + assert False, "please specially handle this" + else: + csnames = [*csnames_] + for csname in [*csnames]: + if csname in extra_synonyms: + csnames+=extra_synonyms[csname] + csnames=[*set(csnames)] + + items1=[] + for csname in csnames: + if not is_delimiter: + assert "delimiter" not in T[csname].meaning_str(engine=pdf_engine), (unicode_char, csname) + # that is the symbol is not a delimiter in pdf_engine either (check is not particularly reliable but okay) + + for prefix, replacement in math_alphabet_translate.items(): + if csname.startswith(prefix): + cs = math_alphabet_csname_translation[csname.removeprefix(prefix)] + def wrap_in_alphabet_selector(cs: str)->str: + if replacement is None: return cs + return "\\" + replacement + "{" + cs + "}" + + if cs in math_alphabet_redundant_greek: + items1.append(wrap_in_alphabet_selector( + "\\__umi_alternatives_iisafe" + cs + ("" if math_alphabet_redundant_greek[cs].startswith("\\") else " ") + math_alphabet_redundant_greek[cs] + )) + else: + items1.append(wrap_in_alphabet_selector(cs)) + break + else: + items1.append("\\" + csname) + + if len(items1)==1: + a = items1[0] + if a.startswith(r"\not") and a.removeprefix(r"\not") in defined_csnames: + assert not is_delimiter + b='\\' + a.removeprefix(r"\not") + print(f"\\__umi_define_char{{{optional_space}{unicode_char}}}{{\__umi_alternatives_not{a}{b}}}") + a.removeprefix(r"\not") + elif a.startswith(r"\n") and a.removeprefix(r"\n") in defined_csnames: + assert not is_delimiter + b='\\' + a.removeprefix(r"\n") + print(f"\\__umi_define_char{{{optional_space}{unicode_char}}}{{\__umi_alternatives_not{a}{b}}}") + a.removeprefix(r"\n") + else: + if is_delimiter: + print(f"\\__umi_define_char_maybe_delimiter{{{optional_space}{unicode_char}}}{{{a}}}") + else: + print(f"\\__umi_define_char{{{optional_space}{unicode_char}}}{{{a}}}") + else: + assert not is_delimiter, (unicode_char, delimiter) + assert len(items1)==2, items1 + assert re.fullmatch(r'\\[a-zA-Z]+', items1[0]), items1 + assert re.fullmatch(r'\\[a-zA-Z]+', items1[1]), items1 + print(f"\\__umi_define_char{{{optional_space}{unicode_char}}}{{\\__umi_alternatives{items1[0]}{items1[1]}}}") + +## + +# ======== + +sys.exit() + +# ======== part below are draft. + +T.longdivisionsign.meaning_str() + + + +T.mathexclam.meaning_str() + +T.symoperators.meaning_str() + +T.perp.meaning_str() + +umathcode[" ̅"[1]] + +BalancedTokenList(r'\the\Udelcode `̅').expand_o().int() + +x = BalancedTokenList(r'\the\Udelcode `!').expand_o().int() +print(hex(x)) + +hex(BalancedTokenList(r'\the\delcode `!').expand_o().int()) + + + + + +if 0: + + data = TokenList([r"\directlua", TokenList.fstr( + r""" + for k, v in pairs(tex.hashtokens()) do + tex.print(-2, v .. "\0") + end + """ + )]).expand_x().str() + control_sequences = data.split("\x00") + assert control_sequences[-1]=="" + del control_sequences[-1] + + +Path("/tmp/control_sequences.json").write_text(json.dumps(control_sequences)) # type: ignore +control_sequences = json.loads(Path("/tmp/control_sequences.json").read_text()) # type: ignore + + +Path("/tmp/control_sequences_unicode_math.json").write_text(json.dumps(control_sequences)) +control_sequences = json.loads(Path("/tmp/control_sequences_unicode_math.json").read_text()) +assert "mitrho" in control_sequences + +if 0: + # try some other random things + + control_sequences = data.split("\x00") + assert control_sequences[-1]=="" + del control_sequences[-1] + + + + BalancedTokenList(r'\the\Umathcode `′').expand_o().int() == 0x1000000 + + +control_sequences + +BalancedTokenList(r'\the\mathcode`⨁').expand_o().int() + +Catcode.active("⨁").meaning_str(engine=engine) + +Catcode.active("′").meaning_str(engine=engine) + +T.bigoplus_sym.meaning_str() + +T.bigoplusop.meaning_str() + +T.bigoplus.meaning_str() + + + +T.rho.meaning_str() + +T.mitrho.meaning_str() + +T.bigoplus.meaning_str() + +engine._stdout_lines[-100:] + [bytes(engine._stdout_buffer)] + + + +T.mscrA.meaning_str() + + + + + + +@functools.lru_cache(maxsize=None) +def is_defined(csname: str)->bool: + return T[csname].meaning_str()!="undefined" + + +# show distinct items with math alphabet +a_=defaultdict(list) +for l in unicode_math_table.values(): + for csname in l: + if csname.startswith(tuple(math_alphabet_translate)): + t = csname + for prefix in sorted(math_alphabet_translate, key=len, reverse=True): + if t.startswith(prefix): + t=t.removeprefix(prefix) + break + a_[t].append(csname) +a_ + +a_.keys() + +for v in math_alphabet_csname_translation.values(): + if v.startswith("\\") and not is_defined(v[1:]): + print(v) + + + + + + +def is_okay(csname: str)->bool: + if is_defined(csname): return True + if csname.startswith(tuple(math_alphabet_translate)): return True + return False +# +# print bad ones +for unicode_char, csnames_ in unicode_math_table.items(): + if ord(unicode_char) >= 0x80 and all( not is_okay(csname) for csname in csnames_ ): + print(unicode_char, csnames_) + + +# print okay ones +for unicode_char, csnames_ in unicode_math_table.items(): + valid_csnames = [ csname for csname in csnames_ if T[csname].meaning_str()!="undefined" ] + if ord(unicode_char) >= 0x80 and valid_csnames: + print(unicode_char, valid_csnames) + +T.lsime.meaning_str() + +"ℝ".encode('u8') + +BalancedTokenList([T.meaning, Catcode.active("\xe2")]).expand_x(engine=pdf_engine) + +T["UTFviii@three@octets"].meaning_str(engine=pdf_engine) + +T["UTFviii@three@octets@combine"].meaning_str(engine=pdf_engine) + +T["UTF@three@octets@noexpand"].meaning_str(engine=pdf_engine) + +BalancedTokenList([T.meaning, Catcode.active("\xe2")]).expand_x() + +test_engine=ChildProcessEngine("pdftex") +BalancedTokenList(r"\def\aa{bb}").execute(engine=test_engine) +BalancedTokenList(r"\csname\noexpand\aa\endcsname").expand_o(engine=test_engine) # give error +BalancedTokenList(r"\csname\string\aa\endcsname").expand_o(engine=test_engine) # \[\aa] as expected + +T.iddots.meaning_str(engine=engine) + +T.adots.meaning_str(engine=engine) diff --git a/Master/texmf-dist/doc/latex/unicode-math-input/unicode-math-input-table.tex b/Master/texmf-dist/doc/latex/unicode-math-input/unicode-math-input-table.tex new file mode 100644 index 00000000000..7ab364ceddc --- /dev/null +++ b/Master/texmf-dist/doc/latex/unicode-math-input/unicode-math-input-table.tex @@ -0,0 +1,2453 @@ +% This file is automatically generated from unicode-math-input-script.py. +\__umi_define_char{!}{\char33 } +\__umi_define_char{"}{\char34 } +\__umi_define_char{#}{\char35 } +\__umi_define_char{$}{\char36 } +\__umi_define_char{%}{\char37 } +\__umi_define_char{&}{\char38 } +\__umi_define_char{'}{\char39 } +\__umi_define_char{(}{\char40 } +\__umi_define_char{)}{\char41 } +\__umi_define_char{*}{\char42 } +\__umi_define_char{+}{\char43 } +\__umi_define_char{,}{\char44 } +\__umi_define_char{-}{\char45 } +\__umi_define_char{.}{\char46 } +\__umi_define_char{/}{\char47 } +\__umi_define_char{0}{\char48 } +\__umi_define_char{1}{\char49 } +\__umi_define_char{2}{\char50 } +\__umi_define_char{3}{\char51 } +\__umi_define_char{4}{\char52 } +\__umi_define_char{5}{\char53 } +\__umi_define_char{6}{\char54 } +\__umi_define_char{7}{\char55 } +\__umi_define_char{8}{\char56 } +\__umi_define_char{9}{\char57 } +\__umi_define_char{:}{\char58 } +\__umi_define_char{;}{\char59 } +\__umi_define_char{<}{\char60 } +\__umi_define_char{=}{\char61 } +\__umi_define_char{>}{\char62 } +\__umi_define_char{?}{\char63 } +\__umi_define_char{@}{\char64 } +\__umi_define_char{A}{\char65 } +\__umi_define_char{B}{\char66 } +\__umi_define_char{C}{\char67 } +\__umi_define_char{D}{\char68 } +\__umi_define_char{E}{\char69 } +\__umi_define_char{F}{\char70 } +\__umi_define_char{G}{\char71 } +\__umi_define_char{H}{\char72 } +\__umi_define_char{I}{\char73 } +\__umi_define_char{J}{\char74 } +\__umi_define_char{K}{\char75 } +\__umi_define_char{L}{\char76 } +\__umi_define_char{M}{\char77 } +\__umi_define_char{N}{\char78 } +\__umi_define_char{O}{\char79 } +\__umi_define_char{P}{\char80 } +\__umi_define_char{Q}{\char81 } +\__umi_define_char{R}{\char82 } +\__umi_define_char{S}{\char83 } +\__umi_define_char{T}{\char84 } +\__umi_define_char{U}{\char85 } +\__umi_define_char{V}{\char86 } +\__umi_define_char{W}{\char87 } +\__umi_define_char{X}{\char88 } +\__umi_define_char{Y}{\char89 } +\__umi_define_char{Z}{\char90 } +\__umi_define_char{[}{\char91 } +\__umi_define_char{\}{\char92 } +\__umi_define_char{]}{\char93 } +\__umi_define_char{^}{\char94 } +\__umi_define_char{_}{\char95 } +\__umi_define_char{`}{\char96 } +\__umi_define_char{a}{\char97 } +\__umi_define_char{b}{\char98 } +\__umi_define_char{c}{\char99 } +\__umi_define_char{d}{\char100 } +\__umi_define_char{e}{\char101 } +\__umi_define_char{f}{\char102 } +\__umi_define_char{g}{\char103 } +\__umi_define_char{h}{\char104 } +\__umi_define_char{i}{\char105 } +\__umi_define_char{j}{\char106 } +\__umi_define_char{k}{\char107 } +\__umi_define_char{l}{\char108 } +\__umi_define_char{m}{\char109 } +\__umi_define_char{n}{\char110 } +\__umi_define_char{o}{\char111 } +\__umi_define_char{p}{\char112 } +\__umi_define_char{q}{\char113 } +\__umi_define_char{r}{\char114 } +\__umi_define_char{s}{\char115 } +\__umi_define_char{t}{\char116 } +\__umi_define_char{u}{\char117 } +\__umi_define_char{v}{\char118 } +\__umi_define_char{w}{\char119 } +\__umi_define_char{x}{\char120 } +\__umi_define_char{y}{\char121 } +\__umi_define_char{z}{\char122 } +\__umi_define_char{{}{\char123 } +\__umi_define_char{|}{\char124 } +\__umi_define_char{}}{\char125 } +\__umi_define_char{~}{\char126 } +\__umi_define_char{£}{\mathsterling} +\__umi_define_char{¥}{\mathyen} +\__umi_define_char{§}{\mathsection} +\__umi_define_char{¬}{\neg} +\__umi_define_char{±}{\pm} +\__umi_define_char{¶}{\mathparagraph} +\__umi_define_char{·}{\cdotp} +\__umi_define_char{×}{\times} +\__umi_define_char{ð}{\matheth} +\__umi_define_char{÷}{\div} +\__umi_define_char{Ƶ}{\Zbar} +\__umi_define_char{Α}{\__umi_alternatives_iisafe\Alpha A} +\__umi_define_char{Β}{\__umi_alternatives_iisafe\Beta B} +\__umi_define_char{Γ}{\Gamma} +\__umi_define_char{Δ}{\Delta} +\__umi_define_char{Ε}{\__umi_alternatives_iisafe\Epsilon E} +\__umi_define_char{Ζ}{\__umi_alternatives_iisafe\Zeta Z} +\__umi_define_char{Η}{\__umi_alternatives_iisafe\Eta H} +\__umi_define_char{Θ}{\Theta} +\__umi_define_char{Ι}{\__umi_alternatives_iisafe\Iota I} +\__umi_define_char{Κ}{\__umi_alternatives_iisafe\Kappa K} +\__umi_define_char{Λ}{\Lambda} +\__umi_define_char{Μ}{\__umi_alternatives_iisafe\Mu M} +\__umi_define_char{Ν}{\__umi_alternatives_iisafe\Nu N} +\__umi_define_char{Ξ}{\Xi} +\__umi_define_char{Ο}{\__umi_alternatives_iisafe\Omicron O} +\__umi_define_char{Π}{\Pi} +\__umi_define_char{Ρ}{\__umi_alternatives_iisafe\Rho P} +\__umi_define_char{Σ}{\Sigma} +\__umi_define_char{Τ}{\__umi_alternatives_iisafe\Tau T} +\__umi_define_char{Υ}{\Upsilon} +\__umi_define_char{Φ}{\Phi} +\__umi_define_char{Χ}{\__umi_alternatives_iisafe\Chi X} +\__umi_define_char{Ψ}{\Psi} +\__umi_define_char{Ω}{\Omega} +\__umi_define_char{α}{\alpha} +\__umi_define_char{β}{\beta} +\__umi_define_char{γ}{\gamma} +\__umi_define_char{δ}{\delta} +\__umi_define_char{ε}{\varepsilon} +\__umi_define_char{ζ}{\zeta} +\__umi_define_char{η}{\eta} +\__umi_define_char{θ}{\theta} +\__umi_define_char{ι}{\iota} +\__umi_define_char{κ}{\kappa} +\__umi_define_char{λ}{\lambda} +\__umi_define_char{μ}{\mu} +\__umi_define_char{ν}{\nu} +\__umi_define_char{ξ}{\xi} +\__umi_define_char{ο}{\__umi_alternatives_iisafe\omicron o} +\__umi_define_char{π}{\pi} +\__umi_define_char{ρ}{\rho} +\__umi_define_char{ς}{\varsigma} +\__umi_define_char{σ}{\sigma} +\__umi_define_char{τ}{\tau} +\__umi_define_char{υ}{\upsilon} +\__umi_define_char{φ}{\varphi} +\__umi_define_char{χ}{\chi} +\__umi_define_char{ψ}{\psi} +\__umi_define_char{ω}{\omega} +\__umi_define_char{ϑ}{\vartheta} +\__umi_define_char{ϕ}{\phi} +\__umi_define_char{ϖ}{\varpi} +\__umi_define_char{Ϝ}{\upDigamma} +\__umi_define_char{ϝ}{\updigamma} +\__umi_define_char{ϰ}{\varkappa} +\__umi_define_char{ϱ}{\varrho} +\__umi_define_char{ϴ}{\varTheta} +\__umi_define_char{ϵ}{\epsilon} +\__umi_define_char{϶}{\upbackepsilon} +\__umi_define_char{‐}{\mathhyphen} +\__umi_define_char{―}{\horizbar} +\__umi_define_char_maybe_delimiter{‖}{\Vert} +\__umi_define_char{‗}{\twolowline} +\__umi_define_char{†}{\dagger} +\__umi_define_char{‡}{\ddagger} +\__umi_define_char{•}{\smblkcircle} +\__umi_define_char{‥}{\enleadertwodots} +\__umi_define_char{…}{\unicodeellipsis} +\__umi_define_char{‸}{\caretinsert} +\__umi_define_char{‼}{\Exclam} +\__umi_define_char{⁀}{\tieconcat} +\__umi_define_char{⁃}{\hyphenbullet} +\__umi_define_char_maybe_delimiter{⁄}{\fracslash} +\__umi_define_char{⁇}{\Question} +\__umi_define_char{⁐}{\closure} +\__umi_define_char{€}{\euro} +\__umi_define_char{ ⃝}{\enclosecircle} +\__umi_define_char{ ⃞}{\enclosesquare} +\__umi_define_char{ ⃟}{\enclosediamond} +\__umi_define_char{ ⃤}{\enclosetriangle} +\__umi_define_char{ℂ}{\umiMathbb{C}} +\__umi_define_char{ℇ}{\Eulerconst} +\__umi_define_char{ℊ}{\umiMathscr{g}} +\__umi_define_char{ℋ}{\umiMathscr{H}} +\__umi_define_char{ℌ}{\umiMathfrak{H}} +\__umi_define_char{ℍ}{\umiMathbb{H}} +\__umi_define_char{ℎ}{\Planckconst} +\__umi_define_char{ℏ}{\hslash} +\__umi_define_char{ℐ}{\umiMathscr{I}} +\__umi_define_char{ℑ}{\Im} +\__umi_define_char{ℒ}{\umiMathscr{L}} +\__umi_define_char{ℓ}{\ell} +\__umi_define_char{ℕ}{\umiMathbb{N}} +\__umi_define_char{℘}{\wp} +\__umi_define_char{ℙ}{\umiMathbb{P}} +\__umi_define_char{ℚ}{\umiMathbb{Q}} +\__umi_define_char{ℛ}{\umiMathscr{R}} +\__umi_define_char{ℜ}{\Re} +\__umi_define_char{ℝ}{\umiMathbb{R}} +\__umi_define_char{ℤ}{\umiMathbb{Z}} +\__umi_define_char{℧}{\mho} +\__umi_define_char{ℨ}{\umiMathfrak{Z}} +\__umi_define_char{℩}{\turnediota} +\__umi_define_char{Å}{\Angstrom} +\__umi_define_char{ℬ}{\umiMathscr{B}} +\__umi_define_char{ℭ}{\umiMathfrak{C}} +\__umi_define_char{ℯ}{\umiMathscr{e}} +\__umi_define_char{ℰ}{\umiMathscr{E}} +\__umi_define_char{ℱ}{\umiMathscr{F}} +\__umi_define_char{Ⅎ}{\Finv} +\__umi_define_char{ℳ}{\umiMathscr{M}} +\__umi_define_char{ℴ}{\umiMathscr{o}} +\__umi_define_char{ℵ}{\aleph} +\__umi_define_char{ℶ}{\beth} +\__umi_define_char{ℷ}{\gimel} +\__umi_define_char{ℸ}{\daleth} +\__umi_define_char{ℼ}{\umiMathbb{\pi}} +\__umi_define_char{ℽ}{\umiMathbb{\gamma}} +\__umi_define_char{ℾ}{\umiMathbb{\Gamma}} +\__umi_define_char{ℿ}{\umiMathbb{\Pi}} +\__umi_define_char{⅀}{\umiMathbb{\sum}} +\__umi_define_char{⅁}{\Game} +\__umi_define_char{⅂}{\sansLturned} +\__umi_define_char{⅃}{\sansLmirrored} +\__umi_define_char{⅄}{\Yup} +\__umi_define_char{ⅅ}{\umiMathbbit{D}} +\__umi_define_char{ⅆ}{\umiMathbbit{d}} +\__umi_define_char{ⅇ}{\umiMathbbit{e}} +\__umi_define_char{ⅈ}{\umiMathbbit{i}} +\__umi_define_char{ⅉ}{\umiMathbbit{j}} +\__umi_define_char{⅊}{\PropertyLine} +\__umi_define_char{⅋}{\upand} +\__umi_define_char{←}{\leftarrow} +\__umi_define_char_maybe_delimiter{↑}{\uparrow} +\__umi_define_char{→}{\rightarrow} +\__umi_define_char_maybe_delimiter{↓}{\downarrow} +\__umi_define_char{↔}{\leftrightarrow} +\__umi_define_char_maybe_delimiter{↕}{\updownarrow} +\__umi_define_char{↖}{\nwarrow} +\__umi_define_char{↗}{\nearrow} +\__umi_define_char{↘}{\searrow} +\__umi_define_char{↙}{\swarrow} +\__umi_define_char{↚}{\__umi_alternatives_not\nleftarrow\leftarrow} +\__umi_define_char{↛}{\__umi_alternatives_not\nrightarrow\rightarrow} +\__umi_define_char{↜}{\leftwavearrow} +\__umi_define_char{↝}{\rightwavearrow} +\__umi_define_char{↞}{\twoheadleftarrow} +\__umi_define_char_maybe_delimiter{↟}{\twoheaduparrow} +\__umi_define_char{↠}{\twoheadrightarrow} +\__umi_define_char_maybe_delimiter{↡}{\twoheaddownarrow} +\__umi_define_char{↢}{\leftarrowtail} +\__umi_define_char{↣}{\rightarrowtail} +\__umi_define_char{↤}{\mapsfrom} +\__umi_define_char_maybe_delimiter{↥}{\mapsup} +\__umi_define_char{↦}{\mapsto} +\__umi_define_char_maybe_delimiter{↧}{\mapsdown} +\__umi_define_char_maybe_delimiter{↨}{\updownarrowbar} +\__umi_define_char{↩}{\hookleftarrow} +\__umi_define_char{↪}{\hookrightarrow} +\__umi_define_char{↫}{\looparrowleft} +\__umi_define_char{↬}{\looparrowright} +\__umi_define_char{↭}{\leftrightsquigarrow} +\__umi_define_char{↮}{\__umi_alternatives_not\nleftrightarrow\leftrightarrow} +\__umi_define_char{↯}{\downzigzagarrow} +\__umi_define_char{↰}{\Lsh} +\__umi_define_char{↱}{\Rsh} +\__umi_define_char{↲}{\Ldsh} +\__umi_define_char{↳}{\Rdsh} +\__umi_define_char{↴}{\linefeed} +\__umi_define_char{↵}{\carriagereturn} +\__umi_define_char{↶}{\curvearrowleft} +\__umi_define_char{↷}{\curvearrowright} +\__umi_define_char{↸}{\barovernorthwestarrow} +\__umi_define_char{↹}{\barleftarrowrightarrowbar} +\__umi_define_char{↺}{\acwopencirclearrow} +\__umi_define_char{↻}{\cwopencirclearrow} +\__umi_define_char{↼}{\leftharpoonup} +\__umi_define_char{↽}{\leftharpoondown} +\__umi_define_char_maybe_delimiter{↾}{\upharpoonright} +\__umi_define_char_maybe_delimiter{↿}{\upharpoonleft} +\__umi_define_char{⇀}{\rightharpoonup} +\__umi_define_char{⇁}{\rightharpoondown} +\__umi_define_char_maybe_delimiter{⇂}{\downharpoonright} +\__umi_define_char_maybe_delimiter{⇃}{\downharpoonleft} +\__umi_define_char{⇄}{\rightleftarrows} +\__umi_define_char_maybe_delimiter{⇅}{\updownarrows} +\__umi_define_char{⇆}{\leftrightarrows} +\__umi_define_char{⇇}{\leftleftarrows} +\__umi_define_char_maybe_delimiter{⇈}{\upuparrows} +\__umi_define_char{⇉}{\rightrightarrows} +\__umi_define_char_maybe_delimiter{⇊}{\downdownarrows} +\__umi_define_char{⇋}{\leftrightharpoons} +\__umi_define_char{⇌}{\rightleftharpoons} +\__umi_define_char{⇍}{\__umi_alternatives_not\nLeftarrow\Leftarrow} +\__umi_define_char{⇎}{\__umi_alternatives_not\nLeftrightarrow\Leftrightarrow} +\__umi_define_char{⇏}{\__umi_alternatives_not\nRightarrow\Rightarrow} +\__umi_define_char{⇐}{\Leftarrow} +\__umi_define_char_maybe_delimiter{⇑}{\Uparrow} +\__umi_define_char{⇒}{\Rightarrow} +\__umi_define_char_maybe_delimiter{⇓}{\Downarrow} +\__umi_define_char{⇔}{\Leftrightarrow} +\__umi_define_char_maybe_delimiter{⇕}{\Updownarrow} +\__umi_define_char{⇖}{\Nwarrow} +\__umi_define_char{⇗}{\Nearrow} +\__umi_define_char{⇘}{\Searrow} +\__umi_define_char{⇙}{\Swarrow} +\__umi_define_char{⇚}{\Lleftarrow} +\__umi_define_char{⇛}{\Rrightarrow} +\__umi_define_char{⇜}{\leftsquigarrow} +\__umi_define_char{⇝}{\rightsquigarrow} +\__umi_define_char_maybe_delimiter{⇞}{\nHuparrow} +\__umi_define_char_maybe_delimiter{⇟}{\nHdownarrow} +\__umi_define_char{⇠}{\leftdasharrow} +\__umi_define_char_maybe_delimiter{⇡}{\updasharrow} +\__umi_define_char{⇢}{\rightdasharrow} +\__umi_define_char_maybe_delimiter{⇣}{\downdasharrow} +\__umi_define_char{⇤}{\barleftarrow} +\__umi_define_char{⇥}{\rightarrowbar} +\__umi_define_char{⇦}{\leftwhitearrow} +\__umi_define_char_maybe_delimiter{⇧}{\upwhitearrow} +\__umi_define_char{⇨}{\rightwhitearrow} +\__umi_define_char_maybe_delimiter{⇩}{\downwhitearrow} +\__umi_define_char_maybe_delimiter{⇪}{\whitearrowupfrombar} +\__umi_define_char{⇴}{\circleonrightarrow} +\__umi_define_char_maybe_delimiter{⇵}{\downuparrows} +\__umi_define_char{⇶}{\rightthreearrows} +\__umi_define_char{⇷}{\nvleftarrow} +\__umi_define_char{⇸}{\nvrightarrow} +\__umi_define_char{⇹}{\nvleftrightarrow} +\__umi_define_char{⇺}{\nVleftarrow} +\__umi_define_char{⇻}{\nVrightarrow} +\__umi_define_char{⇼}{\nVleftrightarrow} +\__umi_define_char{⇽}{\leftarrowtriangle} +\__umi_define_char{⇾}{\rightarrowtriangle} +\__umi_define_char{⇿}{\leftrightarrowtriangle} +\__umi_define_char{∀}{\forall} +\__umi_define_char{∁}{\complement} +\__umi_define_char{∂}{\partial} +\__umi_define_char{∃}{\exists} +\__umi_define_char{∄}{\__umi_alternatives_not\nexists\exists} +\__umi_define_char{∅}{\varnothing} +\__umi_define_char{∆}{\increment} +\__umi_define_char{∇}{\nabla} +\__umi_define_char{∈}{\in} +\__umi_define_char{∉}{\__umi_alternatives_not\notin\in} +\__umi_define_char{∊}{\smallin} +\__umi_define_char{∋}{\ni} +\__umi_define_char{∌}{\__umi_alternatives_not\nni\ni} +\__umi_define_char{∍}{\smallni} +\__umi_define_char{∎}{\QED} +\__umi_define_char{∏}{\prod} +\__umi_define_char{∐}{\coprod} +\__umi_define_char{∑}{\sum} +\__umi_define_char{−}{\minus} +\__umi_define_char{∓}{\mp} +\__umi_define_char{∔}{\dotplus} +\__umi_define_char_maybe_delimiter{∕}{\divslash} +\__umi_define_char{∖}{\smallsetminus} +\__umi_define_char{∗}{\ast} +\__umi_define_char{∘}{\vysmwhtcircle} +\__umi_define_char{∙}{\vysmblkcircle} +\__umi_define_char{∝}{\propto} +\__umi_define_char{∞}{\infty} +\__umi_define_char{∟}{\rightangle} +\__umi_define_char{∠}{\angle} +\__umi_define_char{∡}{\measuredangle} +\__umi_define_char{∢}{\sphericalangle} +\__umi_define_char{∣}{\mid} +\__umi_define_char{∤}{\__umi_alternatives_not\nmid\mid} +\__umi_define_char{∥}{\parallel} +\__umi_define_char{∦}{\__umi_alternatives_not\nparallel\parallel} +\__umi_define_char{∧}{\wedge} +\__umi_define_char{∨}{\vee} +\__umi_define_char{∩}{\cap} +\__umi_define_char{∪}{\cup} +\__umi_define_char{∫}{\int} +\__umi_define_char{∬}{\iint} +\__umi_define_char{∭}{\iiint} +\__umi_define_char{∮}{\oint} +\__umi_define_char{∯}{\oiint} +\__umi_define_char{∰}{\oiiint} +\__umi_define_char{∱}{\intclockwise} +\__umi_define_char{∲}{\varointclockwise} +\__umi_define_char{∳}{\ointctrclockwise} +\__umi_define_char{∴}{\therefore} +\__umi_define_char{∵}{\because} +\__umi_define_char{∶}{\mathratio} +\__umi_define_char{∷}{\Colon} +\__umi_define_char{∸}{\dotminus} +\__umi_define_char{∹}{\dashcolon} +\__umi_define_char{∺}{\dotsminusdots} +\__umi_define_char{∻}{\kernelcontraction} +\__umi_define_char{∼}{\sim} +\__umi_define_char{∽}{\backsim} +\__umi_define_char{∾}{\invlazys} +\__umi_define_char{∿}{\sinewave} +\__umi_define_char{≀}{\wr} +\__umi_define_char{≁}{\__umi_alternatives_not\nsim\sim} +\__umi_define_char{≂}{\eqsim} +\__umi_define_char{≃}{\__umi_alternatives\simeq\sime} +\__umi_define_char{≄}{\__umi_alternatives\nsimeq\nsime} +\__umi_define_char{≅}{\cong} +\__umi_define_char{≆}{\simneqq} +\__umi_define_char{≇}{\__umi_alternatives_not\ncong\cong} +\__umi_define_char{≈}{\approx} +\__umi_define_char{≉}{\__umi_alternatives_not\napprox\approx} +\__umi_define_char{≊}{\approxeq} +\__umi_define_char{≋}{\approxident} +\__umi_define_char{≌}{\backcong} +\__umi_define_char{≍}{\asymp} +\__umi_define_char{≎}{\Bumpeq} +\__umi_define_char{≏}{\bumpeq} +\__umi_define_char{≐}{\doteq} +\__umi_define_char{≑}{\Doteq} +\__umi_define_char{≒}{\fallingdotseq} +\__umi_define_char{≓}{\risingdotseq} +\__umi_define_char{≔}{\coloneq} +\__umi_define_char{≕}{\eqcolon} +\__umi_define_char{≖}{\eqcirc} +\__umi_define_char{≗}{\circeq} +\__umi_define_char{≘}{\arceq} +\__umi_define_char{≙}{\wedgeq} +\__umi_define_char{≚}{\veeeq} +\__umi_define_char{≛}{\stareq} +\__umi_define_char{≜}{\triangleq} +\__umi_define_char{≝}{\eqdef} +\__umi_define_char{≞}{\measeq} +\__umi_define_char{≟}{\questeq} +\__umi_define_char{≠}{\ne} +\__umi_define_char{≡}{\equiv} +\__umi_define_char{≢}{\__umi_alternatives_not\nequiv\equiv} +\__umi_define_char{≣}{\Equiv} +\__umi_define_char{≤}{\leq} +\__umi_define_char{≥}{\geq} +\__umi_define_char{≦}{\leqq} +\__umi_define_char{≧}{\geqq} +\__umi_define_char{≨}{\lneqq} +\__umi_define_char{≩}{\gneqq} +\__umi_define_char{≪}{\ll} +\__umi_define_char{≫}{\gg} +\__umi_define_char{≬}{\between} +\__umi_define_char{≭}{\__umi_alternatives_not\nasymp\asymp} +\__umi_define_char{≮}{\__umi_alternatives_not\nless\less} +\__umi_define_char{≯}{\ngtr} +\__umi_define_char{≰}{\__umi_alternatives_not\nleq\leq} +\__umi_define_char{≱}{\__umi_alternatives_not\ngeq\geq} +\__umi_define_char{≲}{\lesssim} +\__umi_define_char{≳}{\gtrsim} +\__umi_define_char{≴}{\__umi_alternatives_not\nlesssim\lesssim} +\__umi_define_char{≵}{\__umi_alternatives_not\ngtrsim\gtrsim} +\__umi_define_char{≶}{\lessgtr} +\__umi_define_char{≷}{\gtrless} +\__umi_define_char{≸}{\__umi_alternatives_not\nlessgtr\lessgtr} +\__umi_define_char{≹}{\__umi_alternatives_not\ngtrless\gtrless} +\__umi_define_char{≺}{\prec} +\__umi_define_char{≻}{\succ} +\__umi_define_char{≼}{\preccurlyeq} +\__umi_define_char{≽}{\succcurlyeq} +\__umi_define_char{≾}{\precsim} +\__umi_define_char{≿}{\succsim} +\__umi_define_char{⊀}{\__umi_alternatives_not\nprec\prec} +\__umi_define_char{⊁}{\__umi_alternatives_not\nsucc\succ} +\__umi_define_char{⊂}{\subset} +\__umi_define_char{⊃}{\supset} +\__umi_define_char{⊄}{\__umi_alternatives_not\nsubset\subset} +\__umi_define_char{⊅}{\__umi_alternatives_not\nsupset\supset} +\__umi_define_char{⊆}{\subseteq} +\__umi_define_char{⊇}{\supseteq} +\__umi_define_char{⊈}{\__umi_alternatives_not\nsubseteq\subseteq} +\__umi_define_char{⊉}{\__umi_alternatives_not\nsupseteq\supseteq} +\__umi_define_char{⊊}{\subsetneq} +\__umi_define_char{⊋}{\supsetneq} +\__umi_define_char{⊌}{\cupleftarrow} +\__umi_define_char{⊍}{\cupdot} +\__umi_define_char{⊎}{\uplus} +\__umi_define_char{⊏}{\sqsubset} +\__umi_define_char{⊐}{\sqsupset} +\__umi_define_char{⊑}{\sqsubseteq} +\__umi_define_char{⊒}{\sqsupseteq} +\__umi_define_char{⊓}{\sqcap} +\__umi_define_char{⊔}{\sqcup} +\__umi_define_char{⊕}{\oplus} +\__umi_define_char{⊖}{\ominus} +\__umi_define_char{⊗}{\otimes} +\__umi_define_char{⊘}{\oslash} +\__umi_define_char{⊙}{\odot} +\__umi_define_char{⊚}{\circledcirc} +\__umi_define_char{⊛}{\circledast} +\__umi_define_char{⊜}{\circledequal} +\__umi_define_char{⊝}{\circleddash} +\__umi_define_char{⊞}{\boxplus} +\__umi_define_char{⊟}{\boxminus} +\__umi_define_char{⊠}{\boxtimes} +\__umi_define_char{⊡}{\boxdot} +\__umi_define_char{⊢}{\vdash} +\__umi_define_char{⊣}{\dashv} +\__umi_define_char{⊤}{\top} +\__umi_define_char{⊥}{\bot} +\__umi_define_char{⊦}{\assert} +\__umi_define_char{⊧}{\models} +\__umi_define_char{⊨}{\vDash} +\__umi_define_char{⊩}{\Vdash} +\__umi_define_char{⊪}{\Vvdash} +\__umi_define_char{⊫}{\VDash} +\__umi_define_char{⊬}{\__umi_alternatives_not\nvdash\vdash} +\__umi_define_char{⊭}{\__umi_alternatives_not\nvDash\vDash} +\__umi_define_char{⊮}{\__umi_alternatives_not\nVdash\Vdash} +\__umi_define_char{⊯}{\__umi_alternatives_not\nVDash\VDash} +\__umi_define_char{⊰}{\prurel} +\__umi_define_char{⊱}{\scurel} +\__umi_define_char{⊲}{\vartriangleleft} +\__umi_define_char{⊳}{\vartriangleright} +\__umi_define_char{⊴}{\trianglelefteq} +\__umi_define_char{⊵}{\trianglerighteq} +\__umi_define_char{⊶}{\origof} +\__umi_define_char{⊷}{\imageof} +\__umi_define_char{⊸}{\multimap} +\__umi_define_char{⊹}{\hermitmatrix} +\__umi_define_char{⊺}{\intercal} +\__umi_define_char{⊻}{\veebar} +\__umi_define_char{⊼}{\barwedge} +\__umi_define_char{⊽}{\barvee} +\__umi_define_char{⊾}{\measuredrightangle} +\__umi_define_char{⊿}{\varlrtriangle} +\__umi_define_char{⋀}{\bigwedge} +\__umi_define_char{⋁}{\bigvee} +\__umi_define_char{⋂}{\bigcap} +\__umi_define_char{⋃}{\bigcup} +\__umi_define_char{⋄}{\smwhtdiamond} +\__umi_define_char{⋅}{\cdot} +\__umi_define_char{⋆}{\star} +\__umi_define_char{⋇}{\divideontimes} +\__umi_define_char{⋈}{\bowtie} +\__umi_define_char{⋉}{\ltimes} +\__umi_define_char{⋊}{\rtimes} +\__umi_define_char{⋋}{\leftthreetimes} +\__umi_define_char{⋌}{\rightthreetimes} +\__umi_define_char{⋍}{\backsimeq} +\__umi_define_char{⋎}{\curlyvee} +\__umi_define_char{⋏}{\curlywedge} +\__umi_define_char{⋐}{\Subset} +\__umi_define_char{⋑}{\Supset} +\__umi_define_char{⋒}{\Cap} +\__umi_define_char{⋓}{\Cup} +\__umi_define_char{⋔}{\pitchfork} +\__umi_define_char{⋕}{\equalparallel} +\__umi_define_char{⋖}{\lessdot} +\__umi_define_char{⋗}{\gtrdot} +\__umi_define_char{⋘}{\lll} +\__umi_define_char{⋙}{\ggg} +\__umi_define_char{⋚}{\lesseqgtr} +\__umi_define_char{⋛}{\gtreqless} +\__umi_define_char{⋜}{\eqless} +\__umi_define_char{⋝}{\eqgtr} +\__umi_define_char{⋞}{\curlyeqprec} +\__umi_define_char{⋟}{\curlyeqsucc} +\__umi_define_char{⋠}{\__umi_alternatives_not\npreccurlyeq\preccurlyeq} +\__umi_define_char{⋡}{\__umi_alternatives_not\nsucccurlyeq\succcurlyeq} +\__umi_define_char{⋢}{\__umi_alternatives_not\nsqsubseteq\sqsubseteq} +\__umi_define_char{⋣}{\__umi_alternatives_not\nsqsupseteq\sqsupseteq} +\__umi_define_char{⋤}{\sqsubsetneq} +\__umi_define_char{⋥}{\sqsupsetneq} +\__umi_define_char{⋦}{\lnsim} +\__umi_define_char{⋧}{\gnsim} +\__umi_define_char{⋨}{\precnsim} +\__umi_define_char{⋩}{\succnsim} +\__umi_define_char{⋪}{\__umi_alternatives_not\nvartriangleleft\vartriangleleft} +\__umi_define_char{⋫}{\__umi_alternatives_not\nvartriangleright\vartriangleright} +\__umi_define_char{⋬}{\__umi_alternatives_not\ntrianglelefteq\trianglelefteq} +\__umi_define_char{⋭}{\__umi_alternatives_not\ntrianglerighteq\trianglerighteq} +\__umi_define_char{⋮}{\vdots} +\__umi_define_char{⋯}{\unicodecdots} +\__umi_define_char{⋰}{\__umi_alternatives\iddots\adots} +\__umi_define_char{⋱}{\ddots} +\__umi_define_char{⋲}{\disin} +\__umi_define_char{⋳}{\varisins} +\__umi_define_char{⋴}{\isins} +\__umi_define_char{⋵}{\isindot} +\__umi_define_char{⋶}{\varisinobar} +\__umi_define_char{⋷}{\isinobar} +\__umi_define_char{⋸}{\isinvb} +\__umi_define_char{⋹}{\isinE} +\__umi_define_char{⋺}{\nisd} +\__umi_define_char{⋻}{\varnis} +\__umi_define_char{⋼}{\nis} +\__umi_define_char{⋽}{\varniobar} +\__umi_define_char{⋾}{\niobar} +\__umi_define_char{⋿}{\bagmember} +\__umi_define_char{⌀}{\diameter} +\__umi_define_char{⌂}{\house} +\__umi_define_char{⌅}{\varbarwedge} +\__umi_define_char{⌆}{\vardoublebarwedge} +\__umi_define_char_maybe_delimiter{⌈}{\lceil} +\__umi_define_char_maybe_delimiter{⌉}{\rceil} +\__umi_define_char_maybe_delimiter{⌊}{\lfloor} +\__umi_define_char_maybe_delimiter{⌋}{\rfloor} +\__umi_define_char{⌐}{\invnot} +\__umi_define_char{⌑}{\sqlozenge} +\__umi_define_char{⌒}{\profline} +\__umi_define_char{⌓}{\profsurf} +\__umi_define_char{⌗}{\viewdata} +\__umi_define_char{⌙}{\turnednot} +\__umi_define_char_maybe_delimiter{⌜}{\ulcorner} +\__umi_define_char_maybe_delimiter{⌝}{\urcorner} +\__umi_define_char_maybe_delimiter{⌞}{\llcorner} +\__umi_define_char_maybe_delimiter{⌟}{\lrcorner} +\__umi_define_char{⌠}{\inttop} +\__umi_define_char{⌡}{\intbottom} +\__umi_define_char{⌢}{\frown} +\__umi_define_char{⌣}{\smile} +\__umi_define_char{⌬}{\varhexagonlrbonds} +\__umi_define_char{⌲}{\conictaper} +\__umi_define_char{⌶}{\topbot} +\__umi_define_char{⌽}{\obar} +\__umi_define_char{⌿}{\APLnotslash} +\__umi_define_char{⍀}{\APLnotbackslash} +\__umi_define_char{⍓}{\APLboxupcaret} +\__umi_define_char{⍰}{\APLboxquestion} +\__umi_define_char{⍼}{\rangledownzigzagarrow} +\__umi_define_char{⎔}{\hexagon} +\__umi_define_char{⎛}{\lparenuend} +\__umi_define_char{⎜}{\lparenextender} +\__umi_define_char{⎝}{\lparenlend} +\__umi_define_char{⎞}{\rparenuend} +\__umi_define_char{⎟}{\rparenextender} +\__umi_define_char{⎠}{\rparenlend} +\__umi_define_char{⎡}{\lbrackuend} +\__umi_define_char{⎢}{\lbrackextender} +\__umi_define_char{⎣}{\lbracklend} +\__umi_define_char{⎤}{\rbrackuend} +\__umi_define_char{⎥}{\rbrackextender} +\__umi_define_char{⎦}{\rbracklend} +\__umi_define_char{⎧}{\lbraceuend} +\__umi_define_char{⎨}{\lbracemid} +\__umi_define_char{⎩}{\lbracelend} +\__umi_define_char{⎪}{\vbraceextender} +\__umi_define_char{⎫}{\rbraceuend} +\__umi_define_char{⎬}{\rbracemid} +\__umi_define_char{⎭}{\rbracelend} +\__umi_define_char{⎮}{\intextender} +\__umi_define_char{⎯}{\harrowextender} +\__umi_define_char_maybe_delimiter{⎰}{\lmoustache} +\__umi_define_char_maybe_delimiter{⎱}{\rmoustache} +\__umi_define_char{⎲}{\sumtop} +\__umi_define_char{⎳}{\sumbottom} +\__umi_define_char{⎶}{\bbrktbrk} +\__umi_define_char{⎷}{\sqrtbottom} +\__umi_define_char{⎸}{\lvboxline} +\__umi_define_char{⎹}{\rvboxline} +\__umi_define_char{⏎}{\varcarriagereturn} +\__umi_define_char{⏠}{\obrbrak} +\__umi_define_char{⏡}{\ubrbrak} +\__umi_define_char{⏢}{\trapezium} +\__umi_define_char{⏣}{\benzenr} +\__umi_define_char{⏤}{\strns} +\__umi_define_char{⏥}{\fltns} +\__umi_define_char{⏦}{\accurrent} +\__umi_define_char{⏧}{\elinters} +\__umi_define_char{␢}{\blanksymbol} +\__umi_define_char{␣}{\mathvisiblespace} +\__umi_define_char{┆}{\bdtriplevdash} +\__umi_define_char{▀}{\blockuphalf} +\__umi_define_char{▄}{\blocklowhalf} +\__umi_define_char{█}{\blockfull} +\__umi_define_char{▌}{\blocklefthalf} +\__umi_define_char{▐}{\blockrighthalf} +\__umi_define_char{░}{\blockqtrshaded} +\__umi_define_char{▒}{\blockhalfshaded} +\__umi_define_char{▓}{\blockthreeqtrshaded} +\__umi_define_char{■}{\mdlgblksquare} +\__umi_define_char{□}{\mdlgwhtsquare} +\__umi_define_char{▢}{\squoval} +\__umi_define_char{▣}{\blackinwhitesquare} +\__umi_define_char{▤}{\squarehfill} +\__umi_define_char{▥}{\squarevfill} +\__umi_define_char{▦}{\squarehvfill} +\__umi_define_char{▧}{\squarenwsefill} +\__umi_define_char{▨}{\squareneswfill} +\__umi_define_char{▩}{\squarecrossfill} +\__umi_define_char{▪}{\smblksquare} +\__umi_define_char{▫}{\smwhtsquare} +\__umi_define_char{▬}{\hrectangleblack} +\__umi_define_char{▭}{\hrectangle} +\__umi_define_char{▮}{\vrectangleblack} +\__umi_define_char{▯}{\vrectangle} +\__umi_define_char{▰}{\parallelogramblack} +\__umi_define_char{▱}{\parallelogram} +\__umi_define_char{▲}{\bigblacktriangleup} +\__umi_define_char{△}{\bigtriangleup} +\__umi_define_char{▴}{\blacktriangle} +\__umi_define_char{▵}{\vartriangle} +\__umi_define_char{▶}{\blacktriangleright} +\__umi_define_char{▷}{\triangleright} +\__umi_define_char{▸}{\smallblacktriangleright} +\__umi_define_char{▹}{\smalltriangleright} +\__umi_define_char{►}{\blackpointerright} +\__umi_define_char{▻}{\whitepointerright} +\__umi_define_char{▼}{\bigblacktriangledown} +\__umi_define_char{▽}{\bigtriangledown} +\__umi_define_char{▾}{\blacktriangledown} +\__umi_define_char{▿}{\triangledown} +\__umi_define_char{◀}{\blacktriangleleft} +\__umi_define_char{◁}{\triangleleft} +\__umi_define_char{◂}{\smallblacktriangleleft} +\__umi_define_char{◃}{\smalltriangleleft} +\__umi_define_char{◄}{\blackpointerleft} +\__umi_define_char{◅}{\whitepointerleft} +\__umi_define_char{◆}{\mdlgblkdiamond} +\__umi_define_char{◇}{\mdlgwhtdiamond} +\__umi_define_char{◈}{\blackinwhitediamond} +\__umi_define_char{◉}{\fisheye} +\__umi_define_char{◊}{\mdlgwhtlozenge} +\__umi_define_char{○}{\mdlgwhtcircle} +\__umi_define_char{◌}{\dottedcircle} +\__umi_define_char{◍}{\circlevertfill} +\__umi_define_char{◎}{\bullseye} +\__umi_define_char{●}{\mdlgblkcircle} +\__umi_define_char{◐}{\circlelefthalfblack} +\__umi_define_char{◑}{\circlerighthalfblack} +\__umi_define_char{◒}{\circlebottomhalfblack} +\__umi_define_char{◓}{\circletophalfblack} +\__umi_define_char{◔}{\circleurquadblack} +\__umi_define_char{◕}{\blackcircleulquadwhite} +\__umi_define_char{◖}{\blacklefthalfcircle} +\__umi_define_char{◗}{\blackrighthalfcircle} +\__umi_define_char{◘}{\inversebullet} +\__umi_define_char{◙}{\inversewhitecircle} +\__umi_define_char{◚}{\invwhiteupperhalfcircle} +\__umi_define_char{◛}{\invwhitelowerhalfcircle} +\__umi_define_char{◜}{\ularc} +\__umi_define_char{◝}{\urarc} +\__umi_define_char{◞}{\lrarc} +\__umi_define_char{◟}{\llarc} +\__umi_define_char{◠}{\topsemicircle} +\__umi_define_char{◡}{\botsemicircle} +\__umi_define_char{◢}{\lrblacktriangle} +\__umi_define_char{◣}{\llblacktriangle} +\__umi_define_char{◤}{\ulblacktriangle} +\__umi_define_char{◥}{\urblacktriangle} +\__umi_define_char{◦}{\smwhtcircle} +\__umi_define_char{◧}{\squareleftblack} +\__umi_define_char{◨}{\squarerightblack} +\__umi_define_char{◩}{\squareulblack} +\__umi_define_char{◪}{\squarelrblack} +\__umi_define_char{◫}{\boxbar} +\__umi_define_char{◬}{\trianglecdot} +\__umi_define_char{◭}{\triangleleftblack} +\__umi_define_char{◮}{\trianglerightblack} +\__umi_define_char{◯}{\lgwhtcircle} +\__umi_define_char{◰}{\squareulquad} +\__umi_define_char{◱}{\squarellquad} +\__umi_define_char{◲}{\squarelrquad} +\__umi_define_char{◳}{\squareurquad} +\__umi_define_char{◴}{\circleulquad} +\__umi_define_char{◵}{\circlellquad} +\__umi_define_char{◶}{\circlelrquad} +\__umi_define_char{◷}{\circleurquad} +\__umi_define_char{◸}{\ultriangle} +\__umi_define_char{◹}{\urtriangle} +\__umi_define_char{◺}{\lltriangle} +\__umi_define_char{◻}{\mdwhtsquare} +\__umi_define_char{◼}{\mdblksquare} +\__umi_define_char{◽}{\mdsmwhtsquare} +\__umi_define_char{◾}{\mdsmblksquare} +\__umi_define_char{◿}{\lrtriangle} +\__umi_define_char{★}{\bigstar} +\__umi_define_char{☆}{\bigwhitestar} +\__umi_define_char{☉}{\astrosun} +\__umi_define_char{☡}{\danger} +\__umi_define_char{☻}{\blacksmiley} +\__umi_define_char{☼}{\sun} +\__umi_define_char{☽}{\rightmoon} +\__umi_define_char{☾}{\leftmoon} +\__umi_define_char{♀}{\female} +\__umi_define_char{♂}{\male} +\__umi_define_char{♠}{\spadesuit} +\__umi_define_char{♡}{\heartsuit} +\__umi_define_char{♢}{\diamondsuit} +\__umi_define_char{♣}{\clubsuit} +\__umi_define_char{♤}{\varspadesuit} +\__umi_define_char{♥}{\varheartsuit} +\__umi_define_char{♦}{\vardiamondsuit} +\__umi_define_char{♧}{\varclubsuit} +\__umi_define_char{♩}{\quarternote} +\__umi_define_char{♪}{\eighthnote} +\__umi_define_char{♫}{\twonotes} +\__umi_define_char{♭}{\flat} +\__umi_define_char{♮}{\natural} +\__umi_define_char{♯}{\sharp} +\__umi_define_char{♾}{\acidfree} +\__umi_define_char{⚀}{\dicei} +\__umi_define_char{⚁}{\diceii} +\__umi_define_char{⚂}{\diceiii} +\__umi_define_char{⚃}{\diceiv} +\__umi_define_char{⚄}{\dicev} +\__umi_define_char{⚅}{\dicevi} +\__umi_define_char{⚆}{\circledrightdot} +\__umi_define_char{⚇}{\circledtwodots} +\__umi_define_char{⚈}{\blackcircledrightdot} +\__umi_define_char{⚉}{\blackcircledtwodots} +\__umi_define_char{⚥}{\Hermaphrodite} +\__umi_define_char{⚪}{\mdwhtcircle} +\__umi_define_char{⚫}{\mdblkcircle} +\__umi_define_char{⚬}{\mdsmwhtcircle} +\__umi_define_char{⚲}{\neuter} +\__umi_define_char{✓}{\checkmark} +\__umi_define_char{✠}{\maltese} +\__umi_define_char{✪}{\circledstar} +\__umi_define_char{✶}{\varstar} +\__umi_define_char{✽}{\dingasterisk} +\__umi_define_char_maybe_delimiter{❲}{\lbrbrak} +\__umi_define_char_maybe_delimiter{❳}{\rbrbrak} +\__umi_define_char{➛}{\draftingarrow} +\__umi_define_char{⟀}{\threedangle} +\__umi_define_char{⟁}{\whiteinwhitetriangle} +\__umi_define_char{⟂}{\perp} +\__umi_define_char{⟃}{\subsetcirc} +\__umi_define_char{⟄}{\supsetcirc} +\__umi_define_char_maybe_delimiter{⟅}{\lbag} +\__umi_define_char_maybe_delimiter{⟆}{\rbag} +\__umi_define_char{⟇}{\veedot} +\__umi_define_char{⟈}{\bsolhsub} +\__umi_define_char{⟉}{\suphsol} +\__umi_define_char{⟐}{\diamondcdot} +\__umi_define_char{⟑}{\wedgedot} +\__umi_define_char{⟒}{\upin} +\__umi_define_char{⟓}{\pullback} +\__umi_define_char{⟔}{\pushout} +\__umi_define_char{⟕}{\leftouterjoin} +\__umi_define_char{⟖}{\rightouterjoin} +\__umi_define_char{⟗}{\fullouterjoin} +\__umi_define_char{⟘}{\bigbot} +\__umi_define_char{⟙}{\bigtop} +\__umi_define_char{⟚}{\DashVDash} +\__umi_define_char{⟛}{\dashVdash} +\__umi_define_char{⟜}{\multimapinv} +\__umi_define_char{⟝}{\vlongdash} +\__umi_define_char{⟞}{\longdashv} +\__umi_define_char{⟟}{\cirbot} +\__umi_define_char{⟠}{\lozengeminus} +\__umi_define_char{⟡}{\concavediamond} +\__umi_define_char{⟢}{\concavediamondtickleft} +\__umi_define_char{⟣}{\concavediamondtickright} +\__umi_define_char{⟤}{\whitesquaretickleft} +\__umi_define_char{⟥}{\whitesquaretickright} +\__umi_define_char_maybe_delimiter{⟦}{\lBrack} +\__umi_define_char_maybe_delimiter{⟧}{\rBrack} +\__umi_define_char_maybe_delimiter{⟨}{\langle} +\__umi_define_char_maybe_delimiter{⟩}{\rangle} +\__umi_define_char_maybe_delimiter{⟪}{\lAngle} +\__umi_define_char_maybe_delimiter{⟫}{\rAngle} +\__umi_define_char_maybe_delimiter{⟬}{\Lbrbrak} +\__umi_define_char_maybe_delimiter{⟭}{\Rbrbrak} +\__umi_define_char_maybe_delimiter{⟮}{\lgroup} +\__umi_define_char_maybe_delimiter{⟯}{\rgroup} +\__umi_define_char{⟰}{\UUparrow} +\__umi_define_char{⟱}{\DDownarrow} +\__umi_define_char{⟲}{\acwgapcirclearrow} +\__umi_define_char{⟳}{\cwgapcirclearrow} +\__umi_define_char{⟴}{\rightarrowonoplus} +\__umi_define_char{⟵}{\longleftarrow} +\__umi_define_char{⟶}{\longrightarrow} +\__umi_define_char{⟷}{\longleftrightarrow} +\__umi_define_char{⟸}{\Longleftarrow} +\__umi_define_char{⟹}{\Longrightarrow} +\__umi_define_char{⟺}{\Longleftrightarrow} +\__umi_define_char{⟻}{\longmapsfrom} +\__umi_define_char{⟼}{\longmapsto} +\__umi_define_char{⟽}{\Longmapsfrom} +\__umi_define_char{⟾}{\Longmapsto} +\__umi_define_char{⟿}{\longrightsquigarrow} +\__umi_define_char{⤀}{\nvtwoheadrightarrow} +\__umi_define_char{⤁}{\nVtwoheadrightarrow} +\__umi_define_char{⤂}{\nvLeftarrow} +\__umi_define_char{⤃}{\nvRightarrow} +\__umi_define_char{⤄}{\nvLeftrightarrow} +\__umi_define_char{⤅}{\twoheadmapsto} +\__umi_define_char{⤆}{\Mapsfrom} +\__umi_define_char{⤇}{\Mapsto} +\__umi_define_char{⤈}{\downarrowbarred} +\__umi_define_char{⤉}{\uparrowbarred} +\__umi_define_char{⤊}{\Uuparrow} +\__umi_define_char{⤋}{\Ddownarrow} +\__umi_define_char{⤌}{\leftbkarrow} +\__umi_define_char{⤍}{\rightbkarrow} +\__umi_define_char{⤎}{\leftdbkarrow} +\__umi_define_char{⤏}{\dbkarrow} +\__umi_define_char{⤐}{\drbkarrow} +\__umi_define_char{⤑}{\rightdotarrow} +\__umi_define_char{⤒}{\baruparrow} +\__umi_define_char{⤓}{\downarrowbar} +\__umi_define_char{⤔}{\nvrightarrowtail} +\__umi_define_char{⤕}{\nVrightarrowtail} +\__umi_define_char{⤖}{\twoheadrightarrowtail} +\__umi_define_char{⤗}{\nvtwoheadrightarrowtail} +\__umi_define_char{⤘}{\nVtwoheadrightarrowtail} +\__umi_define_char{⤙}{\lefttail} +\__umi_define_char{⤚}{\righttail} +\__umi_define_char{⤛}{\leftdbltail} +\__umi_define_char{⤜}{\rightdbltail} +\__umi_define_char{⤝}{\diamondleftarrow} +\__umi_define_char{⤞}{\rightarrowdiamond} +\__umi_define_char{⤟}{\diamondleftarrowbar} +\__umi_define_char{⤠}{\barrightarrowdiamond} +\__umi_define_char{⤡}{\nwsearrow} +\__umi_define_char{⤢}{\neswarrow} +\__umi_define_char{⤣}{\hknwarrow} +\__umi_define_char{⤤}{\hknearrow} +\__umi_define_char{⤥}{\hksearrow} +\__umi_define_char{⤦}{\hkswarrow} +\__umi_define_char{⤧}{\tona} +\__umi_define_char{⤨}{\toea} +\__umi_define_char{⤩}{\tosa} +\__umi_define_char{⤪}{\towa} +\__umi_define_char{⤫}{\rdiagovfdiag} +\__umi_define_char{⤬}{\fdiagovrdiag} +\__umi_define_char{⤭}{\seovnearrow} +\__umi_define_char{⤮}{\neovsearrow} +\__umi_define_char{⤯}{\fdiagovnearrow} +\__umi_define_char{⤰}{\rdiagovsearrow} +\__umi_define_char{⤱}{\neovnwarrow} +\__umi_define_char{⤲}{\nwovnearrow} +\__umi_define_char{⤳}{\rightcurvedarrow} +\__umi_define_char{⤴}{\uprightcurvearrow} +\__umi_define_char{⤵}{\downrightcurvedarrow} +\__umi_define_char{⤶}{\leftdowncurvedarrow} +\__umi_define_char{⤷}{\rightdowncurvedarrow} +\__umi_define_char{⤸}{\cwrightarcarrow} +\__umi_define_char{⤹}{\acwleftarcarrow} +\__umi_define_char{⤺}{\acwoverarcarrow} +\__umi_define_char{⤻}{\acwunderarcarrow} +\__umi_define_char{⤼}{\curvearrowrightminus} +\__umi_define_char{⤽}{\curvearrowleftplus} +\__umi_define_char{⤾}{\cwundercurvearrow} +\__umi_define_char{⤿}{\ccwundercurvearrow} +\__umi_define_char{⥀}{\acwcirclearrow} +\__umi_define_char{⥁}{\cwcirclearrow} +\__umi_define_char{⥂}{\rightarrowshortleftarrow} +\__umi_define_char{⥃}{\leftarrowshortrightarrow} +\__umi_define_char{⥄}{\shortrightarrowleftarrow} +\__umi_define_char{⥅}{\rightarrowplus} +\__umi_define_char{⥆}{\leftarrowplus} +\__umi_define_char{⥇}{\rightarrowx} +\__umi_define_char{⥈}{\leftrightarrowcircle} +\__umi_define_char{⥉}{\twoheaduparrowcircle} +\__umi_define_char{⥊}{\leftrightharpoonupdown} +\__umi_define_char{⥋}{\leftrightharpoondownup} +\__umi_define_char{⥌}{\updownharpoonrightleft} +\__umi_define_char{⥍}{\updownharpoonleftright} +\__umi_define_char{⥎}{\leftrightharpoonupup} +\__umi_define_char{⥏}{\updownharpoonrightright} +\__umi_define_char{⥐}{\leftrightharpoondowndown} +\__umi_define_char{⥑}{\updownharpoonleftleft} +\__umi_define_char{⥒}{\barleftharpoonup} +\__umi_define_char{⥓}{\rightharpoonupbar} +\__umi_define_char{⥔}{\barupharpoonright} +\__umi_define_char{⥕}{\downharpoonrightbar} +\__umi_define_char{⥖}{\barleftharpoondown} +\__umi_define_char{⥗}{\rightharpoondownbar} +\__umi_define_char{⥘}{\barupharpoonleft} +\__umi_define_char{⥙}{\downharpoonleftbar} +\__umi_define_char{⥚}{\leftharpoonupbar} +\__umi_define_char{⥛}{\barrightharpoonup} +\__umi_define_char{⥜}{\upharpoonrightbar} +\__umi_define_char{⥝}{\bardownharpoonright} +\__umi_define_char{⥞}{\leftharpoondownbar} +\__umi_define_char{⥟}{\barrightharpoondown} +\__umi_define_char{⥠}{\upharpoonleftbar} +\__umi_define_char{⥡}{\bardownharpoonleft} +\__umi_define_char{⥢}{\leftharpoonsupdown} +\__umi_define_char{⥣}{\upharpoonsleftright} +\__umi_define_char{⥤}{\rightharpoonsupdown} +\__umi_define_char{⥥}{\downharpoonsleftright} +\__umi_define_char{⥦}{\leftrightharpoonsup} +\__umi_define_char{⥧}{\leftrightharpoonsdown} +\__umi_define_char{⥨}{\rightleftharpoonsup} +\__umi_define_char{⥩}{\rightleftharpoonsdown} +\__umi_define_char{⥪}{\leftharpoonupdash} +\__umi_define_char{⥫}{\dashleftharpoondown} +\__umi_define_char{⥬}{\rightharpoonupdash} +\__umi_define_char{⥭}{\dashrightharpoondown} +\__umi_define_char{⥮}{\updownharpoonsleftright} +\__umi_define_char{⥯}{\downupharpoonsleftright} +\__umi_define_char{⥰}{\rightimply} +\__umi_define_char{⥱}{\equalrightarrow} +\__umi_define_char{⥲}{\similarrightarrow} +\__umi_define_char{⥳}{\leftarrowsimilar} +\__umi_define_char{⥴}{\rightarrowsimilar} +\__umi_define_char{⥵}{\rightarrowapprox} +\__umi_define_char{⥶}{\ltlarr} +\__umi_define_char{⥷}{\leftarrowless} +\__umi_define_char{⥸}{\gtrarr} +\__umi_define_char{⥹}{\subrarr} +\__umi_define_char{⥺}{\leftarrowsubset} +\__umi_define_char{⥻}{\suplarr} +\__umi_define_char{⥼}{\leftfishtail} +\__umi_define_char{⥽}{\rightfishtail} +\__umi_define_char{⥾}{\upfishtail} +\__umi_define_char{⥿}{\downfishtail} +\__umi_define_char_maybe_delimiter{⦀}{\Vvert} +\__umi_define_char{⦁}{\mdsmblkcircle} +\__umi_define_char{⦂}{\typecolon} +\__umi_define_char_maybe_delimiter{⦃}{\lBrace} +\__umi_define_char_maybe_delimiter{⦄}{\rBrace} +\__umi_define_char_maybe_delimiter{⦅}{\lParen} +\__umi_define_char_maybe_delimiter{⦆}{\rParen} +\__umi_define_char_maybe_delimiter{⦇}{\llparenthesis} +\__umi_define_char_maybe_delimiter{⦈}{\rrparenthesis} +\__umi_define_char_maybe_delimiter{⦉}{\llangle} +\__umi_define_char_maybe_delimiter{⦊}{\rrangle} +\__umi_define_char_maybe_delimiter{⦋}{\lbrackubar} +\__umi_define_char_maybe_delimiter{⦌}{\rbrackubar} +\__umi_define_char_maybe_delimiter{⦍}{\lbrackultick} +\__umi_define_char_maybe_delimiter{⦎}{\rbracklrtick} +\__umi_define_char_maybe_delimiter{⦏}{\lbracklltick} +\__umi_define_char_maybe_delimiter{⦐}{\rbrackurtick} +\__umi_define_char_maybe_delimiter{⦑}{\langledot} +\__umi_define_char_maybe_delimiter{⦒}{\rangledot} +\__umi_define_char_maybe_delimiter{⦓}{\lparenless} +\__umi_define_char_maybe_delimiter{⦔}{\rparengtr} +\__umi_define_char_maybe_delimiter{⦕}{\Lparengtr} +\__umi_define_char_maybe_delimiter{⦖}{\Rparenless} +\__umi_define_char_maybe_delimiter{⦗}{\lblkbrbrak} +\__umi_define_char_maybe_delimiter{⦘}{\rblkbrbrak} +\__umi_define_char{⦙}{\fourvdots} +\__umi_define_char{⦚}{\vzigzag} +\__umi_define_char{⦛}{\measuredangleleft} +\__umi_define_char{⦜}{\rightanglesqr} +\__umi_define_char{⦝}{\rightanglemdot} +\__umi_define_char{⦞}{\angles} +\__umi_define_char{⦟}{\angdnr} +\__umi_define_char{⦠}{\gtlpar} +\__umi_define_char{⦡}{\sphericalangleup} +\__umi_define_char{⦢}{\turnangle} +\__umi_define_char{⦣}{\revangle} +\__umi_define_char{⦤}{\angleubar} +\__umi_define_char{⦥}{\revangleubar} +\__umi_define_char{⦦}{\wideangledown} +\__umi_define_char{⦧}{\wideangleup} +\__umi_define_char{⦨}{\measanglerutone} +\__umi_define_char{⦩}{\measanglelutonw} +\__umi_define_char{⦪}{\measanglerdtose} +\__umi_define_char{⦫}{\measangleldtosw} +\__umi_define_char{⦬}{\measangleurtone} +\__umi_define_char{⦭}{\measangleultonw} +\__umi_define_char{⦮}{\measangledrtose} +\__umi_define_char{⦯}{\measangledltosw} +\__umi_define_char{⦰}{\revemptyset} +\__umi_define_char{⦱}{\emptysetobar} +\__umi_define_char{⦲}{\emptysetocirc} +\__umi_define_char{⦳}{\emptysetoarr} +\__umi_define_char{⦴}{\emptysetoarrl} +\__umi_define_char{⦵}{\circlehbar} +\__umi_define_char{⦶}{\circledvert} +\__umi_define_char{⦷}{\circledparallel} +\__umi_define_char{⦸}{\obslash} +\__umi_define_char{⦹}{\operp} +\__umi_define_char{⦺}{\obot} +\__umi_define_char{⦻}{\olcross} +\__umi_define_char{⦼}{\odotslashdot} +\__umi_define_char{⦽}{\uparrowoncircle} +\__umi_define_char{⦾}{\circledwhitebullet} +\__umi_define_char{⦿}{\circledbullet} +\__umi_define_char{⧀}{\olessthan} +\__umi_define_char{⧁}{\ogreaterthan} +\__umi_define_char{⧂}{\cirscir} +\__umi_define_char{⧃}{\cirE} +\__umi_define_char{⧄}{\boxdiag} +\__umi_define_char{⧅}{\boxbslash} +\__umi_define_char{⧆}{\boxast} +\__umi_define_char{⧇}{\boxcircle} +\__umi_define_char{⧈}{\boxbox} +\__umi_define_char{⧉}{\boxonbox} +\__umi_define_char{⧊}{\triangleodot} +\__umi_define_char{⧋}{\triangleubar} +\__umi_define_char{⧌}{\triangles} +\__umi_define_char{⧍}{\triangleserifs} +\__umi_define_char{⧎}{\rtriltri} +\__umi_define_char{⧏}{\ltrivb} +\__umi_define_char{⧐}{\vbrtri} +\__umi_define_char{⧑}{\lfbowtie} +\__umi_define_char{⧒}{\rfbowtie} +\__umi_define_char{⧓}{\fbowtie} +\__umi_define_char{⧔}{\lftimes} +\__umi_define_char{⧕}{\rftimes} +\__umi_define_char{⧖}{\hourglass} +\__umi_define_char{⧗}{\blackhourglass} +\__umi_define_char_maybe_delimiter{⧘}{\lvzigzag} +\__umi_define_char_maybe_delimiter{⧙}{\rvzigzag} +\__umi_define_char_maybe_delimiter{⧚}{\Lvzigzag} +\__umi_define_char_maybe_delimiter{⧛}{\Rvzigzag} +\__umi_define_char{⧜}{\iinfin} +\__umi_define_char{⧝}{\tieinfty} +\__umi_define_char{⧞}{\nvinfty} +\__umi_define_char{⧟}{\dualmap} +\__umi_define_char{⧠}{\laplac} +\__umi_define_char{⧡}{\lrtriangleeq} +\__umi_define_char{⧢}{\shuffle} +\__umi_define_char{⧣}{\eparsl} +\__umi_define_char{⧤}{\smeparsl} +\__umi_define_char{⧥}{\eqvparsl} +\__umi_define_char{⧦}{\gleichstark} +\__umi_define_char{⧧}{\thermod} +\__umi_define_char{⧨}{\downtriangleleftblack} +\__umi_define_char{⧩}{\downtrianglerightblack} +\__umi_define_char{⧪}{\blackdiamonddownarrow} +\__umi_define_char{⧫}{\mdlgblklozenge} +\__umi_define_char{⧬}{\circledownarrow} +\__umi_define_char{⧭}{\blackcircledownarrow} +\__umi_define_char{⧮}{\errbarsquare} +\__umi_define_char{⧯}{\errbarblacksquare} +\__umi_define_char{⧰}{\errbardiamond} +\__umi_define_char{⧱}{\errbarblackdiamond} +\__umi_define_char{⧲}{\errbarcircle} +\__umi_define_char{⧳}{\errbarblackcircle} +\__umi_define_char{⧴}{\ruledelayed} +\__umi_define_char{⧵}{\setminus} +\__umi_define_char{⧶}{\dsol} +\__umi_define_char{⧷}{\rsolbar} +\__umi_define_char{⧸}{\xsol} +\__umi_define_char{⧹}{\xbsol} +\__umi_define_char{⧺}{\doubleplus} +\__umi_define_char{⧻}{\tripleplus} +\__umi_define_char_maybe_delimiter{⧼}{\lcurvyangle} +\__umi_define_char_maybe_delimiter{⧽}{\rcurvyangle} +\__umi_define_char{⧾}{\tplus} +\__umi_define_char{⧿}{\tminus} +\__umi_define_char{⨀}{\bigodot} +\__umi_define_char{⨁}{\bigoplus} +\__umi_define_char{⨂}{\bigotimes} +\__umi_define_char{⨃}{\bigcupdot} +\__umi_define_char{⨄}{\biguplus} +\__umi_define_char{⨅}{\bigsqcap} +\__umi_define_char{⨆}{\bigsqcup} +\__umi_define_char{⨇}{\conjquant} +\__umi_define_char{⨈}{\disjquant} +\__umi_define_char{⨉}{\bigtimes} +\__umi_define_char{⨊}{\modtwosum} +\__umi_define_char{⨋}{\sumint} +\__umi_define_char{⨌}{\iiiint} +\__umi_define_char{⨍}{\intbar} +\__umi_define_char{⨎}{\intBar} +\__umi_define_char{⨏}{\fint} +\__umi_define_char{⨐}{\cirfnint} +\__umi_define_char{⨑}{\awint} +\__umi_define_char{⨒}{\rppolint} +\__umi_define_char{⨓}{\scpolint} +\__umi_define_char{⨔}{\npolint} +\__umi_define_char{⨕}{\pointint} +\__umi_define_char{⨖}{\sqint} +\__umi_define_char{⨗}{\intlarhk} +\__umi_define_char{⨘}{\intx} +\__umi_define_char{⨙}{\intcap} +\__umi_define_char{⨚}{\intcup} +\__umi_define_char{⨛}{\upint} +\__umi_define_char{⨜}{\lowint} +\__umi_define_char{⨝}{\Join} +\__umi_define_char{⨞}{\bigtriangleleft} +\__umi_define_char{⨟}{\zcmp} +\__umi_define_char{⨠}{\zpipe} +\__umi_define_char{⨡}{\zproject} +\__umi_define_char{⨢}{\ringplus} +\__umi_define_char{⨣}{\plushat} +\__umi_define_char{⨤}{\simplus} +\__umi_define_char{⨥}{\plusdot} +\__umi_define_char{⨦}{\plussim} +\__umi_define_char{⨧}{\plussubtwo} +\__umi_define_char{⨨}{\plustrif} +\__umi_define_char{⨩}{\commaminus} +\__umi_define_char{⨪}{\minusdot} +\__umi_define_char{⨫}{\minusfdots} +\__umi_define_char{⨬}{\minusrdots} +\__umi_define_char{⨭}{\opluslhrim} +\__umi_define_char{⨮}{\oplusrhrim} +\__umi_define_char{⨯}{\vectimes} +\__umi_define_char{⨰}{\dottimes} +\__umi_define_char{⨱}{\timesbar} +\__umi_define_char{⨲}{\btimes} +\__umi_define_char{⨳}{\smashtimes} +\__umi_define_char{⨴}{\otimeslhrim} +\__umi_define_char{⨵}{\otimesrhrim} +\__umi_define_char{⨶}{\otimeshat} +\__umi_define_char{⨷}{\Otimes} +\__umi_define_char{⨸}{\odiv} +\__umi_define_char{⨹}{\triangleplus} +\__umi_define_char{⨺}{\triangleminus} +\__umi_define_char{⨻}{\triangletimes} +\__umi_define_char{⨼}{\intprod} +\__umi_define_char{⨽}{\intprodr} +\__umi_define_char{⨾}{\fcmp} +\__umi_define_char{⨿}{\amalg} +\__umi_define_char{⩀}{\capdot} +\__umi_define_char{⩁}{\uminus} +\__umi_define_char{⩂}{\barcup} +\__umi_define_char{⩃}{\barcap} +\__umi_define_char{⩄}{\capwedge} +\__umi_define_char{⩅}{\cupvee} +\__umi_define_char{⩆}{\cupovercap} +\__umi_define_char{⩇}{\capovercup} +\__umi_define_char{⩈}{\cupbarcap} +\__umi_define_char{⩉}{\capbarcup} +\__umi_define_char{⩊}{\twocups} +\__umi_define_char{⩋}{\twocaps} +\__umi_define_char{⩌}{\closedvarcup} +\__umi_define_char{⩍}{\closedvarcap} +\__umi_define_char{⩎}{\Sqcap} +\__umi_define_char{⩏}{\Sqcup} +\__umi_define_char{⩐}{\closedvarcupsmashprod} +\__umi_define_char{⩑}{\wedgeodot} +\__umi_define_char{⩒}{\veeodot} +\__umi_define_char{⩓}{\Wedge} +\__umi_define_char{⩔}{\Vee} +\__umi_define_char{⩕}{\wedgeonwedge} +\__umi_define_char{⩖}{\veeonvee} +\__umi_define_char{⩗}{\bigslopedvee} +\__umi_define_char{⩘}{\bigslopedwedge} +\__umi_define_char{⩙}{\veeonwedge} +\__umi_define_char{⩚}{\wedgemidvert} +\__umi_define_char{⩛}{\veemidvert} +\__umi_define_char{⩜}{\midbarwedge} +\__umi_define_char{⩝}{\midbarvee} +\__umi_define_char{⩞}{\doublebarwedge} +\__umi_define_char{⩟}{\wedgebar} +\__umi_define_char{⩠}{\wedgedoublebar} +\__umi_define_char{⩡}{\varveebar} +\__umi_define_char{⩢}{\doublebarvee} +\__umi_define_char{⩣}{\veedoublebar} +\__umi_define_char{⩤}{\dsub} +\__umi_define_char{⩥}{\rsub} +\__umi_define_char{⩦}{\eqdot} +\__umi_define_char{⩧}{\dotequiv} +\__umi_define_char{⩨}{\equivVert} +\__umi_define_char{⩩}{\equivVvert} +\__umi_define_char{⩪}{\dotsim} +\__umi_define_char{⩫}{\simrdots} +\__umi_define_char{⩬}{\simminussim} +\__umi_define_char{⩭}{\congdot} +\__umi_define_char{⩮}{\asteq} +\__umi_define_char{⩯}{\hatapprox} +\__umi_define_char{⩰}{\approxeqq} +\__umi_define_char{⩱}{\eqqplus} +\__umi_define_char{⩲}{\pluseqq} +\__umi_define_char{⩳}{\eqqsim} +\__umi_define_char{⩴}{\Coloneq} +\__umi_define_char{⩵}{\eqeq} +\__umi_define_char{⩶}{\eqeqeq} +\__umi_define_char{⩷}{\ddotseq} +\__umi_define_char{⩸}{\equivDD} +\__umi_define_char{⩹}{\ltcir} +\__umi_define_char{⩺}{\gtcir} +\__umi_define_char{⩻}{\ltquest} +\__umi_define_char{⩼}{\gtquest} +\__umi_define_char{⩽}{\leqslant} +\__umi_define_char{⩾}{\geqslant} +\__umi_define_char{⩿}{\lesdot} +\__umi_define_char{⪀}{\gesdot} +\__umi_define_char{⪁}{\lesdoto} +\__umi_define_char{⪂}{\gesdoto} +\__umi_define_char{⪃}{\lesdotor} +\__umi_define_char{⪄}{\gesdotol} +\__umi_define_char{⪅}{\lessapprox} +\__umi_define_char{⪆}{\gtrapprox} +\__umi_define_char{⪇}{\lneq} +\__umi_define_char{⪈}{\gneq} +\__umi_define_char{⪉}{\lnapprox} +\__umi_define_char{⪊}{\gnapprox} +\__umi_define_char{⪋}{\lesseqqgtr} +\__umi_define_char{⪌}{\gtreqqless} +\__umi_define_char{⪍}{\lsime} +\__umi_define_char{⪎}{\gsime} +\__umi_define_char{⪏}{\lsimg} +\__umi_define_char{⪐}{\gsiml} +\__umi_define_char{⪑}{\lgE} +\__umi_define_char{⪒}{\glE} +\__umi_define_char{⪓}{\lesges} +\__umi_define_char{⪔}{\gesles} +\__umi_define_char{⪕}{\eqslantless} +\__umi_define_char{⪖}{\eqslantgtr} +\__umi_define_char{⪗}{\elsdot} +\__umi_define_char{⪘}{\egsdot} +\__umi_define_char{⪙}{\eqqless} +\__umi_define_char{⪚}{\eqqgtr} +\__umi_define_char{⪛}{\eqqslantless} +\__umi_define_char{⪜}{\eqqslantgtr} +\__umi_define_char{⪝}{\simless} +\__umi_define_char{⪞}{\simgtr} +\__umi_define_char{⪟}{\simlE} +\__umi_define_char{⪠}{\simgE} +\__umi_define_char{⪡}{\Lt} +\__umi_define_char{⪢}{\Gt} +\__umi_define_char{⪣}{\partialmeetcontraction} +\__umi_define_char{⪤}{\glj} +\__umi_define_char{⪥}{\gla} +\__umi_define_char{⪦}{\ltcc} +\__umi_define_char{⪧}{\gtcc} +\__umi_define_char{⪨}{\lescc} +\__umi_define_char{⪩}{\gescc} +\__umi_define_char{⪪}{\smt} +\__umi_define_char{⪫}{\lat} +\__umi_define_char{⪬}{\smte} +\__umi_define_char{⪭}{\late} +\__umi_define_char{⪮}{\bumpeqq} +\__umi_define_char{⪯}{\preceq} +\__umi_define_char{⪰}{\succeq} +\__umi_define_char{⪱}{\precneq} +\__umi_define_char{⪲}{\succneq} +\__umi_define_char{⪳}{\preceqq} +\__umi_define_char{⪴}{\succeqq} +\__umi_define_char{⪵}{\precneqq} +\__umi_define_char{⪶}{\succneqq} +\__umi_define_char{⪷}{\precapprox} +\__umi_define_char{⪸}{\succapprox} +\__umi_define_char{⪹}{\precnapprox} +\__umi_define_char{⪺}{\succnapprox} +\__umi_define_char{⪻}{\Prec} +\__umi_define_char{⪼}{\Succ} +\__umi_define_char{⪽}{\subsetdot} +\__umi_define_char{⪾}{\supsetdot} +\__umi_define_char{⪿}{\subsetplus} +\__umi_define_char{⫀}{\supsetplus} +\__umi_define_char{⫁}{\submult} +\__umi_define_char{⫂}{\supmult} +\__umi_define_char{⫃}{\subedot} +\__umi_define_char{⫄}{\supedot} +\__umi_define_char{⫅}{\subseteqq} +\__umi_define_char{⫆}{\supseteqq} +\__umi_define_char{⫇}{\subsim} +\__umi_define_char{⫈}{\supsim} +\__umi_define_char{⫉}{\subsetapprox} +\__umi_define_char{⫊}{\supsetapprox} +\__umi_define_char{⫋}{\subsetneqq} +\__umi_define_char{⫌}{\supsetneqq} +\__umi_define_char{⫍}{\lsqhook} +\__umi_define_char{⫎}{\rsqhook} +\__umi_define_char{⫏}{\csub} +\__umi_define_char{⫐}{\csup} +\__umi_define_char{⫑}{\csube} +\__umi_define_char{⫒}{\csupe} +\__umi_define_char{⫓}{\subsup} +\__umi_define_char{⫔}{\supsub} +\__umi_define_char{⫕}{\subsub} +\__umi_define_char{⫖}{\supsup} +\__umi_define_char{⫗}{\suphsub} +\__umi_define_char{⫘}{\supdsub} +\__umi_define_char{⫙}{\forkv} +\__umi_define_char{⫚}{\topfork} +\__umi_define_char{⫛}{\mlcp} +\__umi_define_char{⫝̸}{\forks} +\__umi_define_char{⫝}{\forksnot} +\__umi_define_char{⫞}{\shortlefttack} +\__umi_define_char{⫟}{\shortdowntack} +\__umi_define_char{⫠}{\shortuptack} +\__umi_define_char{⫡}{\perps} +\__umi_define_char{⫢}{\vDdash} +\__umi_define_char{⫣}{\dashV} +\__umi_define_char{⫤}{\Dashv} +\__umi_define_char{⫥}{\DashV} +\__umi_define_char{⫦}{\varVdash} +\__umi_define_char{⫧}{\Barv} +\__umi_define_char{⫨}{\vBar} +\__umi_define_char{⫩}{\vBarv} +\__umi_define_char{⫪}{\barV} +\__umi_define_char{⫫}{\Vbar} +\__umi_define_char{⫬}{\Not} +\__umi_define_char{⫭}{\bNot} +\__umi_define_char{⫮}{\revnmid} +\__umi_define_char{⫯}{\cirmid} +\__umi_define_char{⫰}{\midcir} +\__umi_define_char{⫱}{\topcir} +\__umi_define_char{⫲}{\nhpar} +\__umi_define_char{⫳}{\parsim} +\__umi_define_char{⫴}{\interleave} +\__umi_define_char{⫵}{\nhVvert} +\__umi_define_char{⫶}{\threedotcolon} +\__umi_define_char{⫷}{\lllnest} +\__umi_define_char{⫸}{\gggnest} +\__umi_define_char{⫹}{\leqqslant} +\__umi_define_char{⫺}{\geqqslant} +\__umi_define_char{⫻}{\trslash} +\__umi_define_char{⫼}{\biginterleave} +\__umi_define_char{⫽}{\sslash} +\__umi_define_char{⫾}{\talloblong} +\__umi_define_char{⫿}{\bigtalloblong} +\__umi_define_char{⬒}{\squaretopblack} +\__umi_define_char{⬓}{\squarebotblack} +\__umi_define_char{⬔}{\squareurblack} +\__umi_define_char{⬕}{\squarellblack} +\__umi_define_char{⬖}{\diamondleftblack} +\__umi_define_char{⬗}{\diamondrightblack} +\__umi_define_char{⬘}{\diamondtopblack} +\__umi_define_char{⬙}{\diamondbotblack} +\__umi_define_char{⬚}{\dottedsquare} +\__umi_define_char{⬛}{\lgblksquare} +\__umi_define_char{⬜}{\lgwhtsquare} +\__umi_define_char{⬝}{\vysmblksquare} +\__umi_define_char{⬞}{\vysmwhtsquare} +\__umi_define_char{⬟}{\pentagonblack} +\__umi_define_char{⬠}{\pentagon} +\__umi_define_char{⬡}{\varhexagon} +\__umi_define_char{⬢}{\varhexagonblack} +\__umi_define_char{⬣}{\hexagonblack} +\__umi_define_char{⬤}{\lgblkcircle} +\__umi_define_char{⬥}{\mdblkdiamond} +\__umi_define_char{⬦}{\mdwhtdiamond} +\__umi_define_char{⬧}{\mdblklozenge} +\__umi_define_char{⬨}{\mdwhtlozenge} +\__umi_define_char{⬩}{\smblkdiamond} +\__umi_define_char{⬪}{\smblklozenge} +\__umi_define_char{⬫}{\smwhtlozenge} +\__umi_define_char{⬬}{\blkhorzoval} +\__umi_define_char{⬭}{\whthorzoval} +\__umi_define_char{⬮}{\blkvertoval} +\__umi_define_char{⬯}{\whtvertoval} +\__umi_define_char{⬰}{\circleonleftarrow} +\__umi_define_char{⬱}{\leftthreearrows} +\__umi_define_char{⬲}{\leftarrowonoplus} +\__umi_define_char{⬳}{\longleftsquigarrow} +\__umi_define_char{⬴}{\nvtwoheadleftarrow} +\__umi_define_char{⬵}{\nVtwoheadleftarrow} +\__umi_define_char{⬶}{\twoheadmapsfrom} +\__umi_define_char{⬷}{\twoheadleftdbkarrow} +\__umi_define_char{⬸}{\leftdotarrow} +\__umi_define_char{⬹}{\nvleftarrowtail} +\__umi_define_char{⬺}{\nVleftarrowtail} +\__umi_define_char{⬻}{\twoheadleftarrowtail} +\__umi_define_char{⬼}{\nvtwoheadleftarrowtail} +\__umi_define_char{⬽}{\nVtwoheadleftarrowtail} +\__umi_define_char{⬾}{\leftarrowx} +\__umi_define_char{⬿}{\leftcurvedarrow} +\__umi_define_char{⭀}{\equalleftarrow} +\__umi_define_char{⭁}{\bsimilarleftarrow} +\__umi_define_char{⭂}{\leftarrowbackapprox} +\__umi_define_char{⭃}{\rightarrowgtr} +\__umi_define_char{⭄}{\rightarrowsupset} +\__umi_define_char{⭅}{\LLeftarrow} +\__umi_define_char{⭆}{\RRightarrow} +\__umi_define_char{⭇}{\bsimilarrightarrow} +\__umi_define_char{⭈}{\rightarrowbackapprox} +\__umi_define_char{⭉}{\similarleftarrow} +\__umi_define_char{⭊}{\leftarrowapprox} +\__umi_define_char{⭋}{\leftarrowbsimilar} +\__umi_define_char{⭌}{\rightarrowbsimilar} +\__umi_define_char{⭐}{\medwhitestar} +\__umi_define_char{⭑}{\medblackstar} +\__umi_define_char{⭒}{\smwhitestar} +\__umi_define_char{⭓}{\rightpentagonblack} +\__umi_define_char{⭔}{\rightpentagon} +\__umi_define_char{〒}{\postalmark} +\__umi_define_char{〰}{\hzigzag} +\__umi_define_char{𝐀}{\umiMathbf{A}} +\__umi_define_char{𝐁}{\umiMathbf{B}} +\__umi_define_char{𝐂}{\umiMathbf{C}} +\__umi_define_char{𝐃}{\umiMathbf{D}} +\__umi_define_char{𝐄}{\umiMathbf{E}} +\__umi_define_char{𝐅}{\umiMathbf{F}} +\__umi_define_char{𝐆}{\umiMathbf{G}} +\__umi_define_char{𝐇}{\umiMathbf{H}} +\__umi_define_char{𝐈}{\umiMathbf{I}} +\__umi_define_char{𝐉}{\umiMathbf{J}} +\__umi_define_char{𝐊}{\umiMathbf{K}} +\__umi_define_char{𝐋}{\umiMathbf{L}} +\__umi_define_char{𝐌}{\umiMathbf{M}} +\__umi_define_char{𝐍}{\umiMathbf{N}} +\__umi_define_char{𝐎}{\umiMathbf{O}} +\__umi_define_char{𝐏}{\umiMathbf{P}} +\__umi_define_char{𝐐}{\umiMathbf{Q}} +\__umi_define_char{𝐑}{\umiMathbf{R}} +\__umi_define_char{𝐒}{\umiMathbf{S}} +\__umi_define_char{𝐓}{\umiMathbf{T}} +\__umi_define_char{𝐔}{\umiMathbf{U}} +\__umi_define_char{𝐕}{\umiMathbf{V}} +\__umi_define_char{𝐖}{\umiMathbf{W}} +\__umi_define_char{𝐗}{\umiMathbf{X}} +\__umi_define_char{𝐘}{\umiMathbf{Y}} +\__umi_define_char{𝐙}{\umiMathbf{Z}} +\__umi_define_char{𝐚}{\umiMathbf{a}} +\__umi_define_char{𝐛}{\umiMathbf{b}} +\__umi_define_char{𝐜}{\umiMathbf{c}} +\__umi_define_char{𝐝}{\umiMathbf{d}} +\__umi_define_char{𝐞}{\umiMathbf{e}} +\__umi_define_char{𝐟}{\umiMathbf{f}} +\__umi_define_char{𝐠}{\umiMathbf{g}} +\__umi_define_char{𝐡}{\umiMathbf{h}} +\__umi_define_char{𝐢}{\umiMathbf{i}} +\__umi_define_char{𝐣}{\umiMathbf{j}} +\__umi_define_char{𝐤}{\umiMathbf{k}} +\__umi_define_char{𝐥}{\umiMathbf{l}} +\__umi_define_char{𝐦}{\umiMathbf{m}} +\__umi_define_char{𝐧}{\umiMathbf{n}} +\__umi_define_char{𝐨}{\umiMathbf{o}} +\__umi_define_char{𝐩}{\umiMathbf{p}} +\__umi_define_char{𝐪}{\umiMathbf{q}} +\__umi_define_char{𝐫}{\umiMathbf{r}} +\__umi_define_char{𝐬}{\umiMathbf{s}} +\__umi_define_char{𝐭}{\umiMathbf{t}} +\__umi_define_char{𝐮}{\umiMathbf{u}} +\__umi_define_char{𝐯}{\umiMathbf{v}} +\__umi_define_char{𝐰}{\umiMathbf{w}} +\__umi_define_char{𝐱}{\umiMathbf{x}} +\__umi_define_char{𝐲}{\umiMathbf{y}} +\__umi_define_char{𝐳}{\umiMathbf{z}} +\__umi_define_char{𝐴}{\umiMathit{A}} +\__umi_define_char{𝐵}{\umiMathit{B}} +\__umi_define_char{𝐶}{\umiMathit{C}} +\__umi_define_char{𝐷}{\umiMathit{D}} +\__umi_define_char{𝐸}{\umiMathit{E}} +\__umi_define_char{𝐹}{\umiMathit{F}} +\__umi_define_char{𝐺}{\umiMathit{G}} +\__umi_define_char{𝐻}{\umiMathit{H}} +\__umi_define_char{𝐼}{\umiMathit{I}} +\__umi_define_char{𝐽}{\umiMathit{J}} +\__umi_define_char{𝐾}{\umiMathit{K}} +\__umi_define_char{𝐿}{\umiMathit{L}} +\__umi_define_char{𝑀}{\umiMathit{M}} +\__umi_define_char{𝑁}{\umiMathit{N}} +\__umi_define_char{𝑂}{\umiMathit{O}} +\__umi_define_char{𝑃}{\umiMathit{P}} +\__umi_define_char{𝑄}{\umiMathit{Q}} +\__umi_define_char{𝑅}{\umiMathit{R}} +\__umi_define_char{𝑆}{\umiMathit{S}} +\__umi_define_char{𝑇}{\umiMathit{T}} +\__umi_define_char{𝑈}{\umiMathit{U}} +\__umi_define_char{𝑉}{\umiMathit{V}} +\__umi_define_char{𝑊}{\umiMathit{W}} +\__umi_define_char{𝑋}{\umiMathit{X}} +\__umi_define_char{𝑌}{\umiMathit{Y}} +\__umi_define_char{𝑍}{\umiMathit{Z}} +\__umi_define_char{𝑎}{\umiMathit{a}} +\__umi_define_char{𝑏}{\umiMathit{b}} +\__umi_define_char{𝑐}{\umiMathit{c}} +\__umi_define_char{𝑑}{\umiMathit{d}} +\__umi_define_char{𝑒}{\umiMathit{e}} +\__umi_define_char{𝑓}{\umiMathit{f}} +\__umi_define_char{𝑔}{\umiMathit{g}} +\__umi_define_char{𝑖}{\umiMathit{i}} +\__umi_define_char{𝑗}{\umiMathit{j}} +\__umi_define_char{𝑘}{\umiMathit{k}} +\__umi_define_char{𝑙}{\umiMathit{l}} +\__umi_define_char{𝑚}{\umiMathit{m}} +\__umi_define_char{𝑛}{\umiMathit{n}} +\__umi_define_char{𝑜}{\umiMathit{o}} +\__umi_define_char{𝑝}{\umiMathit{p}} +\__umi_define_char{𝑞}{\umiMathit{q}} +\__umi_define_char{𝑟}{\umiMathit{r}} +\__umi_define_char{𝑠}{\umiMathit{s}} +\__umi_define_char{𝑡}{\umiMathit{t}} +\__umi_define_char{𝑢}{\umiMathit{u}} +\__umi_define_char{𝑣}{\umiMathit{v}} +\__umi_define_char{𝑤}{\umiMathit{w}} +\__umi_define_char{𝑥}{\umiMathit{x}} +\__umi_define_char{𝑦}{\umiMathit{y}} +\__umi_define_char{𝑧}{\umiMathit{z}} +\__umi_define_char{𝑨}{\umiMathbfit{A}} +\__umi_define_char{𝑩}{\umiMathbfit{B}} +\__umi_define_char{𝑪}{\umiMathbfit{C}} +\__umi_define_char{𝑫}{\umiMathbfit{D}} +\__umi_define_char{𝑬}{\umiMathbfit{E}} +\__umi_define_char{𝑭}{\umiMathbfit{F}} +\__umi_define_char{𝑮}{\umiMathbfit{G}} +\__umi_define_char{𝑯}{\umiMathbfit{H}} +\__umi_define_char{𝑰}{\umiMathbfit{I}} +\__umi_define_char{𝑱}{\umiMathbfit{J}} +\__umi_define_char{𝑲}{\umiMathbfit{K}} +\__umi_define_char{𝑳}{\umiMathbfit{L}} +\__umi_define_char{𝑴}{\umiMathbfit{M}} +\__umi_define_char{𝑵}{\umiMathbfit{N}} +\__umi_define_char{𝑶}{\umiMathbfit{O}} +\__umi_define_char{𝑷}{\umiMathbfit{P}} +\__umi_define_char{𝑸}{\umiMathbfit{Q}} +\__umi_define_char{𝑹}{\umiMathbfit{R}} +\__umi_define_char{𝑺}{\umiMathbfit{S}} +\__umi_define_char{𝑻}{\umiMathbfit{T}} +\__umi_define_char{𝑼}{\umiMathbfit{U}} +\__umi_define_char{𝑽}{\umiMathbfit{V}} +\__umi_define_char{𝑾}{\umiMathbfit{W}} +\__umi_define_char{𝑿}{\umiMathbfit{X}} +\__umi_define_char{𝒀}{\umiMathbfit{Y}} +\__umi_define_char{𝒁}{\umiMathbfit{Z}} +\__umi_define_char{𝒂}{\umiMathbfit{a}} +\__umi_define_char{𝒃}{\umiMathbfit{b}} +\__umi_define_char{𝒄}{\umiMathbfit{c}} +\__umi_define_char{𝒅}{\umiMathbfit{d}} +\__umi_define_char{𝒆}{\umiMathbfit{e}} +\__umi_define_char{𝒇}{\umiMathbfit{f}} +\__umi_define_char{𝒈}{\umiMathbfit{g}} +\__umi_define_char{𝒉}{\umiMathbfit{h}} +\__umi_define_char{𝒊}{\umiMathbfit{i}} +\__umi_define_char{𝒋}{\umiMathbfit{j}} +\__umi_define_char{𝒌}{\umiMathbfit{k}} +\__umi_define_char{𝒍}{\umiMathbfit{l}} +\__umi_define_char{𝒎}{\umiMathbfit{m}} +\__umi_define_char{𝒏}{\umiMathbfit{n}} +\__umi_define_char{𝒐}{\umiMathbfit{o}} +\__umi_define_char{𝒑}{\umiMathbfit{p}} +\__umi_define_char{𝒒}{\umiMathbfit{q}} +\__umi_define_char{𝒓}{\umiMathbfit{r}} +\__umi_define_char{𝒔}{\umiMathbfit{s}} +\__umi_define_char{𝒕}{\umiMathbfit{t}} +\__umi_define_char{𝒖}{\umiMathbfit{u}} +\__umi_define_char{𝒗}{\umiMathbfit{v}} +\__umi_define_char{𝒘}{\umiMathbfit{w}} +\__umi_define_char{𝒙}{\umiMathbfit{x}} +\__umi_define_char{𝒚}{\umiMathbfit{y}} +\__umi_define_char{𝒛}{\umiMathbfit{z}} +\__umi_define_char{𝒜}{\umiMathscr{A}} +\__umi_define_char{𝒞}{\umiMathscr{C}} +\__umi_define_char{𝒟}{\umiMathscr{D}} +\__umi_define_char{𝒢}{\umiMathscr{G}} +\__umi_define_char{𝒥}{\umiMathscr{J}} +\__umi_define_char{𝒦}{\umiMathscr{K}} +\__umi_define_char{𝒩}{\umiMathscr{N}} +\__umi_define_char{𝒪}{\umiMathscr{O}} +\__umi_define_char{𝒫}{\umiMathscr{P}} +\__umi_define_char{𝒬}{\umiMathscr{Q}} +\__umi_define_char{𝒮}{\umiMathscr{S}} +\__umi_define_char{𝒯}{\umiMathscr{T}} +\__umi_define_char{𝒰}{\umiMathscr{U}} +\__umi_define_char{𝒱}{\umiMathscr{V}} +\__umi_define_char{𝒲}{\umiMathscr{W}} +\__umi_define_char{𝒳}{\umiMathscr{X}} +\__umi_define_char{𝒴}{\umiMathscr{Y}} +\__umi_define_char{𝒵}{\umiMathscr{Z}} +\__umi_define_char{𝒶}{\umiMathscr{a}} +\__umi_define_char{𝒷}{\umiMathscr{b}} +\__umi_define_char{𝒸}{\umiMathscr{c}} +\__umi_define_char{𝒹}{\umiMathscr{d}} +\__umi_define_char{𝒻}{\umiMathscr{f}} +\__umi_define_char{𝒽}{\umiMathscr{h}} +\__umi_define_char{𝒾}{\umiMathscr{i}} +\__umi_define_char{𝒿}{\umiMathscr{j}} +\__umi_define_char{𝓀}{\umiMathscr{k}} +\__umi_define_char{𝓁}{\umiMathscr{l}} +\__umi_define_char{𝓂}{\umiMathscr{m}} +\__umi_define_char{𝓃}{\umiMathscr{n}} +\__umi_define_char{𝓅}{\umiMathscr{p}} +\__umi_define_char{𝓆}{\umiMathscr{q}} +\__umi_define_char{𝓇}{\umiMathscr{r}} +\__umi_define_char{𝓈}{\umiMathscr{s}} +\__umi_define_char{𝓉}{\umiMathscr{t}} +\__umi_define_char{𝓊}{\umiMathscr{u}} +\__umi_define_char{𝓋}{\umiMathscr{v}} +\__umi_define_char{𝓌}{\umiMathscr{w}} +\__umi_define_char{𝓍}{\umiMathscr{x}} +\__umi_define_char{𝓎}{\umiMathscr{y}} +\__umi_define_char{𝓏}{\umiMathscr{z}} +\__umi_define_char{𝓐}{\umiMathbfscr{A}} +\__umi_define_char{𝓑}{\umiMathbfscr{B}} +\__umi_define_char{𝓒}{\umiMathbfscr{C}} +\__umi_define_char{𝓓}{\umiMathbfscr{D}} +\__umi_define_char{𝓔}{\umiMathbfscr{E}} +\__umi_define_char{𝓕}{\umiMathbfscr{F}} +\__umi_define_char{𝓖}{\umiMathbfscr{G}} +\__umi_define_char{𝓗}{\umiMathbfscr{H}} +\__umi_define_char{𝓘}{\umiMathbfscr{I}} +\__umi_define_char{𝓙}{\umiMathbfscr{J}} +\__umi_define_char{𝓚}{\umiMathbfscr{K}} +\__umi_define_char{𝓛}{\umiMathbfscr{L}} +\__umi_define_char{𝓜}{\umiMathbfscr{M}} +\__umi_define_char{𝓝}{\umiMathbfscr{N}} +\__umi_define_char{𝓞}{\umiMathbfscr{O}} +\__umi_define_char{𝓟}{\umiMathbfscr{P}} +\__umi_define_char{𝓠}{\umiMathbfscr{Q}} +\__umi_define_char{𝓡}{\umiMathbfscr{R}} +\__umi_define_char{𝓢}{\umiMathbfscr{S}} +\__umi_define_char{𝓣}{\umiMathbfscr{T}} +\__umi_define_char{𝓤}{\umiMathbfscr{U}} +\__umi_define_char{𝓥}{\umiMathbfscr{V}} +\__umi_define_char{𝓦}{\umiMathbfscr{W}} +\__umi_define_char{𝓧}{\umiMathbfscr{X}} +\__umi_define_char{𝓨}{\umiMathbfscr{Y}} +\__umi_define_char{𝓩}{\umiMathbfscr{Z}} +\__umi_define_char{𝓪}{\umiMathbfscr{a}} +\__umi_define_char{𝓫}{\umiMathbfscr{b}} +\__umi_define_char{𝓬}{\umiMathbfscr{c}} +\__umi_define_char{𝓭}{\umiMathbfscr{d}} +\__umi_define_char{𝓮}{\umiMathbfscr{e}} +\__umi_define_char{𝓯}{\umiMathbfscr{f}} +\__umi_define_char{𝓰}{\umiMathbfscr{g}} +\__umi_define_char{𝓱}{\umiMathbfscr{h}} +\__umi_define_char{𝓲}{\umiMathbfscr{i}} +\__umi_define_char{𝓳}{\umiMathbfscr{j}} +\__umi_define_char{𝓴}{\umiMathbfscr{k}} +\__umi_define_char{𝓵}{\umiMathbfscr{l}} +\__umi_define_char{𝓶}{\umiMathbfscr{m}} +\__umi_define_char{𝓷}{\umiMathbfscr{n}} +\__umi_define_char{𝓸}{\umiMathbfscr{o}} +\__umi_define_char{𝓹}{\umiMathbfscr{p}} +\__umi_define_char{𝓺}{\umiMathbfscr{q}} +\__umi_define_char{𝓻}{\umiMathbfscr{r}} +\__umi_define_char{𝓼}{\umiMathbfscr{s}} +\__umi_define_char{𝓽}{\umiMathbfscr{t}} +\__umi_define_char{𝓾}{\umiMathbfscr{u}} +\__umi_define_char{𝓿}{\umiMathbfscr{v}} +\__umi_define_char{𝔀}{\umiMathbfscr{w}} +\__umi_define_char{𝔁}{\umiMathbfscr{x}} +\__umi_define_char{𝔂}{\umiMathbfscr{y}} +\__umi_define_char{𝔃}{\umiMathbfscr{z}} +\__umi_define_char{𝔄}{\umiMathfrak{A}} +\__umi_define_char{𝔅}{\umiMathfrak{B}} +\__umi_define_char{𝔇}{\umiMathfrak{D}} +\__umi_define_char{𝔈}{\umiMathfrak{E}} +\__umi_define_char{𝔉}{\umiMathfrak{F}} +\__umi_define_char{𝔊}{\umiMathfrak{G}} +\__umi_define_char{𝔍}{\umiMathfrak{J}} +\__umi_define_char{𝔎}{\umiMathfrak{K}} +\__umi_define_char{𝔏}{\umiMathfrak{L}} +\__umi_define_char{𝔐}{\umiMathfrak{M}} +\__umi_define_char{𝔑}{\umiMathfrak{N}} +\__umi_define_char{𝔒}{\umiMathfrak{O}} +\__umi_define_char{𝔓}{\umiMathfrak{P}} +\__umi_define_char{𝔔}{\umiMathfrak{Q}} +\__umi_define_char{𝔖}{\umiMathfrak{S}} +\__umi_define_char{𝔗}{\umiMathfrak{T}} +\__umi_define_char{𝔘}{\umiMathfrak{U}} +\__umi_define_char{𝔙}{\umiMathfrak{V}} +\__umi_define_char{𝔚}{\umiMathfrak{W}} +\__umi_define_char{𝔛}{\umiMathfrak{X}} +\__umi_define_char{𝔜}{\umiMathfrak{Y}} +\__umi_define_char{𝔞}{\umiMathfrak{a}} +\__umi_define_char{𝔟}{\umiMathfrak{b}} +\__umi_define_char{𝔠}{\umiMathfrak{c}} +\__umi_define_char{𝔡}{\umiMathfrak{d}} +\__umi_define_char{𝔢}{\umiMathfrak{e}} +\__umi_define_char{𝔣}{\umiMathfrak{f}} +\__umi_define_char{𝔤}{\umiMathfrak{g}} +\__umi_define_char{𝔥}{\umiMathfrak{h}} +\__umi_define_char{𝔦}{\umiMathfrak{i}} +\__umi_define_char{𝔧}{\umiMathfrak{j}} +\__umi_define_char{𝔨}{\umiMathfrak{k}} +\__umi_define_char{𝔩}{\umiMathfrak{l}} +\__umi_define_char{𝔪}{\umiMathfrak{m}} +\__umi_define_char{𝔫}{\umiMathfrak{n}} +\__umi_define_char{𝔬}{\umiMathfrak{o}} +\__umi_define_char{𝔭}{\umiMathfrak{p}} +\__umi_define_char{𝔮}{\umiMathfrak{q}} +\__umi_define_char{𝔯}{\umiMathfrak{r}} +\__umi_define_char{𝔰}{\umiMathfrak{s}} +\__umi_define_char{𝔱}{\umiMathfrak{t}} +\__umi_define_char{𝔲}{\umiMathfrak{u}} +\__umi_define_char{𝔳}{\umiMathfrak{v}} +\__umi_define_char{𝔴}{\umiMathfrak{w}} +\__umi_define_char{𝔵}{\umiMathfrak{x}} +\__umi_define_char{𝔶}{\umiMathfrak{y}} +\__umi_define_char{𝔷}{\umiMathfrak{z}} +\__umi_define_char{𝔸}{\umiMathbb{A}} +\__umi_define_char{𝔹}{\umiMathbb{B}} +\__umi_define_char{𝔻}{\umiMathbb{D}} +\__umi_define_char{𝔼}{\umiMathbb{E}} +\__umi_define_char{𝔽}{\umiMathbb{F}} +\__umi_define_char{𝔾}{\umiMathbb{G}} +\__umi_define_char{𝕀}{\umiMathbb{I}} +\__umi_define_char{𝕁}{\umiMathbb{J}} +\__umi_define_char{𝕂}{\umiMathbb{K}} +\__umi_define_char{𝕃}{\umiMathbb{L}} +\__umi_define_char{𝕄}{\umiMathbb{M}} +\__umi_define_char{𝕆}{\umiMathbb{O}} +\__umi_define_char{𝕊}{\umiMathbb{S}} +\__umi_define_char{𝕋}{\umiMathbb{T}} +\__umi_define_char{𝕌}{\umiMathbb{U}} +\__umi_define_char{𝕍}{\umiMathbb{V}} +\__umi_define_char{𝕎}{\umiMathbb{W}} +\__umi_define_char{𝕏}{\umiMathbb{X}} +\__umi_define_char{𝕐}{\umiMathbb{Y}} +\__umi_define_char{𝕒}{\umiMathbb{a}} +\__umi_define_char{𝕓}{\umiMathbb{b}} +\__umi_define_char{𝕔}{\umiMathbb{c}} +\__umi_define_char{𝕕}{\umiMathbb{d}} +\__umi_define_char{𝕖}{\umiMathbb{e}} +\__umi_define_char{𝕗}{\umiMathbb{f}} +\__umi_define_char{𝕘}{\umiMathbb{g}} +\__umi_define_char{𝕙}{\umiMathbb{h}} +\__umi_define_char{𝕚}{\umiMathbb{i}} +\__umi_define_char{𝕛}{\umiMathbb{j}} +\__umi_define_char{𝕜}{\umiMathbb{k}} +\__umi_define_char{𝕝}{\umiMathbb{l}} +\__umi_define_char{𝕞}{\umiMathbb{m}} +\__umi_define_char{𝕟}{\umiMathbb{n}} +\__umi_define_char{𝕠}{\umiMathbb{o}} +\__umi_define_char{𝕡}{\umiMathbb{p}} +\__umi_define_char{𝕢}{\umiMathbb{q}} +\__umi_define_char{𝕣}{\umiMathbb{r}} +\__umi_define_char{𝕤}{\umiMathbb{s}} +\__umi_define_char{𝕥}{\umiMathbb{t}} +\__umi_define_char{𝕦}{\umiMathbb{u}} +\__umi_define_char{𝕧}{\umiMathbb{v}} +\__umi_define_char{𝕨}{\umiMathbb{w}} +\__umi_define_char{𝕩}{\umiMathbb{x}} +\__umi_define_char{𝕪}{\umiMathbb{y}} +\__umi_define_char{𝕫}{\umiMathbb{z}} +\__umi_define_char{𝕬}{\umiMathbffrak{A}} +\__umi_define_char{𝕭}{\umiMathbffrak{B}} +\__umi_define_char{𝕮}{\umiMathbffrak{C}} +\__umi_define_char{𝕯}{\umiMathbffrak{D}} +\__umi_define_char{𝕰}{\umiMathbffrak{E}} +\__umi_define_char{𝕱}{\umiMathbffrak{F}} +\__umi_define_char{𝕲}{\umiMathbffrak{G}} +\__umi_define_char{𝕳}{\umiMathbffrak{H}} +\__umi_define_char{𝕴}{\umiMathbffrak{I}} +\__umi_define_char{𝕵}{\umiMathbffrak{J}} +\__umi_define_char{𝕶}{\umiMathbffrak{K}} +\__umi_define_char{𝕷}{\umiMathbffrak{L}} +\__umi_define_char{𝕸}{\umiMathbffrak{M}} +\__umi_define_char{𝕹}{\umiMathbffrak{N}} +\__umi_define_char{𝕺}{\umiMathbffrak{O}} +\__umi_define_char{𝕻}{\umiMathbffrak{P}} +\__umi_define_char{𝕼}{\umiMathbffrak{Q}} +\__umi_define_char{𝕽}{\umiMathbffrak{R}} +\__umi_define_char{𝕾}{\umiMathbffrak{S}} +\__umi_define_char{𝕿}{\umiMathbffrak{T}} +\__umi_define_char{𝖀}{\umiMathbffrak{U}} +\__umi_define_char{𝖁}{\umiMathbffrak{V}} +\__umi_define_char{𝖂}{\umiMathbffrak{W}} +\__umi_define_char{𝖃}{\umiMathbffrak{X}} +\__umi_define_char{𝖄}{\umiMathbffrak{Y}} +\__umi_define_char{𝖅}{\umiMathbffrak{Z}} +\__umi_define_char{𝖆}{\umiMathbffrak{a}} +\__umi_define_char{𝖇}{\umiMathbffrak{b}} +\__umi_define_char{𝖈}{\umiMathbffrak{c}} +\__umi_define_char{𝖉}{\umiMathbffrak{d}} +\__umi_define_char{𝖊}{\umiMathbffrak{e}} +\__umi_define_char{𝖋}{\umiMathbffrak{f}} +\__umi_define_char{𝖌}{\umiMathbffrak{g}} +\__umi_define_char{𝖍}{\umiMathbffrak{h}} +\__umi_define_char{𝖎}{\umiMathbffrak{i}} +\__umi_define_char{𝖏}{\umiMathbffrak{j}} +\__umi_define_char{𝖐}{\umiMathbffrak{k}} +\__umi_define_char{𝖑}{\umiMathbffrak{l}} +\__umi_define_char{𝖒}{\umiMathbffrak{m}} +\__umi_define_char{𝖓}{\umiMathbffrak{n}} +\__umi_define_char{𝖔}{\umiMathbffrak{o}} +\__umi_define_char{𝖕}{\umiMathbffrak{p}} +\__umi_define_char{𝖖}{\umiMathbffrak{q}} +\__umi_define_char{𝖗}{\umiMathbffrak{r}} +\__umi_define_char{𝖘}{\umiMathbffrak{s}} +\__umi_define_char{𝖙}{\umiMathbffrak{t}} +\__umi_define_char{𝖚}{\umiMathbffrak{u}} +\__umi_define_char{𝖛}{\umiMathbffrak{v}} +\__umi_define_char{𝖜}{\umiMathbffrak{w}} +\__umi_define_char{𝖝}{\umiMathbffrak{x}} +\__umi_define_char{𝖞}{\umiMathbffrak{y}} +\__umi_define_char{𝖟}{\umiMathbffrak{z}} +\__umi_define_char{𝖠}{\umiMathsf{A}} +\__umi_define_char{𝖡}{\umiMathsf{B}} +\__umi_define_char{𝖢}{\umiMathsf{C}} +\__umi_define_char{𝖣}{\umiMathsf{D}} +\__umi_define_char{𝖤}{\umiMathsf{E}} +\__umi_define_char{𝖥}{\umiMathsf{F}} +\__umi_define_char{𝖦}{\umiMathsf{G}} +\__umi_define_char{𝖧}{\umiMathsf{H}} +\__umi_define_char{𝖨}{\umiMathsf{I}} +\__umi_define_char{𝖩}{\umiMathsf{J}} +\__umi_define_char{𝖪}{\umiMathsf{K}} +\__umi_define_char{𝖫}{\umiMathsf{L}} +\__umi_define_char{𝖬}{\umiMathsf{M}} +\__umi_define_char{𝖭}{\umiMathsf{N}} +\__umi_define_char{𝖮}{\umiMathsf{O}} +\__umi_define_char{𝖯}{\umiMathsf{P}} +\__umi_define_char{𝖰}{\umiMathsf{Q}} +\__umi_define_char{𝖱}{\umiMathsf{R}} +\__umi_define_char{𝖲}{\umiMathsf{S}} +\__umi_define_char{𝖳}{\umiMathsf{T}} +\__umi_define_char{𝖴}{\umiMathsf{U}} +\__umi_define_char{𝖵}{\umiMathsf{V}} +\__umi_define_char{𝖶}{\umiMathsf{W}} +\__umi_define_char{𝖷}{\umiMathsf{X}} +\__umi_define_char{𝖸}{\umiMathsf{Y}} +\__umi_define_char{𝖹}{\umiMathsf{Z}} +\__umi_define_char{𝖺}{\umiMathsf{a}} +\__umi_define_char{𝖻}{\umiMathsf{b}} +\__umi_define_char{𝖼}{\umiMathsf{c}} +\__umi_define_char{𝖽}{\umiMathsf{d}} +\__umi_define_char{𝖾}{\umiMathsf{e}} +\__umi_define_char{𝖿}{\umiMathsf{f}} +\__umi_define_char{𝗀}{\umiMathsf{g}} +\__umi_define_char{𝗁}{\umiMathsf{h}} +\__umi_define_char{𝗂}{\umiMathsf{i}} +\__umi_define_char{𝗃}{\umiMathsf{j}} +\__umi_define_char{𝗄}{\umiMathsf{k}} +\__umi_define_char{𝗅}{\umiMathsf{l}} +\__umi_define_char{𝗆}{\umiMathsf{m}} +\__umi_define_char{𝗇}{\umiMathsf{n}} +\__umi_define_char{𝗈}{\umiMathsf{o}} +\__umi_define_char{𝗉}{\umiMathsf{p}} +\__umi_define_char{𝗊}{\umiMathsf{q}} +\__umi_define_char{𝗋}{\umiMathsf{r}} +\__umi_define_char{𝗌}{\umiMathsf{s}} +\__umi_define_char{𝗍}{\umiMathsf{t}} +\__umi_define_char{𝗎}{\umiMathsf{u}} +\__umi_define_char{𝗏}{\umiMathsf{v}} +\__umi_define_char{𝗐}{\umiMathsf{w}} +\__umi_define_char{𝗑}{\umiMathsf{x}} +\__umi_define_char{𝗒}{\umiMathsf{y}} +\__umi_define_char{𝗓}{\umiMathsf{z}} +\__umi_define_char{𝗔}{\umiMathsfbf{A}} +\__umi_define_char{𝗕}{\umiMathsfbf{B}} +\__umi_define_char{𝗖}{\umiMathsfbf{C}} +\__umi_define_char{𝗗}{\umiMathsfbf{D}} +\__umi_define_char{𝗘}{\umiMathsfbf{E}} +\__umi_define_char{𝗙}{\umiMathsfbf{F}} +\__umi_define_char{𝗚}{\umiMathsfbf{G}} +\__umi_define_char{𝗛}{\umiMathsfbf{H}} +\__umi_define_char{𝗜}{\umiMathsfbf{I}} +\__umi_define_char{𝗝}{\umiMathsfbf{J}} +\__umi_define_char{𝗞}{\umiMathsfbf{K}} +\__umi_define_char{𝗟}{\umiMathsfbf{L}} +\__umi_define_char{𝗠}{\umiMathsfbf{M}} +\__umi_define_char{𝗡}{\umiMathsfbf{N}} +\__umi_define_char{𝗢}{\umiMathsfbf{O}} +\__umi_define_char{𝗣}{\umiMathsfbf{P}} +\__umi_define_char{𝗤}{\umiMathsfbf{Q}} +\__umi_define_char{𝗥}{\umiMathsfbf{R}} +\__umi_define_char{𝗦}{\umiMathsfbf{S}} +\__umi_define_char{𝗧}{\umiMathsfbf{T}} +\__umi_define_char{𝗨}{\umiMathsfbf{U}} +\__umi_define_char{𝗩}{\umiMathsfbf{V}} +\__umi_define_char{𝗪}{\umiMathsfbf{W}} +\__umi_define_char{𝗫}{\umiMathsfbf{X}} +\__umi_define_char{𝗬}{\umiMathsfbf{Y}} +\__umi_define_char{𝗭}{\umiMathsfbf{Z}} +\__umi_define_char{𝗮}{\umiMathsfbf{a}} +\__umi_define_char{𝗯}{\umiMathsfbf{b}} +\__umi_define_char{𝗰}{\umiMathsfbf{c}} +\__umi_define_char{𝗱}{\umiMathsfbf{d}} +\__umi_define_char{𝗲}{\umiMathsfbf{e}} +\__umi_define_char{𝗳}{\umiMathsfbf{f}} +\__umi_define_char{𝗴}{\umiMathsfbf{g}} +\__umi_define_char{𝗵}{\umiMathsfbf{h}} +\__umi_define_char{𝗶}{\umiMathsfbf{i}} +\__umi_define_char{𝗷}{\umiMathsfbf{j}} +\__umi_define_char{𝗸}{\umiMathsfbf{k}} +\__umi_define_char{𝗹}{\umiMathsfbf{l}} +\__umi_define_char{𝗺}{\umiMathsfbf{m}} +\__umi_define_char{𝗻}{\umiMathsfbf{n}} +\__umi_define_char{𝗼}{\umiMathsfbf{o}} +\__umi_define_char{𝗽}{\umiMathsfbf{p}} +\__umi_define_char{𝗾}{\umiMathsfbf{q}} +\__umi_define_char{𝗿}{\umiMathsfbf{r}} +\__umi_define_char{𝘀}{\umiMathsfbf{s}} +\__umi_define_char{𝘁}{\umiMathsfbf{t}} +\__umi_define_char{𝘂}{\umiMathsfbf{u}} +\__umi_define_char{𝘃}{\umiMathsfbf{v}} +\__umi_define_char{𝘄}{\umiMathsfbf{w}} +\__umi_define_char{𝘅}{\umiMathsfbf{x}} +\__umi_define_char{𝘆}{\umiMathsfbf{y}} +\__umi_define_char{𝘇}{\umiMathsfbf{z}} +\__umi_define_char{𝘈}{\umiMathsfit{A}} +\__umi_define_char{𝘉}{\umiMathsfit{B}} +\__umi_define_char{𝘊}{\umiMathsfit{C}} +\__umi_define_char{𝘋}{\umiMathsfit{D}} +\__umi_define_char{𝘌}{\umiMathsfit{E}} +\__umi_define_char{𝘍}{\umiMathsfit{F}} +\__umi_define_char{𝘎}{\umiMathsfit{G}} +\__umi_define_char{𝘏}{\umiMathsfit{H}} +\__umi_define_char{𝘐}{\umiMathsfit{I}} +\__umi_define_char{𝘑}{\umiMathsfit{J}} +\__umi_define_char{𝘒}{\umiMathsfit{K}} +\__umi_define_char{𝘓}{\umiMathsfit{L}} +\__umi_define_char{𝘔}{\umiMathsfit{M}} +\__umi_define_char{𝘕}{\umiMathsfit{N}} +\__umi_define_char{𝘖}{\umiMathsfit{O}} +\__umi_define_char{𝘗}{\umiMathsfit{P}} +\__umi_define_char{𝘘}{\umiMathsfit{Q}} +\__umi_define_char{𝘙}{\umiMathsfit{R}} +\__umi_define_char{𝘚}{\umiMathsfit{S}} +\__umi_define_char{𝘛}{\umiMathsfit{T}} +\__umi_define_char{𝘜}{\umiMathsfit{U}} +\__umi_define_char{𝘝}{\umiMathsfit{V}} +\__umi_define_char{𝘞}{\umiMathsfit{W}} +\__umi_define_char{𝘟}{\umiMathsfit{X}} +\__umi_define_char{𝘠}{\umiMathsfit{Y}} +\__umi_define_char{𝘡}{\umiMathsfit{Z}} +\__umi_define_char{𝘢}{\umiMathsfit{a}} +\__umi_define_char{𝘣}{\umiMathsfit{b}} +\__umi_define_char{𝘤}{\umiMathsfit{c}} +\__umi_define_char{𝘥}{\umiMathsfit{d}} +\__umi_define_char{𝘦}{\umiMathsfit{e}} +\__umi_define_char{𝘧}{\umiMathsfit{f}} +\__umi_define_char{𝘨}{\umiMathsfit{g}} +\__umi_define_char{𝘩}{\umiMathsfit{h}} +\__umi_define_char{𝘪}{\umiMathsfit{i}} +\__umi_define_char{𝘫}{\umiMathsfit{j}} +\__umi_define_char{𝘬}{\umiMathsfit{k}} +\__umi_define_char{𝘭}{\umiMathsfit{l}} +\__umi_define_char{𝘮}{\umiMathsfit{m}} +\__umi_define_char{𝘯}{\umiMathsfit{n}} +\__umi_define_char{𝘰}{\umiMathsfit{o}} +\__umi_define_char{𝘱}{\umiMathsfit{p}} +\__umi_define_char{𝘲}{\umiMathsfit{q}} +\__umi_define_char{𝘳}{\umiMathsfit{r}} +\__umi_define_char{𝘴}{\umiMathsfit{s}} +\__umi_define_char{𝘵}{\umiMathsfit{t}} +\__umi_define_char{𝘶}{\umiMathsfit{u}} +\__umi_define_char{𝘷}{\umiMathsfit{v}} +\__umi_define_char{𝘸}{\umiMathsfit{w}} +\__umi_define_char{𝘹}{\umiMathsfit{x}} +\__umi_define_char{𝘺}{\umiMathsfit{y}} +\__umi_define_char{𝘻}{\umiMathsfit{z}} +\__umi_define_char{𝘼}{\umiMathsfbfit{A}} +\__umi_define_char{𝘽}{\umiMathsfbfit{B}} +\__umi_define_char{𝘾}{\umiMathsfbfit{C}} +\__umi_define_char{𝘿}{\umiMathsfbfit{D}} +\__umi_define_char{𝙀}{\umiMathsfbfit{E}} +\__umi_define_char{𝙁}{\umiMathsfbfit{F}} +\__umi_define_char{𝙂}{\umiMathsfbfit{G}} +\__umi_define_char{𝙃}{\umiMathsfbfit{H}} +\__umi_define_char{𝙄}{\umiMathsfbfit{I}} +\__umi_define_char{𝙅}{\umiMathsfbfit{J}} +\__umi_define_char{𝙆}{\umiMathsfbfit{K}} +\__umi_define_char{𝙇}{\umiMathsfbfit{L}} +\__umi_define_char{𝙈}{\umiMathsfbfit{M}} +\__umi_define_char{𝙉}{\umiMathsfbfit{N}} +\__umi_define_char{𝙊}{\umiMathsfbfit{O}} +\__umi_define_char{𝙋}{\umiMathsfbfit{P}} +\__umi_define_char{𝙌}{\umiMathsfbfit{Q}} +\__umi_define_char{𝙍}{\umiMathsfbfit{R}} +\__umi_define_char{𝙎}{\umiMathsfbfit{S}} +\__umi_define_char{𝙏}{\umiMathsfbfit{T}} +\__umi_define_char{𝙐}{\umiMathsfbfit{U}} +\__umi_define_char{𝙑}{\umiMathsfbfit{V}} +\__umi_define_char{𝙒}{\umiMathsfbfit{W}} +\__umi_define_char{𝙓}{\umiMathsfbfit{X}} +\__umi_define_char{𝙔}{\umiMathsfbfit{Y}} +\__umi_define_char{𝙕}{\umiMathsfbfit{Z}} +\__umi_define_char{𝙖}{\umiMathsfbfit{a}} +\__umi_define_char{𝙗}{\umiMathsfbfit{b}} +\__umi_define_char{𝙘}{\umiMathsfbfit{c}} +\__umi_define_char{𝙙}{\umiMathsfbfit{d}} +\__umi_define_char{𝙚}{\umiMathsfbfit{e}} +\__umi_define_char{𝙛}{\umiMathsfbfit{f}} +\__umi_define_char{𝙜}{\umiMathsfbfit{g}} +\__umi_define_char{𝙝}{\umiMathsfbfit{h}} +\__umi_define_char{𝙞}{\umiMathsfbfit{i}} +\__umi_define_char{𝙟}{\umiMathsfbfit{j}} +\__umi_define_char{𝙠}{\umiMathsfbfit{k}} +\__umi_define_char{𝙡}{\umiMathsfbfit{l}} +\__umi_define_char{𝙢}{\umiMathsfbfit{m}} +\__umi_define_char{𝙣}{\umiMathsfbfit{n}} +\__umi_define_char{𝙤}{\umiMathsfbfit{o}} +\__umi_define_char{𝙥}{\umiMathsfbfit{p}} +\__umi_define_char{𝙦}{\umiMathsfbfit{q}} +\__umi_define_char{𝙧}{\umiMathsfbfit{r}} +\__umi_define_char{𝙨}{\umiMathsfbfit{s}} +\__umi_define_char{𝙩}{\umiMathsfbfit{t}} +\__umi_define_char{𝙪}{\umiMathsfbfit{u}} +\__umi_define_char{𝙫}{\umiMathsfbfit{v}} +\__umi_define_char{𝙬}{\umiMathsfbfit{w}} +\__umi_define_char{𝙭}{\umiMathsfbfit{x}} +\__umi_define_char{𝙮}{\umiMathsfbfit{y}} +\__umi_define_char{𝙯}{\umiMathsfbfit{z}} +\__umi_define_char{𝙰}{\umiMathtt{A}} +\__umi_define_char{𝙱}{\umiMathtt{B}} +\__umi_define_char{𝙲}{\umiMathtt{C}} +\__umi_define_char{𝙳}{\umiMathtt{D}} +\__umi_define_char{𝙴}{\umiMathtt{E}} +\__umi_define_char{𝙵}{\umiMathtt{F}} +\__umi_define_char{𝙶}{\umiMathtt{G}} +\__umi_define_char{𝙷}{\umiMathtt{H}} +\__umi_define_char{𝙸}{\umiMathtt{I}} +\__umi_define_char{𝙹}{\umiMathtt{J}} +\__umi_define_char{𝙺}{\umiMathtt{K}} +\__umi_define_char{𝙻}{\umiMathtt{L}} +\__umi_define_char{𝙼}{\umiMathtt{M}} +\__umi_define_char{𝙽}{\umiMathtt{N}} +\__umi_define_char{𝙾}{\umiMathtt{O}} +\__umi_define_char{𝙿}{\umiMathtt{P}} +\__umi_define_char{𝚀}{\umiMathtt{Q}} +\__umi_define_char{𝚁}{\umiMathtt{R}} +\__umi_define_char{𝚂}{\umiMathtt{S}} +\__umi_define_char{𝚃}{\umiMathtt{T}} +\__umi_define_char{𝚄}{\umiMathtt{U}} +\__umi_define_char{𝚅}{\umiMathtt{V}} +\__umi_define_char{𝚆}{\umiMathtt{W}} +\__umi_define_char{𝚇}{\umiMathtt{X}} +\__umi_define_char{𝚈}{\umiMathtt{Y}} +\__umi_define_char{𝚉}{\umiMathtt{Z}} +\__umi_define_char{𝚊}{\umiMathtt{a}} +\__umi_define_char{𝚋}{\umiMathtt{b}} +\__umi_define_char{𝚌}{\umiMathtt{c}} +\__umi_define_char{𝚍}{\umiMathtt{d}} +\__umi_define_char{𝚎}{\umiMathtt{e}} +\__umi_define_char{𝚏}{\umiMathtt{f}} +\__umi_define_char{𝚐}{\umiMathtt{g}} +\__umi_define_char{𝚑}{\umiMathtt{h}} +\__umi_define_char{𝚒}{\umiMathtt{i}} +\__umi_define_char{𝚓}{\umiMathtt{j}} +\__umi_define_char{𝚔}{\umiMathtt{k}} +\__umi_define_char{𝚕}{\umiMathtt{l}} +\__umi_define_char{𝚖}{\umiMathtt{m}} +\__umi_define_char{𝚗}{\umiMathtt{n}} +\__umi_define_char{𝚘}{\umiMathtt{o}} +\__umi_define_char{𝚙}{\umiMathtt{p}} +\__umi_define_char{𝚚}{\umiMathtt{q}} +\__umi_define_char{𝚛}{\umiMathtt{r}} +\__umi_define_char{𝚜}{\umiMathtt{s}} +\__umi_define_char{𝚝}{\umiMathtt{t}} +\__umi_define_char{𝚞}{\umiMathtt{u}} +\__umi_define_char{𝚟}{\umiMathtt{v}} +\__umi_define_char{𝚠}{\umiMathtt{w}} +\__umi_define_char{𝚡}{\umiMathtt{x}} +\__umi_define_char{𝚢}{\umiMathtt{y}} +\__umi_define_char{𝚣}{\umiMathtt{z}} +\__umi_define_char{𝚤}{\imath} +\__umi_define_char{𝚥}{\jmath} +\__umi_define_char{𝚨}{\umiMathbf{\__umi_alternatives_iisafe\Alpha A}} +\__umi_define_char{𝚩}{\umiMathbf{\__umi_alternatives_iisafe\Beta B}} +\__umi_define_char{𝚪}{\umiMathbf{\Gamma}} +\__umi_define_char{𝚫}{\umiMathbf{\Delta}} +\__umi_define_char{𝚬}{\umiMathbf{\__umi_alternatives_iisafe\Epsilon E}} +\__umi_define_char{𝚭}{\umiMathbf{\__umi_alternatives_iisafe\Zeta Z}} +\__umi_define_char{𝚮}{\umiMathbf{\__umi_alternatives_iisafe\Eta H}} +\__umi_define_char{𝚯}{\umiMathbf{\Theta}} +\__umi_define_char{𝚰}{\umiMathbf{\__umi_alternatives_iisafe\Iota I}} +\__umi_define_char{𝚱}{\umiMathbf{\__umi_alternatives_iisafe\Kappa K}} +\__umi_define_char{𝚲}{\umiMathbf{\Lambda}} +\__umi_define_char{𝚳}{\umiMathbf{\__umi_alternatives_iisafe\Mu M}} +\__umi_define_char{𝚴}{\umiMathbf{\__umi_alternatives_iisafe\Nu N}} +\__umi_define_char{𝚵}{\umiMathbf{\Xi}} +\__umi_define_char{𝚶}{\umiMathbf{\__umi_alternatives_iisafe\Omicron O}} +\__umi_define_char{𝚷}{\umiMathbf{\Pi}} +\__umi_define_char{𝚸}{\umiMathbf{\__umi_alternatives_iisafe\Rho P}} +\__umi_define_char{𝚹}{\umiMathbf{\varTheta}} +\__umi_define_char{𝚺}{\umiMathbf{\Sigma}} +\__umi_define_char{𝚻}{\umiMathbf{\__umi_alternatives_iisafe\Tau T}} +\__umi_define_char{𝚼}{\umiMathbf{\Upsilon}} +\__umi_define_char{𝚽}{\umiMathbf{\Phi}} +\__umi_define_char{𝚾}{\umiMathbf{\__umi_alternatives_iisafe\Chi X}} +\__umi_define_char{𝚿}{\umiMathbf{\Psi}} +\__umi_define_char{𝛀}{\umiMathbf{\Omega}} +\__umi_define_char{𝛁}{\umiMathbf{\nabla}} +\__umi_define_char{𝛂}{\umiMathbf{\alpha}} +\__umi_define_char{𝛃}{\umiMathbf{\beta}} +\__umi_define_char{𝛄}{\umiMathbf{\gamma}} +\__umi_define_char{𝛅}{\umiMathbf{\delta}} +\__umi_define_char{𝛆}{\umiMathbf{\varepsilon}} +\__umi_define_char{𝛇}{\umiMathbf{\zeta}} +\__umi_define_char{𝛈}{\umiMathbf{\eta}} +\__umi_define_char{𝛉}{\umiMathbf{\theta}} +\__umi_define_char{𝛊}{\umiMathbf{\iota}} +\__umi_define_char{𝛋}{\umiMathbf{\kappa}} +\__umi_define_char{𝛌}{\umiMathbf{\lambda}} +\__umi_define_char{𝛍}{\umiMathbf{\mu}} +\__umi_define_char{𝛎}{\umiMathbf{\nu}} +\__umi_define_char{𝛏}{\umiMathbf{\xi}} +\__umi_define_char{𝛐}{\umiMathbf{\__umi_alternatives_iisafe\omicron o}} +\__umi_define_char{𝛑}{\umiMathbf{\pi}} +\__umi_define_char{𝛒}{\umiMathbf{\rho}} +\__umi_define_char{𝛓}{\umiMathbf{\varsigma}} +\__umi_define_char{𝛔}{\umiMathbf{\sigma}} +\__umi_define_char{𝛕}{\umiMathbf{\tau}} +\__umi_define_char{𝛖}{\umiMathbf{\upsilon}} +\__umi_define_char{𝛗}{\umiMathbf{\varphi}} +\__umi_define_char{𝛘}{\umiMathbf{\chi}} +\__umi_define_char{𝛙}{\umiMathbf{\psi}} +\__umi_define_char{𝛚}{\umiMathbf{\omega}} +\__umi_define_char{𝛛}{\umiMathbf{\partial}} +\__umi_define_char{𝛜}{\umiMathbf{\epsilon}} +\__umi_define_char{𝛝}{\umiMathbf{\vartheta}} +\__umi_define_char{𝛞}{\umiMathbf{\varkappa}} +\__umi_define_char{𝛟}{\umiMathbf{\phi}} +\__umi_define_char{𝛠}{\umiMathbf{\varrho}} +\__umi_define_char{𝛡}{\umiMathbf{\varpi}} +\__umi_define_char{𝛢}{\umiMathit{\__umi_alternatives_iisafe\Alpha A}} +\__umi_define_char{𝛣}{\umiMathit{\__umi_alternatives_iisafe\Beta B}} +\__umi_define_char{𝛤}{\umiMathit{\Gamma}} +\__umi_define_char{𝛥}{\umiMathit{\Delta}} +\__umi_define_char{𝛦}{\umiMathit{\__umi_alternatives_iisafe\Epsilon E}} +\__umi_define_char{𝛧}{\umiMathit{\__umi_alternatives_iisafe\Zeta Z}} +\__umi_define_char{𝛨}{\umiMathit{\__umi_alternatives_iisafe\Eta H}} +\__umi_define_char{𝛩}{\umiMathit{\Theta}} +\__umi_define_char{𝛪}{\umiMathit{\__umi_alternatives_iisafe\Iota I}} +\__umi_define_char{𝛫}{\umiMathit{\__umi_alternatives_iisafe\Kappa K}} +\__umi_define_char{𝛬}{\umiMathit{\Lambda}} +\__umi_define_char{𝛭}{\umiMathit{\__umi_alternatives_iisafe\Mu M}} +\__umi_define_char{𝛮}{\umiMathit{\__umi_alternatives_iisafe\Nu N}} +\__umi_define_char{𝛯}{\umiMathit{\Xi}} +\__umi_define_char{𝛰}{\umiMathit{\__umi_alternatives_iisafe\Omicron O}} +\__umi_define_char{𝛱}{\umiMathit{\Pi}} +\__umi_define_char{𝛲}{\umiMathit{\__umi_alternatives_iisafe\Rho P}} +\__umi_define_char{𝛳}{\umiMathit{\varTheta}} +\__umi_define_char{𝛴}{\umiMathit{\Sigma}} +\__umi_define_char{𝛵}{\umiMathit{\__umi_alternatives_iisafe\Tau T}} +\__umi_define_char{𝛶}{\umiMathit{\Upsilon}} +\__umi_define_char{𝛷}{\umiMathit{\Phi}} +\__umi_define_char{𝛸}{\umiMathit{\__umi_alternatives_iisafe\Chi X}} +\__umi_define_char{𝛹}{\umiMathit{\Psi}} +\__umi_define_char{𝛺}{\umiMathit{\Omega}} +\__umi_define_char{𝛻}{\umiMathit{\nabla}} +\__umi_define_char{𝛼}{\umiMathit{\alpha}} +\__umi_define_char{𝛽}{\umiMathit{\beta}} +\__umi_define_char{𝛾}{\umiMathit{\gamma}} +\__umi_define_char{𝛿}{\umiMathit{\delta}} +\__umi_define_char{𝜀}{\umiMathit{\varepsilon}} +\__umi_define_char{𝜁}{\umiMathit{\zeta}} +\__umi_define_char{𝜂}{\umiMathit{\eta}} +\__umi_define_char{𝜃}{\umiMathit{\theta}} +\__umi_define_char{𝜄}{\umiMathit{\iota}} +\__umi_define_char{𝜅}{\umiMathit{\kappa}} +\__umi_define_char{𝜆}{\umiMathit{\lambda}} +\__umi_define_char{𝜇}{\umiMathit{\mu}} +\__umi_define_char{𝜈}{\umiMathit{\nu}} +\__umi_define_char{𝜉}{\umiMathit{\xi}} +\__umi_define_char{𝜊}{\umiMathit{\__umi_alternatives_iisafe\omicron o}} +\__umi_define_char{𝜋}{\umiMathit{\pi}} +\__umi_define_char{𝜌}{\umiMathit{\rho}} +\__umi_define_char{𝜍}{\umiMathit{\varsigma}} +\__umi_define_char{𝜎}{\umiMathit{\sigma}} +\__umi_define_char{𝜏}{\umiMathit{\tau}} +\__umi_define_char{𝜐}{\umiMathit{\upsilon}} +\__umi_define_char{𝜑}{\umiMathit{\varphi}} +\__umi_define_char{𝜒}{\umiMathit{\chi}} +\__umi_define_char{𝜓}{\umiMathit{\psi}} +\__umi_define_char{𝜔}{\umiMathit{\omega}} +\__umi_define_char{𝜕}{\umiMathit{\partial}} +\__umi_define_char{𝜖}{\umiMathit{\epsilon}} +\__umi_define_char{𝜗}{\umiMathit{\vartheta}} +\__umi_define_char{𝜘}{\umiMathit{\varkappa}} +\__umi_define_char{𝜙}{\umiMathit{\phi}} +\__umi_define_char{𝜚}{\umiMathit{\varrho}} +\__umi_define_char{𝜛}{\umiMathit{\varpi}} +\__umi_define_char{𝜜}{\umiMathbfit{\__umi_alternatives_iisafe\Alpha A}} +\__umi_define_char{𝜝}{\umiMathbfit{\__umi_alternatives_iisafe\Beta B}} +\__umi_define_char{𝜞}{\umiMathbfit{\Gamma}} +\__umi_define_char{𝜟}{\umiMathbfit{\Delta}} +\__umi_define_char{𝜠}{\umiMathbfit{\__umi_alternatives_iisafe\Epsilon E}} +\__umi_define_char{𝜡}{\umiMathbfit{\__umi_alternatives_iisafe\Zeta Z}} +\__umi_define_char{𝜢}{\umiMathbfit{\__umi_alternatives_iisafe\Eta H}} +\__umi_define_char{𝜣}{\umiMathbfit{\Theta}} +\__umi_define_char{𝜤}{\umiMathbfit{\__umi_alternatives_iisafe\Iota I}} +\__umi_define_char{𝜥}{\umiMathbfit{\__umi_alternatives_iisafe\Kappa K}} +\__umi_define_char{𝜦}{\umiMathbfit{\Lambda}} +\__umi_define_char{𝜧}{\umiMathbfit{\__umi_alternatives_iisafe\Mu M}} +\__umi_define_char{𝜨}{\umiMathbfit{\__umi_alternatives_iisafe\Nu N}} +\__umi_define_char{𝜩}{\umiMathbfit{\Xi}} +\__umi_define_char{𝜪}{\umiMathbfit{\__umi_alternatives_iisafe\Omicron O}} +\__umi_define_char{𝜫}{\umiMathbfit{\Pi}} +\__umi_define_char{𝜬}{\umiMathbfit{\__umi_alternatives_iisafe\Rho P}} +\__umi_define_char{𝜭}{\umiMathbfit{\varTheta}} +\__umi_define_char{𝜮}{\umiMathbfit{\Sigma}} +\__umi_define_char{𝜯}{\umiMathbfit{\__umi_alternatives_iisafe\Tau T}} +\__umi_define_char{𝜰}{\umiMathbfit{\Upsilon}} +\__umi_define_char{𝜱}{\umiMathbfit{\Phi}} +\__umi_define_char{𝜲}{\umiMathbfit{\__umi_alternatives_iisafe\Chi X}} +\__umi_define_char{𝜳}{\umiMathbfit{\Psi}} +\__umi_define_char{𝜴}{\umiMathbfit{\Omega}} +\__umi_define_char{𝜵}{\umiMathbfit{\nabla}} +\__umi_define_char{𝜶}{\umiMathbfit{\alpha}} +\__umi_define_char{𝜷}{\umiMathbfit{\beta}} +\__umi_define_char{𝜸}{\umiMathbfit{\gamma}} +\__umi_define_char{𝜹}{\umiMathbfit{\delta}} +\__umi_define_char{𝜺}{\umiMathbfit{\varepsilon}} +\__umi_define_char{𝜻}{\umiMathbfit{\zeta}} +\__umi_define_char{𝜼}{\umiMathbfit{\eta}} +\__umi_define_char{𝜽}{\umiMathbfit{\theta}} +\__umi_define_char{𝜾}{\umiMathbfit{\iota}} +\__umi_define_char{𝜿}{\umiMathbfit{\kappa}} +\__umi_define_char{𝝀}{\umiMathbfit{\lambda}} +\__umi_define_char{𝝁}{\umiMathbfit{\mu}} +\__umi_define_char{𝝂}{\umiMathbfit{\nu}} +\__umi_define_char{𝝃}{\umiMathbfit{\xi}} +\__umi_define_char{𝝄}{\umiMathbfit{\__umi_alternatives_iisafe\omicron o}} +\__umi_define_char{𝝅}{\umiMathbfit{\pi}} +\__umi_define_char{𝝆}{\umiMathbfit{\rho}} +\__umi_define_char{𝝇}{\umiMathbfit{\varsigma}} +\__umi_define_char{𝝈}{\umiMathbfit{\sigma}} +\__umi_define_char{𝝉}{\umiMathbfit{\tau}} +\__umi_define_char{𝝊}{\umiMathbfit{\upsilon}} +\__umi_define_char{𝝋}{\umiMathbfit{\varphi}} +\__umi_define_char{𝝌}{\umiMathbfit{\chi}} +\__umi_define_char{𝝍}{\umiMathbfit{\psi}} +\__umi_define_char{𝝎}{\umiMathbfit{\omega}} +\__umi_define_char{𝝏}{\umiMathbfit{\partial}} +\__umi_define_char{𝝐}{\umiMathbfit{\epsilon}} +\__umi_define_char{𝝑}{\umiMathbfit{\vartheta}} +\__umi_define_char{𝝒}{\umiMathbfit{\varkappa}} +\__umi_define_char{𝝓}{\umiMathbfit{\phi}} +\__umi_define_char{𝝔}{\umiMathbfit{\varrho}} +\__umi_define_char{𝝕}{\umiMathbfit{\varpi}} +\__umi_define_char{𝝖}{\umiMathsfbf{\__umi_alternatives_iisafe\Alpha A}} +\__umi_define_char{𝝗}{\umiMathsfbf{\__umi_alternatives_iisafe\Beta B}} +\__umi_define_char{𝝘}{\umiMathsfbf{\Gamma}} +\__umi_define_char{𝝙}{\umiMathsfbf{\Delta}} +\__umi_define_char{𝝚}{\umiMathsfbf{\__umi_alternatives_iisafe\Epsilon E}} +\__umi_define_char{𝝛}{\umiMathsfbf{\__umi_alternatives_iisafe\Zeta Z}} +\__umi_define_char{𝝜}{\umiMathsfbf{\__umi_alternatives_iisafe\Eta H}} +\__umi_define_char{𝝝}{\umiMathsfbf{\Theta}} +\__umi_define_char{𝝞}{\umiMathsfbf{\__umi_alternatives_iisafe\Iota I}} +\__umi_define_char{𝝟}{\umiMathsfbf{\__umi_alternatives_iisafe\Kappa K}} +\__umi_define_char{𝝠}{\umiMathsfbf{\Lambda}} +\__umi_define_char{𝝡}{\umiMathsfbf{\__umi_alternatives_iisafe\Mu M}} +\__umi_define_char{𝝢}{\umiMathsfbf{\__umi_alternatives_iisafe\Nu N}} +\__umi_define_char{𝝣}{\umiMathsfbf{\Xi}} +\__umi_define_char{𝝤}{\umiMathsfbf{\__umi_alternatives_iisafe\Omicron O}} +\__umi_define_char{𝝥}{\umiMathsfbf{\Pi}} +\__umi_define_char{𝝦}{\umiMathsfbf{\__umi_alternatives_iisafe\Rho P}} +\__umi_define_char{𝝧}{\umiMathsfbf{\varTheta}} +\__umi_define_char{𝝨}{\umiMathsfbf{\Sigma}} +\__umi_define_char{𝝩}{\umiMathsfbf{\__umi_alternatives_iisafe\Tau T}} +\__umi_define_char{𝝪}{\umiMathsfbf{\Upsilon}} +\__umi_define_char{𝝫}{\umiMathsfbf{\Phi}} +\__umi_define_char{𝝬}{\umiMathsfbf{\__umi_alternatives_iisafe\Chi X}} +\__umi_define_char{𝝭}{\umiMathsfbf{\Psi}} +\__umi_define_char{𝝮}{\umiMathsfbf{\Omega}} +\__umi_define_char{𝝯}{\umiMathsfbf{\nabla}} +\__umi_define_char{𝝰}{\umiMathsfbf{\alpha}} +\__umi_define_char{𝝱}{\umiMathsfbf{\beta}} +\__umi_define_char{𝝲}{\umiMathsfbf{\gamma}} +\__umi_define_char{𝝳}{\umiMathsfbf{\delta}} +\__umi_define_char{𝝴}{\umiMathsfbf{\varepsilon}} +\__umi_define_char{𝝵}{\umiMathsfbf{\zeta}} +\__umi_define_char{𝝶}{\umiMathsfbf{\eta}} +\__umi_define_char{𝝷}{\umiMathsfbf{\theta}} +\__umi_define_char{𝝸}{\umiMathsfbf{\iota}} +\__umi_define_char{𝝹}{\umiMathsfbf{\kappa}} +\__umi_define_char{𝝺}{\umiMathsfbf{\lambda}} +\__umi_define_char{𝝻}{\umiMathsfbf{\mu}} +\__umi_define_char{𝝼}{\umiMathsfbf{\nu}} +\__umi_define_char{𝝽}{\umiMathsfbf{\xi}} +\__umi_define_char{𝝾}{\umiMathsfbf{\__umi_alternatives_iisafe\omicron o}} +\__umi_define_char{𝝿}{\umiMathsfbf{\pi}} +\__umi_define_char{𝞀}{\umiMathsfbf{\rho}} +\__umi_define_char{𝞁}{\umiMathsfbf{\varsigma}} +\__umi_define_char{𝞂}{\umiMathsfbf{\sigma}} +\__umi_define_char{𝞃}{\umiMathsfbf{\tau}} +\__umi_define_char{𝞄}{\umiMathsfbf{\upsilon}} +\__umi_define_char{𝞅}{\umiMathsfbf{\varphi}} +\__umi_define_char{𝞆}{\umiMathsfbf{\chi}} +\__umi_define_char{𝞇}{\umiMathsfbf{\psi}} +\__umi_define_char{𝞈}{\umiMathsfbf{\omega}} +\__umi_define_char{𝞉}{\umiMathsfbf{\partial}} +\__umi_define_char{𝞊}{\umiMathsfbf{\epsilon}} +\__umi_define_char{𝞋}{\umiMathsfbf{\vartheta}} +\__umi_define_char{𝞌}{\umiMathsfbf{\varkappa}} +\__umi_define_char{𝞍}{\umiMathsfbf{\phi}} +\__umi_define_char{𝞎}{\umiMathsfbf{\varrho}} +\__umi_define_char{𝞏}{\umiMathsfbf{\varpi}} +\__umi_define_char{𝞐}{\umiMathsfbfit{\__umi_alternatives_iisafe\Alpha A}} +\__umi_define_char{𝞑}{\umiMathsfbfit{\__umi_alternatives_iisafe\Beta B}} +\__umi_define_char{𝞒}{\umiMathsfbfit{\Gamma}} +\__umi_define_char{𝞓}{\umiMathsfbfit{\Delta}} +\__umi_define_char{𝞔}{\umiMathsfbfit{\__umi_alternatives_iisafe\Epsilon E}} +\__umi_define_char{𝞕}{\umiMathsfbfit{\__umi_alternatives_iisafe\Zeta Z}} +\__umi_define_char{𝞖}{\umiMathsfbfit{\__umi_alternatives_iisafe\Eta H}} +\__umi_define_char{𝞗}{\umiMathsfbfit{\Theta}} +\__umi_define_char{𝞘}{\umiMathsfbfit{\__umi_alternatives_iisafe\Iota I}} +\__umi_define_char{𝞙}{\umiMathsfbfit{\__umi_alternatives_iisafe\Kappa K}} +\__umi_define_char{𝞚}{\umiMathsfbfit{\Lambda}} +\__umi_define_char{𝞛}{\umiMathsfbfit{\__umi_alternatives_iisafe\Mu M}} +\__umi_define_char{𝞜}{\umiMathsfbfit{\__umi_alternatives_iisafe\Nu N}} +\__umi_define_char{𝞝}{\umiMathsfbfit{\Xi}} +\__umi_define_char{𝞞}{\umiMathsfbfit{\__umi_alternatives_iisafe\Omicron O}} +\__umi_define_char{𝞟}{\umiMathsfbfit{\Pi}} +\__umi_define_char{𝞠}{\umiMathsfbfit{\__umi_alternatives_iisafe\Rho P}} +\__umi_define_char{𝞡}{\umiMathsfbfit{\varTheta}} +\__umi_define_char{𝞢}{\umiMathsfbfit{\Sigma}} +\__umi_define_char{𝞣}{\umiMathsfbfit{\__umi_alternatives_iisafe\Tau T}} +\__umi_define_char{𝞤}{\umiMathsfbfit{\Upsilon}} +\__umi_define_char{𝞥}{\umiMathsfbfit{\Phi}} +\__umi_define_char{𝞦}{\umiMathsfbfit{\__umi_alternatives_iisafe\Chi X}} +\__umi_define_char{𝞧}{\umiMathsfbfit{\Psi}} +\__umi_define_char{𝞨}{\umiMathsfbfit{\Omega}} +\__umi_define_char{𝞩}{\umiMathsfbfit{\nabla}} +\__umi_define_char{𝞪}{\umiMathsfbfit{\alpha}} +\__umi_define_char{𝞫}{\umiMathsfbfit{\beta}} +\__umi_define_char{𝞬}{\umiMathsfbfit{\gamma}} +\__umi_define_char{𝞭}{\umiMathsfbfit{\delta}} +\__umi_define_char{𝞮}{\umiMathsfbfit{\varepsilon}} +\__umi_define_char{𝞯}{\umiMathsfbfit{\zeta}} +\__umi_define_char{𝞰}{\umiMathsfbfit{\eta}} +\__umi_define_char{𝞱}{\umiMathsfbfit{\theta}} +\__umi_define_char{𝞲}{\umiMathsfbfit{\iota}} +\__umi_define_char{𝞳}{\umiMathsfbfit{\kappa}} +\__umi_define_char{𝞴}{\umiMathsfbfit{\lambda}} +\__umi_define_char{𝞵}{\umiMathsfbfit{\mu}} +\__umi_define_char{𝞶}{\umiMathsfbfit{\nu}} +\__umi_define_char{𝞷}{\umiMathsfbfit{\xi}} +\__umi_define_char{𝞸}{\umiMathsfbfit{\__umi_alternatives_iisafe\omicron o}} +\__umi_define_char{𝞹}{\umiMathsfbfit{\pi}} +\__umi_define_char{𝞺}{\umiMathsfbfit{\rho}} +\__umi_define_char{𝞻}{\umiMathsfbfit{\varsigma}} +\__umi_define_char{𝞼}{\umiMathsfbfit{\sigma}} +\__umi_define_char{𝞽}{\umiMathsfbfit{\tau}} +\__umi_define_char{𝞾}{\umiMathsfbfit{\upsilon}} +\__umi_define_char{𝞿}{\umiMathsfbfit{\varphi}} +\__umi_define_char{𝟀}{\umiMathsfbfit{\chi}} +\__umi_define_char{𝟁}{\umiMathsfbfit{\psi}} +\__umi_define_char{𝟂}{\umiMathsfbfit{\omega}} +\__umi_define_char{𝟃}{\umiMathsfbfit{\partial}} +\__umi_define_char{𝟄}{\umiMathsfbfit{\epsilon}} +\__umi_define_char{𝟅}{\umiMathsfbfit{\vartheta}} +\__umi_define_char{𝟆}{\umiMathsfbfit{\varkappa}} +\__umi_define_char{𝟇}{\umiMathsfbfit{\phi}} +\__umi_define_char{𝟈}{\umiMathsfbfit{\varrho}} +\__umi_define_char{𝟉}{\umiMathsfbfit{\varpi}} +\__umi_define_char{𝟊}{\umiMathbf{\__umi_alternatives_iisafe\Digamma F}} +\__umi_define_char{𝟋}{\umiMathbf{\digamma}} +\__umi_define_char{𝟎}{\umiMathbf{0}} +\__umi_define_char{𝟏}{\umiMathbf{1}} +\__umi_define_char{𝟐}{\umiMathbf{2}} +\__umi_define_char{𝟑}{\umiMathbf{3}} +\__umi_define_char{𝟒}{\umiMathbf{4}} +\__umi_define_char{𝟓}{\umiMathbf{5}} +\__umi_define_char{𝟔}{\umiMathbf{6}} +\__umi_define_char{𝟕}{\umiMathbf{7}} +\__umi_define_char{𝟖}{\umiMathbf{8}} +\__umi_define_char{𝟗}{\umiMathbf{9}} +\__umi_define_char{𝟘}{\umiMathbb{0}} +\__umi_define_char{𝟙}{\umiMathbb{1}} +\__umi_define_char{𝟚}{\umiMathbb{2}} +\__umi_define_char{𝟛}{\umiMathbb{3}} +\__umi_define_char{𝟜}{\umiMathbb{4}} +\__umi_define_char{𝟝}{\umiMathbb{5}} +\__umi_define_char{𝟞}{\umiMathbb{6}} +\__umi_define_char{𝟟}{\umiMathbb{7}} +\__umi_define_char{𝟠}{\umiMathbb{8}} +\__umi_define_char{𝟡}{\umiMathbb{9}} +\__umi_define_char{𝟢}{\umiMathsf{0}} +\__umi_define_char{𝟣}{\umiMathsf{1}} +\__umi_define_char{𝟤}{\umiMathsf{2}} +\__umi_define_char{𝟥}{\umiMathsf{3}} +\__umi_define_char{𝟦}{\umiMathsf{4}} +\__umi_define_char{𝟧}{\umiMathsf{5}} +\__umi_define_char{𝟨}{\umiMathsf{6}} +\__umi_define_char{𝟩}{\umiMathsf{7}} +\__umi_define_char{𝟪}{\umiMathsf{8}} +\__umi_define_char{𝟫}{\umiMathsf{9}} +\__umi_define_char{𝟬}{\umiMathsfbf{0}} +\__umi_define_char{𝟭}{\umiMathsfbf{1}} +\__umi_define_char{𝟮}{\umiMathsfbf{2}} +\__umi_define_char{𝟯}{\umiMathsfbf{3}} +\__umi_define_char{𝟰}{\umiMathsfbf{4}} +\__umi_define_char{𝟱}{\umiMathsfbf{5}} +\__umi_define_char{𝟲}{\umiMathsfbf{6}} +\__umi_define_char{𝟳}{\umiMathsfbf{7}} +\__umi_define_char{𝟴}{\umiMathsfbf{8}} +\__umi_define_char{𝟵}{\umiMathsfbf{9}} +\__umi_define_char{𝟶}{\umiMathtt{0}} +\__umi_define_char{𝟷}{\umiMathtt{1}} +\__umi_define_char{𝟸}{\umiMathtt{2}} +\__umi_define_char{𝟹}{\umiMathtt{3}} +\__umi_define_char{𝟺}{\umiMathtt{4}} +\__umi_define_char{𝟻}{\umiMathtt{5}} +\__umi_define_char{𝟼}{\umiMathtt{6}} +\__umi_define_char{𝟽}{\umiMathtt{7}} +\__umi_define_char{𝟾}{\umiMathtt{8}} +\__umi_define_char{𝟿}{\umiMathtt{9}} +\__umi_define_char{𞻰}{\arabicmaj} +\__umi_define_char{𞻱}{\arabichad} diff --git a/Master/texmf-dist/doc/latex/unicode-math-input/unicode-math-input.pdf b/Master/texmf-dist/doc/latex/unicode-math-input/unicode-math-input.pdf Binary files differnew file mode 100644 index 00000000000..80d94c19084 --- /dev/null +++ b/Master/texmf-dist/doc/latex/unicode-math-input/unicode-math-input.pdf diff --git a/Master/texmf-dist/doc/latex/unicode-math-input/unicode-math-input.tex b/Master/texmf-dist/doc/latex/unicode-math-input/unicode-math-input.tex new file mode 100644 index 00000000000..7b385c34ccf --- /dev/null +++ b/Master/texmf-dist/doc/latex/unicode-math-input/unicode-math-input.tex @@ -0,0 +1,391 @@ +%! TEX program = lualatex +\ProvidesFile{unicode-math-input.tex} [2023/05/12 v0.0.0 ] +\RequirePackage{fvextra} +\documentclass{l3doc} +\usepackage[svgnames]{xcolor} +\EnableCrossrefs +\CodelineIndex +\fvset{breaklines=true,gobble=0,tabsize=4,frame=single,numbers=left,numbersep=3pt} +\AtBeginDocument{\DeleteShortVerb\"} +\MakeOuterQuote{"} +\usepackage{cleveref} +\usepackage{fontspec} +\setmonofont{DejaVu Sans Mono}[Scale=0.8] +\usepackage[bold-style=ISO]{unicode-math} +\tracinglostchars=3 +\newcommand\csref[1]{\texttt{\hyperref[doc/function//#1]{\textbackslash #1}}} +\newcommand\varref[1]{\texttt{\hyperref[doc/function//#1]{#1}}} +\begin{document} +\hfuzz=1pt +\GetFileInfo{\jobname.tex} + +\title{\pkg{unicode-math-input} --- Allow entering Unicode symbols in math formulas\thanks{This file + describes version \fileversion, last revised \filedate.} +} +\author{user202729% +%\thanks{E-mail: (not set)} +} +\date{Released \filedate} + +\maketitle + +\begin{abstract} +Allow entering Unicode symbols in math formulas. +\end{abstract} + +\section{Introduction} + +This package allows entering Unicode symbols in math formulas. + +\subsection{Existing packages} + +There are several existing packages, but other than |unicode-math| (which also changes the output encoding) +they does not cover a lot of characters and/or does not handle several issues well. + +We compare the situation with several existing packages: + +\begin{itemize} + \item \pkg{unixode}: + \begin{itemize} + \item defines |′| to be |\prime| which is big and not usable, it should be |^{\prime}| + similar to |'|'s definition. + \item defines |–| (en dash) to be nothing, which breaks the character even in text mode. + \item does not define |×| or |±| (they're already valid in text mode in \LaTeX, but will be + silently omitted in math mode) + \item does not handle consecutive superscript/subscript characters. + \item you need to manually patch the source code a bit in order to make it work with PDF\LaTeX. And even after that it will raise lots of warnings about redefining Unicode characters. + \end{itemize} + \item \pkg{utf8x}: + \begin{itemize} + \item incompatible with lots of packages. + \item does not define $\bigoplus$ (|\bigoplus|) + \item also does not handle consecutive superscript/subscript characters. + \end{itemize} +\end{itemize} + +See also \url{https://tex.stackexchange.com/a/628285}. + +\subsection{Features} + +\LaTeX's implementation of input encoding and font encoding is \emph{very} complicated, necessitated by the fact that non-Unicode \TeX\ engines handles each UTF-8 character as multiple tokens and enc\TeX\ extension is not enabled in \LaTeX.% +\footnote{Refer to \url{https://tex.stackexchange.com/a/266282/250119} for a way to force-enable enc\TeX\ extension in +\LaTeX\ if you're interested.} + +There's a few other issues that we don't really need to deal with, because they are in the next layer: + +\begin{itemize} + \item \href{https://tex.stackexchange.com/q/31640/250119}{What is the use of the command \texttt{\textbackslash IeC}?} + \item \url{https://tex.stackexchange.com/a/239575/250119} + +\end{itemize} + +We don't need to deal with |\IeC| as since \TeX\ Live 2019, the mechanism is no longer used and the Unicode character itself +is written to auxiliary files. +%\immediate\openout 5=a.tex +%\makeatletter +%\let \protect \@unexpandable@protect +%\immediate\write 5{a á b} + +We need to get the following things correct: + +\begin{itemize} + \item |\left⟨| + + In Lua\LaTeX\ in order to implement this we need to hard code the |\Udelcode| of the character, + so if |\langle| is redefined, the change will not follow. + + An alternative is to overwrite the definition of |\left| built-in, but this is not used. + + \item |\big⟨| (in \pkg{amsmath} package or outside) + + In PDF\LaTeX\ there's an issue of argument-grabbing (|\big| etc. is a macro so they will + only grab the first octet of the |⟨| character), so the macro must be patched. + + Furthermore, the patching is done |\AtBeginDocument| in case |amsmath| etc. is loaded after this package. + + We handle |\big \Big \bigg \Bigg| and the |\bigl|, |\bigr| variants etc. + + Pass the option \varref{ignore-patch-delimiter-commands} to disable the behavior in case of package clash. + + \item in \pkg{unicode-math}, |a`| renders as |a^{\backprime}| i.e. $a^{\backprime}$. + We will not modify the default behavior i.e. $a\text{`}$ in this package. + + \item |\section{$1 × 2$}| (for writing to auxiliary file in table of contents) -- as mentioned above, + since \TeX\ Live 2019 this is correct by default. + \item Some characters such as |×| or |½| in PDF\LaTeX\ are already + usable outside math mode, we try to not break the compatibility. + \item The symbol should work correctly when appear at the start of an alignment entry, + e.g., the start of an |align*| cell. + \item |$2³⁴$| (consecutive Unicode characters for superscript/subscript, refer to \url{https://tex.stackexchange.com/q/344160/250119}.) Also need to handle |'| similarly. + + \item This packages does modify the default definition of |'| to allow |G'²| to work however. + Pass the option \varref{ignore-patch-prime} to disable the behavior in case of package clash. + + \item The original implementation of |'| is somewhat interesting that it allows sequences such as |G'^\bgroup 123\egroup| to work, + we will not emulate it here. + + \item Also need to handle Unicode prime symbols |′|, |″| etc. + + \item To minimize errors, we make |≢| default to |\nequiv|, but fallback to |\not\equiv| + if the former is not available. + + We should also take care of aliases -- for example, |≰| should check |\nle| and |\nleq| before fallback to |\not\le| or |\not\leq|. + + Note that by default (or with \pkg{amsmath} or \pkg{amssymb}), + |\not| does not smartly check the following symbol, + however with some packages such as \pkg{unicode-math}, + \pkg{txfonts} the |\not| does do that -- in particular, it checks for the presence of control sequences named + |\notXXX| and |\nXXX| where |XXX| stands for the original control sequence/character. + + It would be beneficial for \pkg{amssymb} + to make |\not| smart, as for example |\not\exists| looks worse than |\nexists|, + however the package does not touch |\not|. + + \item Similarly, |''| default to |^{\dprime}| if available, else fallback to |^{\prime\prime}|. + + \item Whenever possible, we do not make the symbols have active catcode, only change the mathcode, + that way usage of the symbols in places such as |fancyvrb| environment is minimally affected. (see test files for an example) + \item We try to make minimum assumptions about the internal implementation details of \LaTeX\ packages; nevertheless this is not always possible. + + \item Combining modifiers (such as |U+00305 COMBINING OVERLINE| in |a̅|, which corresponds to |\overbar|) are difficult to support + (although with whole-file scanning + \pkg{rescansync} or Lua\TeX's |process_input_buffer| callback + it's not impossible; an alternative is to use Lua\TeX\ callback to modify the math list + after it's constructed, see \url{https://github.com/wspr/unicode-math/issues/555#issuecomment-1045207378} + for an example), + plus |unicode-math| does not support them anyway, + so they will not be supported. + + They're difficult to support because normally the modifier appear after the character that it modifies + but \TeX\ requires the command (e.g. |\overbar|) to appear \emph{before} the character that it modifies. + + As a special case, the 4 commands |\enclosecircle| |\enclosesquare| |\enclosediamond| and |\enclosetriangle| + are supported (simply because the \TeX\ command can appear after the character it modifies) + + \item The fraction slash |U+2044 FRACTION SLASH|, as in |1|⁄|2| rendering $\frac{1}{2}$, is also not implemented + because of similar difficulty as above. + \item Symbols such as |√| or |∛| will be equivalent to |\sqrt| command (taking an argument to draw a square root) + instead of |\surd| (the symbol itself), unlike \pkg{unicode-math}. + + While sequences such as |⁵√{67}| may feasibly be supported without breaking too many things, + implementation is difficult and we don't see much use for it. + \item Similarly, one might expect that $⏟$ |U+23DF BOTTOM CURLY BRACKET| get mapped to |\underbrace|, + but the behavior of such command would be a bit unexpected (you need to + write $⏟$|{123}_{456}| to get $\smash{\underbrace{123}_{456}}$), so this will not be the default. + + \item the Unicode character is mapped indirectly to the control sequence, + so that when the user/some package redefines a control sequence such as |\pi|, the + corresponding Unicode character (|π|) will also change. This will incur a small loss in efficiency however. + + (modulo the issue with |\Udelcode| mentioned above) +\end{itemize} + +There are some issues however: +\begin{itemize} + \item \textsf{\rlap{0}\kern 1.2pt\relax 0} |U+1D7D8 MATHEMATICAL DOUBLE-STRUCK DIGIT ZERO| +gets translated to |\mathbb{0}|, but this is incorrect by default +unless the blackboard bold font happens to have such a character. + +(nevertheless, it's difficult to change math font in the middle of the document anyway. +Refer to \url{https://tex.stackexchange.com/q/30049/250119}.) + +\item In the \pkg{unicode-math} source code there's this remark: + + \begin{quote} + The catcode setting is to work around (strange?) behaviour in Lua\TeX\ in +which catcode 11 characters don't have italic correction for maths. We don't adjust +ascii chars, however, because certain punctuation should not have their catcodes +changed. +\end{quote} + +This feature is currently unimplemented. + +\item At the moment, following a Unicode superscript character, double superscript will not be defined -- + that is, |G²^3^4| will just display as |G^{234}| -- + while this is fixable, we don't see much point in detecting this error. +\end{itemize} + +\section{Usage} + +Simply include the package. + +\begin{verbatim} +\usepackage{unicode-math-input} +\end{verbatim} + +Because by default the \pkg{unicode-math} package will already allow entering Unicode symbols in math formulas, this package will raise an error if the other package is already loaded. + +\section{Advanced commands and options} + +\begin{function}{ + \umiMathbf,\umiMathit,\umiMathbfit,\umiMathscr,\umiMathbfscr,\umiMathfrak,\umiMathbb,\umiMathbbit,\umiMathbffrak,\umiMathsf,\umiMathsfbf,\umiMathsfit,\umiMathsfbfit,\umiMathtt + } + \begin{syntax} + |\umiMathbf {...}| + |\umiMathit {...}| + \end{syntax} + These functions are not to be used directly. But you can redefine them to customized behavior of bold/italic/etc. Unicode characters. + + For example you can |\renewcommand\umiMathbf[1]{\mathbf{#1}}| which is the default behavior. + + More usefully, you may want to |\renewcommand\umiMathbf{\bm}| to make entered characters such as + $𝐚$ appear bold italic in the output, remember to load package \pkg{bm} if you want to do so (which is |unicode-math| behavior + with |[bold-style=ISO]| package option). +\end{function} + +\begin{function}{\umiFrac} + \begin{syntax} + |\umiFrac {1} {2}| + \end{syntax} + Not to be used directly, but you can redefine it such as + |\let\umiFrac\tfrac| (or more clearly, |\renewcommand\umiFrac[2]{\tfrac{#1}{#2}}|) + to customize the appearance of Unicode characters like |½|. + + If you want to customize the appearance of individual symbols, consider using \csref{umiDefineMathChar}. +\end{function} + +\begin{function}{\umiDefineMathChar} + \begin{syntax} + |\umiDefineMathChar {α} {\alpha}| + \end{syntax} + Does what it says. + + Note that the Unicode character must be braced. + + (You may choose to call \csref{umiPatchCmdUnicodeArg}| \umiDefineMathChar| + beforehand so bracing is not necessary, but this is not really recommended) + + This might or might not destroy the existing text-mode definition. For now, + one way to preserve it is |\umiDefineMathChar {²} {\TextOrMath{\texttwosuperior}{^2}}|. +\end{function} + +\begin{function}{\umiDefineMathDelimiter} + \begin{syntax} + |\umiDefineMathDelimiter {⟨} \langle| + \end{syntax} + You must use this in order to use the Unicode character with |\left|, |\big|, |\bigl| etc. + (because of the internal detail being that in Xe\LaTeX\ and Lua\LaTeX, + as this package does not change the character catcode to be active, + it's necessary to set the |delcode| as mentioned before) + + In that case the second argument must be a single token. + + Unfortunately, the command does not always work. +\end{function} + +\begin{function}{\umiRefreshDelimiterList} + \begin{syntax} + |\umiRefreshDelimiterList| + \end{syntax} + You should normally not need this command. + + As mentioned before, in Lua\LaTeX\ once a command is redefined, the Unicode character does not automatically update. + + This command will check all the normal delimiter Unicode characters. In PDF\LaTeX\ this command does nothing. + + Another way is to use \csref{umiDefineMathDelimiter} to manually refresh individual Unicode characters, + this is also useful if you define an Unicode character that is not "normally" a delimiter. +\end{function} + +\begin{variable}{ignore-refresh-delimiter-list} + Package option. + + \csref{umiRefreshDelimiterList} will be run |\AtBeginDocument|. Pass this to disable it running. + + Only needed if there's some package clash or if there's spurious warning on "not determined to be a delimiter" etc. +\end{variable} + +\begin{function}{\umiPatchCmdUnicodeArg,\umiUnpatchCmdUnicodeArg} + \begin{syntax} + |\umiPatchCmdUnicodeArg \sqrt| + |\umiUnpatchCmdUnicodeArg \sqrt| + \end{syntax} + After executing this command, the command specified in the argument (|\sqrt| in this example) + can be called with one argument being an Unicode character without needing a brace. + + (i.e. you can write |\sqrt α| instead of |\sqrt{α}|.) + + Because of implementation detail, + \begin{itemize} + \item |\sqrtα| (without the space between |\sqrt| and |α|) works in PDF\LaTeX\ but not Lua\LaTeX. (so this form is not recommended.) + \item |\sqrt α| works in Lua\LaTeX\ without needing the patch. In other words, the patch does nothing in Unicode engines. + \end{itemize} + + The command being patched must take at least one mandatory argument as the first argument, and it only affect that first argument. + In other words, |\sqrt[3]α| cannot be patched this way unless you do e.g. |\newcommand\cbrt[1]{\sqrt[3]{#1}}| then |\umiPatchCmdUnicodeArg\cbrt|, + then |\cbrt α| works (but |\sqrt[3]α| still doesn't). +\end{function} + +\begin{function}{\umiPatchCmdUnicodeTwoArgs} + \begin{syntax} + |\umiPatchCmdUnicodeTwoArgs \frac| + |\umiUnpatchCmdUnicodeArg \frac| + \end{syntax} + Similar to above, but for commands with (at least) two mandatory arguments. + + Only affects these 2 mandatory arguments. +\end{function} + +\begin{function}{\umiPatchCmdUnicodeArgExtraGroup} + \begin{syntax} + |\umiPatchCmdUnicodeArgExtraGroup \Big| + \end{syntax} + Don't use this command unless you know exactly what you're doing. + + Similar to |\umiPatchCmdUnicodeArg|, but open an implicit group before executing anything and close the group after. + + The command being patched must take exactly one argument. + + This is useful because some \TeX\ primitives such as |^| or |\mathopen| + requires either a single "character" or a group braced with |{...}| / |\bgroup...\egroup|. +\end{function} + +\begin{variable}{ignore-patch-delimiter-commands} + Package option. Pass this to avoid patching |\Big| etc. with the command above (only needed if there's some package clash). +\end{variable} + +\begin{function}{\umiBraceNext} + \begin{syntax} + |\umiBraceNext {abc...} αxyz...| + \end{syntax} + In the example above, after some steps of execution of \TeX, the state will be + |abc... {α}xyz...|. + + Formally: if the character following the first argument to |\umiBraceNext| is not representable in a single byte + and the engine is not Unicode, the character will be braced, otherwise nothing happens. Then the argument + is put back in the input stream. + + This is an internal command mainly useful for defining the command above, for example after +\begin{verbatim} +\let\oldbig\big +\def\big{\umiBraceNext{\oldbig}} +\end{verbatim} +then |\big⟨| will eventually execute |\oldbig{⟨}| which is the desired behavior (that |\oldbig| expects one braced argument). +\end{function} + +\begin{variable}{ignore-patch-prime} + Do not patch the default definition of |'| in math mode. + + By default it's patched to allow |G'²| and |G²'| to work. Only use this when there's some package clash. +\end{variable} + +\begin{function}{\umiPatchPrime,\umiUnpatchPrime} + \begin{syntax} + |\umiPatchPrime| + |\umiUnpatchPrime| + \end{syntax} + As mentioned above, by default |\umiPatchPrime| is run |\AtBeginDocument|. But it can be patched + and unpatched manually. + + Note that it's undefined behavior if some package modifies the definition of active |'| + while it's patched. To resolve conflict, unpatch |'|, load the package, then patch again. +\end{function} + +\section{Compatibility} + +This package should have tested with various \TeX\ distribution versions on Overleaf. + +\PrintChanges +\PrintIndex +\Finale + +\end{document} diff --git a/Master/texmf-dist/tex/latex/unicode-math-input/unicode-math-input.sty b/Master/texmf-dist/tex/latex/unicode-math-input/unicode-math-input.sty new file mode 100644 index 00000000000..dcb72f6a302 --- /dev/null +++ b/Master/texmf-dist/tex/latex/unicode-math-input/unicode-math-input.sty @@ -0,0 +1,731 @@ +% File: unicode-math-input.sty +% Copyright 2022-2023 user202729 +% +% This work may be distributed and/or modified under the conditions of the +% LaTeX Project Public License (LPPL), either version 1.3c of this license or +% (at your option) any later version. The latest version of this license is in +% the file: +% +% http://www.latex-project.org/lppl.txt +% +% This work has the LPPL maintenance status `maintained'. +% +% The Current Maintainer of this work is user202729. + +\RequirePackage{expl3} +\RequirePackage{iftex} +\ProvidesExplPackage{unicode-math-input}{2023-05-12}{0.0.0}{Allow entering Unicode symbols in math formulas} + +\makeatletter +\AtBeginDocument{ + \@ifpackageloaded{unicode-math}{ + \msg_new:nnn {unicode-math-input} {unicode-math-clash} { + You~don't~need~this~package~if~you~use~unicode-math~package! + } + \msg_error:nn {unicode-math-input} {unicode-math-clash} + }{} +} +\makeatother + +\RequirePackage{l3keys2e} +\keys_define:nn{unicode-math-input}{ + ignore-refresh-delimiter-list .bool_set:N=\__umi_ignore_refresh_delimiter_list, + ignore-patch-delimiter-commands .bool_set:N=\__umi_ignore_patch_delimiter_commands, + ignore-patch-prime .bool_set:N=\__umi_ignore_patch_prime, +} +\ProcessKeysOptions{unicode-math-input} + +\cs_new_protected:Npn \umiMathbf {\__umi_check_math_alphabet \mathbf \umiMathbf } +\cs_new_protected:Npn \umiMathit {\__umi_check_math_alphabet \mathit \umiMathit } +\cs_new_protected:Npn \umiMathbfit {\__umi_check_math_alphabet \bm \umiMathbfit } +\cs_new_protected:Npn \umiMathscr {\__umi_check_math_alphabet \mathscr \umiMathscr } +\cs_new_protected:Npn \umiMathbfscr {\__umi_check_math_alphabet \mathbfscr \umiMathbfscr } +\cs_new_protected:Npn \umiMathfrak {\__umi_check_math_alphabet \mathfrak \umiMathfrak } +\cs_new_protected:Npn \umiMathbb {\__umi_check_math_alphabet \mathbb \umiMathbb } +\cs_new_protected:Npn \umiMathbbit {\__umi_check_math_alphabet \mathbbit \umiMathbbit } +\cs_new_protected:Npn \umiMathbffrak{\__umi_check_math_alphabet \mathbffrak \umiMathbffrak } +\cs_new_protected:Npn \umiMathsf {\__umi_check_math_alphabet \mathsf \umiMathsf } +\cs_new_protected:Npn \umiMathsfbf {\__umi_check_math_alphabet \mathsfbf \umiMathsfbf } +\cs_new_protected:Npn \umiMathsfit {\__umi_check_math_alphabet \mathsfit \umiMathsfit } +\cs_new_protected:Npn \umiMathsfbfit{\__umi_check_math_alphabet \mathsfbfit \umiMathsfbfit } +\cs_new_protected:Npn \umiMathtt {\__umi_check_math_alphabet \mathtt \umiMathtt } + +\msg_new:nnn {unicode-math-input} {define-math-alphabet} { + Please~load~a~package~that~defines~#1,~or~manually~define~#2. +} +\cs_new_protected:Npn \__umi_check_math_alphabet#1#2{ + \ifdefined#1 + \expandafter#1 + \else + \msg_error:nnnn {unicode-math-input} {define-math-alphabet} #1 #2 + \fi +} + +\msg_new:nnn {unicode-math-input} {internal-error} { + Internal~error! +} +\cs_new_protected:Npn \__umi_internal_error { + \msg_error:nn {unicode-math-input} {internal-error} +} + +\msg_new:nnn {unicode-math-input} {undefined-cs} { + Please~load~a~package~that~defines~any~of~#1~to~use~this~Unicode~symbol. +} +% take 2 control sequences, return the first one that is defined. They must not peek ahead +\cs_new_protected:Npn \__umi_alternatives #1 #2 { + \ifdefined #1 + #1 + \else + \ifdefined #2 + #2 + \else + \msg_error:nnn {unicode-math-input} {undefined-cs} {#1#2} + \fi + \fi +} + +% #1 is control sequence, #2 is anything (must not peek ahead!) +\cs_new_protected:Npn \__umi_alternatives_iisafe #1 #2 { + \ifdefined #1 + \expandafter#1 + \else + #2 + \fi +} + +% e.g. '\__umi_alternatives_not \nexists \exists' → \nexists or \not\exists +% both must be control sequences +\cs_new_protected:Npn \__umi_alternatives_not #1 #2 { + \ifdefined #1 + #1 + \else + \ifdefined #2 + \not#2 + \else + \msg_error:nnn {unicode-math-input} {undefined-cs} {#1#2} + \fi + \fi +} + +% ======== \__umi_require_math +\msg_new:nnn {unicode-math-input} {not-math-mode} { + This~symbol~can~only~be~used~in~math~mode! +} +\cs_new_protected:Npn \__umi_require_math { + \ifmmode\else \msg_error:nn {unicode-math-input} {not-math-mode} \fi +} + +% ======== \__umi_define_char + +\msg_new:nnn {unicode-math-input} {not-single-character} { + Argument~must~be~a~single~character. +} + +\msg_new:nnn {unicode-math-input} {not-correct-catcode} { + Redefining~this~special~character~in~math~mode~is~not~supported. +} + +\cs_new_protected:Npn \__umi_check_before_define_char_single #1 { + \ifnum \str_count:n{#1}=\c_one_int + \int_case:nnF{\catcode `#1}{ + {11}{} % letter + {12}{} % other + {13}{} % active + }{ + % otherwise the character won't be active in math mode... + \msg_error:nn {unicode-math-input} {not-correct-catcode} + } + \else + \msg_error:nn {unicode-math-input} {not-single-character} + \fi +} + +\int_const:Nn \__umi_active_mathcode_input {"8000} % equal to \__umi_active_mathcode unless on lualatex where the former is "1000000 + +\cs_gset_protected:Npn \__umi_gtmp #1 { + \cs_new_protected:Npn \__umi_define_char_single ##1 ##2{ % this function is \__umi_define_char if simply redefining the character and setting the mathcode to "8000 suffices + \__umi_check_before_define_char_single{##1} + \global\mathcode `##1=\__umi_active_mathcode_input + \begingroup \lccode 0=`##1 \lowercase{\endgroup \cs_gset_protected:Npx #1} {\unexpanded{##2}} % #1 = ⟨active character with code 0⟩ + % the code above executes '\cs_gset_protected:Npn ⟨active character with charcode ##1⟩ {##2}' + } +} +\expandafter \expandafter \expandafter \__umi_gtmp \char_generate:nn {0} {13} + +\ifTUTeX + \cs_new_eq:NN \__umi_if_engine_unicode \use_i:nn +\else + \cs_new_eq:NN \__umi_if_engine_unicode \use_ii:nn +\fi + +\cs_generate_variant:Nn \str_if_eq:nnTF {x} + +\__umi_if_engine_unicode { + \cs_new_eq:NN \__umi_define_char \__umi_define_char_single + + % as documented in the documentation, for Unicode engines we need to handle the delimiters specially. + \cs_new_protected:Npn \__umi_define_char_maybe_delimiter #1 #2 { + \ifnum \tl_count:n {#2}=1 \else \__umi_internal_error \fi + \tl_if_head_is_N_type:nF {#2} {\__umi_internal_error} + + \__umi_define_char #1 #2 + \tl_build_put_right:Nn \__umi_delimiter_list {\__umi_check_delimiter #1 #2} + } + + \msg_new:nnn {unicode-math-input} {not-delimiter} { + The~Unicode~character~#1~is~mapped~to~#2,~but~the~latter~is~not~determined~to~be~a~delimiter. + } + + \cs_generate_variant:Nn \str_range:nnn {V} + \cs_generate_variant:Nn \cs_replacement_spec:N {c} + + % e.g. \__umi_check_delimiter_aux ⟨ \langle + % #2 must be a single token + % on successful, just set (globally) + % on unsuccessful (if #2 is undefined) call \__umi_check_delimiter_undefined #1 #2 + % on unsuccessful (if #2 is defined but not a delimiter) call \__umi_check_delimiter_defined_not_delimiter #1 #2 + % caller of this function should set these 2 functions in advance + \cs_new_protected:Npn \__umi_check_delimiter_aux #1 #2 { + \begingroup + \escapechar=`\/~ + + \str_gset:Nx \g_tmpb_str {\cs_replacement_spec:N #2} + + % some introspection is needed to determine what it is... + % e.g. 'macro:->/protect /langle ' → 'macro:->/delimiter "426830A ' (for old LaTeX versions) + \str_if_eq:VnT \g_tmpb_str {/protect~#2~} { + \str_gset:Nx \g_tmpb_str {\cs_replacement_spec:c {\cs_to_str:N #2 ~}} + } + \endgroup + + \str_if_eq:VnTF \g_tmpb_str {/scan_stop:~} { + \__umi_check_delimiter_undefined #1 #2 + } { + % e.g. '/delimiter "426830A ' + \str_if_eq:xnTF {\str_range:Vnn \g_tmpb_str {1} {11}} {/delimiter~} { + %\typeout{setting delcode #1 to \int_to_hex:n {\int_mod:nn {\str_range:Vnn \g_tmpb_str {12} {-1}} {"1000000}} } + \global\delcode `#1 = \int_mod:nn {\str_range:Vnn \g_tmpb_str {12} {-1}} {"1000000} \relax + } { + %\typeout{>> |\g_tmpb_str|} + \__umi_check_delimiter_defined_not_delimiter #1 #2 + } + } + } + + + \cs_new_eq:NN \umiDefineMathChar \__umi_define_char_single + \cs_new_protected:Npn \umiDefineMathDelimiter #1 #2 { + \cs_new_protected:Npn \__umi_check_delimiter_defined_not_delimiter ##1 ##2 { + \msg_error:nnnn {unicode-math-input} {not-delimiter} {##1} {##2} + } + \cs_new_eq:NN \__umi_check_delimiter_undefined \__umi_check_delimiter_defined_not_delimiter + \ifnum \str_count:n{#1}=1 \else \__umi_internal_error \fi + \ifnum \tl_count:n {#2}=1 \else \__umi_internal_error \fi + \tl_if_head_is_N_type:nF {#2} {\__umi_internal_error} + \__umi_define_char #1 #2 + \__umi_check_delimiter_aux #1 #2 + } + +} { + \cs_new:Npn \__umi_take_IeC \IeC #1 \__umi_delimiter { \unexpanded{#1} } + + % internal procedure + % e.g. + % \str_set:Nn \l_tmpa_str {u8:×} \__umi_define_char_math_only {\times} + % the character #1 is already defined in LaTeX, check if it's LaTeX default definition (\IeC{\texttimes}) + % if it is then change it to do a switch-case on text/math mode, otherwise raise an error + \cs_new_protected:Npn \__umi_define_char_math_only #1 { + \begingroup + \escapechar=`\/~ + \str_gset:Nx \g_tmpb_str { \expandafter\meaning\csname \l_tmpa_str\endcsname } + \endgroup + \str_if_eq:xnTF { \str_range:Nnn \g_tmpb_str {1} {13} } {macro:->/IeC~} { + % it probably is, tack on the math definition + \cs_gset_protected:cpx {\l_tmpa_str} { + \noexpand\mode_if_math:TF { + \unexpanded{#1} + } { + \expandafter\expandafter\expandafter \__umi_take_IeC \csname \l_tmpa_str\endcsname \__umi_delimiter + } + } % this is already protected, no need protected@empty + + % in summary if the existing definition is + % \u8:×: + % macro:->\IeC {\texttimes } + % then the new definition is + % \protected macro:->\mode_if_math:TF {\times} {\texttimes} + % as expected. + % we use \mode_if_math:TF just in case the thing inside peeks ahead. + } { + % ... cannot redefine...? + \__umi_internal_error + } + } + + \cs_new_protected:Npn \__umi_define_char #1 #2{ + \ifnum \str_count:n{#1}=1 + \__umi_define_char_single #1 {#2} + \else + \str_set:Nn \l_tmpa_str{u8:#1} + \ifcsname \l_tmpa_str\endcsname + \__umi_define_char_math_only {#2} + \else + % the character is not defined, just define it + \cs_gset_protected:cpx {\l_tmpa_str} {\unexpanded{\__umi_require_math #2}} + \fi + \fi + } + + \cs_new_eq:NN \__umi_define_char_maybe_delimiter \__umi_define_char + + \cs_new_protected:Npn \umiDefineMathChar #1 #2{ + \ifnum \str_count:n{#1}=1 + \__umi_define_char_single #1 {#2} + \else + \cs_gset_protected:cpx {u8:\detokenize{#1}} {\unexpanded{\__umi_require_math #2}} + \fi + } + \cs_new_eq:NN \umiDefineMathDelimiter \umiDefineMathChar +} + +\__umi_if_engine_unicode { + \tl_build_begin:N \__umi_delimiter_list +} {} +% we temporarily turn off the check for extra performance. +\cs_gset_eq:NN \__umi_check_before_define_char_single_backup \__umi_check_before_define_char_single +\cs_gset_eq:NN \__umi_check_before_define_char_single \use_none:n +\input unicode-math-input-table.tex +\cs_gset_eq:NN \__umi_check_before_define_char_single \__umi_check_before_define_char_single_backup +\__umi_if_engine_unicode { + \tl_build_end:N \__umi_delimiter_list + \cs_new_protected:Npn \umiRefreshDelimiterList{ + \cs_new_eq:NN \__umi_check_delimiter_undefined \use_none:nn + \cs_new_protected:Npn \__umi_check_delimiter_defined_not_delimiter ##1 ##2 { + \msg_warning:nnnn {unicode-math-input} {not-delimiter} {##1} {##2} + } + \cs_new_eq:NN \__umi_check_delimiter \__umi_check_delimiter_aux + \__umi_delimiter_list + } + \bool_if:NF\__umi_ignore_refresh_delimiter_list{ + \AtBeginDocument{\umiRefreshDelimiterList} + } +} { + \cs_new_eq:NN \umiRefreshDelimiterList \relax +} + +\cs_new_eq:NN \__umi_special_handle \__umi_define_char + +\cs_new_eq:NN \umiFrac \frac + +% ======== after the superscript collection, \umiPrime\umiPrime... should be replaced with \dprime etc. smartly +\cs_new_protected:Npn \umiPrime{ \__umi_prime } % indirection layer for fast meaning-equality checking +\cs_new_eq:NN \umiPrimeNormalDefinition \umiPrime +\cs_new_protected:Npn \__umi_prime { + \peek_meaning_collect_inline:Nn \umiPrime { + % note that ##1 misses one \prime as expands to this current function + \int_case:nnF { \tl_count:n {##1} } { + 1 {\__umi_alternatives_iisafe \dprime {\prime\prime}} + 2 {\__umi_alternatives_iisafe \trprime{\prime\prime\prime}} + 3 {\__umi_alternatives_iisafe \qprime {\prime\prime\prime\prime}} + } { + % complicated way to repeat '\prime' <count #1> times + \cs_gset_eq:NN \umiPrime \prime + \prime ##1 + \cs_gset_eq:NN \umiPrime \umiPrimeNormalDefinition + } + } +} + +% similar for backprime +\cs_new_protected:Npn \umiBackprime{ \__umi_backprime } +\cs_new_eq:NN \umiBackprimeNormalDefinition \umiBackprime +\cs_new_protected:Npn \__umi_backprime { + \peek_meaning_collect_inline:Nn \umiBackprime { + \int_case:nnF { \tl_count:n {##1} } { + 1 {\__umi_alternatives_iisafe \backdprime {\backprime\backprime}} + 2 {\__umi_alternatives_iisafe \backtrprime {\backprime\backprime\backprime}} + } { + \cs_gset_eq:NN \umiBackprime \backprime + \backprime ##1 + \cs_gset_eq:NN \umiBackprime \umiBackprimeNormalDefinition + } + } +} + +\__umi_special_handle{ı}{\imath} +\__umi_special_handle{ȷ}{\jmath} + +\__umi_special_handle{↉}{\umiFrac{0}{3} } +\__umi_special_handle{⅒}{\umiFrac{1}{10}} +\__umi_special_handle{⅑}{\umiFrac{1}{9} } +\__umi_special_handle{⅛}{\umiFrac{1}{8} } +\__umi_special_handle{⅐}{\umiFrac{1}{7} } +\__umi_special_handle{⅙}{\umiFrac{1}{6} } +\__umi_special_handle{⅕}{\umiFrac{1}{5} } +\__umi_special_handle{¼}{\umiFrac{1}{4} } +\__umi_special_handle{⅓}{\umiFrac{1}{3} } +\__umi_special_handle{⅜}{\umiFrac{3}{8} } +\__umi_special_handle{⅖}{\umiFrac{2}{5} } +\__umi_special_handle{½}{\umiFrac{1}{2} } +\__umi_special_handle{⅗}{\umiFrac{3}{5} } +\__umi_special_handle{⅝}{\umiFrac{5}{8} } +\__umi_special_handle{⅔}{\umiFrac{2}{3} } +\__umi_special_handle{¾}{\umiFrac{3}{4} } +\__umi_special_handle{⅘}{\umiFrac{4}{5} } +\__umi_special_handle{⅚}{\umiFrac{5}{6} } +\__umi_special_handle{⅞}{\umiFrac{7}{8} } +\__umi_special_handle{√}{\sqrt} +\__umi_special_handle{∛}{\sqrt[3]} +\__umi_special_handle{∜}{\sqrt[4]} + + +% ======== the following routine handles both superscript and subscript collection. + +% like this: +% \__umi_superscript {12} ≡ ^{12} +% \__umi_superscript {12}^{34} ≡ ^{1234} +% \__umi_superscript {12}^{34}^{56} ≡ ^{123456} (unintended but okay no problem) +% \__umi_superscript {12}' ≡ ^{12\prime} (something like this) +% \__umi_superscript {12} \__umi_superscript {34} ≡ ^{1234} +% \__umi_superscript {12} \__umi_superscript {34} ^{56} ≡ ^{123456} +% we will not deal with ^\bgroup...\egroup + +\cs_new_protected:Npn \__umi_superscript { + \cs_gset_eq:NN \__umi_superscript ^ + \cs_gset_eq:NN \__umi_script_cat ^ + \cs_gset:Npn \__umi_script_collect_done {\cs_gset_eq:NN \__umi_superscript \__umi_superscript_normal} + \__umi_script +} +\cs_new_protected:Npn \__umi_subscript { + \cs_gset_eq:NN \__umi_subscript \sb + \cs_gset_eq:NN \__umi_script_cat \sb + \cs_gset:Npn \__umi_script_collect_done {\cs_gset_eq:NN \__umi_subscript \__umi_subscript_normal} + \__umi_script +} +\cs_new_eq:NN \__umi_superscript_normal \__umi_superscript +\cs_new_eq:NN \__umi_subscript_normal \__umi_subscript + +% in order to use the function below the caller should (do as what \__umi_superscript does above...) + +\cs_new_protected:Npn \__umi_script #1 { + % * store the argument + \tl_set:Nn \l_tmpa_tl {#1} + % * f-expand following stuff exclude the \__umi_*script token itself which has been set to ^ or _ + % by the code above + \expandafter \__umi_continue_script_aux \exp:w\exp_end_continue_f:w +} + +\cs_new_protected:Npn \__umi_continue_script_aux { + \peek_catcode_remove:NTF \__umi_script_cat { + % * in this case following is either \__umi_script token or ^{something} as usual, we handle both the same way + \__umi_continue_script_auxii + } { + % * following may be some other-catcode token + \peek_catcode:NTF ? { + \__umi_replace_other_active + } { + \__umi_script_collect_done + \__umi_script_cat{\l_tmpa_tl} + } + } +} + +\cs_new_protected:Npn \__umi_continue_script_auxii #1 { + \tl_put_right:Nn \l_tmpa_tl {#1} + \expandafter \__umi_continue_script_aux \exp:w\exp_end_continue_f:w +} + +% the active mathcode value. +\int_const:Nn \__umi_active_mathcode {\mathcode `'} + +\use:x{ + \cs_new:Npn \noexpand\__umi_gobble_the_character \detokenize{the~character~} {`} +} +% effectively the result will be that +% \int_eval:n {\__umi_gobble_the_character 'the character a'} = 65 + +\cs_new_protected:Npn \__umi_replace_other_active #1 { + % * if following is some other-catcode and the mathcode is active, replace it with the active token and retry + % (we ignore the case of letter-catcode) + \int_compare:nNnTF {\mathcode \expandafter \__umi_gobble_the_character \meaning #1} = {\__umi_active_mathcode} { + \expandafter \__umi_continue_script_aux \exp:w\exp_end_continue_f:w + \char_generate:nn {\expandafter \__umi_gobble_the_character \meaning #1} {13} + } { + \cs_gset_eq:NN \__umi_script \__umi_put_script_normal + ^{\l_tmpa_tl} #1 + } +} + +% ======== patch \big etc. + + +\__umi_if_engine_unicode { + \cs_new_eq:NN \umiPatchCmdUnicodeArg \use_none:n + \cs_new_eq:NN \umiPatchCmdUnicodeArgExtraGroup \use_none:n + \cs_new_eq:NN \umiPatchCmdUnicodeTwoArgs \use_none:n + \cs_new_eq:NN \umiUnpatchCmdUnicodeArg \use_none:n +} { + + % usage: + % \umiBraceNext {abc...} xyz... ≡ abc... xyz... + % \umiBraceNext {abc...} αyz... ≡ abc... {α}yz... + \cs_new_protected:Npn \umiBraceNext #1 { + \tl_set:Nn \l_tmpa_tl {#1} + \peek_N_type:TF { + \__umi_brace_next_aux + } { + \l_tmpa_tl + } + } + + \cs_new_protected:Npn \__umi_brace_next_aux #1 { + \begingroup + \escapechar=`\\~ % just in case there's \⟨single byte⟩ ... + \int_compare:nNnTF {\str_count:n {#1}} = {1} { + \endgroup + \csname __umi_brace_handle_\string#1 \endcsname + } { + \endgroup + \l_tmpa_tl + } + #1 + } + + \def \__umi_brace_error {\__umi_internal_error \l_tmpa_tl} + \def \__umi_brace_two #1 #2 {\l_tmpa_tl {#1 #2}} + \def \__umi_brace_three #1 #2 #3 {\l_tmpa_tl {#1 #2 #3}} + \def \__umi_brace_four #1 #2 #3 #4 {\l_tmpa_tl {#1 #2 #3 #4}} + + \int_step_inline:nnn {"00} {"7F} { + \expandafter\let\csname __umi_brace_handle_ \char_generate:nn {#1} {12} \endcsname \relax + } + \int_step_inline:nnn {"80} {"BF} { + \expandafter\let\csname __umi_brace_handle_ \char_generate:nn {#1} {12} \endcsname \__umi_brace_error + } + \int_step_inline:nnn {"C0} {"DF} { + \expandafter\let\csname __umi_brace_handle_ \char_generate:nn {#1} {12} \endcsname \__umi_brace_two + } + \int_step_inline:nnn {"E0} {"EF} { + \expandafter\let\csname __umi_brace_handle_ \char_generate:nn {#1} {12} \endcsname \__umi_brace_three + } + \int_step_inline:nnn {"F0} {"F7} { + \expandafter\let\csname __umi_brace_handle_ \char_generate:nn {#1} {12} \endcsname \__umi_brace_four + } + \int_step_inline:nnn {"F8} {"FF} { + \expandafter\let\csname __umi_brace_handle_ \char_generate:nn {#1} {12} \endcsname \__umi_brace_error + } + + \cs_new_protected:Npn \umiPatchCmdUnicodeArg #1 { % #1 = \big + \exp_args:NNc \__umi_patch_cmd_aux #1 {umi-before-patch~\cs_to_str:N #1} + } + \cs_new_protected:Npn \__umi_patch_cmd_aux #1 #2 { % #1 = \big, #2 = \umi-before-patch␣big + \cs_new_eq:NN #2 #1 % error if #2 already defined i.e. already patched + \cs_gset_protected:Npn #1 {\umiBraceNext #2} + } + + % the situation for \big / \bigl is a bit complicated -- \bigl = \mathopen \big, + % and \mathopen expect implicit {...} right after it without any assignment + % while it's possible to patch the source code of \big in a more sophisticated way to keep the implicit group + % it's simpler to just pile on another implicit group... + % consequently, \Bigl etc. does not need patching + \cs_new_protected:Npn \umiPatchCmdUnicodeArgExtraGroup #1 { % #1 = \big + \exp_args:NNc \__umi_patch_cmd_extra_group_aux #1 {umi-before-patch~\cs_to_str:N #1} + } + \cs_new_protected:Npn \__umi_patch_cmd_extra_group_aux #1 #2 { % #1 = \big, #2 = \umi-before-patch␣big + \cs_new_eq:NN #2 #1 % error if #2 already defined i.e. already patched + \cs_gset_protected:Npn #1 {\bgroup \umiBraceNext {\__umi_patch_cmd_extra_group_auxii #2}} + } + \cs_new_protected:Npn \__umi_patch_cmd_extra_group_auxii #1 #2 { #1 {#2} \egroup } + + \cs_new_protected:Npn \umiPatchCmdUnicodeTwoArgs #1 { + \exp_args:NNc \__umi_patch_cmd_two_aux #1 {umi-before-patch~\cs_to_str:N #1} + } + \cs_new_protected:Npn \__umi_patch_cmd_two_aux #1 #2 { % #1 = \frac, #2 = \umi-before-patch␣frac + \cs_new_eq:NN #2 #1 + \cs_gset_protected:Npn #1 { + \umiBraceNext {\__umi_patch_cmd_two_auxii #2} + } + } + \cs_new_protected:Npn \__umi_patch_cmd_two_auxii #1 #2 { % #1 = \umi-before-patch␣frac, #2 = {α} + \umiBraceNext { + #1 {#2} + } + } + + \msg_new:nnn {unicode-math-input} {unpatch-without-patch} { + #1 was~not~patched! + } + \cs_new_protected:Npn \umiUnpatchCmdUnicodeArg #1 { + \bgroup \exp_args:NNc \egroup \__umi_unpatch_cmd {umi-before-patch~\cs_to_str:N #1} #1 + } + \cs_new_protected:Npn \__umi_unpatch_cmd #1 #2 { + \ifdefined #1 \else \msg_error:nnn {unicode-math-input} {unpatch-without-patch} {#2} \fi + \cs_gset_eq:NN #2 #1 + \cs_undefine:N #1 + } + + \bool_if:NF\__umi_ignore_patch_delimiter_commands{ + \AtBeginDocument{ + \umiPatchCmdUnicodeArgExtraGroup \big + \umiPatchCmdUnicodeArgExtraGroup \Big + \umiPatchCmdUnicodeArgExtraGroup \bigg + \umiPatchCmdUnicodeArgExtraGroup \Bigg + } + } + +} + + +% ======== definitions. + +\msg_new:nnn {unicode-math-input} {prime-already-patched} { + The~'~symbol~is~already~patched,~call~umiUnpatchPrime~first. +} +\msg_new:nnn {unicode-math-input} {prime-not-patched} { + The~'~symbol~is~not~patched,~call~umiPatchPrime~first. +} + +\cs_new_protected:Npn \umiPatchPrime { + \ifdefined \__umi_prime_backup + \msg_error:nn {unicode-math-input} {prime-already-patched} + \else + \__umi_backup_prime_definition + \__umi_special_handle{'}{\__umi_superscript \umiPrime} + \fi +} + +\cs_new_protected:Npn \umiUnpatchPrime { + \ifdefined \__umi_prime_backup + \__umi_restore_prime_definition + \cs_undefine:N \__umi_prime_backup + \else + \msg_error:nn {unicode-math-input} {prime-not-patched} + \fi +} + + +\cs_gset_protected:Npn \__umi_gtmp #1 { % auxiliary to define the following commands where #1 is \cA\' + \cs_new_protected:Npn \__umi_backup_prime_definition { + \cs_gset_eq:NN \__umi_prime_backup #1 + } + \cs_new_protected:Npn \__umi_restore_prime_definition { + \cs_gset_eq:NN #1 \__umi_prime_backup + } +} +\expandafter \expandafter \expandafter \__umi_gtmp \char_generate:nn {`'} {13} + +\bool_if:NF\__umi_ignore_patch_prime{ + \AtBeginDocument{\umiPatchPrime} +} + +\__umi_special_handle{′}{\__umi_superscript \umiPrime} +\__umi_special_handle{″}{\__umi_superscript{\umiPrime\umiPrime}} +\__umi_special_handle{‴}{\__umi_superscript{\umiPrime\umiPrime\umiPrime}} +\__umi_special_handle{⁗}{\__umi_superscript{\umiPrime\umiPrime\umiPrime\umiPrime}} +\__umi_special_handle{‵}{\__umi_superscript \umiBackprime} +\__umi_special_handle{‶}{\__umi_superscript{\umiBackprime\umiBackprime}} +\__umi_special_handle{‷}{\__umi_superscript{\umiBackprime\umiBackprime\umiBackprime}} + +\__umi_special_handle{⁰}{\__umi_superscript 0} +\__umi_special_handle{¹}{\__umi_superscript 1} +\__umi_special_handle{²}{\__umi_superscript 2} +\__umi_special_handle{³}{\__umi_superscript 3} +\__umi_special_handle{⁴}{\__umi_superscript 4} +\__umi_special_handle{⁵}{\__umi_superscript 5} +\__umi_special_handle{⁶}{\__umi_superscript 6} +\__umi_special_handle{⁷}{\__umi_superscript 7} +\__umi_special_handle{⁸}{\__umi_superscript 8} +\__umi_special_handle{⁹}{\__umi_superscript 9} +\__umi_special_handle{⁺}{\__umi_superscript +} +\__umi_special_handle{⁻}{\__umi_superscript -} +\__umi_special_handle{⁼}{\__umi_superscript =} +\__umi_special_handle{⁽}{\__umi_superscript (} +\__umi_special_handle{⁾}{\__umi_superscript )} +\__umi_special_handle{ᴬ}{\__umi_superscript A} +\__umi_special_handle{ᴮ}{\__umi_superscript B} +\__umi_special_handle{ᴰ}{\__umi_superscript D} +\__umi_special_handle{ᴱ}{\__umi_superscript E} +\__umi_special_handle{ᴳ}{\__umi_superscript G} +\__umi_special_handle{ᴴ}{\__umi_superscript H} +\__umi_special_handle{ᴵ}{\__umi_superscript I} +\__umi_special_handle{ᴶ}{\__umi_superscript J} +\__umi_special_handle{ᴷ}{\__umi_superscript K} +\__umi_special_handle{ᴸ}{\__umi_superscript L} +\__umi_special_handle{ᴹ}{\__umi_superscript M} +\__umi_special_handle{ᴺ}{\__umi_superscript N} +\__umi_special_handle{ᴼ}{\__umi_superscript O} +\__umi_special_handle{ᴾ}{\__umi_superscript P} +\__umi_special_handle{ᴿ}{\__umi_superscript R} +\__umi_special_handle{ᵀ}{\__umi_superscript T} +\__umi_special_handle{ᵁ}{\__umi_superscript U} +\__umi_special_handle{ⱽ}{\__umi_superscript V} +\__umi_special_handle{ᵂ}{\__umi_superscript W} +\__umi_special_handle{ᵃ}{\__umi_superscript a} +\__umi_special_handle{ᵇ}{\__umi_superscript b} +\__umi_special_handle{ᶜ}{\__umi_superscript c} +\__umi_special_handle{ᵈ}{\__umi_superscript d} +\__umi_special_handle{ᵉ}{\__umi_superscript e} +\__umi_special_handle{ᶠ}{\__umi_superscript f} +\__umi_special_handle{ᵍ}{\__umi_superscript g} +\__umi_special_handle{ʰ}{\__umi_superscript h} +\__umi_special_handle{ⁱ}{\__umi_superscript i} +\__umi_special_handle{ʲ}{\__umi_superscript j} +\__umi_special_handle{ᵏ}{\__umi_superscript k} +\__umi_special_handle{ˡ}{\__umi_superscript l} +\__umi_special_handle{ᵐ}{\__umi_superscript m} +\__umi_special_handle{ⁿ}{\__umi_superscript n} +\__umi_special_handle{ᵒ}{\__umi_superscript o} +\__umi_special_handle{ᵖ}{\__umi_superscript p} +\__umi_special_handle{ʳ}{\__umi_superscript r} +\__umi_special_handle{ˢ}{\__umi_superscript s} +\__umi_special_handle{ᵗ}{\__umi_superscript t} +\__umi_special_handle{ᵘ}{\__umi_superscript u} +\__umi_special_handle{ᵛ}{\__umi_superscript v} +\__umi_special_handle{ʷ}{\__umi_superscript w} +\__umi_special_handle{ˣ}{\__umi_superscript x} +\__umi_special_handle{ʸ}{\__umi_superscript y} +\__umi_special_handle{ᶻ}{\__umi_superscript z} +\__umi_special_handle{ᵝ}{\__umi_superscript \beta} +\__umi_special_handle{ᵞ}{\__umi_superscript \gamma} +\__umi_special_handle{ᵟ}{\__umi_superscript \delta} +\__umi_special_handle{ᵠ}{\__umi_superscript \phi} +\__umi_special_handle{ᵡ}{\__umi_superscript \chi} +\__umi_special_handle{ᶿ}{\__umi_superscript \theta} + +\__umi_special_handle{₀}{\__umi_subscript 0} +\__umi_special_handle{₁}{\__umi_subscript 1} +\__umi_special_handle{₂}{\__umi_subscript 2} +\__umi_special_handle{₃}{\__umi_subscript 3} +\__umi_special_handle{₄}{\__umi_subscript 4} +\__umi_special_handle{₅}{\__umi_subscript 5} +\__umi_special_handle{₆}{\__umi_subscript 6} +\__umi_special_handle{₇}{\__umi_subscript 7} +\__umi_special_handle{₈}{\__umi_subscript 8} +\__umi_special_handle{₉}{\__umi_subscript 9} +\__umi_special_handle{₊}{\__umi_subscript +} +\__umi_special_handle{₋}{\__umi_subscript -} +\__umi_special_handle{₌}{\__umi_subscript =} +\__umi_special_handle{₍}{\__umi_subscript (} +\__umi_special_handle{₎}{\__umi_subscript )} +\__umi_special_handle{ₐ}{\__umi_subscript a} +\__umi_special_handle{ₑ}{\__umi_subscript e} +\__umi_special_handle{ₕ}{\__umi_subscript h} +\__umi_special_handle{ᵢ}{\__umi_subscript i} +\__umi_special_handle{ⱼ}{\__umi_subscript j} +\__umi_special_handle{ₖ}{\__umi_subscript k} +\__umi_special_handle{ₗ}{\__umi_subscript l} +\__umi_special_handle{ₘ}{\__umi_subscript m} +\__umi_special_handle{ₙ}{\__umi_subscript n} +\__umi_special_handle{ₒ}{\__umi_subscript o} +\__umi_special_handle{ₚ}{\__umi_subscript p} +\__umi_special_handle{ᵣ}{\__umi_subscript r} +\__umi_special_handle{ₛ}{\__umi_subscript s} +\__umi_special_handle{ₜ}{\__umi_subscript t} +\__umi_special_handle{ᵤ}{\__umi_subscript u} +\__umi_special_handle{ᵥ}{\__umi_subscript v} +\__umi_special_handle{ₓ}{\__umi_subscript x} +\__umi_special_handle{ᵦ}{\__umi_subscript \beta} +\__umi_special_handle{ᵧ}{\__umi_subscript \gamma} +\__umi_special_handle{ᵨ}{\__umi_subscript \rho} +\__umi_special_handle{ᵩ}{\__umi_subscript \phi} +\__umi_special_handle{ᵪ}{\__umi_subscript \chi} |