##################################################################
# Define miscellaneous rules for rewriting the document's index. #
# Author: Scott Pakin <[email protected]>                     #
##################################################################

# -------------------------------- hats --------------------------------

# ... accents ...

# This rule should precede the following one.
[[rewrite]]
render_regex = '\\RHAT(crown|mortarboard)'
item = ['\1', "as math-mode accent"]

[[rewrite]]
render_contains = '\RHAT'
item = '\g<0>, as math-mode accent'

# ... regular ...

[[rewrite]]
regex = '^(cowboy|hard|top|witch|wizard) hat$'
item = ["hat", '\1']

[[rewrite]]
matches = "faHardHat"
item = ["hat", "hard"]

[[rewrite]]
matches = ["faHatCowboy", "faHatCowboySide"]
item = ["hat", "cowboy"]

[[rewrite]]
matches = "faHatWizard"
item = ["hat", "wizard"]

[[rewrite]]
matches = ["graduation cap", "faGraduationCap"]
item = "mortarboard"

# ------------------------------- pages --------------------------------

[[rewrite]]
regex = '^page\s+(.+)$'
item = ["page", '\1']

[[rewrite]]
matches = "pages"
item = ["page", "multiple"]

[[rewrite]]
regex = '^Paper(Portrait|Landscape)$'
lowercase_item = true
item = ["page", '\1']

# ------------------------------ vehicles ------------------------------

# ... cars ...

[[rewrite]]
matches = ["car", "cars"]
item = "automobile"

[[rewrite]]
contains = "vehicle"   # "recreational vehicle", "sport utility vehicle"
item = "automobile"

[[rewrite]]
matches = "car crash"
item = ["automobile", "crash"]

[[rewrite]]
matches = "automobile with key"
item = ["automobile", "with key"]

# ... boats and ships ...

[[rewrite]]
matches = [
   "motor boat",
   "sailboat",
   "speedboat"
]
item = "boat"

[[rewrite]]
render_contains = '\PHship'    # This looks more like a boat to me.
item = "boat"

[[rewrite]]
render_contains = '\asapBoat'  # This looks more like a ship to me.
item = "ship"

[[rewrite]]
matches = [
   "ships",
   "passenger ship"
]
item = "ship"

# ----------------------------- rectangles -----------------------------

[[rewrite]]
matches = [
   "rectangles",
   "hrectangle",
   "vrectangle",
   "oblong",          # Some of these are barely oblong, almost square.
   "talloblong",
   "bigtalloblong",
   "bigbox"
]
item = "rectangle"

[[rewrite]]
matches = [
   "hrectangleblack",
   "vrectangleblack",
   "Rectangle",
   "RectangleBold",
   "RectangleThin"
]
item = ["rectangle", "filled"]

# -------------------------- ellipses (ovals) --------------------------

[[rewrite]]
matches = ["ellipses (ovals)", "ovals"]
item = "ellipse"

[[rewrite]]
matches = ["Ellipse", "whthorzoval"]
item = "ellipse"

[[rewrite]]
matches = ["EllipseSolid", "blkhorzoval"]
item = ["ellipse", "filled"]

[[rewrite]]
matches = "whtvertoval"
item = ["ellipse", "vertical"]

[[rewrite]]
matches = "blkvertoval"
item = ["ellipse", "vertical, filled"]

[[rewrite]]
matches = "EllipseShadow"
item = ["ellipse", "shadowed"]

# ------------------------------- boots --------------------------------

[[rewrite]]
matches = "hiking boot"
item = ["boot", "hiking"]

[[rewrite]]
matches = "ski and ski boot"
item = ["boot", "ski"]

[[rewrite]]
matches = "womans boots"
item = ["boot", "multiple"]

# ------------------------ maps (geographical) -------------------------

[[rewrite]]
matches = "world map"
item = ["map", "world"]

[[rewrite]]
matches = "map of Japan"
item = ["map", "of Japan"]

[[rewrite]]
matches = "map, marked"
item = ["map", "marked"]

# --------------------------- diagonal lines ---------------------------

# ... regular ...

[[rewrite]]
matches = ["diagdown", "nwseline"]
item = ["diagonal line", "down"]

[[rewrite]]
matches = ["diagup", "neswline"]
item = ["diagonal line", "up"]

[[rewrite]]
matches = "Neswline"
item = ["diagonal line", "up, double"]

[[rewrite]]
matches = "Nwseline"
item = ["diagonal line", "down, double"]

[[rewrite]]
matches = [
   "fdiagovrdiag",
   "rdiagovfdiag"
]
item = ["diagonal line", "two, crossed"]

# ... negated ...

[[rewrite]]
matches = "ndiagdown"
item = ["diagonal line", "down, negated"]

[[rewrite]]
matches = "ndiagup"
item = ["diagonal line", "up, negated"]

[[rewrite]]
matches = "nNeswline"
item = ["diagonal line", "up, double, negated"]

[[rewrite]]
matches = "nNwseline"
item = ["diagonal line", "down, double, negated"]

[[rewrite]]
matches = "nneswline"
item = ["diagonal line", "up, negated"]

[[rewrite]]
matches = "nnwseline"
item = ["diagonal line", "down, negated"]

# ------------------------------- grids --------------------------------

[[rewrite]]
matches = "topborder"
item = ["grid", "top"]

[[rewrite]]
matches = "botborder"
item = ["grid", "bottom"]

[[rewrite]]
matches = "lftborder"
item = ["grid", "left"]

[[rewrite]]
matches = "rtborder"
item = ["grid", "right"]

[[rewrite]]
matches = "empty"
item = ["grid", "center"]

[[rewrite]]
matches = "hoshi"
item = ["grid", "center, with filled circle"]

# ------------------------------ borders -------------------------------

[[rewrite]]
regex = '^border\s+(.+)$'
item = ["border", '\1']

[[rewrite]]
regex = '^([SZ])border$'
item = ["border", '\1']

[[rewrite]]
matches = ["decorative borders", "fancy borders"]
item = ["border", "decorative"]

[[rewrite]]
matches = "borders"
item = "border"

# ---------------------------- semicircles -----------------------------

[[rewrite]]
matches = ["topsemicircle", "botsemicircle"]
item = "semicircle"

[[rewrite]]
regex = '^notched (left|right) semicircle with three dots$'
item = ["semicircle", "notched with three dots"]

[[rewrite]]
matches = ["opluslhrim", "oplusrhrim"]
item = ["semicircle", "plus"]

# ------------------------------- locks --------------------------------

[[rewrite]]
matches = ["locks", "locked"]
item = "lock"

[[rewrite]]
regex = 'lock.*with.*(key|pen)'
item = ["lock", 'with \1']

[[rewrite]]
matches = ["open lock", "unlocked"]
item = ["lock", "open"]

# -------------------------- ellipses (dots) ---------------------------

[[rewrite]]
top_matches = "ellipses (dots)"
item = ["ellipsis"]

[[rewrite]]
matches = [
   "ldots",
   "textellipsis",
   "mathellipsis",
   "baseline horizontal dots (horizontal ellipsis)"
]
item = "ellipsis"

[[rewrite]]
matches = [
   "cdots",
   "hdots",
   "centered horizontal dots (horizontal ellipsis)"
]
item = ["ellipsis", "centered"]

[[rewrite]]
matches = ["ddots", "fixedddots"]
item = ["ellipsis", "diagonal"]

[[rewrite]]
matches = [
   "fixedvdots",
   "vdots",
   "tripledot",
   "vertical dots (vertical ellipsis)"
]
item = ["ellipsis", "vertical"]

[[rewrite]]
matches = ["adots", "iddots", "revddots", "udots"]
item = ["ellipsis", "anti-diagonal"]

[[rewrite]]
matches = "ddotdot"
item = ["ellipsis", "diagonal, two"]

[[rewrite]]
matches = "udotdot"
item = ["ellipsis", "anti-diagonal, two"]

[[rewrite]]
matches = ["vdotdot", "doubledot"]
item = ["ellipsis", "vertical, two"]

[[rewrite]]
matches = ["quaddot", "fourvdots"]
item = ["ellipsis", "vertical, four"]

[[rewrite]]
matches = "pentdot"
item = ["ellipsis", "vertical, five"]

[[rewrite]]
matches = "hdotdot"
item = ["ellipsis", "centered, two"]

[[rewrite]]
matches = "enleadertwodots"
item = ["ellipsis", "two"]

# ----------------------------- other dots -----------------------------

[[rewrite]]
matches = [
   "binding dot",
   "centerdot",
   "udot"
]
item = ["dot", "middle"]

[[rewrite]]
render_contains = ['(\Dt)', '(\ARUNEeye)']
item = ["dot", "middle"]

[[rewrite]]
matches = ["dot", "ldotp"]
item = ["dot", "lower"]

[[rewrite]]
matches = "doubleeye"
item = ["dot", "two"]

[[rewrite]]
matches = "tripleeye"
item = ["dot", "three"]

[[rewrite]]
matches = ["squaredots", "quadeye"]
item = ["dot", "four"]

[[rewrite]]
matches = ["fivedots", "penteye"]
item = ["dot", "five"]

# ------------------------- punctuation marks --------------------------

[[rewrite]]
matches = "MVPeriod"
item = "period"

[[rewrite]]
matches = "textperiodcentered"
item = ["period", "centered"]

[[rewrite]]
matches = ["fatsemi", "fcmp", "zcmp"]
item = ["semicolon", "hollow"]

[[rewrite]]
matches = [
   "paragraph",
   "textparagraph",
   "textpilcrow",
   "mathparagraph",
   "DCd"
]
word = "pilcrow"

[[rewrite]]
render_contains = ['+\P+', '\faParagraph', '\usym{2761}']
word = "pilcrow"

[[rewrite]]
render_contains = [
   '+\S+',
   '+\wasyparagraph+',
   '+\Paragraph+',
   '+\textsection+'
]
item = "section mark"

[[rewrite]]
matches = ["mathsection", "NAK"]
item = "section mark"

[[rewrite]]
regex = '^medium (flattened )?(left|right) parenthesis ornament$'
item = ["parentheses", "dingbat"]

[[rewrite]]
regex = '^MV(Left|Right)Bracket$'
item = ["parentheses", "sans serif"]

[[rewrite]]
matches = ["Lbrack", "Rbrack"]
item = ["brackets", "blackboard bold"]
render = 'blackboard bold (\Lbrack \: \Rbrack)'

[[rewrite]]
matches = ["Langle", "Rangle"]
item = ["angle brackets", "blackboard bold"]
render = 'blackboard bold (\Langle \: \Rangle)'

[[rewrite]]
matches = "hyphen, discretionary"
item = ["hyphen", "discretionary"]

[[rewrite]]
matches = "textdblhyphen"
item = ["hyphen", "double"]

# ------------------------------ bullets -------------------------------

[[rewrite]]
regex = '^(hyphen|inverse)bullet$'
item = ["bullet", '\1']

[[rewrite]]
matches = ["medbullet", "BEL"]
item = "bullet"

[[rewrite]]
matches = "sqbullet"
item = ["bullet", "square"]

[[rewrite]]
matches = "textopenbullet"
item = ["bullet", "open"]

[[rewrite]]
matches = "bullets, as tally markers"
item = ["bullet", "as tally markers"]

[[rewrite]]
consider_all_entries = true
matches = "bullets"
format_contains = 'hyperindexformat{\see{circles, squares'
item = ["bullet"]
seealso = "circle, square, rhombus, etc."

# -------------------------- horizontal lines --------------------------

[[rewrite]]
matches = ["BigHBar", "HBar", "SmallHBar"]
item = ["horizontal line", "high"]

[[rewrite]]
matches = ["leftrightline", "strns"]
item = ["horizontal line", "middle"]

[[rewrite]]
matches = "lineh"
item = ["horizontal line", "low"]

[[rewrite]]
matches = "linevh"
item = ["horizontal line", "middle, with vertical line"]

[[rewrite]]
matches = "CuttingLine"
item = ["horizontal line", "dashed"]

[[rewrite]]
matches = "Leftrightline"
item = ["horizontal line", "middle, double"]

[[rewrite]]
matches = "nleftrightline"
item = ["horizontal line", "middle, slashed"]

[[rewrite]]
matches = ["textdoublebarslash", "nLeftrightline"]
item = ["horizontal line", "middle, double, slashed"]

# --------------------------- vertical bars ----------------------------

# This rule should precede the following rule
[[rewrite]]
render_contains = '(\ARUNEbar)'
item = ["vertical bar", "short"]

[[rewrite]]
matches = [
   "BigVBar",
   "binding bar",
   "divides",
   "light vertical bar",
   "linev",
   "mid",
   "textpipe",
   "textpipevar",
   "texttoneletterstem",
   "textvertline",
   "updownline",
   "VBar",
   "vertoverlay"
]
not_render_contains = '\MNSneswline'
item = "vertical bar"

[[rewrite]]
render_contains = [
   '\magicvertname',
   '(\textbar)',
   '(\Shfr)'
]
item = "vertical bar"

[[rewrite]]
render_contains = [
   '\magicVertname',
   '\FDSYMtVert',
   '\MNSdVert'
]
item = ["vertical bar", "double"]

[[rewrite]]
matches = [
   "textbardbl",
   "textdoublepipe",
   "textdoublepipevar",
   "textdoublevertline",
   "Updownline"
]
item = ["vertical bar", "double"]

[[rewrite]]
matches = [
   "doublebar",
   "textbrokenbar",
   "brokenvert",
   "splitvert"
]
item = ["vertical bar", "split"]

[[rewrite]]
matches = "triplebar"
item = ["vertical bar", "split twice"]

[[rewrite]]
matches = "midcir"
item = ["vertical bar", "ring under"]

[[rewrite]]
matches = "nmidcir"
item = ["vertical bar", "ring under, negated"]

[[rewrite]]
matches = "cirmid"
item = ["vertical bar", "ring over"]

[[rewrite]]
matches = "ncirmid"
item = ["vertical bar", "ring over, negated"]

[[rewrite]]
matches = ["textdoublebarpipe", "textdoublebarpipevar"]
item = ["vertical bar", "equals"]

[[rewrite]]
matches = ["medvert", "SmallVBar", "shortmid"]
item = ["vertical bar", "short"]

[[rewrite]]
matches = ["dotmedvert", "medvertdot"]
item = ["vertical bar", "short, dotted"]

[[rewrite]]
matches = [
   "heavy vertical bar",
   "medium vertical bar"
]
item = ["vertical bar", "heavy"]

[[rewrite]]
matches = [
   "nmid",
   "revnmid",
   "DividesNot",
   "ndivides",
   "notdivides",
   "nupdownline"
]
item = ["vertical bar", "negated"]

[[rewrite]]
matches = ["nUpdownline", "nhpar"]
item = ["vertical bar", "double, negated"]

[[rewrite]]
matches = "nshortmid"
item = ["vertical bar", "short, negated"]

[[rewrite]]
matches = "nhVvert"
item = ["vertical bar", "triple, negated"]

# ---------------------------- curly braces ----------------------------

[[rewrite]]
regex = '^textbrace(left|right)$'
item = "braces"
render = ""

[[rewrite]]
render_contains = ['+\{+', '+\}+']
item = "braces"
render = ""

[[rewrite]]
regex = '(left|right) curly bracket ornament'
item = ["braces", "decorative"]
render = ""

# ------------------------------ slashes -------------------------------

# ... special cases ...

# \faSlash is called "slash", but the glyph is a backslash.
[[rewrite]]
render_contains = '(\faSlash)'
item = "backslash"

# ... regular ...

[[rewrite]]
matches = [
   "/",
   "slash",
   "mathslash",
   "medslash",
   "not",
   "notchar",
   "right (forward) slash",
   "xsol"
]
item = "slash"

[[rewrite]]
render_contains = '(\FDSYMtmathslash)'
item = "slash"

[[rewrite]]
matches = ["fracslash", "textfractionsolidus"]
item = ["slash", "fraction"]

[[rewrite]]
matches = "sslash"
item = ["slash", "double"]

[[rewrite]]
matches = "trslash"
item = ["slash", "triple"]

[[rewrite]]
matches = "dsol"
item = ["slash", "bar over"]

[[rewrite]]
matches = [
   "backslash",
   "textbackslash",
   "medbackslash",
   "left (back) slash",
   "xbsol"
]
item = "backslash"

[[rewrite]]
matches = "fatbslash"
item = ["backslash", "hollow"]

[[rewrite]]
matches = "fatslash"
item = ["slash", "hollow"]

[[rewrite]]
matches = "centernot"
item = ["slash", "horizontally centered"]

# ... negated ...

[[rewrite]]
matches = "notslash"
item = ["slash", "negated"]

[[rewrite]]
matches = ["notbackslash", "rsolbar"]
item = ["backslash", "negated"]

# -------------------- approximately equivalent to ---------------------

[[rewrite]]
matches = ["approxident", "triplesim", "threesim"]
item = "approximately equivalent to"

[[rewrite]]
matches = "backtriplesim"
item = ["approximately equivalent to", "reversed"]

[[rewrite]]
matches = ["napproxident", "ntriplesim"]
item = ["approximately equivalent to", "negated"]

[[rewrite]]
matches = "nbacktriplesim"
item = ["approximately equivalent to", "reversed, negated"]

# ----------------------- approximately equal to -----------------------

# ... regular ...

[[rewrite]]
matches = [
   "approx",
   "approxeq",
   "approxeqq",
   "thickapprox"
]
item = "approximately equal to"

[[rewrite]]
matches = ["backapprox", "backapproxeq"]
item = ["approximately equal to", "reversed"]

[[rewrite]]
matches = "approxcolon"
item = ["approximately equal to", "colon"]

[[rewrite]]
matches = "approxcoloncolon"
item = ["approximately equal to", "colon, double"]

[[rewrite]]
matches = "hatapprox"
item = ["approximately equal to", "hat"]

# ... negated ...

[[rewrite]]
matches = [
   "napprox",
   "napproxeq",
   "napproxeqq",
   "nthickapprox"
]
item = ["approximately equal to", "negated"]

[[rewrite]]
matches = ["nbackapprox", "nbackapproxeq"]
item = ["approximately equal to", "reversed, negated"]

# --------------------------- parallel lines ---------------------------

# ... regular ...

[[rewrite]]
matches = ["parallel", "bigparallel"]
item = "parallel"

[[rewrite]]
matches = "shortparallel"
item = ["parallel", "short"]

[[rewrite]]
matches = ["varparallel", "parallelslant"]
item = ["parallel", "slanted"]

[[rewrite]]
matches = "varparallelinv"
item = ["parallel", "slanted backward"]

[[rewrite]]
matches = "parsim"
item = ["parallel", "similar"]

# ... negated ...

[[rewrite]]
matches = "nparallel"
item = ["parallel", "negated"]

[[rewrite]]
matches = "nshortparallel"
item = ["parallel", "short, negated"]

[[rewrite]]
matches = ["nparallelslant", "nvarparallel"]
item = ["parallel", "slanted, negated"]

[[rewrite]]
matches = "nvarparallelinv"
item = ["parallel", "slanted backward, negated"]

# ----------------------------- ampersands -----------------------------

[[rewrite]]
contains = "&"
item = "ampersand"

[[rewrite]]
matches = [
   "binampersand",
   "with",
   "bigwith",
   "additive and",
   "quantified additive and"
]
item = "ampersand"

[[rewrite]]
matches = [
   "upand",
   "invamp",
   "biginvamp",
   "bindnasrepma",
   "parr",
   "bigparr",
   "multiplicitive or",     # Note spelling error.
   "quantified multiplicative or"
]
item = ["ampersand", "inverted"]

# --------------------------- set membership ---------------------------

# ... regular ...

[[rewrite]]
matches = ["in", "smallin"]
not_render_contains = '\EO'
item = "set membership"

[[rewrite]]
matches = ["isins", "varisins"]
item = ["set membership", "short vertical bar"]

[[rewrite]]
matches = "inplus"
item = ["set membership", "plus"]

[[rewrite]]
matches = ["isinobar", "varisinobar", "barin"]
item = ["set membership", "bar over"]

[[rewrite]]
matches = "isinvb"
item = ["set membership", "bar under"]

[[rewrite]]
matches = "disin"
item = ["set membership", "extended horizontal line"]

[[rewrite]]
matches = "isindot"
item = ["set membership", "dot"]

[[rewrite]]
matches = "isinE"
item = ["set membership", "equal"]

# ... reversed ...

[[rewrite]]
matches = [
   "ni",
   "smallni",
   "owns",
   "smallowns",
   "set owns element"
]
not_render_contains = '\EO'
item = ["set membership", "reversed"]

[[rewrite]]
matches = ["nis", "varnis"]
item = ["set membership", "reversed, short vertical bar"]

[[rewrite]]
matches = "niplus"
item = ["set membership", "reversed, plus"]

[[rewrite]]
matches = ["niobar", "varniobar"]
item = ["set membership", "reversed, bar over"]

[[rewrite]]
matches = "ownsbar"
item = ["set membership", "reversed, bar under"]

[[rewrite]]
matches = "nisd"
item = ["set membership", "reversed, extended horizontal line"]

# ... negated ...

[[rewrite]]
matches = [
   "nin",
   "notin",
   "varnotin",
   "notsmallin",
   "set membership negated"
]
item = ["set membership", "negated"]

[[rewrite]]
matches = "nvarisinobar"
item = ["set membership", "bar over, negated"]

# ... negated and reversed ...

[[rewrite]]
matches = [
   "nni",
   "notni",
   "notowner",
   "varnotowner",
   "notsmallowns",
   "nowns",
   "set owns element negated"
]
item = ["set membership", "reversed, negated"]

[[rewrite]]
matches = "nvarniobar"
item = ["set membership", "reversed, negated, bar over"]

# ------------------------------- exists -------------------------------

[[rewrite]]
matches = [
   "exists",
   "bigexists",
   "existential bunch quantifier",
   "existential individual quantifier"
]
item = "exists"

[[rewrite]]
matches = [
   "hidden existential bunch quantifier",
   "hidden existential individual quantifier"
]
item = ["exists", "tilde"]

[[rewrite]]
matches = [
   "unique existential bunch quantifier",
   "unique existential individual quantifier"
]
item = ["exists", "exclamation point"]

[[rewrite]]
matches = [
   "nexists",
   "existential bunch quantifier negation",
   "existential individual quantifier negation"
]
item = ["exists", "negated"]

# ----------------------------- pentagons ------------------------------

[[rewrite]]
matches = [
   "pentago",
   "pentagon",
   "pentagons",
   "rightpentagon"
]
item = "pentagon"

[[rewrite]]
matches = [
   "pentagofill",
   "pentagonblack",
   "rightpentagonblack"
]
item = ["pentagon", "filled"]

[[rewrite]]
regex = '^pentagofillh[ablr]$'
item = ["pentagon", "half filled"]

[[rewrite]]
matches = "pentagocross"
item = ["pentagon", "crossed"]

[[rewrite]]
matches = "pentagodot"
item = ["pentagon", "dotted"]

[[rewrite]]
matches = "pentagolineh"
item = ["pentagon", "horizontally divided"]

[[rewrite]]
matches = "pentagolinev"
item = ["pentagon", "vertically divided"]

[[rewrite]]
matches = "pentagolinevh"
item = ["pentagon", "quartered"]

[[rewrite]]
matches = "DEL"
item = ["pentagon", "irregular"]

# ------------------------------ hexagons ------------------------------

[[rewrite]]
matches = [
   "hexago",
   "hexagon",
   "hexagons",
   "varhexagon"
]
item = "hexagon"

[[rewrite]]
matches = [
   "hexagofill",
   "hexagonblack",
   "varhexagonblack"
]
item = ["hexagon", "filled"]

[[rewrite]]
regex = '^hexagofillh[ablr]$'
item = ["hexagon", "half filled"]

[[rewrite]]
matches = "hexagocross"
item = ["hexagon", "crossed"]

[[rewrite]]
matches = "hexagodot"
item = ["hexagon", "dotted"]

[[rewrite]]
matches = "hexagolineh"
item = ["hexagon", "horizontally divided"]

[[rewrite]]
matches = "hexagolinev"
item = ["hexagon", "vertically divided"]

[[rewrite]]
matches = "hexagolinevh"
item = ["hexagon", "quartered"]

[[rewrite]]
matches = "varhexagonlrbonds"
item = ["hexagon", "with chemical bonds"]

# -------------------------- logical negation --------------------------

[[rewrite]]
matches = [
   "neg",
   "lnot",
   "textlnot",
   "bitwise not operator/logical negation"
]
item = "logical negation"

[[rewrite]]
matches = ["turnedneg", "intprod"]
item = ["logical negation", "inverted"]

[[rewrite]]
top_matches = "inverted negation"
item = ["logical negation", "inverted"]

[[rewrite]]
matches = ["backneg", "invnot"]
item = ["logical negation", "reversed"]

[[rewrite]]
matches = ["invbackneg", "turnedbackneg", "intprodr"]
item = ["logical negation", "reversed and inverted"]

[[rewrite]]
render_contains = '(\STIXturnednot)'
item = ["logical negation", "reversed and inverted"]

[[rewrite]]
render_contains = [
   '($\invneg$)',
   '(\FDSYMinvneg)'
]
item = ["logical negation", "reversed"]

[[rewrite]]
render_contains = [
   '(\MNSinvneg)',
   '(\FDSYMturnednot)'
]
item = ["logical negation", "inverted"]

[[rewrite]]
matches = "dotted negation"
item = ["logical negation", "dotted"]

[[rewrite]]
matches = "Not"
item = ["logical negation", "double bar"]

[[rewrite]]
matches = "bNot"
item = ["logical negation", "double bar, reversed"]

[[rewrite]]
matches = "classical logical negation"
item = ["logical negation", "classical"]

# -------------------------- proportionality ---------------------------

[[rewrite]]
matches = ["propto", "varpropto", "wasypropto", "leftpropto"]
item = "proportionality"

[[rewrite]]
matches = ["propfrom", "backpropto", "rightpropto"]
item = ["proportionality", "reversed"]

[[rewrite]]
matches = "uppropto"
item = ["proportionality", "down"]

[[rewrite]]
matches = "downpropto"
item = ["proportionality", "up"]

[[rewrite]]
matches = "hbipropto"
item = ["proportionality", "bidirectional"]

[[rewrite]]
matches = "vbipropto"
item = ["proportionality", "bidirectional, vertical"]

[[rewrite]]
matches = ["neswbipropto", "nwsebipropto"]
item = ["proportionality", "bidirectional, diagonal"]

# ----------------------------- infinities -----------------------------

[[rewrite]]
matches = "infty"
item = "infinity"

[[rewrite]]
matches = "iinfin"
item = ["infinity", "incomplete"]

[[rewrite]]
matches = "tieinfty"
item = ["infinity", "tie over"]

[[rewrite]]
matches = "nvinfty"
item = ["infinity", "negated"]

# ------------------------------- dashes -------------------------------

# Distinguish a dashing emoji from punctuation-mark dashes.
[[rewrite]]
render_contains = '\usym{1F4A8}'
item = "dashing away"

[[rewrite]]
render_regex = '\\text(em|en)dash'
item = ["dash (punctuation mark)", '\1']

[[rewrite]]
matches = "textthreequartersemdash"
item = ["dash (punctuation mark)", "three quarters em"]

[[rewrite]]
matches = "texttwelveudash"
item = ["dash (punctuation mark)", "twelve u"]

# ------------------------------- steel --------------------------------

[[rewrite]]
regex = '^Rounded([A-Z]+)steel'
item = ["steel", 'rounded \1']

[[rewrite]]
regex = '^([A-Z]+)steel'
item = ["steel", '\1']

[[rewrite]]
matches = "Circsteel"
item = ["steel", "circular"]

[[rewrite]]
matches = "Rectsteel"
item = ["steel", "rectangular"]

[[rewrite]]
matches = "Hexasteel"
item = ["steel", "hexagonal"]

[[rewrite]]
matches = "Octosteel"
item = ["steel", "octagonal"]

[[rewrite]]
matches = "Flatsteel"
item = ["steel", "flat"]

# -------------------------------- nibs --------------------------------

# This looks like a pen to me.
# This rule should appear early in this section.
[[rewrite]]
render_contains = '\twemoji{2712}'
item = "pen"

[[rewrite]]
matches = ["nibs", "faPenNib"]
item = "nib"

[[rewrite]]
regex = '^(black|white)\s+nib'
item = 'nib'

[[rewrite]]
regex = '^Nib.*(Left|Right)'
item = 'nib'

[[rewrite]]
regex = '^man.*nib'
item = "nib shapes"

# --------------------------- manfnt symbols ---------------------------

[[rewrite]]
regex = '^man.*(kidney|quadrifolium)$'
item = '\1'

[[rewrite]]
regex = '^man(cone|cube)$'
item = '\1'

[[rewrite]]
matches = "manimpossiblecube"
item = ["cube", "impossible"]

# ------------------------------- medals -------------------------------

[[rewrite]]
matches = "1st place medal"
item = ["medal", "gold"]

[[rewrite]]
matches = "2nd place medal"
item = ["medal", "silver"]

[[rewrite]]
matches = "3rd place medal"
item = ["medal", "bronze"]

[[rewrite]]
regex = '^(.+\S)\s+medal$'
item = ["medal", '\1']

# ----------------------------- keyboards ------------------------------

[[rewrite]]
contains = "musical keyboard"
item = ["keyboard", "musical"]

[[rewrite]]
matches = [
   "Keyboard",
   "keyboard",
   "wired keyboard",
   "tiKeyboard"
]
item = ["keyboard", "computer"]

[[rewrite]]
prefix = "faKeyboard"
item = ["keyboard", "computer"]

[[rewrite]]
matches = "keyboard and mouse"
item = ["keyboard", "computer, with mouse"]

# ------------------------------ speakers ------------------------------

# This rule should appear before the generic speaker rule.
[[rewrite]]
matches = [
   "speaker",
   "muted speaker",
   "speaker with cancellation stroke",
   "speaker low volume",
   "volume",
   "volume off",
   "right speaker"
]
item = ["speaker", "muted"]

[[rewrite]]
matches = [
   "speaker medium volume",
   "volume down",
   "speaker with one sound wave",
   "right speaker with one sound wave"
]
item = ["speaker", "volume down"]

[[rewrite]]
matches = [
   "speaker high volume",
   "volume up",
   "speaker with three sound waves",
   "right speaker with three sound waves"
]
item = ["speaker", "volume up"]

# --------------------------- media symbols ----------------------------

# This rule should appear early in this section.
[[rewrite]]
regex = '^(tiMedia.+)Outline$'
item = '\1'
continue = true

[[rewrite]]
matches = [
   "forward",
   "fast forward",
   "tiMediaFastForward",
   "fast-forward button",
   "faFastForward",
   "next track button",
   "step forward"
]
item = ["media control symbols", "forward"]

[[rewrite]]
prefix = "Forward"
item = ["media control symbols", "forward"]

[[rewrite]]
matches = [
   "rewind",
   "backward",
   "step backward",
   "tiMediaPlayReverse",
   "tiMediaRewind"
]
item = ["media control symbols", "reverse"]

[[rewrite]]
matches = "tiMediaPlay"
item = ["media control symbols", "play"]

[[rewrite]]
regex = '^tiMedia(.+)'
lowercase_item = true
item = ["media control symbols", '\1']

[[rewrite]]
prefix = [
   "Rewind",
   "fast reverse",
   "fast backward",
   "faFastBackward",
]
item = ["media control symbols", "reverse"]

[[rewrite]]
matches = [
   "reverse button",
   "last track button",
   "play reverse"
]
item = ["media control symbols", "reverse"]

[[rewrite]]
matches = "play"
not_render_contains = "EOPlay"
item = ["media control symbols", "play"]

[[rewrite]]
matches = "play or pause button"
item = ["media control symbols", "play or pause"]

[[rewrite]]
matches = "play button"
item = ["media control symbols", "play"]

[[rewrite]]
matches = [
   "ToBottom",
   "fast down button",
   "downwards button"
]
item = ["media control symbols", "down"]

[[rewrite]]
matches = [
   "ToTop",
   "fast up button",
   "upwards button"
]
item = ["media control symbols", "up"]

[[rewrite]]
matches = [
   "stop",
   "stop button",
]
item = ["media control symbols", "stop"]

[[rewrite]]
render_contains = '\faStop'
item = ["media control symbols", "stop"]

[[rewrite]]
matches = "adjust"
item = "adjust contrast"

# --------------------- speech and thought bubbles ---------------------

# ... speech bubbles ...

[[rewrite]]
matches = "eye in speech bubble"
item = ["speech bubble", "eye"]

[[rewrite]]
matches = ["two speech bubbles", "three speech bubbles"]
item = ["speech bubble", "multiple"]

[[rewrite]]
render_contains = '\usym{1F4AC}'
item = ["speech bubble", "text"]

[[rewrite]]
render_contains = '\twemoji{1f4ac}'
item = ["speech bubble", "ellipsis"]

[[rewrite]]
contains = "anger bubble"
item = ["speech bubble", "angry"]

# This rule should follow all of the speech-balloon special cases.
[[rewrite]]
contains = ["speech bubble", "speech balloon"]
item = "speech bubble"

# ... thought bubbles ...

[[rewrite]]
render_contains = '\usym{1F4AD}'
item = ["thought bubble", "text"]

[[rewrite]]
contains = "thought bubble"
item = "thought bubble"

[[rewrite]]
matches = "thought balloon"
item = "thought bubble"

# --------------------------- database joins ---------------------------

[[rewrite]]
matches = "Join"
item = ["join (database)", "natural"]

[[rewrite]]
regex = '^(left|right|full)outerjoin$'
item = ["join (database)", '\1 outer']

[[rewrite]]
matches = "lJoin"
item = ["join (database)", "left"]

[[rewrite]]
matches = "rJoin"
item = ["join (database)", "right"]

[[rewrite]]
matches = "openJoin"
item = ["join (database)", "open"]

# ------------------------------- moons --------------------------------

[[rewrite]]
matches = "moons"
item = "moon"

[[rewrite]]
render_contains = '(\Moon)'
item = ["moon", "crescent"]

[[rewrite]]
matches = "newmoon"
item = ["moon", "new"]

[[rewrite]]
render_contains = '\MoonPha{1}'
item = ["moon", "new"]

[[rewrite]]
matches = ["rightmoon", "night"]
item = ["moon", "first quarter"]

[[rewrite]]
render_contains = ['(\STARMoon)', '\MoonPha{2}']
item = ["moon", "first quarter"]

[[rewrite]]
matches = "fullmoon"
item = ["moon", "full"]

[[rewrite]]
render_contains = '\MoonPha{3}'
item = ["moon", "full"]

[[rewrite]]
matches = ["leftmoon", "varMoon"]
item = ["moon", "last quarter"]

[[rewrite]]
render_contains = ['($\ABXleftmoon$)', '\MoonPha{4}']
item = ["moon", "last quarter"]

[[rewrite]]
regex = '^(.*(crescent|gibbous|quarter|full|new))\s+moon(?:\s+(face|with face))?$'
item = ["moon", '\1']

# ------------------------------- colons -------------------------------

[[rewrite]]
matches = "colon"
item = "colon"

[[rewrite]]
matches = ["mathcolon", "ratio", "mathratio"]
item = ["colon", "math mode"]

[[rewrite]]
render_contains = '(\TEUBtwodots)'
item = ["colon", "math mode"]

[[rewrite]]
matches = ["Colon", "coloncolon", "dblcolon"]
item = ["colon", "double"]

[[rewrite]]
matches = "colonapprox"
item = ["colon", "approximately equal to"]

[[rewrite]]
matches = ["Colonapprox", "coloncolonapprox"]
item = ["colon", "double, approximately equal to"]

[[rewrite]]
matches = "colonsim"
item = ["colon", "similar to"]

[[rewrite]]
matches = ["Colonsim", "coloncolonsim"]
item = ["colon", "double, similar to"]

[[rewrite]]
matches = "colonminus"
item = ["colon", "minus"]

[[rewrite]]
render_contains = [
   '($\MTOOLScoloneq$)',
   '($\coloneq$)'
]
item = ["colon", "minus"]

[[rewrite]]
matches = "coloncolonminus"
item = ["colon", "double, minus"]

[[rewrite]]
render_contains = [
   '($\Coloneq$)',
   '($\MTOOLSColoneq$)'
]
item = ["colon", "double, minus"]

[[rewrite]]
matches = ["colonequals", "coloneqq", "defines"]
item = ["colon", "equals"]

[[rewrite]]
render_contains = [
   '($\ABXcoloneq$)',
   '(\FDSYMcoloneq)',
   '(\MNScoloneq)',
   '(\STIXcoloneq)'
]
item = ["colon", "equals"]

[[rewrite]]
matches = ["coloncolonequals", "Coloneqq"]
item = ["colon", "double, equals"]

[[rewrite]]
render_contains = '(\STIXColoneq)'
item = ["colon", "double, equals"]

[[rewrite]]
render_contains = ['\STIXthreedotcolon', '\TEUBthreedots']
item = ["colon", "three dot"]

[[rewrite]]
render_contains = '\TEUBfourdots'
item = ["colon", "four dot"]

[[rewrite]]
matches = "typecolon"
item = ["colon", "hollow"]

[[rewrite]]
matches = "vcentcolon"
item = ["colon", "vertically centered"]

# --------------------------- multiplication ---------------------------

[[rewrite]]
render_contains = '(\tiTimesOutline)'
item = ["times", "hollow"]

[[rewrite]]
render_contains = [
   '(\faTimes)',
   '(\tiTimes)',
   '(\twemoji{2715})',
   '(\usym{2715})',
   '(\twemoji{2716})',
   '(\usym{2716})',
   '(\MVMultiplication)'
]
item = ["times", "decorative"]

[[rewrite]]
compare_lowercase = true
top_matches = [
   "times",
   "multiply",
   "multiplication X",
   "opentimes",
   "texttimes",
   "vartimes"
]
item = "times"

# This rule should precede the following one.
[[rewrite]]
render_contains = ['(\FDSYMbtimes)', '(\STIXbtimes)']
item = ["times", "closed bottom"]

[[rewrite]]
matches = "timesbar"
item = ["times", "underbar"]

[[rewrite]]
matches = "bigtimes"
item = ["times", "big"]

[[rewrite]]
matches = ["dottimes", "dotted times"]
item = ["times", "dotted"]

[[rewrite]]
matches = ["lftimes", "ltimesblack"]
item = ["times", "filled left"]

[[rewrite]]
matches = ["rftimes", "rtimesblack"]
item = ["times", "filled right"]

[[rewrite]]
matches = "udtimes"
item = ["times", "closed top and bottom"]

[[rewrite]]
matches = "lrtimes"
item = ["times", "closed left and right"]

[[rewrite]]
matches = "dtimes"
item = ["times", "closed bottom"]

[[rewrite]]
matches = "ltimes"
item = ["times", "closed left"]

[[rewrite]]
matches = ["ttimes", "utimes"]
item = ["times", "closed top"]

[[rewrite]]
matches = "rtimes"
item = ["times", "closed right"]

[[rewrite]]
matches = "otimeslhrim"
item = ["times", "half rim, left"]

[[rewrite]]
matches = "otimesrhrim"
item = ["times", "half rim, right"]

[[rewrite]]
matches = "vectimes"
item = ["times", "vector"]

[[rewrite]]
matches = "doublestar"
item = ["times", "double"]

# ------------------------------ division ------------------------------

[[rewrite]]
render_contains = [
   '(\faDivide)',
   '(\tiDivide)',
   '{2797}'
]
item = ["division", "dingbat"]

[[rewrite]]
render_contains = '(\tiDivideOutline)'
item = ["division", "hollow"]

[[rewrite]]
matches = [
   "div",
   "divide",
   "division",
   "Divides",
   "divslash",
   "smalldivslash",
   "textdiv",
   "MVDivision"
]
item = "division"

[[rewrite]]
matches = ["slashdiv", "backslashdiv"]
item = ["division", "diagonal"]

[[rewrite]]
matches = "vertdiv"
item = ["division", "vertical"]

[[rewrite]]
matches = "longdivision"
item = ["division", "long"]

[[rewrite]]
matches = ["divdot", "dotdiv"]
item = ["division", "single dot"]

[[rewrite]]
matches = "divideontimes"
item = ["division", "times"]

# ------------- check boxes, check marks, and cross marks --------------

# ... check boxes ...

# The check-box rules should appear before the check-mark rules.
# These rules should also precede the "circled symbols" rules.

[[rewrite]]
matches = ["ballot box", "HollowBox"]
item = ["check box", "empty"]

[[rewrite]]
matches = [
   "ballot box with check",
   "ballot box with bold check",
   "CheckedBox",
   "Checkedbox",
   "faCheckSquare[regular]"
]
item = ["check box", "checked"]

[[rewrite]]
render_contains = [
   "tiInputChecked",
   "tiInputCheckedOutline"
]
item = ["check box", "checked"]

[[rewrite]]
matches = "faCheckCircle[regular]"
item = ["check box", "checked, circular"]

[[rewrite]]
matches = "faCheckCircle"
item = ["check box", "checked, circular, filled"]

[[rewrite]]
matches = "faCheckSquare"
item = ["check box", "checked, filled"]

[[rewrite]]
render_contains = '\twemoji{2611}'
item = ["check box", "checked, blue"]

[[rewrite]]
render_contains = '\twemoji{2705}'
item = ["check box", "checked, green"]

[[rewrite]]
regex = '^ballot box with.*x$'
item = ["check box", "crossed"]

[[rewrite]]
matches = ["XBox", "CrossedBox", "Crossedbox"]
item = ["check box", "crossed"]

[[rewrite]]
matches = "faTimesCircle"
item = ["check box", "crossed, circular, filled"]

[[rewrite]]
matches = "faTimesCircle[regular]"
item = ["check box", "crossed, circular"]

[[rewrite]]
render_contains = '\twemoji{274e}'
item = ["check box", "crossed, green"]

# ... check marks ...

[[rewrite]]
matches = [
   "check marks",
   "ballot bold script x",
   "ballot script x",
   "ballot X",
   "ballotx"
]
item = "check mark"

[[rewrite]]
matches = "faCheckDouble"
item = ["check mark", "double"]

[[rewrite]]
render_contains = [
   '\tiTickOutline',
   '\usym{2705}'
]
item = ["check mark", "hollow"]

[[rewrite]]
matches = ["ballotcheck", "faCheck"]
item = "check mark"

[[rewrite]]
compare_lowercase = true
regex = '^(check|tick).*(mark|box)'
not_matches = "check marks"
item = "check mark"

[[rewrite]]
compare_lowercase = true
contains = "checked"
item = "check mark"

[[rewrite]]
matches = [
   "heavy check mark",
   "light check mark"
]
item = "check mark"

# ... cross marks ...

# These rules must precede the "cross (crucifix)" rules.

[[rewrite]]
render_contains = '\twemoji{274c}'
item = ["cross mark", "red"]

[[rewrite]]
render_contains = [
   '(\ifsCross)',
   '(\textifsymbol[ifgeo]{14})',
   '(\ARUNEcross)'
]
item = "cross mark"

[[rewrite]]
matches = [
   "BigCross",
   "Xs",
   "SmallCross",
   "heavy ballot X",
   "cancellation x"
]
item = "cross mark"

[[rewrite]]
regex = '^(double|triple)cross$'
item = ["cross mark", '\1']

[[rewrite]]
prefix = "XSolid"
item = "cross mark"

[[rewrite]]
matches = "negative squared cross mark"
item = ["cross mark", "white on black"]

# --------------------------- glottal stops ----------------------------

[[rewrite]]
prefix = "textglotstop"
item = "glottal stop"

[[rewrite]]
matches = ["invglotstop", "textinvglotstop"]
item = ["glottal stop", "inverted"]

[[rewrite]]
matches = ["revglotstop", "textrevglotstop"]
item = ["glottal stop", "reversed"]

[[rewrite]]
matches = "textbarglotstop"
item = ["glottal stop", "barred"]

[[rewrite]]
matches = "textbarrevglotstop"
item = ["glottal stop", "reversed, barred"]

[[rewrite]]
matches = "textcrinvglotstop"
item = ["glottal stop", "inverted, barred"]

[[rewrite]]
matches = "textctinvglotstop"
item = ["glottal stop", "inverted, with tail"]

[[rewrite]]
matches = "textraiseglotstop"
item = ["glottal stop", "raised"]

[[rewrite]]
matches = "textturnglotstop"
item = ["glottal stop", "inverted, reversed"]

# --------------------------- food and drink ---------------------------

# ... food ...

[[rewrite]]
matches = "aubergine"
item = "eggplant"

[[rewrite]]
prefix = "curry"
item = "curry"

[[rewrite]]
matches = "cooked rice"
item = "rice bowl"

[[rewrite]]
matches = ["ear of rice",  "sheaf of rice"]
item = "rice sheaf"

[[rewrite]]
contains = "ice cream"
item = "ice cream"

[[rewrite]]
matches = "cheese wedge"
item = "cheese"

[[rewrite]]
contains = "pizza"
item = "pizza"

# This rule should precede the following one.
# (Despite being called "steaming bowl", no steam lines are drawn.)
[[rewrite]]
render_contains = '\twemoji{1f35c}'
item = ["bowl", "with chopsticks"]

[[rewrite]]
matches = ["steaming", "steaming bowl"]
item = ["bowl", "steaming"]

# ... drink ...

[[rewrite]]
matches = ["coffee", "Coffeecup"]
item = ["cup", "coffee"]

[[rewrite]]
matches = "cup with straw"
item = ["cup", "with straw"]

[[rewrite]]
regex = '^wine\s+(.+)$'
not_contains = "bottle"
item = "wine"

[[rewrite]]
matches = "bottle with popping cork"
item = ["bottle", "champagne"]

[[rewrite]]
regex = '^(.*)\s+bottle$'
item = ["bottle", '\1']

[[rewrite]]
matches = "beer"
item = "beer mug"

[[rewrite]]
matches = "clinking beer mugs"
item = ["beer mug", "two, clinking"]

[[rewrite]]
matches = "clinking glasses"
item = ["glasses", "clinking"]

[[rewrite]]
matches = "cocktail glass"
item = "cocktail"

[[rewrite]]
matches = "glass of milk"
item = "glass"

# ------------------ smiles and frowns (mathematical) ------------------

[[rewrite]]
matches = ["smile symbols", "frown symbols"]
item = "smiles and frowns"

[[rewrite]]
regex = '^(?:small)?(smile|frown)$'
item = "smiles and frowns"

[[rewrite]]
matches = ["scoh", "sincoh"]
item = "smiles and frowns"

[[rewrite]]
matches = [
   "smile (bottom) and frowm (top)",   # sic
   "frown (bottom) and smile (top)",
   "smilefrown",
   "frownsmile",
   "sqsmilefrown",
   "sqfrownsmile",
   "coh",
   "incoh"
]
item = ["smiles and frowns", "both"]

[[rewrite]]
matches = [
   "nfrownsmile",
   "nsmilefrown",
   "nsqfrownsmile",
   "nsqsmilefrown"
]
item = ["smiles and frowns", "both, negated"]

[[rewrite]]
matches = [
   "frowneqsmile",
   "frownsmileeq",
   "smileeqfrown",
   "smilefrowneq",
   "sqfrowneqsmile",
   "sqsmileeqfrown"
]
item = ["smiles and frowns", "both, equals"]

[[rewrite]]
matches = [
   "nfrowneqsmile",
   "nfrownsmileeq",
   "nsmileeqfrown",
   "nsmilefrowneq",
   "nsqfrowneqsmile",
   "nsqsmileeqfrown"
]
item = ["smiles and frowns", "both, equals, negated"]

[[rewrite]]
regex = '^(?:sq)?(smile|frown)$'
item = "smiles and frowns"

[[rewrite]]
regex = '^n(?:sq)?(smile|frown)$'
item = ["smiles and frowns", "negated"]

[[rewrite]]
regex = '^(?:sq)?(smile|frown)eq$'
item = ["smiles and frowns", "equals"]

[[rewrite]]
regex = '^n(?:sq)?(smile|frown)eq$'
item = ["smiles and frowns", "equals, negated"]

[[rewrite]]
regex = '^(?:sq)?eq(smile|frown)$'
item = ["smiles and frowns", "equals"]

[[rewrite]]
regex = '^n(?:sq)?eq(smile|frown)$'
item = ["smiles and frowns", "equals, negated"]

[[rewrite]]
regex = '^(?:sq)?double(smile|frown)$'
item = ["smiles and frowns", "double"]

[[rewrite]]
regex = '^n(?:sq)?double(smile|frown)$'
item = ["smiles and frowns", "double, negated"]

[[rewrite]]
regex = '^(?:sq)?double(smile|frown)eq$'
item = ["smiles and frowns", "double, equals"]

[[rewrite]]
regex = '^n(?:sq)?double(smile|frown)eq$'
item = ["smiles and frowns", "double, equals, negated"]

[[rewrite]]
regex = '^(?:sq)?triple(smile|frown)$'
item = ["smiles and frowns", "triple"]

[[rewrite]]
regex = '^n(?:sq)?triple(smile|frown)$'
item = ["smiles and frowns", "triple, negated"]

# ---------------------------- equivalences ----------------------------

[[rewrite]]
matches = [
   "Equiv",
   "equiv",
   "Equivalence",
   "Congruent"
]
item = "equivalence"

[[rewrite]]
matches = "equivclosed"
item = ["equivalence", "closed"]

[[rewrite]]
matches = ["equivDD", "dotequiv"]
item = ["equivalence", "with dots"]

[[rewrite]]
matches = [
   "equivVert",
   "equivVvert",
   "NotCongruent"
]
item = ["equivalence", "with vertical lines"]

[[rewrite]]
matches = "eqvparsl"
item = ["equivalence", "parallel slanted"]

[[rewrite]]
matches = [
   "nequiv",
   "notequiv",
   "not classical equivalence"
]
item = ["equivalence", "negated"]

[[rewrite]]
matches = "nequivclosed"
item = ["equivalence", "closed, negated"]

[[rewrite]]
regex = '^(.+?)\s+equivalence'
item = ["equivalence", '\1']

# --------------------- entailment and implication ---------------------

# This section should appear after "equivalences".

[[rewrite]]
matches = "entailment"
item = "entailment"

[[rewrite]]
regex = '^(.+?)\s+entailment'
item = ["entailment", '\1']

[[rewrite]]
matches = "implication"
item = "implication"

[[rewrite]]
regex = '^(.+?)\s+implication'
item = ["implication", '\1']

# ----------------------------- empty sets -----------------------------

[[rewrite]]
matches = [
   "empty/null set",
   "empty set",
   "emptyset",
   "varnothing"
]
item = "empty set"

[[rewrite]]
matches = "emptysetoarr"
item = ["empty set", "with right arrow"]

[[rewrite]]
matches = "emptysetoarrl"
item = ["empty set", "with left arrow"]

[[rewrite]]
matches = "emptysetobar"
item = ["empty set", "with bar"]

[[rewrite]]
matches = "emptysetocirc"
item = ["empty set", "with circle"]

[[rewrite]]
matches = "revemptyset"
item = ["empty set", "reversed"]

# ------------------------- exclamation points -------------------------

[[rewrite]]
matches = [
   "red exclamation mark",
   "heavy exclamation mark",
   "heavy exclamation mark ornament",
   "white exclamation mark",
   "white exclamation mark ornament"
]
item = "exclamation point"

[[rewrite]]
matches = ["Exclam", "double exclamation mark", "DCc"]
item = ["exclamation point", "double"]

[[rewrite]]
matches = "exclamation question mark"
item = ["exclamation point", "and question mark"]

[[rewrite]]
matches = "textexclamdown"
item = ["exclamation point", "upside-down"]

# --------------------------- question marks ---------------------------

[[rewrite]]
matches = [
   "black question mark ornament",
   "white question mark ornament",
   "white question mark",
   "faQuestion"
]
item = "question mark"

[[rewrite]]
matches = "Question"
item = ["question mark", "double"]

[[rewrite]]
matches = "textquestiondown"
item = ["question mark", "upside down"]

# -------------------------- quotation marks ---------------------------

[[rewrite]]
matches = "quotesinglbase"
item = ["quotation marks", "single right base"]

[[rewrite]]
matches = "quotedblbase"
item = ["quotation marks", "double right base"]

[[rewrite]]
matches = ["textquotesingle", "single quote"]
item = ["quotation marks", "straight single"]

[[rewrite]]
matches = ["textquotedbl", "double quote"]
item = ["quotation marks", "straight double"]

[[rewrite]]
matches = "triple quote"
item = ["quotation marks", "straight triple"]

[[rewrite]]
matches = "textquotestraightbase"
item = ["quotation marks", "straight single base"]

[[rewrite]]
matches = "textquotestraightdblbase"
item = ["quotation marks", "straight double base"]

[[rewrite]]
regex = '^textquotedbl(left|right)$'
item = ["quotation marks", 'double \1']

[[rewrite]]
regex = '^textquote(left|right)$'
item = ["quotation marks", 'single \1']

[[rewrite]]
regex = '^faQuote(Left|Right)$'
lowercase_item = true
item = ["quotation marks", 'decorative double \1']

[[rewrite]]
matches = [
   "heavy double comma quotation mark ornament",
   "right quotation marks"
]
item = ["quotation marks", "decorative double right"]

[[rewrite]]
matches = [
   "heavy double turned comma quotation mark ornament",
   "left quotation marks"
]
item = ["quotation marks", "decorative double left"]

[[rewrite]]
matches = "heavyqtleft"
item = ["quotation marks", "decorative double left, inverted"]

[[rewrite]]
matches = "heavyqtright"
item = ["quotation marks", "decorative double right, inverted"]

[[rewrite]]
matches = "heavy low double comma quotation mark ornament"
item = ["quotation marks", "decorative double left base"]

[[rewrite]]
matches = "heavy low single comma quotation mark ornament"
item = ["quotation marks", "decorative single left base"]

[[rewrite]]
matches = "heavy single comma quotation mark ornament"
item = ["quotation marks", "decorative right"]

[[rewrite]]
matches = "heavy single turned comma quotation mark ornament"
item = ["quotation marks", "decorative left"]

[[rewrite]]
matches = "back quote (grave)"
item = ["quotation marks", "single back"]

[[rewrite]]
regex = '^guillemet(left|right)$'
item = ["guillemet", '\1']

[[rewrite]]
regex = '^guilsingl(left|right)$'
item = ["guillemet", '\1 single']

[[rewrite]]
regex = '^heavy (left|right)-pointing angle quotation mark ornament$'
item = ["guillemet", 'decorative \1 single']

# ------------------------------- leaves -------------------------------

[[rewrite]]
matches = "leaf fluttering in wind"
item = ["leaf", "fluttering"]

[[rewrite]]
matches = "fallen leaf"
item = ["leaf", "falling"]

[[rewrite]]
contains = "maple leaf"
item = ["leaf", "maple"]

[[rewrite]]
regex = '^adf.*leaf'
item = ["leaf", "fleuron"]

[[rewrite]]
matches = ["textleaf", "faLeaf", "tiLeaf", "leaves", "textleaf"]
item = "leaf"

# -------------------------- dotless i and j ---------------------------

[[rewrite]]
render_contains = '(\i)'
item = ["i", "dotless"]

[[rewrite]]
render_contains = [
   '($\imath$)',
   '(\BSKimath)',
   '(\STIXimath)'
]
item = ["i", "dotless, math mode"]

[[rewrite]]
render_contains = '(\j)'
item = ["j", "dotless"]

[[rewrite]]
render_contains = [
   '($\jmath$)',
   '(\BSKjmath)',
   '(\STIXjmath)'
]
item = ["j", "dotless, math mode"]

# --------------------------- legal symbols ----------------------------

[[rewrite]]
compare_lowercase = true
contains = "copyright"
item = ["legal symbols", "copyright"]

[[rewrite]]
matches = "ccCopy"
item = ["legal symbols", "copyright"]

[[rewrite]]
contains = "copyleft"
item = ["legal symbols", "copyleft"]

[[rewrite]]
prefix = ["textregistered", "faRegistered", "registered"]
item = ["legal symbols", "registered trademark"]

[[rewrite]]
matches = [
   "trademark",
   "texttrademark",
   "faTrademark",
   "trade mark"
]
item = ["legal symbols", "trademark"]

[[rewrite]]
matches = "textservicemark"
item = ["legal symbols", "service mark"]

[[rewrite]]
matches = "textcircledP"
item = ["legal symbols", "phonographic copyright"]

[[rewrite]]
matches = ["ccby", "faCreativeCommonsBy"]
item = ["legal symbols", "BY"]

[[rewrite]]
matches = ["ccnc", "faCreativeCommonsNc"]
item = ["legal symbols", "NonCommercial"]

[[rewrite]]
matches = ["ccnd", "faCreativeCommonsNd"]
item = ["legal symbols", "NoDerivatives"]

[[rewrite]]
matches = ["ccsa", "faCreativeCommonsSa"]
item = ["legal symbols", "ShareAlike"]

[[rewrite]]
matches = "ccbyncnd"
item = ["legal symbols", "CC BY-NC-ND"]

[[rewrite]]
prefix = ["ccPublicDomain", "faCreativeCommonsPd"]
item = ["legal symbols", "public domain"]

[[rewrite]]
matches = ["cc", "ccLogo", "faCreativeCommons"]
item = ["legal symbols", "CC"]

[[rewrite]]
matches = ["ccZero", "faCreativeCommonsZero"]
item = ["legal symbols", "CC0"]

[[rewrite]]
matches = ["ccNonCommercialEU", "faCreativeCommonsNcEu"]
item = ["legal symbols", "NonCommercial, euro"]

[[rewrite]]
matches = ["ccNonCommercialJP", "faCreativeCommonsNcJp"]
item = ["legal symbols", "NonCommercial, yen"]

[[rewrite]]
regex = '^faCreativeCommons(Remix|Sampling|Share)$'
item = ["legal symbols", '\1']

[[rewrite]]
matches = "faCreativeCommonsSamplingPlus"
item = ["legal symbols", "Sampling Plus"]

# This rule should appear at the end of this section.
[[rewrite]]
regex = '^cc([A-Z].+)$'
item = ["legal symbols", '\1']

# -------------------------- physics symbols ---------------------------

[[rewrite]]
matches = ["Gluon", "gluon", "gluons"]
item = "gluon"

[[rewrite]]
regex = '^([A-Z])(boson|meson)(.+)$'
item = ['\2', '\1 \3']

[[rewrite]]
matches = "Wboson"
item = ["boson", "W"]

[[rewrite]]
regex = '^(eta|phi|Upsilon)meson$'
item = ["meson", '\1']

[[rewrite]]
regex = '^(eta|phi|rho)meson(.+)$'
item = ["meson", '\1, \2']

[[rewrite]]
regex = '^(quark|antiquark)([a-z])$'
item = ['\1', '\2']

[[rewrite]]
regex = '^taulepton(plus|minus)$'
item = ["tau lepton", '\1']

[[rewrite]]
regex = '^(Kaon|pion)(plus|minus|null)$'
lowercase_item = true
item = ['\1', '\2']

[[rewrite]]
matches = "Jpsimeson"
item = ["meson", "J/psi"]

[[rewrite]]
regex = '^(Higgs|Z)boson$'
item = ["boson", '\1']

[[rewrite]]
compare_lowercase = true
regex = '^(anti\w+)\*?$'
word = '\1'
lowercase_word = true

# This rule should appear before the preceding rule.  This is a two-rule
# hack to convert, e.g., "\fermiDistrib" to "Fermi distribution",
# capitalized as such.
[[rewrite]]
regex = '^(.+)Distrib$'
capitalize_word = true
word = '\1 distribution'
continue = true

[[rewrite]]
regex = '^(.+?)\s+Distribution$'
item = '\1 distribution'

[[rewrite]]
regex = '^(error|experimental|external|internal)sym$'
item = '\1'

[[rewrite]]
regex = '^(ionic|metal|h)bond$'
item = ["bond, chemical", '\1']

[[rewrite]]
regex = '^spin(up|down)$'
item = ["spin", '\1']

[[rewrite]]
regex = '^(svr|var)?photons?$'
item = "photon"

[[rewrite]]
matches = "bond"
item = "bond, chemical"

[[rewrite]]
matches = "covbond"
item = ["bond, chemical", "covalent"]

[[rewrite]]
regex = '^(.+)covbond$'
item = ["bond, chemical", 'covalent, \1']

[[rewrite]]
matches = ["bigbosonloop", "smallbosonloop"]
item = ["boson", "loop"]

[[rewrite]]
regex = '^(?:big|small)bosonloop([A-Z])$'
item = ["boson", 'loop, \1']

# I don't know what all these types of fermions are so I'm lumping
# them all under "fermion".
[[rewrite]]
regex = '^(h|sh|w|wh)fermion$'
item = "fermion"

# This rule should appear last in this section.
[[rewrite]]
matches = [
   "adsorbate",
   "adsorbent",
   "anyon",
   "atom",
   "boson",
   "conductivity",
   "dipole",
   "electron",
   "exciton",
   "fermion",
   "graphene",
   "graviton",
   "hole",
   "interaction",
   "ion",
   "magnon",
   "method",
   "muon",
   "neutrino",
   "neutron",
   "nucleus",
   "orbit",
   "phonon",
   "plasmon",
   "polariton",
   "polaron",
   "positron",
   "protein",
   "proton",
   "quadrupole",
   "quark",
   "reference",
   "resistivity",
   "solid",
   "spin",
   "surface",
   "tachyon",
   "water"
]
item = '\1'

# --------------------- computers and peripherals ----------------------

[[rewrite]]
matches = [
   "ComputerMouse",
   "computer mouse",
   "one button mouse",
   "two button mouse",
   "three button mouse"
]
item = ["mouse", "computer"]

[[rewrite]]
render_contains = '(\faMouse)'
item = ["mouse", "computer"]

[[rewrite]]
matches = "mouse pointer"
item = ["mouse", "pointer"]

[[rewrite]]
matches = [
   "personal computer",
   "old personal computer",
   "desktop computer",
   "laptop",
   "tiDeviceDesktop",
   "tiDeviceLaptop"
]
item = "computer"

[[rewrite]]
matches = "three networked computers"
item = ["computer", "multiple, networked"]

[[rewrite]]
matches = "tiDeviceTablet"
item = "tablet"

# -------------------------- sports and games --------------------------

# This rule should precede the following one.
[[rewrite]]
render_contains = ['(\Football)', '(\faFutbol)']
item = "soccer ball"

[[rewrite]]
matches = ["american football", "football"]
item = ["football", "American"]

[[rewrite]]
matches = "field hockey"
item = 'field hockey stick and ball'

[[rewrite]]
matches = "ice hockey"
item = 'ice hockey stick and puck'

[[rewrite]]
matches = "cricket game"
item = "cricket bat and ball"

[[rewrite]]
prefix = "table tennis"
item = "ping pong"

[[rewrite]]
matches = "tennis"
item = "tennis ball"

[[rewrite]]
matches = "pool 8 ball"
item = "8 ball"

[[rewrite]]
matches = ["Cube", "epsdice", "fcdice"]
item = "dice"

[[rewrite]]
render_contains = "fcData"
item = ["dice", "3D"]

[[rewrite]]
prefix = "die face-"
item = ["dice", "3D"]

[[rewrite]]
matches = "game die"
item = ["dice", "3D"]

[[rewrite]]
matches = "flower playing cards"
item = ["playing cards", "flower"]

[[rewrite]]
regex = 'playing (handball|water polo)$'
item = '\1'

[[rewrite]]
regex = '^(runn|snowboard|ski)er$'
item = '\1ing'

[[rewrite]]
contains = ["bicyclist", "biking", "cycling"]
item = "cycling"
not_contains = ["recycling", "Recycling"]

[[rewrite]]
contains = ["rowboat", "rowing boat"]
item = "rowing"

# ----------------------------- plus signs -----------------------------

# This rule should appear early in this section.
[[rewrite]]
render_contains = [
   '(\Plus)',
   '(\faPlus)',
   '(\tiPlus)',
   '(\twemoji{2795})',
   '(\usym{2795})'
]
item = ["plus", "bold"]

[[rewrite]]
matches = [
   "plusses",
   "bigplus",
   "MVPlus",
   "tplus"
]
item = "plus"

[[rewrite]]
matches = ["pluscirc", "circplus", "ringplus"]
item = ["plus", "with circle"]

[[rewrite]]
matches = ["plusdot", "dotplus", "dotted plus"]
item = ["plus", "with dot"]

[[rewrite]]
matches = ["pluseqq", "eqqplus"]
item = ["plus", "with equal sign"]

[[rewrite]]
matches = "plushat"
item = ["plus", "with hat"]

[[rewrite]]
matches = ["plussim", "simplus"]
item = ["plus", "with similarity sign"]

[[rewrite]]
matches = "plustrif"
item = ["plus", "with triangle"]

[[rewrite]]
matches = "plussubtwo"
item = ["plus", "with subscripted 2"]

[[rewrite]]
matches = ["PlusCenterOpen", "PlusThinCenterOpen"]
item = ["plus", "open center"]

[[rewrite]]
matches = "PlusOutline"
item = ["plus", "outlined"]

[[rewrite]]
render_contains = "tiPlusOutline"
item = ["plus", "hollow"]

[[rewrite]]
matches = "doubleplus"
item = ["plus", "double"]

[[rewrite]]
matches = "tripleplus"
item = ["plus", "triple"]

# ----------------------------- pitchforks -----------------------------

# This rule should appear early in this section.
[[rewrite]]
matches = [
   "pitchfork",
   "pitchforks",
   "downpitchfork",
   "leftpitchfork",
   "rightpitchfork",
   "uppitchfork",
   "hmleftpitchfork",
   "hmrightpitchfork",
   "nepitchfork",
   "nwpitchfork",
   "sepitchfork",
   "swpitchfork"
]
item = "pitchfork"

[[rewrite]]
regex = '^n.*pitchfork$'
item = ["pitchfork", "negated"]

[[rewrite]]
matches = ["forksnot", "forkv"]
item = ["pitchfork", "truncated handle"]

[[rewrite]]
matches = ["forks", "nforksnot"]
item = ["pitchfork", "truncated handle, negated"]

[[rewrite]]
matches = "topfork"
item = ["pitchfork", "bar handle"]

[[rewrite]]
regex = '^x.*pitchfork'
item = ["pitchfork", "extensible"]

# ----------------------------- calendars ------------------------------

[[rewrite]]
matches = [
   "spiral calendar",
   "spiral calendar pad",
   "tear-off calendar",
   "calendar symbols"
]
item = "calendar"

[[rewrite]]
regex = '^faCalendar(Day|Week)'
lowercase_item = true
item = ["calendar", 'marked \1']

[[rewrite]]
regex = '^faCalendar(Check|Minus|Plus|Times)'
lowercase_item = true
item = ["calendar", 'with \1']

# This rule should follow all other faCalendar and tiCalendar rules.
[[rewrite]]
prefix = ["faCalendar", "tiCalendar"]
item = "calendar"

# ------------------------------ daggers -------------------------------

[[rewrite]]
matches = [
   "dag",
   "dagger",
   "textdagger",
   "single dagger"
]
item = "dagger"

[[rewrite]]
matches = [
   "ddag",
   "ddagger",
   "textdaggerdbl",
   "double vertical dagger"
]
item = ["dagger", "double vertical"]

[[rewrite]]
matches = "double horizontal dagger"
item = ["dagger", "double horizontal"]

[[rewrite]]
matches = "double horizontal and vertical dagger"
item = ["dagger", "double horizontal and vertical"]

[[rewrite]]
matches = "dagger knife"
item = "dagger"

# ------------------------------- skulls -------------------------------

# This rule should precede the following one.
[[rewrite]]
render_contains = [
   '(\AREVskull)',
   '(\SKULLskull)'
]
item = ["skull", "and crossbones"]

[[rewrite]]
matches = ["skulls", "skull", "bigskull"]
item = "skull"

[[rewrite]]
matches = [
   "skull and crossbones",
   "black skull and crossbones"
]
item = ["skull", "and crossbones"]

# ------------------------------ playing cards ------------------------------

# The idea in this section is to format the trump-* cards in numerical, as
# opposed to alphabetical, order.

[[rewrite]]
regex = '^playing card trump-(\d)$'
item = ["playing cards", 'trump 0\1']
word = 'trump \1'

[[rewrite]]
regex = '^playing card trump-(\d{2,})$'
item = ["playing cards", 'trump \1']

# This rule should go last in this section.
[[rewrite]]
regex = '^playing card\s+(.+)$'
item = ["playing cards", '\1']

# ------------------------------- card suits --------------------------------

[[rewrite]]
matches = "card suits"
item = "playing card suits"

[[rewrite]]
regex = 'var(diamond|heart)'
item = ["playing card suits", '\1, filled']

[[rewrite]]
regex = 'var(club|spade)'
item = ["playing card suits", '\1, hollow']

[[rewrite]]
regex = 'black.*(diamond|heart).*suit'
item = ["playing card suits", '\1, filled']

[[rewrite]]
regex = 'white.*(club|spade).*suit'
item = ["playing card suits", '\1, hollow']

[[rewrite]]
matches = "ETX"
item = ["playing card suits", "heart, filled"]

[[rewrite]]
matches = "EOT"
item = ["playing card suits", "diamond, filled"]

[[rewrite]]
matches = "ENQ"
item = ["playing card suits", "club"]

[[rewrite]]
matches = "ACK"
item = ["playing card suits", "spade"]

# This rule should appear late in this section.
[[rewrite]]
regex = '(diamond|heart|club|spade).*suit'
item = ["playing card suits", '\1']

# --------------------------------- hearts ----------------------------------

# This rule should appear early in this section.
[[rewrite]]
render_contains = [
   '(\AREVvarheart)',
   '(\faHeart)',
   '(\tiHeart)',
   '(\tiHeartFullOutline)',
   '(\usym{1F5A4})',
   '(\usym{2764})'
]
item = ["heart", "filled"]

# This rule should appear early in this section.
[[rewrite]]
render_contains = '(\tiHeartHalfOutline)'
item = ["heart", "half filled"]

# This rule should appear early in this section.
[[rewrite]]
render_contains = [
   '(\usym{1F499})',
   '(\usym{1F49A})',
   '(\usym{1F49B})',
   '(\usym{1F49C})'
]
item = ["heart", "halftoned"]

# This rule should appear early in this section.
[[rewrite]]
render_contains = '(\bccoeur)'
item = ["heart", "red"]

[[rewrite]]
matches = [
   "Heart",
   "hearts"
]
item = "heart"

[[rewrite]]
regex = '^(black|blue|brown|green|orange|purple|red|white|yellow)\s+heart$'
item = ["heart", '\1']

[[rewrite]]
regex = '^(anatomical|beating|floral|growing|sparkling)\s+heart$'
item = ["heart", '\1']

[[rewrite]]
matches = "heart decoration"
item = ["heart", "framed"]

[[rewrite]]
matches = ["heart exclamation", "heavy heart exclamation mark ornament"]
item = ["heart", "exclamation point"]

[[rewrite]]
matches = ["heart, broken", "broken heart"]
item = ["heart", "broken"]

[[rewrite]]
matches = "revolving hearts"
item = ["heart", "multiple, revolving"]

[[rewrite]]
matches = "two hearts"
item = ["heart", "multiple"]

[[rewrite]]
regex = '^heart\s+(with\s+.*)$'
item = ["heart", '\1']

[[rewrite]]
matches = "rotated floral heart bullet"
item = ["heart", "rotated floral"]

[[rewrite]]
matches = "rotated heavy black heart bullet"
item = ["heart", "rotated"]

# ---------------------------------- suns -----------------------------------

[[rewrite]]
matches = ["astrosun", "Sun"]
not_render_contains = '(\ifsSun)'
item = ["sun", "astronomical"]

[[rewrite]]
render_contains = [
   '($\ABXSun$)',
   '(\STARSun)',
   '(\Sun)',
   '(\usym{2609})'
]
item = ["sun", "astronomical"]

[[rewrite]]
matches = [
   "suns",
   "sunny",
   "white sun",
   "white sun with rays",
   "SI"
]
item = "sun"

[[rewrite]]
matches = [
   "sun behind cloud",
   "sun behind large cloud",
   "sun behind small cloud",
   "white sun behind cloud",
   "white sun with small cloud",
   "SunCloud"
]
item = ["sun", "behind cloud"]

[[rewrite]]
matches = "HalfSun"
item = ["sun", "half"]

[[rewrite]]
matches = "NoSun"
item = ["sun", "eclipsed"]

[[rewrite]]
matches = "white sun behind cloud with rain"
item = ["sun", "behind cloud with rain"]

# ------------------------------- input types -------------------------------

[[rewrite]]
matches = ["input latin capital letters", "input latin uppercase"]
item = ["input type", "Latin uppercase"]

[[rewrite]]
matches = ["input latin small letters", "input latin lowercase"]
item = ["input type", "Latin lowercase"]

[[rewrite]]
render_contains = '\twemoji{1f524}'
item = ["input type", "Latin lowercase"]

[[rewrite]]
render_contains = '\usym{1F524}'
item = ["input type", "Latin uppercase"]

[[rewrite]]
matches = "input numbers"
item = ["input type", "numbers"]

[[rewrite]]
matches = "input symbols"
item = ["input type", "symbols"]

# --------------------------------- houses ----------------------------------

[[rewrite]]
matches = ["house", "house building"]
item = "house"

[[rewrite]]
prefix = "derelict house"
item = ["house", "derelict"]

[[rewrite]]
matches = ["houses", "house buildings"]
item = ["house", "multiple"]

[[rewrite]]
matches = "house damage"
item = ["house", "damaged"]

[[rewrite]]
matches = "house with garden"
item = ["house", "with garden"]

# ------------------------------ fax machines -------------------------------

[[rewrite]]
render_contains = "faFax"
item = "fax machine"

[[rewrite]]
matches = ["Faxmachine", "fax icon"]
item = "fax machine"

# ----------------------------- alpine symbols ------------------------------

[[rewrite]]
regex = '^(Half)?(Filled)?Hut$'
item = "hut"

[[rewrite]]
regex = '^(Var)?(Ice)?Mountain$'
item = 'mountain'

[[rewrite]]
matches = "Joch"
item = "yoke"

# -------------------------------- currency ---------------------------------

# euros

[[rewrite]]
matches = [
   "EUR",
   "EURcr",
   "EURdig",
   "EURhv",
   "euro",
   "Euro",
   "eurologo",
   "EURtm",
   "geneuro",
   "geneuronarrow",
   "geneurowide",
   "officialeuro",
   "texteuro",
   "wasyeuro"
]
item = "euro"

[[rewrite]]
matches = "bbeuro"
item = ["euro", "blackboard bold"]

# dollars

[[rewrite]]
matches = [
   "dollar",
   "EyesDollar",
   "textdollar",
   "textdollaroldstyle",
   "heavy dollar sign"
]
item = "dollar sign"

[[rewrite]]
render_contains = ['(\$)', '(\ltextdollar)']
item = "dollar sign"

[[rewrite]]
matches = "bbdollar"
item = ["dollar sign", "blackboard bold"]

[[rewrite]]
matches = "mathdollar"
item = ["dollar sign", "math mode"]
render = ""

# cents

[[rewrite]]
consider_all_entries = true
matches = ["textcent", "textcentoldstyle"]
item = "cent"

[[rewrite]]
matches = "mathcent"
item = ["cent", "math mode"]

# pound

[[rewrite]]
matches = ["pound", "pounds"]
item = "pound"

# This rule must precede the following one.
[[rewrite]]
matches = "mathsterling"
item = ["pound", "math mode"]

[[rewrite]]
contains = "sterling"
item = "pound"

# other currency

# China2e uses "\Pound" for pfund.
[[rewrite]]
matches = ["Pound", "Pfund"]
item = "pfund"

[[rewrite]]
matches = "Ecommerce"
item = "e-commerce"

[[rewrite]]
matches = "textcurrency"
item = "currency"

[[rewrite]]
matches = "textcolonmonetary"
item = "cedi"

[[rewrite]]
regex = '^(?:text)?(baht|dong|florin|guarani|lira|naira|peso|won|yen)$'
item = '\1'

# -------------------------------- envelopes --------------------------------

[[rewrite]]
matches = [
   "Envelope",
   "Letter",
   "Postbox",
   "back of envelope",
   "envelopes"
]
item = "envelope"

[[rewrite]]
matches = "red envelope"
item = ["envelope", "gift"]

[[rewrite]]
regex = '^envelope\s+(with.*)$'
item = ["envelope", '\1']

[[rewrite]]
matches = "flying envelope"
item = ["envelope", "incoming"]

[[rewrite]]
matches = ["incoming envelope", "open envelope"]
item = ["envelope", '\1']

[[rewrite]]
matches = "pen over stamped envelope"
item = ["envelope", "with pen"]

[[rewrite]]
matches = "Email"
item = ["envelope", "with lightning"]

[[rewrite]]
render_contains = '\twemoji{1f4e7}'
item = ["envelope", "with E"]

[[rewrite]]
render_contains = '\usym{1F4E7}'
item = ["envelope", "with at sign"]

[[rewrite]]
matches = "stamped envelope"
item = ["envelope", "stamped"]

# --------------------------------- primes ----------------------------------

[[rewrite]]
matches = ["prime", "primes"]
item = "prime"

[[rewrite]]
matches = ["dprime", "second"]
item = ["prime", "double"]

[[rewrite]]
matches = ["trprime", "third"]
item = ["prime", "triple"]

[[rewrite]]
matches = ["qprime", "fourth"]
item = ["prime", "quadruple"]

[[rewrite]]
matches = "backprime"
item = ["prime", "backward"]

[[rewrite]]
matches = "backdprime"
item = ["prime", "backward double"]

[[rewrite]]
matches = "backtrprime"
item = ["prime", "backward triple"]

[[rewrite]]
consider_all_entries = true
matches = ["angular minutes", "minutes, angular", "arcminutes"]
see = "prime"

[[rewrite]]
consider_all_entries = true
matches = ["angular seconds", "seconds, angular", "arcseconds"]
see = "prime, double"

# -------------------------- cleaning symbols --------------------------

# I learned what these mean from
# https://en.wikipedia.org/wiki/Laundry_symbol,
# https://www.ihateironing.com/blog/laundry-symbols-explained/, and other
# websites.

[[rewrite]]
matches = "CleaningA"
item = ["dry cleaning", "any solvent"]

[[rewrite]]
matches = "CleaningF"
item = ["dry cleaning", "hydrocarbon solvents (HCS) only"]

[[rewrite]]
matches = "CleaningFF"
item = ["dry cleaning", "hydrocarbon solvents (HCS) only, delicate"]

[[rewrite]]
matches = "CleaningP"
item = ["dry cleaning", "tetrachloroethylene (PCE) only"]

[[rewrite]]
matches = "CleaningPP"
item = ["dry cleaning", "tetrachloroethylene (PCE) only, delicate"]

[[rewrite]]
regex = '^At(Forty|Sixty|NinetyFive)$'
convert_numbers = true
item = ["machine wash", 'at or below \1C']
word = 'at or below \1\\textcelsius\\ '

[[rewrite]]
regex = '^Short(Thirty|Forty|Fifty|Sixty|NinetyFive)$'
convert_numbers = true
item = ["machine wash", 'at or below \1C, reduced spin speed']
word = 'at or below \1\\textcelsius, reduced spin speed '

[[rewrite]]
matches = "Handwash"
item = ["machine wash", "by hand"]

[[rewrite]]
matches = "WashCotton"
item = ["machine wash", "cotton"]

[[rewrite]]
matches = "WashSynthetics"
item = ["machine wash", "synthetics"]

[[rewrite]]
matches = "WashWool"
item = ["machine wash", "wool/silk"]

[[rewrite]]
matches = "Dontwash"
item = "do not wash"

[[rewrite]]
matches = "Bleech"
item = "bleach"

[[rewrite]]
matches = "NoBleech"
item = "do not bleach"

[[rewrite]]
matches = "IroningI"
item = ["ironing", "low temperature"]

[[rewrite]]
matches = "IroningII"
item = ["ironing", "medium temperature"]

[[rewrite]]
matches = "IroningIII"
item = ["ironing", "high temperature"]

[[rewrite]]
matches = "NoIroning"
item = "do not iron"

[[rewrite]]
matches = "NoChemicalCleaning"
item = "no dry cleaning"

[[rewrite]]
matches = "NoTumbler"
item = "do not tumble dry"

[[rewrite]]
matches = "Tumbler"
item = "tumble dry"

# ----------------------------- airplanes ------------------------------

[[rewrite]]
matches = [
   "airplane arrival",
   "airplane arriving",
   "airplane landing"
]
item = ["airplane", "landing"]

[[rewrite]]
matches = [
   "airplane departure",
   "airplane takeoff"
]
item = ["airplane", "taking off"]

[[rewrite]]
matches = "airplane, slashed"
item = ["airplane", "slashed"]

[[rewrite]]
matches = "paper airplane"
item = ["airplane", "paper"]

[[rewrite]]
matches = [
   "up-pointing military airplane",
   "fighter jet"
]
item = ["airplane", "military"]

[[rewrite]]
matches = [
   "airplane overhead",
   "airplanes",
   "Plane",
   "plane",
   "planes",
   "small airplane",
   "northeast-pointing airplane",
   "up-pointing airplane",
   "up-pointing small airplane"
]
item = "airplane"

# --------------------------- keyboard keys ----------------------------

[[rewrite]]
matches = ["applecmd", "wasycmd"]
item = ["keyboard symbols", "command"]

[[rewrite]]
render_contains = '(\KEYSAlt)'
item = ["keyboard symbols", "alternate"]

[[rewrite]]
matches = "AltGr"
item = ["keyboard symbols", "alternate graphic"]

[[rewrite]]
matches = "BSpace"
item = ["keyboard symbols", "backspace"]

[[rewrite]]
matches = "Ctrl"
item = ["keyboard symbols", "control"]

[[rewrite]]
matches = "Del"
item = ["keyboard symbols", "delete"]

[[rewrite]]
render_contains = '(\KEYSEnd)'
item = ["keyboard symbols", "end"]

[[rewrite]]
matches = "Esc"
item = ["keyboard symbols", "escape"]

[[rewrite]]
matches = "Ins"
item = ["keyboard symbols", "insert"]

[[rewrite]]
matches = "NumLock"
item = ["keyboard symbols", "numeric lock"]

[[rewrite]]
regex = '^Pg(Down|Up)$'
lowercase_word = true
item = ["keyboard symbols", 'page \1']

[[rewrite]]
matches = "PrtSc"
item = ["keyboard symbols", "print screen"]

[[rewrite]]
matches = "keystroke"
item = ["keyboard symbols", "customizable"]

# This rule should appear last in this section.
[[rewrite]]
matches = [
   'Break',
   'Enter',
   'Home',
   'Return',
   'Scroll',
   'Shift',
   'Spacebar',
   'Tab'
]
lowercase_word = true
item = ["keyboard symbols", '\1']

# ----------------------------- countries ------------------------------

[[rewrite]]
matches = "GreatBritain"
item = "Great Britain"

[[rewrite]]
matches = [
   "Albania",
   "Latvia",
   "Andorra",
   "Liechtenstein",
   "Austria",
   "Lithuania",
   "Belarus",
   "Luxembourg",
   "Belgium",
   "Macedonia",
   "Bosnia",
   "Malta",
   "Bulgaria",
   "Moldova",
   "Croatia",
   "Montenegro",
   "Czechia",
   "Netherlands",
   "Denmark",
   "Norway",
   "Estonia",
   "Poland",
   "Finland",
   "Portugal",
   "France",
   "Romania",
   "Germany",
   "Serbia",
   "Slovakia",
   "Greece",
   "Slovenia",
   "Hungary",
   "Spain",
   "Iceland",
   "Sweden",
   "Ireland",
   "Switzerland",
   "Italy",
]
item = '\1'

# -------------------------- circled symbols ---------------------------

[[rewrite]]
regex = '''
^(?:big|var)*o\
(backslash|circle|dash|dot|greater than|left|less than|minus|plus|right|slash|top|triangle|vee|wedge)\
(?:up)?$\
'''
item = ["circled symbols", '\1']

[[rewrite]]
matches = [
   "plus, circled",
   "large circled plus",
   "small circled plus",
   "logical xor"
]
item = ["circled symbols", "plus"]

[[rewrite]]
regex = '^circleddot(left|right)$'
item = ["circled symbols", 'dot, with \1 arrow']

[[rewrite]]
matches = [
   "oast",
   "bigoast",
   "circledast"
]
item = ["circled symbols", "asterisk"]

[[rewrite]]
render_contains = '\CircAsterick'
item = ["circled symbols", "asterisk"]

[[rewrite]]
regex = '^(big|var)?o(co)?ast'
item = ["circled symbols", "asterisk"]

[[rewrite]]
matches = ["odiv", "bigodiv"]
item = ["circled symbols", "division"]

[[rewrite]]
matches = ["circledbslash", "obslash", "varobslash"]
item = ["circled symbols", "backslash"]

[[rewrite]]
matches = ["circledcirc", "ocirc", "bigocirc"]
item = ["circled symbols", "circle"]

[[rewrite]]
regex = '^circled(right|two|white)(dot|dots|bullet)$'
item = ["circled symbols", '\1 \2']

[[rewrite]]
matches = "circledvert"
item = ["circled symbols", "bar"]

[[rewrite]]
regex = '^blackcircled(right|two)(dot|dots)$'
item = ["circled symbols", '\1 \2, inverse']

# This rule should precede the generic "circled <anything>" rule.
[[rewrite]]
matches = [
   "circledequal",
   "oequal",
   "CircledEq"
]
item = ["circled symbols", "equal"]

# This rule should precede the generic "circled <anything>" rule.
[[rewrite]]
matches = "circled cross pommee"
item = ["circled symbols", "pommee cross"]

# This rule should precede the generic "circled <anything>" rule.
[[rewrite]]
matches = "circled information source"
item = ["circled symbols", "information"]

[[rewrite]]
regex = '^circled\s+([A-Za-z\s]+)$'
item = ["circled symbols", '\1']

[[rewrite]]
matches = ["obot", "bigobot", "odplus"]
item = ["circled symbols", "bottom"]

[[rewrite]]
matches = ["overt", "bigovert", "varobar"]
item = ["circled symbols", "vertical line"]

[[rewrite]]
matches = [
   "otimes",
   "bigotimes",
   "olcross",
   "varotimes",
   "small circled times",
   "large circled times",
   "crossed circle",
   "crossed small circle"
]
item = ["circled symbols", "multiplication"]

[[rewrite]]
matches = "otimeshat"
item = ["circled symbols", "multiplication, with hat"]

[[rewrite]]
matches = "Otimes"
item = ["circled symbols", "multiplication, double circled"]

[[rewrite]]
render_contains = '\CircTimes'
item = ["circled symbols", "multiplication"]

[[rewrite]]
regex = '^(?:var)?o(greater|less)than$'
item = ["circled symbols", '\1 than']

# This should should precede the generic "circled<anything>" rule.
[[rewrite]]
matches = "circledless"
item = ["circled symbols", "less than"]

# This should should precede the generic "circled<anything>" rule.
[[rewrite]]
matches = "circledgtr"
item = ["circled symbols", "greater than"]

[[rewrite]]
regex = '^circled([A-Za-z]+)$'
not_contains = [
   "dotleft",
   "dotright",
   "downarrow"
]
item = ["circled symbols", '\1']

[[rewrite]]
matches = "odotslashdot"
item = ["circled symbols", "dot, slash, dot"]

[[rewrite]]
matches = "operp"
item = ["circled symbols", "perpendicular"]

[[rewrite]]
matches = [
   "up slashed circle",
   "up slashed small circle",
   "down slashed circle",
   "down slashed small circle"
]
item = ["circled symbols", "slash"]

[[rewrite]]
matches = "CircledA"
item = ["circled symbols", "A"]

[[rewrite]]
render_contains = '\CircSm'
item = ["circled symbols", "similar or equal to"]

[[rewrite]]
prefix = "faQuestionCircle"
item = ["circled symbols", "question mark"]

[[rewrite]]
matches = "SunshineOpenCircled"
item = ["circled symbols", "sun"]
[[rewrite]]
matches = [
   "PhoneHandset",
   "telephone location sign"
]
item = ["circled symbols", "telephone handset"]

# This rule needs to precede the generic "user" rules.
[[rewrite]]
prefix = "faUserCircle"
item = ["circled symbols", "user"]

# ------------------------------- users --------------------------------

[[rewrite]]
regex = '^user\s+(.+)$'
item = ["user", '\1']

[[rewrite]]
matches = ["faUserAltSlash", "faUserSlash"]
item = ["user", "slashed"]

[[rewrite]]
matches = "faUserMd"
item = ["user", "medical"]

[[rewrite]]
matches = "faUsers"
item = ["user", "multiple"]

[[rewrite]]
matches = "faUsersCog"
item = ["user", "multiple, cog"]

[[rewrite]]
matches = "faUsersSlash"
item = ["user", "multiple, slashed"]

[[rewrite]]
regex = '^faUser([A-Z]\w+)'
lowercase_item = true
item = ["user", '\1']

# This rule should appear late in this section.
[[rewrite]]
prefix = "faUser"
item = "user"

# ------------------------------- trees --------------------------------

[[rewrite]]
matches = "trees"
word = "tree"

[[rewrite]]
regex = '^(.+?)\s+tree$'
item = ["tree", '\1']

[[rewrite]]
compare_lowercase = true
regex = '^(autumn|summer|spring|winter|apple|palm|christmas)tree$'
lowercase_item = true
item = ["tree", '\1']

[[rewrite]]
matches = ["WorstTree", "tiTree", "faTree"]
item = "tree"

# ----------------------------- restrooms ------------------------------

[[rewrite]]
regex = '^(men|women|boy|girl)s$'
word = "restroom"

[[rewrite]]
matches = ["Gentsroom", "Ladiesroom", "men's room", "women's room"]
word = "restroom"

# ------------------------------- chess --------------------------------

[[rewrite]]
regex = '^(?:white|black)\s+chess\s+(.+)$'
item = ["chess", '\1']

[[rewrite]]
matches = ["chess pieces", "faChess"]
item = ["chess", "pieces"]

[[rewrite]]
matches = "chess notation"
item = ["chess", "notation"]

[[rewrite]]
compare_lowercase = true
contains = "chessboard"
item = ["chess", "board"]

[[rewrite]]
compare_lowercase = true
regex = '(?:black|white|sym|chess)\s*(bishop|king|knight|pawn|queen|rook)'
item = ["chess", '\1']

[[rewrite]]
matches = ["rook", "knight", "pawn"]
item = ["chess", '\1']

[[rewrite]]
matches = "chess symbols"
word = "chess"

# ---------------------------- cell phones -----------------------------

[[rewrite]]
matches = [
   "mobile phone",
   "Mobilefone",
   "clamshell mobile phone",
   "tiDevicePhone"
]
item = "cell phone"

# This entry must appear before the "arrows" section.
[[rewrite]]
regex = '^mobile phone\s+(.+)$'
item = ["cell phone", '\1']

[[rewrite]]
render_contains = '\usym{1F581}'
item = "cell phone"

[[rewrite]]
matches = "telephones"
item = ["cell phone", "multiple"]

# ----------------------- traditional telephones -----------------------

[[rewrite]]
matches = "telephone receiver with page"
item = ["telephone handset", "with page"]

[[rewrite]]
render_contains = '\usym{1F57C}'
item = ["telephone handset", "with page"]

[[rewrite]]
render_contains = '\usym{1F580}'
item = ["telephone handset", "atop modem"]

[[rewrite]]
matches = "phone volume"
item = ["telephone handset", "volume"]

[[rewrite]]
render_contains = "faPhoneSquare"
item = ["telephone handset", "inverse"]

[[rewrite]]
matches = "phone, slashed"
item = ["telephone handset", "slashed"]

[[rewrite]]
render_contains = [
   '\asapPhone',
   '\faPhone',
   '\mfPhoneAlt',
   '\tiPhone'
]
item = "telephone handset"

[[rewrite]]
render_contains = ['\usym{1F57D}', '\usym{1F57B}']
item = "telephone handset"

# This rule should follow all of the more specific telephone-receiver entries.
[[rewrite]]
contains = "telephone receiver"
item = "telephone handset"

[[rewrite]]
matches = [
   "Telefon",
   "Telephone",
   "Phone",
   "phone"
]
item = "telephone"

[[rewrite]]
contains = "touchtone telephone"
item = "telephone"

# ----------------------------- multimaps ------------------------------

[[rewrite]]
consider_all_entries = true
matches = [
   "linear implication",
   "lollipop (mathematics)",
   "spoon symbols (mathematics)"
]
format = "see{multimap}"

[[rewrite]]
matches = ["multimap", "rightspoon"]
word = "multimap"

[[rewrite]]
matches = ["multimapinv", "leftspoon", "inverted multimap"]
item = ["multimap", "inverse"]

[[rewrite]]
matches = ["leftrightspoon", "dualmap", "dual multimap", "multimapboth"]
item = ["multimap", "dual"]

[[rewrite]]
matches = ["rightblackspoon", "multimapdot", "rightfilledspoon"]
item = ["multimap", "black"]

[[rewrite]]
matches = ["leftrightblackspoon", "multimapdotboth"]
item = ["multimap", "dual, black"]

[[rewrite]]
matches = ["multimapbothvert"]
item = ["multimap", "dual, vertical"]

[[rewrite]]
matches = ["multimapdotbothvert"]
item = ["multimap", "dual, vertical, black"]

[[rewrite]]
matches = ["multimapdotbothA", "origof", "whiteblackspoon"]
item = ["multimap", "origin"]

[[rewrite]]
matches = ["multimapdotbothB", "imageof", "blackwhitespoon"]
item = ["multimap", "image"]

[[rewrite]]
matches = ["multimapdotinv", "leftblackspoon", "leftfilledspoon"]
item = ["multimap", "inverse, black"]

[[rewrite]]
matches = ["multimapdotbothAvert", "multimapdotbothBvert"]
item = ["multimap", "vertical, black and white"]

[[rewrite]]
regex = '^(up|down)(black|filled)spoon$'
item = ["multimap", "vertical, black"]

[[rewrite]]
matches = ["upspoon", "downspoon"]
item = ["multimap", "vertical"]

[[rewrite]]
regex = '^[ns][ew](?:filled)?spoon$'
item = ["multimap", "diagonal"]

[[rewrite]]
regex = '^not\s+.*multimap$'
item = ["multimap", "negated"]

[[rewrite]]
matches = "ndualmap"
item = ["multimap", "dual, negated"]

# This rule should appear at the end of this section
[[rewrite]]
regex = '^n[a-z]*(spoon|multimap(inv)?|imageof|origof)$'
item = ["multimap", "negated"]

# ----------------------------- asterisks ------------------------------

# This rule should appear early in this section.
[[rewrite]]
top_matches = "asterisks"
matches = "asterisks"
item = ["asterisk"]

[[rewrite]]
matches = "dotted asterisk"
item = ["asterisk", "dotted"]

# This rule should appear before the lowercase comparison to "asterisk".
[[rewrite]]
contains = ["Asterisk", " asterisk"]
item = ["asterisk", "dingbat"]

[[rewrite]]
render_contains = '\twemoji{2a-20e3}'
item = ["asterisk", "dingbat"]

[[rewrite]]
contains = "asterisk"
render_contains = ['(\STIXdingasterisk)', '(\faAsterisk)']
item = ["asterisk", "dingbat"]

# This rule should precede the following one.  Note that it moves the
# symbol to a different top-level item.
[[rewrite]]
top_matches = "asterisks"
matches = "circled"
item = ["circled symbols", "asterisk"]

[[rewrite]]
top_matches = "asterisks"
regex = '^(.+)$'
item = ["asterisk", '\1']

[[rewrite]]
compare_lowercase = true
matches = [
   "*",
   "ast",
   "asterisk",
   "bigast",
   "bigcoast",
   "coasterisk",
   "textasteriskcentered"
]
item = "asterisk"

[[rewrite]]
regex = '^(big)?box(co)?ast'
item = ["asterisk", "boxed"]

[[rewrite]]
compare_lowercase = true
matches = "asteriscus"
item = ["asterisk", "metrical"]

# ------------------------------- clouds -------------------------------

[[rewrite]]
top_matches = "clouds"
item = "cloud"

[[rewrite]]
compare_lowercase = true
matches = [
   "cloud",
   "cloudy",
   "filledcloud",
   "mathcloud",
   "reversemathcloud"
]
item = "cloud"

# This rule must follow the previous one.
[[rewrite]]
regex = '^Filled(Weak)?(.*)Cloud$'
item = ["cloud", 'with \2']
lowercase_item = true

[[rewrite]]
compare_lowercase = true
regex = '(weak)?(rain|snow)\s*cloud'
item = ["cloud", 'with \2']
lowercase_item = true

[[rewrite]]
regex = '^cloud\s+(.*)$'
item = ["cloud", '\1']

# ----------------------------- crucifixes -----------------------------

[[rewrite]]
compare_lowercase = true
matches = [
   "cross",
   "crosses",
   "crux",
   "latin cross",
   "summitsign",
   "heavy latin cross"
]
item = "cross (crucifix)"

# I believe all of these are pattee crosses, despite being called Maltese.
[[rewrite]]
matches = [
   "maltese",
   "CrossMaltese",
   "Maltese cross",
   "kreuz"
]
item = ["cross (crucifix)", "pattee"]
word = "patt{\\'e}e"

[[rewrite]]
matches = "Celtic cross"
item = ["cross (crucifix)", "Celtic"]

[[rewrite]]
matches = "cross pommee"
item = ["cross (crucifix)", "pommee"]

[[rewrite]]
matches = "cross pommee with half-circle below"
item = ["cross (crucifix)", "pommee, with half-circle below"]

[[rewrite]]
matches = "CrossBoldOutline"
item = ["cross (crucifix)", "outlined, bold"]

[[rewrite]]
matches = "CrossOutline"
item = ["cross (crucifix)", "outlined"]

[[rewrite]]
matches = "white latin cross"
item = ["cross (crucifix)", "hollow"]

[[rewrite]]
matches = ["CrossOpenShadow", "shadowed white latin cross"]
item = ["cross (crucifix)", "shadowed"]

[[rewrite]]
matches = "outlined latin cross"
item = ["cross (crucifix)", "outlined"]

[[rewrite]]
matches = "heavy greek cross"
item = ["cross (crucifix)", "Greek, bold"]

[[rewrite]]
matches = "outlined greek cross"
item = ["cross (crucifix)", "Greek, outlined"]

[[rewrite]]
matches = "orthodox cross"
item = ["cross (crucifix)", "Orthodox"]

[[rewrite]]
matches = "open center cross"
item = ["cross (crucifix)", "open center"]

[[rewrite]]
matches = "heavy open center cross"
item = ["cross (crucifix)", "open center, bold"]

[[rewrite]]
regex = '^(east|west)cross$'
capitalize_word = true
item = ["cross (crucifix)", '\1ern']

[[rewrite]]
matches = "CrossClowerTips"
item = ["cross (crucifix)", "clover tipped"]  # "clower" = "clover"?

[[rewrite]]
matches = "crucifixes"
item = "crucifix"
see = "cross (crucifix)"

# ---------------------------------- faces ----------------------------------

# ... cat faces ...

[[rewrite]]
regex = '^(.*)heart-eyes(.*)$'
item = '\1heart-shaped eyes\2'
continue = true

[[rewrite]]
regex = '^(.*?)\s+cat(?:\sface)?$'
item = ["cat", '\1']

[[rewrite]]
regex = '^cat(?:\sface)?\s+(.*?)'
item = ["cat", '\1']

[[rewrite]]
regex = '^(.*?)\s+cat(?:\sface)?,?\s+(.*)$'
item = ["cat", '\1, \2']

# ... all other faces ...

# This rule must precede the generic "face" rule.
[[rewrite]]
matches = "face towel"
item = "towel"

# This rule must precede the generic "face" rule.
[[rewrite]]
matches = "grinning squinting face"
item = ["face", "grinning and squinting"]

[[rewrite]]
regex = '^face\s+(.*)$'
item = ["face", '\1']

# This rule must precede the following one.
[[rewrite]]
regex = '^(bear|cat|clown|cow|dog|dragon|frog|hamster|horse|monkey|mouse|panda|pig|rabbit|tiger|wind|wolf)\s+face$'
item = '\1'

[[rewrite]]
regex = '^(.*?)\s+face$'
item = ["face", '\1']
not_contains = "moon"

[[rewrite]]
regex = '^(.*?)\s+face,?\s+(.*)$'
not_contains = "clock face"
item = ["face", '\1, \2']

[[rewrite]]
compare_lowercase = true
matches = ["smiley", "smileface", "soh"]
item = ["face", "smiley"]

[[rewrite]]
regex = '^([A-Za-z]+)Face$'
item = ["face", '\1']
lowercase_word = true
word = '\1'

[[rewrite]]
matches = ["blacksmiley", "invsmileface", "STX"]
item = ["face", "smiley, inverse"]

[[rewrite]]
matches = "grimace"
item = ["face", "grimacing"]

[[rewrite]]
matches = ["frownie", "Frowny"]
item = ["face", "frowning"]

[[rewrite]]
matches = ["textthing", "thething"]
item = ["face", "with sunglasses"]

[[rewrite]]
matches = "sadface"
item = ["face", "sad"]

[[rewrite]]
prefix = "faGrinBeamSweat"
item = ["face", "grinning and sweating"]

[[rewrite]]
prefix = "faGrinWink"
item = ["face", "grinning and winking"]

# This rule should precede the following one.
[[rewrite]]
prefix = "faGrinSquintTears"
item = ["face", "grinning and squinting, with tears"]

[[rewrite]]
prefix = "faGrinSquint"
item = ["face", "grinning and squinting"]

[[rewrite]]
regex = '^faGrin(Hearts|Stars|Tears|Tongue)'
lowercase_item = true
item = ["face", 'grinning, with \1']

# This rule should follow all of the other faGrin rules.
[[rewrite]]
prefix = "faGrin"
item = ["face", "grinning"]

[[rewrite]]
regex = '^fa(Angry|Dizzy|Meh|Sad)'
lowercase_item = true
item = ["face", '\1']

[[rewrite]]
regex = '^fa(Frown|Kiss|Laugh)'
lowercase_item = true
item = ["face", '\1ing']

[[rewrite]]
render_contains = ['\HQ', 'Hq']
item = ["face", "hieroglyphic"]

[[rewrite]]
top_matches = "faces"
item = ["face"]

# ------------------------------- clocks -------------------------------

[[rewrite]]
matches = ["clock", "clock symbols", "ClockLogo"]
word = "clock"

[[rewrite]]
compare_lowercase = true
contains = [" clock", "stopwatch", "alarm clock", "pocket watch"]
word = "clock"

# It's excessive to show a glyph for every half-hour of the day.  Hence, we
# keep a single glyph (four o'clock, selected arbitrarily)...
[[rewrite]]
matches = "four o'clock"
word = "clock"

# ...and delete all other clocks showing the hour or half-hour.
[[rewrite]]
contains = ["o'clock", "-thirty"]
item = ["clock", "showing a specific time"]
render = ""

# --------------------------- boxed symbols ----------------------------

[[rewrite]]
regex = '^(big)?boxbslash'
word = '\1boxbackslash'
continue = true

[[rewrite]]
regex = '^(big)?boxbot'
word = '\1boxbottom'
continue = true

[[rewrite]]
regex = '^(big)?boxdiag'
word = '\1boxslash'
continue = true

[[rewrite]]
regex = '^(big)?boxcirc'
word = '\1boxcircle'
continue = true

[[rewrite]]
regex = '^(big)?boxdiv'
word = '\1boxdivision'
continue = true

[[rewrite]]
regex = '^(big)?boxtriangle'
word = '\1boxtriangle'
continue = true

[[rewrite]]
regex = '^(big)?boxvert'
word = '\1boxbar'
continue = true

[[rewrite]]
regex = '^(big)?boxvoid'
word = '\1boxempty'
continue = true

[[rewrite]]
regex = '^(big)?box([a-z]+)$'
not_render_contains = [
   '$\boxleft$',
   '$\boxright$'
]
not_contains = [
   "boxed",
   "dotleft",
   "dotright",
   "onbox"
]
item = ["boxed symbols", '\2']

[[rewrite]]
matches = "plus, squared"
item = ["boxed symbols", "plus"]

# ------------------------------- angles -------------------------------

[[rewrite]]
matches = [
   "angle",
   "angdnr",
   "revangle",
   "turnangle"
]
item = "angle"

[[rewrite]]
render_contains = '\STIXangles'
item = ["angle", "with S"]

[[rewrite]]
render_contains = '\STIXangleubar'
item = ["angle", "with underbar"]

[[rewrite]]
matches = "revangleubar"
item = ["angle", "with underbar"]

# This rule should precede the following one.
[[rewrite]]
regex = '^measangle..to..$'
item = ["angle", "measured, with arrow"]

[[rewrite]]
contains = [
   "sphericalangle",
   "measangle",
   "measuredangle",
   "AngleSign",
   "gtlpar",
   "varangle"
]
item = ["angle", "spherical"]

[[rewrite]]
contains = "rightangle"
item = ["angle", "right"]

[[rewrite]]
contains = "wideangle"
item = ["angle", "obtuse"]

[[rewrite]]
contains = "threedangle"
item = ["angle", "3-D"]

# ------------------------------ genders -------------------------------

# Categorize a picture of a man under "man".
# This rule should appear early in this section.
[[rewrite]]
render_contains = "faMale"
item = "man"

# Categorize a picture of a womman under "womman".
# This rule should appear early in this section.
[[rewrite]]
render_contains = "faFemale"
item = "woman"

[[rewrite]]
matches = ["genderless", "Neutral"]
item = ["gender signs", "neuter"]

# This rule must precede the following one.
[[rewrite]]
render_contains = [
   '\faTransgender*',
   '\twemoji{26a7}',
   '\usym{26A7}'
]
item = ["gender signs", "male with stroke and male and female"]

[[rewrite]]
render_contains = '\faTransgender'
item = ["gender signs", "male and female"]

# This rule should precede the following one.
[[rewrite]]
matches = "HERMAPHRODITE"
item = ["gender signs", "male and female, filled"]

[[rewrite]]
compare_lowercase = true
matches = "hermaphrodite"
item = ["gender signs", "male and female"]

[[rewrite]]
matches = "male and female sign"
item = ["gender signs", "male and female"]

[[rewrite]]
matches = "boy"
render_contains = '$\ABXMars$'
item = ["gender signs", "male"]

[[rewrite]]
matches = ["male sign", "FF"]
item = ["gender signs", "male"]

[[rewrite]]
matches = "girl"
render_contains = '$\ABXVenus'
item = ["gender signs", "female"]

[[rewrite]]
matches = [
   "female sign",
   "textfemale",
   "VT"
]
item = ["gender signs", "female"]

[[rewrite]]
matches = ["textuncrfemale", "neuter"]
item = ["gender signs", "female, without stroke"]

[[rewrite]]
compare_lowercase = true
regex = '^(male|female)/?(male|female)(?: sign)?$'
lowercase_item = true
item = ["gender signs", '\1/\2']

[[rewrite]]
matches = "interlocked female and male sign"
item = ["gender signs", "female/male"]

[[rewrite]]
regex = '^doubled (male|female) sign$'
item = ["gender signs", '\1/\1']

# This rule should precede the following one.
[[rewrite]]
matches = ["MALE", "FEMALE"]
lowercase_item = true
item = ["gender signs", '\1, filled']

[[rewrite]]
compare_lowercase = true
regex = '^(male|female)$'
lowercase_item = true
item = ["gender signs", '\1']

[[rewrite]]
prefix = "male with stroke"
item = ["gender signs", "male, extra stroke"]

[[rewrite]]
matches = [
   "horizontal male with stroke sign",
   "vertical male with stroke sign"
]
item = ["gender signs", "male, extra stroke"]

# ---------------------------- men and women -----------------------------

# This rule should precede the following rule.
[[rewrite]]
contains = "bowing"
item = "bowing"

[[rewrite]]
regex = '^(man|woman|person)\s+(.*)$'
not_contains = [
    " and ",
    " getting ",
    " in ",
    " wearing ",
    " with ",
    " working "
]
item = '\2'

[[rewrite]]
regex = '^(male|man)\s+(.*)$'
not_contains = "sign"
item = ['man', '\2']

[[rewrite]]
regex = '^(female|woman)\s+(.*)$'
not_contains = "sign"
item = ['woman', '\2']

# ---------------------- astronomy and astrology -----------------------

[[rewrite]]
compare_lowercase = true
matches = "scorpius"
item = "Scorpio"

[[rewrite]]
compare_lowercase = true
matches = "capricornus"
item = "Capricorn"

[[rewrite]]
compare_lowercase = true
matches = [
   "mercury",
   "venus",
   "earth",
   "mars",
   "jupiter",
   "saturn",
   "uranus",
   "neptune",
   "pluto",

   "aries",
   "taurus",
   "gemini",
   "cancer",
   "leo",
   "virgo",
   "libra",
   "scorpio",
   "sagittarius",
   "capricorn",
   "aquarius",
   "pisces"
]
word = '\1'
capitalize_word = true

[[rewrite]]
regex = '^(North|South)Node$'
lowercase_item = true
item = '\1 node'

[[rewrite]]
matches = "ascnode"
item = "ascending node"

[[rewrite]]
matches = "descnode"
item = "descending node"

[[rewrite]]
compare_lowercase = true
matches = "conjunction"
item = ["conjunction", "astronomical"]

# ------------------------------ numbers -------------------------------

[[rewrite]]
regex = '^MV(Zero|One|Two|Three|Four|Five|Six|Seven|Eight|Nine)$'
convert_numbers = true
item = '\1'

[[rewrite]]
regex = '^Stroke(One|Two|Three|Four|Five)$'
convert_numbers = true
item = ['\1', "tally"]

[[rewrite]]
render_regex = '\(\\showbullcntr\{(\d+)\}\)'
item = ['\1', "tally"]

# This rule should precede the following one.
[[rewrite]]
regex = 'negative circled.*digit (one|two|three|four|five|six|seven|eight|nine)$'
convert_numbers = true
item = ['\1', "circled, filled"]

[[rewrite]]
regex = 'circled.*digit (one|two|three|four|five|six|seven|eight|nine)$'
convert_numbers = true
item = ['\1', "circled"]

[[rewrite]]
render_regex = '\\twemoji\{3(\d)-20e3\}'
item = ['\1', "boxed, blue"]

[[rewrite]]
render_contains = '\twemoji{1f51f}'
item = ["10", "boxed, blue"]

[[rewrite]]
contains = "keycap ten"
item = ["10", "boxed"]

# This rule should precede the following one.
[[rewrite]]
regex = 'negative circled.*number ten'
item = ["10", "circled, filled"]

[[rewrite]]
regex = 'circled.*number ten'
item = ["10", "circled"]

[[rewrite]]
regex = '^text(zero|one|two|three|four|five|six|seven|eight|nine)oldstyle$'
convert_numbers = true
item = ['\1', "old style"]

[[rewrite]]
regex = '^text(one|two|three)superior$'
convert_numbers = true
item = ['\1', "superior"]

[[rewrite]]
regex = '^textturn(two|three)$'
convert_numbers = true
item = ['\1', "rotated"]

[[rewrite]]
matches = "textlhookfour"
item = ["4", "hooked"]

[[rewrite]]
matches = "textcrtwo"
item = ["2", "barred"]

[[rewrite]]
render_contains = '(\DOZx)'
item = ["2", "rotated"]

[[rewrite]]
render_contains = '(\DOZe)'
item = ["3", "rotated"]

# ... ancient languages ...

[[rewrite]]
matches = "one"
render_contains = '\textpmhg'
item = ["1", "hieroglyphic"]

[[rewrite]]
matches = "ten"
render_contains = '\textpmhg'
item = ["10", "hieroglyphic"]

[[rewrite]]
contains = "hundred"
render_contains = '\textpmhg'
item = ["100", "hieroglyphic"]

[[rewrite]]
matches = "thousand"
render_contains = '\textpmhg'
item = ["1000", "hieroglyphic"]

[[rewrite]]
matches = "million"
render_contains = '\textpmhg'
item = ["1000000", "hieroglyphic"]

[[rewrite]]
regex = '^(\d+)$'
render_contains = '\ARUNEs'
item = ['\1', "runic"]

[[rewrite]]
regex = '^BN([ivxlcdm]+)$'
convert_numbers = true
item = ['\1', "Linear B"]

[[rewrite]]
matches = "EOzero"
item = ["0", "Epi-Olmec"]

[[rewrite]]
regex = '^EO([ivx]+)$'
convert_numbers = true
item = ['\1', "Epi-Olmec"]

# ------------------------------- globes -------------------------------

[[rewrite]]
matches = "faGlobe"
item = ["globe", "with meridians"]

[[rewrite]]
matches = ["Mundus", "world", "tiGlobe", "tiGlobeOutline"]
word = "globe"

[[rewrite]]
regex = '^globe\s+(.+)$'
item = ["globe", '\1']

[[rewrite]]
regex = '^faGlobe(Africa|Americas|Asia|Europe)$'
item = ["globe", 'showing \1']

# ------------------------- therefore symbols --------------------------

[[rewrite]]
matches = [
   "therefore",
   "uptherefore",
   "wasytherefore"
]
item = "therefore"

[[rewrite]]
regex = '^(down|left|right)therefore$'
item = ["therefore", '\1']

[[rewrite]]
matches = ["because", "since"]
item = ["therefore", "down"]

# -------------------- various mathematical symbols --------------------

[[rewrite]]
matches = ["wreath", "wr"]
item = "wreath product"

[[rewrite]]
compare_lowercase = true
contains = "forall"
item = "for all"

[[rewrite]]
matches = [
   "universal bunch quantifier",
   "universal individual quantifier"
]
item = "for all"

[[rewrite]]
matches = "suum"
item = ["sum", "horizontally extensible"]

[[rewrite]]
matches = "varsum"
item = "sum"

[[rewrite]]
matches = [
   "osum",
   "varosum",
   "modtwosum",
   "varmodtwosum"
]
item = ["sum", "circular"]

[[rewrite]]
matches = ["prod", "varprod", "smallprod"]
item = "product"

[[rewrite]]
matches = "prood"
item = ["product", "horizontally extensible"]

[[rewrite]]
matches = [
   "coprod",
   "varcoprod",
   "amalg",
   "varamalg"
]
item = "coproduct"

[[rewrite]]
matches = ["Im", "im", "oldIm"]
item = "imaginary"

[[rewrite]]
matches = ["Re", "oldRe"]
item = "real"

[[rewrite]]
contains = "mathwitch"
item = ["witch", "math mode"]

[[rewrite]]
regex = '^math.*ghost'
item = ["ghost", "math mode"]

[[rewrite]]
consider_all_entries = true
compare_lowercase = true
contains = ["percent", "%"]
word = "percent"

[[rewrite]]
matches = ["perthousand", "tcperthousand", "textperthousand", "permil"]
item = "per mill"

[[rewrite]]
matches = ["tcpertenthousand", "textpertenthousand"]
item = "permyriad"

[[rewrite]]
matches = "powerset"
item = "power set"

[[rewrite]]
matches = "Eulerconst"
item = "Euler's constant"

[[rewrite]]
compare_lowercase = true
regex = 'q\.?e\.?d'
item = "end of proof"

[[rewrite]]
render_contains = ['(\End)', '(\wasserdicht)']
item = 'end of proof'

[[rewrite]]
matches = "hksqrt"
item = ["square root", "with hook"]

[[rewrite]]
matches = ["sqrt*", "surd", "textsurd"]
item = ["square root", "without overbar"]

[[rewrite]]
matches = ["pm", "textpm"]
word = "plus or minus"

[[rewrite]]
matches = "mp"
word = "minus or plus"

[[rewrite]]
regex = '^[dnst]{3,4}stile$'
word = "consequence relation"

[[rewrite]]
matches = "consequence relation denied"
item = ["consequence relation", "denied"]

[[rewrite]]
regex = '^(continuous.*)\s(function|multi-function|map|multi-map)$'
item = ["function", '\g<0>']

[[rewrite]]
matches = ["function/backward composition", "circ"]
item = ["function", "composition"]

[[rewrite]]
matches = "function converse"
item = ["function", "converse"]

[[rewrite]]
matches = ["partial", "varpartialdiff"]
item = "partial derivative"

[[rewrite]]
matches = "partialslash"
item = ["partial derivative", "slashed"]

[[rewrite]]
top_matches = "annuity"
word = "annuity symbols"

[[rewrite]]
regex = '^text(one|three)(half|quarters?)$'
item = ["fractions", '\1 \2']

# This rule should precede the generic "minus" rule.
[[rewrite]]
render_contains = [
   '\faMinus',
   '\tiMinus',
   '\twemoji{2796}',
   '\usym{2796}',
   '\MVMinus'
]
item = ["minus", "decorative"]

[[rewrite]]
matches = ["minus", "textminus", "tminus"]
item = "minus"

[[rewrite]]
regex = '^minushook(down|up)$'
item = ["minus", "hooked"]

[[rewrite]]
regex = '^hook(down|up)minus$'
item = ["minus", "hooked"]

[[rewrite]]
regex = '^minus(colon|dot)$'
item = ["minus", '\1']

[[rewrite]]
matches = "dashcolon"
item = ["minus", "colon"]

[[rewrite]]
matches = "minuscoloncolon"
item = ["minus", "colon, double"]

[[rewrite]]
matches = ["minusfdots", "minusrdots", "dotsminusdots"]
item = ["minus", "dots"]

[[rewrite]]
matches = "dotted minus"
item = ["minus", "dot"]

[[rewrite]]
matches = "minuso"
item = ["minus", "with circle overlay"]

[[rewrite]]
compare_lowercase = true
regex = '^(comma|dot|u)minus$'
item = ["minus", '\1']

[[rewrite]]
matches = "textdiscount"
item = ["minus", "commercial"]

[[rewrite]]
matches = "bigcomplementop"
item = "complement"

[[rewrite]]
matches = "shuffle"
item = "shuffle product"

[[rewrite]]
matches = "smashtimes"
item = "smash product"

[[rewrite]]
matches = "bagmember"
item = "bag membership"

[[rewrite]]
matches = ["intercal", "varintercal"]
item = "intercalate"

[[rewrite]]
matches = ["interleave", "biginterleave"]
item = "interleave"

[[rewrite]]
matches = "suchthat"
item = "such that"

[[rewrite]]
matches = "wp"
word = "Weierstrass elliptic function"

[[rewrite]]
matches = "sqrt"
word = "square root"

[[rewrite]]
compare_lowercase = true
contains = "bowtie"
word = "bow tie"

[[rewrite]]
prefix = "choice"
word = "choice"

[[rewrite]]
regex = '^Y(up|down|left|right)$'
item = ["Y", '\1']

[[rewrite]]
regex = '^(up|down|left|right)Y$'
item = ["Y", '\1']

[[rewrite]]
matches = "zproject"
item = "restriction"

[[rewrite]]
regex = '^restrict(barb|mallet|wand)(?:up)?$'
item = ["restriction", '\1']

[[rewrite]]
matches = "nrestriction"
item = ["restriction", "negated"]

[[rewrite]]
matches = ["ularc", "manrotatedquartercircle"]
item = ["arc", "upper left"]

[[rewrite]]
matches = ["urarc", "manquartercircle"]
item = ["arc", "upper right"]

[[rewrite]]
matches = "llarc"
item = ["arc", "lower left"]

[[rewrite]]
matches = "lrarc"
item = ["arc", "lower right"]

[[rewrite]]
matches = "Finv"
item = ["F", "inverted"]

[[rewrite]]
matches = "trapezium"  # UK
item = "trapezoid"     # US

[[rewrite]]
regex = '^(.*\S)\s+fixed point$'
item = ["fixed point", '\1']

[[rewrite]]
matches = [
   "cshuffle",
   "complete shuffle product"
]
item = ["shuffle product", "complete"]

[[rewrite]]
regex = '^(partial|total) function$'
item = ["function", '\1']

[[rewrite]]
matches = ["crossing", "hcrossing"]
item = ["crossing", "horizontal"]

[[rewrite]]
matches = ["vcrossing", "scross"]
item = ["crossing", "vertical"]

[[rewrite]]
matches = "scrossvh"
item = ["crossing", "plus"]

[[rewrite]]
matches = ["neswcrossing", "nwsecrossing"]
item = ["crossing", "diagonal"]

[[rewrite]]
matches = [
   "cdot",
   "cdotp",
   "MultiplicationDot"
]
item = ["multiplication", "dot"]

[[rewrite]]
matches = "hermitmatrix"
item = "Hermitian conjugate matrix"

[[rewrite]]
matches = ["strictif", "rightfishtail"]
item = "strict implication"

[[rewrite]]
matches = ["strictfi", "leftfishtail"]
item = "strict converse implication"

[[rewrite]]
matches = "strictiff"
item = "strict biconditional"

[[rewrite]]
matches = "rightimply"
item = "material implication"

[[rewrite]]
regex = '^(up|down)fishtail$'
item = ["fish tail", '\1']

[[rewrite]]
matches = ["setminus", "smallsetminus"]
item = "set difference"

[[rewrite]]
matches = [
   "dfourier",
   "Dfourier",
   "dft",
   "DFT",
   "fourier",
   "Fourier",
   "InversTransformHoriz",
   "InversTransformVert",
   "laplace",
   "Laplace",
   "TransformHoriz",
   "TransformVert",
   "Ztransf",
   "ztransf"
]
item = "transform"

[[rewrite]]
matches = "sequent denied"
item = ["sequent", "denied"]

[[rewrite]]
regex = '^(up|down|left|right|[ns][ew])free$'
item = "free"

[[rewrite]]
regex = '^n(up|down|left|right|[ns][ew])free$'
item = ["free", "negated"]

[[rewrite]]
matches = "lsqhook"
item = ["open box operator", "left"]

[[rewrite]]
matches = "rsqhook"
item = ["open box operator", "right"]

[[rewrite]]
matches = "nclosure"
item = ["closure", "negated"]

[[rewrite]]
regex = '^(left|right)threetimes$'
item = ["semidirect product", '\1']

[[rewrite]]
regex = '^(up|down|left|right)slice$'
item = "slice"

[[rewrite]]
matches = "ruledelayed"
item = "rule delayed"

# This rule should precede the following one.
[[rewrite]]
matches = "parallelogramblack"
item = ["parallelogram", "filled"]

[[rewrite]]
prefix = "parallelogram"
item = "parallelogram"

[[rewrite]]
matches = ["leftbroom", "rightbroom"]
item = "broom"

[[rewrite]]
matches = ["dalambert", "laplac"]   # Note misspelling of "dalembert".
item = "d'Alembert operator"

[[rewrite]]
matches = "divs"
item = "divides"

[[rewrite]]
matches = "ndivs"
item = ["divides", "negated"]

[[rewrite]]
matches = "topbot"
item = ["top", "above bottom"]

[[rewrite]]
regex = '^relation(left|right)project$'
item = ["relation", '\1 project']

[[rewrite]]
matches = "relationlifting"
item = ["relation", "lifting"]

[[rewrite]]
matches = "profline"
item = "arc"

[[rewrite]]
matches = "profsurf"
item = "segment"

[[rewrite]]
matches = ["<", "!>"]
item = ["delimiters", "angle bracket"]
render = ""

# ----------------------- miscellaneous rewrites -----------------------

# This rule should appear early in this section.
[[rewrite]]
regex = '^(.+)\s+symbol$'
not_matches = "medical symbol"
word = '\1'
continue = true

# This rule must precede the following one.
[[rewrite]]
render_contains = '\faWater'
word = "waves"

# Convert certain control sequences to words and lowercase them.
[[rewrite]]
compare_lowercase = true
matches = [
   "air",
   "alif",
   "anaclasis",
   "anchor",
   "ankh",
   "asterism",
   "atom",
   "ayn",
   "beam",
   "bearing",
   "bed",
   "bell",
   "between",
   "bicycle",
   "biohazard",
   "bowl",
   "bra",
   "caesura",
   "candle",
   "catalexis",
   "cent",
   "chair",
   "closure",
   "coda",
   "complement",
   "conclusion",
   "convolution",
   "corner",
   "corresponds",
   "currency",
   "denarius",
   "diameter",
   "direct",
   "dracma",
   "e",
   "ejective",
   "emgma",
   "enya",
   "er",
   "esh",
   "eye",
   "fax",
   "fire",
   "fisheye",
   "florin",
   "fog",
   "force",
   "fortune",
   "game",
   "gloves",
   "hail",
   "hemiobelion",
   "industry",
   "irritant",
   "ket",
   "length",
   "lightning",
   "longa",
   "maxima",
   "moai",
   "moo",
   "moon",
   "nabla",
   "natal",
   "ninja",
   "octagon",
   "opposition",
   "plus",
   "printer",
   "quincunx",
   "radix",
   "rain",
   "request",
   "respondens",
   "restriction",
   "retrograde",
   "rupee",
   "sector",
   "semisextile",
   "semisquare",
   "separated",
   "sesquiquadrate",
   "sextile",
   "sleet",
   "spoon",
   "staccatissimo",
   "stater",
   "station",
   "sum",
   "tape",
   "tent",
   "tenuto",
   "tetartemorion",
   "trine",
   "vernal",
   "vertex",
   "viewdata",
   "village",
   "warning",
   "water",
   "wind",
   "wheelchair"
]
lowercase_word = true
word = '\1'

# Convert certain control sequences to words, preserving their case.
[[rewrite]]
matches = [
   "Amor",
   "Bart",
   "Burns",
   "Ceres",
   "Chiron",
   "Eros",
   "Hades",
   "Hidalgo",
   "Homer",
   "Hygiea",
   "Juno",
   "Lilith",
   "Lisa",
   "Maggie",
   "Marge",
   "Pallas",
   "Poseidon",
   "Psyche",
   "Rust",
   "Sappho",
   "Soyombo",
   "Vesta",
   "Zeus"
]
word = '\1'

# Convert certain words from plural to singular.
[[rewrite]]
regex = '''\
^(automobile|\
bicycle|\
boat|\
boson|\
broom|\
consequence relation|\
elevator|\
fermion|\
ghost|\
helicopter|\
kaon|\
meson|\
model|\
motorcycle|\
pion|\
restriction|\
snake|\
taxi|\
train)s$\
'''
item = '\1'

[[rewrite]]
matches = "bike"
item = "bicycle"

[[rewrite]]
matches = "buses"
item = "bus"

[[rewrite]]
regex = '^(?:lower|upper)\s+(?:left|right)\s+(.*)$'
not_render_contains = ['\usym{1F53E}', '\usym{1F53F}']
word = '\1'
continue = true

[[rewrite]]
matches = ["bomb", "mfBomb", "faBomb"]
word = "bomb"

[[rewrite]]
matches = "water wave"
word = "waves"

[[rewrite]]
contains = "dbend"
word = "dangerous bend"

[[rewrite]]
render_contains = '+\danger+'
word = "dangerous bend"

[[rewrite]]
matches = [
   "flower",
   "flowers",
   "white flower",
   "wilted flower",
   "sunflower",
   "daisy",
   "blossom"
]
word = "flower"

[[rewrite]]
contains = ["Flower", "florette"]
word = "flower"

[[rewrite]]
matches = "sun"
compare_lowercase = true
word = "sun"

[[rewrite]]
compare_lowercase = true
regex = '^(blue|brown|green|orange|purple|red|yellow)\s+(.*)$'
not_contains = ["exclamation mark", "hat", "lantern", "stoplight", "triangle"]
word = '\2'
lowercase_word = true

[[rewrite]]
matches = ["lightbulb", "electric light bulb"]
word = "light bulb"

[[rewrite]]
matches = ["Info", "info circle", "information sign"]
word = "information"

[[rewrite]]
compare_lowercase = true
contains = 'scissor'
item = 'scissors'

[[rewrite]]
matches = [
   "cut",
   "CutLeft",
   "CutRight"
]
item = 'scissors'

[[rewrite]]
regex = '^battery\s+(.*)$'
item = ["battery", '\1']

[[rewrite]]
regex = '^(.*?)\s+battery$'
item = ["battery", '\1']

[[rewrite]]
regex = '^([A-Z]+) button \(blood type\)$'
item = ["blood type", '\1']

[[rewrite]]
matches = "AR"
word = "aspect ratio"

[[rewrite]]
matches = "bauhead"
word = "head"

[[rewrite]]
matches = "accurrent"
word = "alternating current"

[[rewrite]]
matches = "acidfree"
word = "acid-free paper"

[[rewrite]]
matches = "ear with hearing aid"
item = ["ear", "with hearing aid"]

[[rewrite]]
matches = ["medical symbol", "medicine"]
item = "rod of Asclepius"

[[rewrite]]
compare_lowercase = true
matches = "yinyang"
word = "yin-yang"

[[rewrite]]
matches = ["yin yang", "yin-yang symbols"]
word = "yin-yang"

[[rewrite]]
matches = ["wheel", "wheel of dharma"]
word = "dharmachakra"

[[rewrite]]
matches = ["Bat", "bats", "mathbat", "mathleftbat", "mathrightbat"]
word = "bat"

[[rewrite]]
regex = '^search with (.*)$'
item = ["search", 'with \1']

[[rewrite]]
matches = "faSearchMinus"
item = ["search", "with minus sign"]

[[rewrite]]
regex = '^mahjong tile\s+(.+)$'
item = ["mahjong tiles", '\1']

[[rewrite]]
matches = "mahjong red dragon"
item = ["mahjong tiles", "red dragon"]

[[rewrite]]
matches = ["glotstop", "glottal"]
word = "glottal stop"

[[rewrite]]
matches = "Jedi"
word = "Jedi Order"

# This rule must precede the "... button" rule.
[[rewrite]]
regex = "^Japanese ``(.*)'' button"
item = ["Japanese buttons", '\1']

# This rule must precede the "... button" rule.
[[rewrite]]
render_contains = ["1f518", "1F518"]
item = "radio button"

[[rewrite]]
regex = '^(.*?)\s+button$'
item = '\1'

[[rewrite]]
matches = ["old key", "keys"]
word = "key"

[[rewrite]]
matches = "paint brush"
word = "paintbrush"

# This rule should precede the following one.
[[rewrite]]
render_contains = '\faPencilRuler'
item = ["pencil", "and ruler"]

[[rewrite]]
compare_lowercase = true
contains = "pencil"
not_render_contains = "Hand"
word = "pencil"

# This rule should follow the previous one.
[[rewrite]]
prefix = ["tiPen", "faPen", "faHighlighter", "faMarker", "pens"]
not_contains = ["Penny", "Nib"]
word = "pen"

[[rewrite]]
contains = ["ballpoint pen", "fountain pen"]
word = "pen"

[[rewrite]]
contains = "magnifying"
word = "magnifying glass"

[[rewrite]]
regex = '^people\s+(.+)$'
item = ["people", '\1']

[[rewrite]]
regex = '^person\s+(.+)$'
item = ["person", '\1']

[[rewrite]]
compare_lowercase = true
top_contains = "peace"
word = "peace"

[[rewrite]]
compare_lowercase = true
matches = "t-shirt"
word = "T-shirt"

[[rewrite]]
matches = ["wireless", "wifi"]
word = "wireless network"

# This rule should precede the following one.
[[rewrite]]
contains = ["shoe", "sandal"]
item = "shoe"

[[rewrite]]
regex = "^woman'?s\\s+(.+)$"
word = '\1'

[[rewrite]]
regex = '^women\s+(.+)$'
item = ["women", '\1']

[[rewrite]]
compare_lowercase = true
prefix = "bouquet"
word = "bouquet"

[[rewrite]]
prefix = "click"
item = "clicks"

# This rule should precede the following one.
[[rewrite]]
render_contains = ['{1f515}', '{1F515}']
item = ["bell", "slashed"]

[[rewrite]]
contains = "bell"
not_matches = ["dumbbell", "bell pepper"]
word = "bell"

[[rewrite]]
regex = '^bowl\s+(.+)$'
item = ["bowl", '\1']

[[rewrite]]
matches = "gem stone"
word = "gem"

# This rule should precede the following one.
[[rewrite]]
regex = '^recycling symbol for\s+(.+)$'
item = ["recycling", '\1']

[[rewrite]]
compare_lowercase = true
top_contains = "recycl"
not_render_contains = "(package)"
word = "recycling"

[[rewrite]]
matches = ["Greenpoint", "PackingWaste"]
word = "recycling"

[[rewrite]]
regex = '^chart\s+(.+)$'
item = ["chart", '\1']

[[rewrite]]
matches = "Father Christmas"
word = "Santa Claus"

[[rewrite]]
matches = "mx claus"
word = "Mrs. Claus"

[[rewrite]]
matches = "store, slashed"
item = ["store", "slashed"]

[[rewrite]]
contains = ["traffic light", "stoplight"]
word = "traffic light"

[[rewrite]]
contains = ["locomotive", " train"]
word = "train"

[[rewrite]]
prefix = "domino tile "
item = "domino tiles"
render = ""

[[rewrite]]
matches = "dna"
item = "DNA"

[[rewrite]]
matches = "dvd"
item = "DVD"

# This rule must precede the following one.
[[rewrite]]
regex = '^document with\s+(\S.*)$'
item = ["document", '\1']

[[rewrite]]
regex = '^document\s+(\S+)$'
item = ["document", '\1']

[[rewrite]]
matches = "empty document"
item = "document"

[[rewrite]]
prefix = "emoji modifier"
item = ["emoji", "modifiers"]
render = ""

# This rule should precede the following one.
[[rewrite]]
matches = "two-hump camel"
item = ["camel", "bactrian"]

[[rewrite]]
regex = '^(\S+)\s+camel$'
item = ["camel", '\1']

[[rewrite]]
consider_all_entries = true
compare_lowercase = true
contains = ["pumpkin", "jack-o-lantern"]
item = "jack-o'-lantern"

# Split certain control sequences into exactly two words.
[[rewrite]]
matches = [
   "EastPoint",
   "MineSign",
   "MoveDown",
   "MoveUp",
   "ParallelPort",
   "PropertyLine",
   "SerialInterface",
   "SerialPort",
   "SpecialForty",
   "SpinUp",
   "SpinDown",
   "StoneMan",
   "StrikingThrough",
   "SurveySign",
   "ThinFog",
   "WeakRain"
]
regex = '^([A-Z][a-z]+)([A-Z][a-z]+)$'
lowercase_word = true
word = '\1 \2'

[[rewrite]]
matches = "studio microphone"
item = "microphone"

[[rewrite]]
matches = "microphone off"
item = ["microphone", "slashed"]

[[rewrite]]
matches = "menorah with nine branches"
item = "menorah"

[[rewrite]]
regex = '^men\s+(\S.*)$'
item = ["men", '\1']

[[rewrite]]
matches = ["AA", "Angstrom"]
item = ["A with ring", "uppercase"]

[[rewrite]]
matches = "aa"
item = ["A with ring", "lowercase"]

[[rewrite]]
matches = "Apollon"
item = "Apollo"

[[rewrite]]
matches = "Admetos"
item = "Admetus"

[[rewrite]]
matches = "Cupido"
item = "Cupid"

[[rewrite]]
matches = "Kronos"
item = "Chronos"

[[rewrite]]
matches = "Vulkanus"
item = "Vulcan"

[[rewrite]]
matches = ["celsius", "tccentigrade", "textcelsius"]
item = "celsius"

[[rewrite]]
compare_lowercase = true
matches = ["radiation", "radioactive"]
item = "radiation"

[[rewrite]]
matches = "pregnant"
item = "pregnant woman"

[[rewrite]]
matches = ["print", "printer icon"]
item = "printer"

[[rewrite]]
matches = "phase"
item = "phasor"

[[rewrite]]
matches = "BOLogo"
item = "Hochschule Bochum"

[[rewrite]]
matches = "BOLogoP"
item = ["Hochschule Bochum", "portrait"]

[[rewrite]]
matches = "BOLogoL"
item = ["Hochschule Bochum", "landscape"]

[[rewrite]]
matches = "sunset"
item = "sunset over buildings"

[[rewrite]]
matches = [
   "crossed swords",
   "swords",
   "textxswdown",
   "textxswup",
   "xswordsdown",
   "xswordsup"
]
item = ["sword", "multiple, crossed"]

[[rewrite]]
regex = '^sym([AB])$'
item = '\1'

[[rewrite]]
regex = '^(deaf|old)(?:er)?\s+(man|woman|person)$'
item = ['\2', '\1']

[[rewrite]]
matches = "hanukiah"
item = "menorah"

[[rewrite]]
matches = "plimsoll"
item = "Plimsoll line"

[[rewrite]]
contains = "#"
not_contains = 'C\#'
item = "hash"

# This rule should precede the following one.
[[rewrite]]
matches = [
   "hash",
   "hashtag",
   "number sign",
   "varhash"
]
item = "hash"

[[rewrite]]
matches = "textnumero"
item = "number sign"

[[rewrite]]
matches = "golfer"
item = "golfing"

# This rule should precede the following one.
[[rewrite]]
regex = '^faHandshake(Alt)?Slash$'
item = ["handshake", "slashed"]

[[rewrite]]
prefix = "faHandshake"
item = "handshake"

[[rewrite]]
matches = "sleuth or spy"
item = "spy"

[[rewrite]]
regex = '^two (men|women) holding hands$'
item = ['\1', "holding hands"]

[[rewrite]]
consider_all_entries = true
contains = "bullseye"
item = "bullseye"

[[rewrite]]
matches = [
   "carriagereturn",
   "varcarriagereturn"
]
item = "carriage return"

[[rewrite]]
prefix = "FourClower"
item = "clover"

[[rewrite]]
matches = ["clovers", "four leaf clover"]
item = "clover"

[[rewrite]]
matches = "glasses"
item = "eyeglasses"

[[rewrite]]
matches = "eyebrows"
item = "eyes"

[[rewrite]]
matches = "dark sunglasses"
item = "sunglasses"

[[rewrite]]
compare_lowercase = true
contains = "hourglass"
item = "hourglass"

[[rewrite]]
matches = "kitchen knife"
item = ["knife", "kitchen"]

[[rewrite]]
matches = "hocho"
item = ["knife", "hocho"]

[[rewrite]]
matches = "windy"
item = "wind"

[[rewrite]]
matches = [
   "manual wheelchair",
   "motorized wheelchair",
   "wheelchair stationary"
]
item = "wheelchair"

[[rewrite]]
matches = [
   "wrapped gift",
   "wrapped present"
]
item = "gift"

[[rewrite]]
matches = "poo storm"
item = ["poo", "storm"]

[[rewrite]]
matches = "power off"
item = "power"

[[rewrite]]
matches = [
   "ban",
   "no",
   "no entry sign",
   "prohibited",
   "prohibited sign"
]
item = "no"

[[rewrite]]
matches = "noway"
item = "no entry"

[[rewrite]]
matches = "tape drive"
item = "tape"

[[rewrite]]
matches = "braket"
item = "bra-ket"

[[rewrite]]
regex = '^banknote with (.*?)\s+sign$'
item = ["banknote", '\1']

[[rewrite]]
regex = '^(.*?)\s+banknote$'
item = ["banknote", '\1']

[[rewrite]]
matches = "mount fuji"
item = "Mount Fuji"

[[rewrite]]
matches = "electric torch"
item = "flashlight"

[[rewrite]]
matches = "lady beetle"
item = "ladybug"

[[rewrite]]
matches = ["bug", "beetle", "fly", "mosquito"]
item = "insect"

[[rewrite]]
matches = "witches"
item = "witch"

[[rewrite]]
matches = ["caution sign", "danger"]
item = "warning"

[[rewrite]]
contains = "baby chick"
item = "chick"

[[rewrite]]
matches = "chicks"
item = ["chick", "multiple"]

[[rewrite]]
matches = "rip"
item = "RIP"

[[rewrite]]
compare_lowercase = true
matches = ["snow", "snowflakes"]
item = "snowflake"

[[rewrite]]
compare_lowercase = true
contains = "snowflake"
item = "snowflake"

[[rewrite]]
compare_lowercase = true
prefix = ["snowman", "snowmen", "scsnowman"]
item = "snowman"

[[rewrite]]
matches = "snowplow"
item = "snow plow"

[[rewrite]]
contains = "floppy disk"
item = "floppy disk"

[[rewrite]]
regex = '^sort\s+(.+)$'
item = ["sort", '\1']

[[rewrite]]
matches = "SNPP"
item = "nuclear power plant"

[[rewrite]]
regex = '^(hear|see|speak)-no-evil monkey$'
item = ["monkey", '\1 no evil']

[[rewrite]]
matches = "spanner"
item = "wrench"

[[rewrite]]
compare_lowercase = true
contains = "sparkle"
item = "sparkle"

[[rewrite]]
matches = "small axe"
item = "axe"

[[rewrite]]
matches = "film frames"
item = "film"

[[rewrite]]
matches = "silhouette of Japan"
item = "Japan"

[[rewrite]]
matches = "sinewave"
item = "sine wave"

[[rewrite]]
matches = ["Terra", "varTerra"]
item = "Earth"

[[rewrite]]
regex = '^var(Capricorn|Earth|Pluto|Uranus)$'
item = '\1'

[[rewrite]]
contains = "mailbox"
item = "mailbox"

[[rewrite]]
matches = "love hotel"
item = ["hotel", "love"]

[[rewrite]]
matches = "love letter"
item = ["envelope", "with heart"]

[[rewrite]]
matches = "camera with flash"
item = "camera"

[[rewrite]]
matches = "roast chicken"
item = ["chicken", "roasted"]

[[rewrite]]
matches = ["chicken thigh", "drumstick"]
item = ["chicken", "thigh"]

[[rewrite]]
regex = '^Japanese\s+(castle|dolls|goblin|ogre|post office)$'
item = '\1'

[[rewrite]]
matches = "Japanese symbol for beginner"
item = "beginner"

[[rewrite]]
matches = "couplekiss"
item = "couple with heart"

[[rewrite]]
matches = "kiss mark"
item = "kiss"

[[rewrite]]
regex = '^replace\s+(.*)$'
item = ["replace", '\1']

[[rewrite]]
matches = ["tally", "fcscore"]
item = "tally markers"

[[rewrite]]
matches = "Looking"
item = ["telescope", "man looking through"]

[[rewrite]]
matches = "linefeed"
item = "line feed"

[[rewrite]]
matches = "thermometers"
item = "thermometer"

[[rewrite]]
regex = '^thermometer\s+(.+)$'
item = ["thermometer", '\1']

[[rewrite]]
regex = 'three rays\s+(.+)$'
item = ["rays", 'three \1']

[[rewrite]]
regex = '^oncoming\s+(.+)$'
item = '\1'

[[rewrite]]
matches = "baby angel"
item = "angel"

[[rewrite]]
matches = "benzenr"
item = "benzene"

[[rewrite]]
contains = "megaphone"
item = "megaphone"

[[rewrite]]
matches = "inbox tray"
item = "inbox"

[[rewrite]]
matches = "outbox tray"
item = "outbox"

[[rewrite]]
matches = "postbox"
item = "mailbox"

[[rewrite]]
contains = "bath"
item = "bathtub"

[[rewrite]]
matches = ["degree", "textdegree"]
item = "degree"

[[rewrite]]
compare_lowercase = true
prefix = "diple"
item = "diple"

[[rewrite]]
matches = "shopping trolley"
item = "shopping cart"

[[rewrite]]
matches = "desert island"
item = "island"

[[rewrite]]
matches = ["articulated lorry", "pickup truck"]
item = "truck"

[[rewrite]]
matches = "faShippingFast"
item = ["truck", "fast"]

[[rewrite]]
matches = "construction"
item = "construction sign"

[[rewrite]]
matches = "building construction"
item = "construction"

[[rewrite]]
regex = '^(factual|deontic|logical|doxastic|temporal)\s+(necessity|possibility|next|future|past|contingency|non-contingency)$'
item = ['\2', '\1']

[[rewrite]]
matches = "bauforms"
item = "Bauhaus forms"

[[rewrite]]
matches = "cityscape at dusk"
item = ["cityscape", "at dusk"]

[[rewrite]]
matches = [
   "ear of corn",
   "ear of maize"
]
item = "corn"

[[rewrite]]
matches = [
   "corners, box",
   "lftbotcorner",
   "lfttopcorner",
   "rtbotcorner",
   "rttopcorner",
   "textcorner",
   "textopencorner",
   "FS"
]
item = "corner"

[[rewrite]]
matches = [
   "ullcorner",
   "ulrcorner",
]
item = ["corner", "both top and bottom"]

[[rewrite]]
matches = "textinterrobang"
item = "interrobang"

[[rewrite]]
matches = "textinterrobangdown"
item = ["interrobang", "inverted"]

[[rewrite]]
matches = "textrecipe"
item = "recipe"

[[rewrite]]
consider_all_entries = true
matches = "pharmaceutical prescription"
see = "recipe"

[[rewrite]]
consider_all_entries = true
matches = "prescription"
see = "recipe"

[[rewrite]]
matches = "thus"
item = "therefore"

[[rewrite]]
matches = "straight ruler"
item = "ruler"

[[rewrite]]
matches = "triangular ruler"
item = ["ruler", "triangular"]

[[rewrite]]
contains = ["pushpin", "thumbtack"]
item = "pushpin"

[[rewrite]]
matches = ["litter in bin sign", "put litter in its place"]
item = "litter in bin"

[[rewrite]]
regex = '^text(born|died|divorced|married)$'
item = '\1'

[[rewrite]]
matches = ["satellitedish", "satellite antenna", "Satellite"]
item = ["satellite dish"]

[[rewrite]]
matches = ["sauropod", "T-Rex"]
item = "dinosaur"

[[rewrite]]
matches = "rqm"
item = "reduced quadrupole moment"

[[rewrite]]
matches = ["izakaya lantern", "red paper lantern"]
item = "lantern"

[[rewrite]]
matches = "brush"
item = "paintbrush"

[[rewrite]]
prefix = "faClipboard"
item = "clipboard"

[[rewrite]]
matches = "faSpellCheck"
item = "spell check"

[[rewrite]]
prefix = "faMoneyCheck"
item = "check (financial)"

[[rewrite]]
matches = "drop of blood"
item = "blood"

[[rewrite]]
matches = "let blood"
item = ["blood", "letting"]

[[rewrite]]
matches = "sunrise over mountains"
item = ["sunrise", "over mountains"]

[[rewrite]]
matches = "symbol for marks chapter"
item = "marks chapter"

[[rewrite]]
matches = ["temperature low", "temperature high"]
item = ['\1', '\2']

[[rewrite]]
matches = "chalkboard with teacher"
item = ["chalkboard", "with teacher"]

[[rewrite]]
regex = '^textord(masculine|feminine)$'
item = ["ordinal", '\1']

[[rewrite]]
matches = [
   "underscore",
   "textunderscore",
   "mathunderscore",
   "US"
]
item = "underline"

[[rewrite]]
render_contains = '(\_)'
item = "underline"

[[rewrite]]
regex = '^text(backslash|bar|blank|bullet|estimated)$'
item = '\1'

[[rewrite]]
regex = '^umbrella\s+(.+)$'
item = ["umbrella", '\1']

[[rewrite]]
matches = "closed umbrella"
item = ["umbrella", "closed"]

[[rewrite]]
matches = "cut of meat"
item = "meat"

[[rewrite]]
matches = "meat on bone"
item = ["meat", "on bone"]

[[rewrite]]
matches = "cog"
item = "gear"

[[rewrite]]
matches = "cogs"
item = ["gear", "multiple"]

[[rewrite]]
matches = "guardsman"
item = "guard"

[[rewrite]]
regex = '^mechanical (arm|leg)$'
item = ['\1', "mechanical"]

[[rewrite]]
matches = "CYRSH"
item = "sha"

[[rewrite]]
matches = [
   "tropical fish",
   "tuna",
   "catfish"
]
item = "fish"

[[rewrite]]
matches = "fishing pole"
item = "fishing pole and fish"

[[rewrite]]
prefix = "fish cake with swirl"
item = "fish cake with swirl"

[[rewrite]]
compare_lowercase = true
matches = "bigo"
item = "big O notation"

[[rewrite]]
matches = "infant"
item = "baby"

[[rewrite]]
contains = "loudspeaker"
item = "loudspeaker"

[[rewrite]]
matches = "invdiameter"
item = ["diameter", "reversed"]

[[rewrite]]
matches = "video"
item = "video camera"

[[rewrite]]
matches = "video, slashed"
item = ["video camera", "slashed"]

[[rewrite]]
matches = "video game"
item = "video game controller"

[[rewrite]]
render_contains = '(\faBtc)'
item = "Bitcoin"

[[rewrite]]
matches = "AC"
item = "alternating current"

[[rewrite]]
prefix = "alien"
item = "extraterrestrial"

[[rewrite]]
matches = [
   "optical disc",
   "optical disc icon",
   "optical disk"
]
item = "compact disc"

[[rewrite]]
matches = "bread slice"
item = "bread"

[[rewrite]]
compare_lowercase = true
prefix = "obelus"
item = "obelus"

[[rewrite]]
compare_lowercase = true
prefix = "terminus"
item = "terminus"

[[rewrite]]
matches = [
   "direct hit",
   "darts"
]
item = "target"

[[rewrite]]
matches = "potable water"
item = ["water", "potable"]

[[rewrite]]
matches = "non-potable water"
item = ["water", "non-potable"]

[[rewrite]]
matches = "freeCodeCamp"
item = "Free Code Camp"

[[rewrite]]
matches = [
   "sake",
   "sake bottle and cup"
]
item = ["bottle", "sake, with cup"]

[[rewrite]]
matches = "school satchel"
item = "schoolbag"

[[rewrite]]
matches = "poultry leg"
item = ["chicken", "thigh"]

[[rewrite]]
matches = "police cars revolving light"
item = "police car light"

[[rewrite]]
matches = "textramshorns"
item = "ram's horns"

[[rewrite]]
matches = "ascii circumflex"
item = "caret"

[[rewrite]]
matches = "caretinsert"
item = ["caret", "insertion"]

[[rewrite]]
contains = "visiblespace"
item = ["space", "visible"]

[[rewrite]]
matches = "non-breaking space"
item = ["space", "non-breaking"]

[[rewrite]]
matches = "shell"
item = "shell, operating system"

[[rewrite]]
matches = "spiral shell"
item = "seashell"

[[rewrite]]
matches = "MVAt"
item = "at sign"

[[rewrite]]
regex = '^European (castle|post office)$'
item = '\1'

[[rewrite]]
prefix = "flap"
item = "flap"

[[rewrite]]
render_contains = ['\fcBalloon', '\faFly']
item = ["hot air balloon"]

[[rewrite]]
matches = "stuffed flatbread"
item = "flatbread"

[[rewrite]]
matches = "curly loop"
item = "loop"

[[rewrite]]
matches = "double curly loop"
item = ["loop", "double"]

[[rewrite]]
regex = '^([A-Za-z]+)bearing$'
lowercase_item = true
item = ["bearing", '\1']

[[rewrite]]
regex = '^antenna.*bars'
item = "signal"

[[rewrite]]
regex = '^grip (horizontal|vertical)$'
item = ["grip", "squares"]

[[rewrite]]
regex = '^grip lines\s*(horizontal|vertical)?$'
item = ["grip", "lines"]

[[rewrite]]
matches = "textreferencemark"
item = "reference mark"

[[rewrite]]
matches = "hzigzag"
item = ["zigzag", "horizontal"]

[[rewrite]]
matches = "vzigzag"
item = ["zigzag", "vertical"]

[[rewrite]]
matches = "elinters"
item = "electrical intersection"

[[rewrite]]
matches = "busts in silhouette"
item = ["bust in silhouette", "multiple"]

[[rewrite]]
matches = "actuarialangle"
item = "actuarial angle"

[[rewrite]]
matches = "linked paperclips"
item = ["paperclip", "multiple, linked"]

[[rewrite]]
matches = "toilet paper, slashed"
item = ["toilet paper", "slashed"]

[[rewrite]]
matches = "texttildelow"
item = ["tilde", "lowered"]

[[rewrite]]
regex = '^igo(circle|cross|square|triangle)$'
item = ["Go stones", '\1']

[[rewrite]]
matches = "igonone"
item = ["Go stones", "empty"]

[[rewrite]]
matches = "trident emblem"
item = "trident"

[[rewrite]]
matches = "giraffes"
item = ["giraffe", "multiple"]

[[rewrite]]
matches = "tram car"
item = "tram"

[[rewrite]]
matches = "left luggage"
item = "luggage"

[[rewrite]]
compare_lowercase = true
contains = "suitcase"
item = "luggage"

[[rewrite]]
regex = '^frame with (?:an )?(.+)$'
item = ["frame", 'with \1']

[[rewrite]]
matches = "HF"
item = "high frequency"

[[rewrite]]
matches = "VHF"
item = "very high frequency"

[[rewrite]]
matches = "rolled-up newspaper"
item = ["newspaper", "rolled"]

[[rewrite]]
matches = "bullhorn with sound waves"
item = "bullhorn"

[[rewrite]]
matches = "proj"
item = "projection"

[[rewrite]]
matches = "EmailCT"
item = "lightning"

[[rewrite]]
matches = "wn"
item = "why not"

[[rewrite]]
matches = "oc"
item = "of course"
render = "of course (!!)"   # Escape the exclamation mark.

[[rewrite]]
matches = "Circpipe"
item = ["pipe", "circular"]

[[rewrite]]
matches = "Rectpipe"
item = ["pipe", "rectangular"]

[[rewrite]]
matches = "recorder"
item = "automatic telephone recorder"   # From the wasy Metafont source

[[rewrite]]
matches = "pullback"
item = "pull back"

[[rewrite]]
matches = "pushout"
item = "push out"

[[rewrite]]
matches = "MVComma"
item = ["comma", "sans serif"]

[[rewrite]]
matches = "shallow pan of food"
item = "pan"

[[rewrite]]
matches = "partof"
item = "part of"

[[rewrite]]
matches = "wholeof"
item = "whole of"

[[rewrite]]
matches = "pile of poo"
item = "poo"

[[rewrite]]
matches = "Lineload"
item = "line load"

[[rewrite]]
matches = "sA"
item = "Soyombo"

[[rewrite]]
matches = "sO"
item = ["Soyombo", "terminal"]

[[rewrite]]
matches = "gleichstark"
item = "Gleich Stark"

[[rewrite]]
matches = "textlengthmark"
item = "length mark"

[[rewrite]]
matches = "thermod"
item = "thermodynamic"

[[rewrite]]
matches = "tint, slashed"
item = ["tint", "slashed"]

[[rewrite]]
matches = "Pickup"
item = "answering machine"

[[rewrite]]
matches = "svrexample"
item = "example"

[[rewrite]]
render_contains = "Pisymbol{nkarta}{119}"
item = ["hammer", "and sickle"]

[[rewrite]]
regex = '^hammer (and \w+)$'
item = ["hammer", '\1']

[[rewrite]]
matches = "stst"
item = "standard state"

[[rewrite]]
matches = "carousel horse"
item = ["horse", "carousel"]

[[rewrite]]
matches = ["horse racing", "racehorse"]
item = ["horse", "racing"]

[[rewrite]]
matches = "coins"
item = ["coin", "multiple"]

[[rewrite]]
matches = ["curly hair", "white hair"]
item = "hair"

[[rewrite]]
matches = "emf"
item = "electromotive force"

[[rewrite]]
matches = "wastebasket"
item = "trash"

[[rewrite]]
matches = "trash, restore from"
item = ["trash", "restore from"]

[[rewrite]]
render_contains = '{\smtrT}'
item = "rotated symbols"
render = ""

[[rewrite]]
matches = "NUL"
item = "null character"

[[rewrite]]
matches = "compass"
render_contains = '\dsmathematical'
item = ["compass", "drawing"]

[[rewrite]]
matches = "railway"
item = "train"