# Leo colorizer control file for maple mode.
# This file is in the public domain.

# Properties for maple mode.
properties = {
    "lineComment": "//",
}

# Attributes dict for maple_main ruleset.
maple_main_attributes_dict = {
    "default": "null",
    "digit_re": "",
    "escape": "\\",
    "highlight_digits": "true",
    "ignore_case": "false",
    "no_word_sep": "",
}

# Dictionary of attributes dictionaries for maple mode.
attributesDictDict = {
    "maple_main": maple_main_attributes_dict,
}

# Keywords dict for maple_main ruleset.
maple_main_keywords_dict = {
    "AFactor": "function",
    "AFactors": "function",
    "AIrreduc": "function",
    "AiryAi": "function",
    "AiryAiZeros": "function",
    "AiryBi": "function",
    "AiryBiZeros": "function",
    "AngerJ": "function",
    "Array": "function",
    "ArrayDims": "function",
    "ArrayElems": "function",
    "ArrayIndFns": "function",
    "ArrayOptions": "function",
    "Berlekamp": "function",
    "BesselI": "function",
    "BesselJ": "function",
    "BesselJZeros": "function",
    "BesselK": "function",
    "BesselY": "function",
    "BesselYZeros": "function",
    "Beta": "function",
    "C": "function",
    "CLi": "function",
    "Catalan": "literal2",
    "ChebyShevU": "function",
    "ChebyshevT": "function",
    "CheckArgs": "function",
    "Chi": "function",
    "Ci": "function",
    "CompSeq": "function",
    "Content": "function",
    "CopySign": "function",
    "CylinderD": "function",
    "CylinderU": "function",
    "CylinderV": "function",
    "D": "function",
    "DESol": "function",
    "Default0": "function",
    "DefaultOverflow": "function",
    "DefaultUnderflow": "function",
    "Det": "function",
    "Diff": "function",
    "Digits": "literal2",
    "Dirac": "function",
    "DistDeg": "function",
    "Divide": "function",
    "Ei": "function",
    "Eigenvals": "function",
    "EllipticCE": "function",
    "EllipticCK": "function",
    "EllipticCPi": "function",
    "EllipticE": "function",
    "EllipticF": "function",
    "EllipticK": "function",
    "EllipticModulus": "function",
    "EllipticNome": "function",
    "EllipticPi": "function",
    "Eval": "function",
    "Excel": "function",
    "Expand": "function",
    "FAIL": "literal2",
    "FFT": "function",
    "Factor": "function",
    "Factors": "function",
    "FresnelC": "function",
    "FresnelS": "function",
    "Fresnelf": "function",
    "Fresnelg": "function",
    "FromInert": "function",
    "GAMMA": "function",
    "GF": "function",
    "GaussAGM": "function",
    "Gausselim": "function",
    "Gaussjord": "function",
    "Gcd": "function",
    "Gcdex": "function",
    "GegenbauerC": "function",
    "GetResultDataType": "function",
    "GetResultShape": "function",
    "Greek": "function",
    "HankelH1": "function",
    "HankelH2": "function",
    "Heaviside": "function",
    "Hermite": "function",
    "HermiteH": "function",
    "Hessenberg": "function",
    "I": "literal2",
    "IEEEdiffs": "function",
    "Im": "function",
    "ImportMatrix": "function",
    "ImportVector": "function",
    "Interp": "function",
    "Inverse": "function",
    "Irreduc": "function",
    "IsMatrixShape": "function",
    "JacobiAM": "function",
    "JacobiCD": "function",
    "JacobiCN": "function",
    "JacobiCS": "function",
    "JacobiDC": "function",
    "JacobiDN": "function",
    "JacobiDS": "function",
    "JacobiNC": "function",
    "JacobiND": "function",
    "JacobiNS": "function",
    "JacobiP": "function",
    "JacobiSC": "function",
    "JacobiSD": "function",
    "JacobiSN": "function",
    "JacobiTheta1": "function",
    "JacobiTheta2": "function",
    "JacobiTheta3": "function",
    "JacobiTheta4": "function",
    "JacobiZeta": "function",
    "KelvinBei": "function",
    "KelvinBer": "function",
    "KelvinHei": "function",
    "KelvinHer": "function",
    "KelvinKei": "function",
    "KelvinKer": "function",
    "KummerM": "function",
    "KummerU": "function",
    "LaguerreL": "function",
    "LambertW": "function",
    "Lcm": "function",
    "LegendreP": "function",
    "LegendreQ": "function",
    "LerchPhi": "function",
    "Limit": "function",
    "Linsolve": "function",
    "LommelS1": "function",
    "Lommels2": "function",
    "MOLS": "function",
    "Maple_floats": "function",
    "MatlabMatrix": "function",
    "Matrix": "function",
    "MatrixOptions": "function",
    "MeijerG": "function",
    "ModifiedMeijerG": "function",
    "NULL": "literal2",
    "NextAfter": "function",
    "Normal": "function",
    "Nullspace": "function",
    "NumericClass": "function",
    "NumericEvent": "function",
    "NumericEventHandler": "function",
    "NumericException": "function",
    "NumericStatus": "function",
    "Order": "literal2",
    "OrderedNE": "function",
    "PDEplot_options": "function",
    "Pi": "literal2",
    "Power": "function",
    "Powmod": "function",
    "Prem": "function",
    "Preprocessor": "function",
    "Primitive": "function",
    "Primpart": "function",
    "ProbSplit": "function",
    "ProcessOptions": "function",
    "Product": "function",
    "Psi": "function",
    "Quo": "function",
    "RESol": "function",
    "Randpoly": "function",
    "Randprime": "function",
    "Ratrecon": "function",
    "Re": "function",
    "Record": "function",
    "Reduce": "function",
    "Rem": "function",
    "Resultant": "function",
    "RootOf": "function",
    "Roots": "function",
    "Rounding": "function",
    "SFloatExponent": "function",
    "SFloatMantissa": "function",
    "SPrem": "function",
    "SampleRTable": "function",
    "Scale10": "function",
    "Scale2": "function",
    "SearchText": "function",
    "Shi": "function",
    "Si": "function",
    "Simplify": "function",
    "Smith": "function",
    "Sqrfree": "function",
    "Ssi": "function",
    "StruveH": "function",
    "StruveL": "function",
    "Sum": "function",
    "Svd": "function",
    "TEXT": "function",
    "ToInert": "function",
    "TopologicalSort": "function",
    "Unordered": "function",
    "UseHardwareFloats": "function",
    "Vector": "function",
    "WeberE": "function",
    "WeierstrassP": "function",
    "WeierstrassPPrime": "function",
    "WeierstrassSigma": "function",
    "WeierstrassZeta": "function",
    "WhittakerM": "function",
    "WhittakerW": "function",
    "Zeta": "function",
    "`mod`": "literal2",
    "about": "function",
    "add": "function",
    "addcoords": "function",
    "additionally": "function",
    "addproperty": "function",
    "addressof": "function",
    "algebraic": "function",
    "algsubs": "function",
    "alias": "function",
    "allvalues": "function",
    "anames": "function",
    "and": "keyword1",
    "ans": "function",
    "antihermitian": "function",
    "antisymm": "function",
    "apply": "function",
    "applyop": "function",
    "applyrule": "function",
    "arccos": "function",
    "arccosh": "function",
    "arccot": "function",
    "arccoth": "function",
    "arccsc": "function",
    "arccsch": "function",
    "arcsec": "function",
    "arcsech": "function",
    "arcsin": "function",
    "arcsinh": "function",
    "arctan": "function",
    "arctanh": "function",
    "argument": "function",
    "array": "function",
    "assign": "function",
    "assigned": "function",
    "asspar": "function",
    "assume": "function",
    "assuming": "keyword1",
    "asympt": "function",
    "attributes": "function",
    "band": "function",
    "bernoulli": "function",
    "bernstein": "function",
    "branches": "function",
    "break": "keyword1",
    "by": "keyword1",
    "cat": "function",
    "catch": "keyword1",
    "ceil": "function",
    "changecoords": "function",
    "charfcn": "function",
    "chrem": "function",
    "close": "function",
    "coeff": "function",
    "coeffs": "function",
    "coeftayl": "function",
    "collect": "function",
    "combine": "function",
    "comparray": "function",
    "compiletable": "function",
    "compoly": "function",
    "conjugate": "function",
    "constant": "function",
    "constants": "literal2",
    "content": "function",
    "convergs": "function",
    "convert": "function",
    "coords": "function",
    "copy": "function",
    "cos": "function",
    "cosh": "function",
    "cot": "function",
    "coth": "function",
    "coulditbe": "function",
    "csc": "function",
    "csch": "function",
    "csgn": "function",
    "currentdir": "function",
    "curry": "function",
    "dawson": "function",
    "define": "function",
    "define_external": "function",
    "degree": "function",
    "denom": "function",
    "depends": "function",
    "description": "keyword1",
    "diagon": "function",
    "diff": "function",
    "diffop": "function",
    "dilog": "function",
    "dinterp": "function",
    "disassemble": "function",
    "discont": "function",
    "discrim": "function",
    "dismantle": "function",
    "divide": "function",
    "do": "keyword1",
    "done": "keyword1",
    "dsolve": "function",
    "efficiency": "function",
    "elif": "keyword1",
    "eliminate": "function",
    "ellipsoid": "function",
    "elliptic_int": "function",
    "else": "keyword1",
    "end": "keyword1",
    "entries": "function",
    "erf": "function",
    "erfc": "function",
    "erfi": "function",
    "error": "keyword1",
    "euler": "function",
    "eulermac": "function",
    "eval": "function",
    "evala": "function",
    "evalapply": "function",
    "evalb": "function",
    "evalc": "function",
    "evalf": "function",
    "evalfint": "function",
    "evalhf": "function",
    "evalm": "function",
    "evaln": "function",
    "evalr": "function",
    "evalrC": "function",
    "events": "function",
    "exists": "function",
    "exp": "function",
    "expand": "function",
    "expandoff": "function",
    "expandon": "function",
    "export": "keyword1",
    "exports": "function",
    "extract": "function",
    "extrema": "function",
    "factor": "function",
    "factors": "function",
    "false": "literal2",
    "fclose": "function",
    "fdiscont": "function",
    "feof": "function",
    "fflush": "function",
    "fi": "keyword1",
    "filepos": "function",
    "finally": "keyword1",
    "fixdiv": "function",
    "float": "function",
    "floor": "function",
    "fnormal": "function",
    "fold": "function",
    "fopen": "function",
    "for": "keyword1",
    "forall": "function",
    "forget": "function",
    "fprintf": "function",
    "frac": "function",
    "freeze": "function",
    "frem": "function",
    "fremove": "function",
    "from": "keyword1",
    "frontend": "function",
    "fscanf": "function",
    "fsolve": "function",
    "galois": "function",
    "gamma": "literal2",
    "gc": "function",
    "gcd": "function",
    "gcdex": "function",
    "genpoly": "function",
    "getenv": "function",
    "global": "keyword1",
    "harmonic": "function",
    "has": "function",
    "hasfun": "function",
    "hasoption": "function",
    "hastype": "function",
    "heap": "function",
    "hermitian": "function",
    "hfarray": "function",
    "history": "function",
    "hypergeom": "function",
    "iFFT": "function",
    "icontent": "function",
    "identity": "function",
    "if": "keyword1",
    "ifactor": "function",
    "ifactors": "function",
    "igcd": "function",
    "igcdex": "function",
    "ilcm": "function",
    "ilog": "function",
    "ilog10": "function",
    "ilog2": "function",
    "implicitdiff": "function",
    "implies": "keyword1",
    "in": "keyword1",
    "indets": "function",
    "index": "function",
    "indexed": "function",
    "indices": "function",
    "infinity": "literal2",
    "inifcn": "function",
    "ininame": "function",
    "initialcondition": "function",
    "initialize": "function",
    "insert": "function",
    "int": "function",
    "intat": "function",
    "integrate": "literal2",
    "interface": "function",
    "interp": "function",
    "intersect": "keyword1",
    "invfunc": "function",
    "invztrans": "function",
    "iostatus": "function",
    "iperfpow": "function",
    "iquo": "function",
    "iratrecon": "function",
    "irem": "function",
    "iroot": "function",
    "irreduc": "function",
    "is": "function",
    "iscont": "function",
    "isdifferential": "function",
    "isolate": "function",
    "isolve": "function",
    "ispoly": "function",
    "isprime": "function",
    "isqrfree": "function",
    "isqrt": "function",
    "issqr": "function",
    "ithprime": "function",
    "lasterror": "literal2",
    "latex": "function",
    "lattice": "function",
    "lcm": "function",
    "lcoeff": "function",
    "leadterm": "function",
    "length": "function",
    "lexorder": "function",
    "lhs": "function",
    "libname": "literal2",
    "limit": "function",
    "ln": "function",
    "lnGAMMA": "function",
    "local": "keyword1",
    "log": "function",
    "log10": "function",
    "lprint": "function",
    "map": "function",
    "map2": "function",
    "match": "function",
    "matrix": "function",
    "max": "function",
    "maximize": "function",
    "maxnorm": "function",
    "maxorder": "function",
    "member": "function",
    "min": "function",
    "minimize": "function",
    "minus": "keyword1",
    "mkdir": "function",
    "mod": "keyword1",
    "modp": "function",
    "modp1": "function",
    "modp2": "function",
    "modpol": "function",
    "mods": "function",
    "module": "function",
    "msolve": "function",
    "mtaylor": "function",
    "mul": "function",
    "next": "keyword1",
    "nextprime": "function",
    "nops": "function",
    "norm": "function",
    "normal": "function",
    "not": "keyword1",
    "nprintf": "function",
    "numboccur": "function",
    "numer": "function",
    "numerics": "function",
    "od": "keyword1",
    "odetest": "function",
    "op": "function",
    "open": "function",
    "option": "keyword1",
    "options": "keyword1",
    "or": "keyword1",
    "order": "function",
    "parse": "function",
    "patmatch": "function",
    "pclose": "function",
    "pdesolve": "function",
    "pdetest": "function",
    "pdsolve": "function",
    "piecewise": "function",
    "plot": "function",
    "plot3d": "function",
    "plotsetup": "function",
    "pochhammer": "function",
    "pointto": "function",
    "poisson": "function",
    "polar": "function",
    "polylog": "function",
    "polynom": "function",
    "powmod": "function",
    "prem": "function",
    "prevprime": "function",
    "primpart": "function",
    "print": "function",
    "printf": "function",
    "printlevel": "literal2",
    "proc": "keyword1",
    "procbody": "function",
    "procmake": "function",
    "product": "function",
    "proot": "function",
    "property": "function",
    "protect": "function",
    "psqrt": "function",
    "queue": "function",
    "quit": "keyword1",
    "quo": "function",
    "radfield": "function",
    "radnormal": "function",
    "radsimp": "function",
    "rand": "function",
    "randomize": "function",
    "randpoly": "function",
    "range": "function",
    "ratinterp": "function",
    "rationalize": "function",
    "ratrecon": "function",
    "read": "keyword1",
    "readbytes": "function",
    "readdata": "function",
    "readlib": "function",
    "readline": "function",
    "readstat": "function",
    "realroot": "function",
    "references": "function",
    "release": "function",
    "rem": "function",
    "remove": "function",
    "repository": "function",
    "requires": "function",
    "residue": "function",
    "resultant": "function",
    "return": "keyword1",
    "rhs": "function",
    "rmdir": "function",
    "root": "function",
    "rootbound": "function",
    "roots": "function",
    "round": "function",
    "rsolve": "function",
    "rtable": "function",
    "rtable_algebra": "function",
    "rtable_dims": "function",
    "rtable_elems": "function",
    "rtable_indfns": "function",
    "rtable_options": "function",
    "rtable_printf": "function",
    "rtable_scanf": "function",
    "save": "keyword1",
    "savelib": "function",
    "scalar": "function",
    "scan": "function",
    "scanf": "function",
    "searchtext": "function",
    "sec": "function",
    "sech": "function",
    "select": "function",
    "selectfun": "function",
    "selectremove": "function",
    "seq": "function",
    "series": "function",
    "setattribute": "function",
    "shale": "function",
    "showprofile": "function",
    "showtime": "function",
    "sign": "function",
    "signum": "function",
    "simplify": "function",
    "sin": "function",
    "singular": "function",
    "sinh": "function",
    "sinterp": "function",
    "smartplot3d": "function",
    "solve": "function",
    "solvefor": "function",
    "sort": "function",
    "sparse": "function",
    "spec_eval_rule": "function",
    "spline": "function",
    "spreadsheet": "function",
    "sprem": "function",
    "sprintf": "function",
    "sqrfree": "function",
    "sqrt": "function",
    "sscanf": "function",
    "ssystem": "function",
    "stop": "keyword1",
    "storage": "function",
    "string": "function",
    "sturm": "function",
    "sturmseq": "function",
    "subs": "function",
    "subset": "keyword1",
    "subsindets": "function",
    "subsop": "function",
    "substring": "function",
    "subtype": "function",
    "sum": "function",
    "surd": "function",
    "symmdiff": "function",
    "symmetric": "function",
    "syntax": "function",
    "system": "function",
    "table": "function",
    "tan": "function",
    "tang": "function",
    "taylor": "function",
    "testeq": "function",
    "testfloat": "function",
    "thaw": "function",
    "then": "keyword1",
    "thiele": "function",
    "time": "function",
    "timelimit": "function",
    "to": "keyword1",
    "traperror": "function",
    "triangular": "function",
    "trigsubs": "function",
    "true": "literal2",
    "trunc": "function",
    "try": "keyword1",
    "type": "function",
    "typematch": "function",
    "unames": "function",
    "unapply": "function",
    "unassign": "function",
    "undefined": "literal2",
    "union": "keyword1",
    "unit": "function",
    "unprotect": "function",
    "update": "function",
    "use": "keyword1",
    "userinfo": "function",
    "value": "function",
    "vector": "function",
    "verify": "function",
    "whattype": "function",
    "while": "keyword1",
    "with": "function",
    "worksheet": "function",
    "writebytes": "function",
    "writedata": "function",
    "writeline": "function",
    "writestat": "function",
    "writeto": "function",
    "xor": "keyword1",
    "zero": "function",
    "zip": "function",
    "ztrans": "function",
}

# Dictionary of keywords dictionaries for maple mode.
keywordsDictDict = {
    "maple_main": maple_main_keywords_dict,
}

# Rules for maple_main ruleset.

def maple_rule0(colorer, s, i):
    return colorer.match_span(s, i, kind="literal1", begin="\"", end="\"")

def maple_rule1(colorer, s, i):
    return colorer.match_span(s, i, kind="literal1", begin="'", end="'")

def maple_rule2(colorer, s, i):
    return colorer.match_span(s, i, kind="literal1", begin="`", end="`")

def maple_rule3(colorer, s, i):
    return colorer.match_eol_span(s, i, kind="comment1", seq="#")

def maple_rule4(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="+")

def maple_rule5(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="-")

def maple_rule6(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="*")

def maple_rule7(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="/")

def maple_rule8(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="^")

def maple_rule9(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="<>")

def maple_rule10(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="<=")

def maple_rule11(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="<")

def maple_rule12(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq=">=")

def maple_rule13(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq=">")

def maple_rule14(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="=")

def maple_rule15(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="$")

def maple_rule16(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="@@")

def maple_rule17(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="@")

def maple_rule18(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="||")

def maple_rule19(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq=":=")

def maple_rule20(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="::")

def maple_rule21(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq=":-")

def maple_rule22(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="&")

def maple_rule23(colorer, s, i):
    return colorer.match_plain_seq(s, i, kind="operator", seq="!")

def maple_rule24(colorer, s, i):
    return colorer.match_keywords(s, i)

# Rules dict for maple_main ruleset.
rulesDict1 = {
    "!": [maple_rule23,],
    "\"": [maple_rule0,],
    "#": [maple_rule3,],
    "$": [maple_rule15,],
    "&": [maple_rule22,],
    "'": [maple_rule1,],
    "*": [maple_rule6,],
    "+": [maple_rule4,],
    "-": [maple_rule5,],
    "/": [maple_rule7,],
    "0": [maple_rule24,],
    "1": [maple_rule24,],
    "2": [maple_rule24,],
    "3": [maple_rule24,],
    "4": [maple_rule24,],
    "5": [maple_rule24,],
    "6": [maple_rule24,],
    "7": [maple_rule24,],
    "8": [maple_rule24,],
    "9": [maple_rule24,],
    ":": [maple_rule19, maple_rule20, maple_rule21,],
    "<": [maple_rule9, maple_rule10, maple_rule11,],
    "=": [maple_rule14,],
    ">": [maple_rule12, maple_rule13,],
    "@": [maple_rule16, maple_rule17, maple_rule24,],
    "A": [maple_rule24,],
    "B": [maple_rule24,],
    "C": [maple_rule24,],
    "D": [maple_rule24,],
    "E": [maple_rule24,],
    "F": [maple_rule24,],
    "G": [maple_rule24,],
    "H": [maple_rule24,],
    "I": [maple_rule24,],
    "J": [maple_rule24,],
    "K": [maple_rule24,],
    "L": [maple_rule24,],
    "M": [maple_rule24,],
    "N": [maple_rule24,],
    "O": [maple_rule24,],
    "P": [maple_rule24,],
    "Q": [maple_rule24,],
    "R": [maple_rule24,],
    "S": [maple_rule24,],
    "T": [maple_rule24,],
    "U": [maple_rule24,],
    "V": [maple_rule24,],
    "W": [maple_rule24,],
    "X": [maple_rule24,],
    "Y": [maple_rule24,],
    "Z": [maple_rule24,],
    "^": [maple_rule8,],
    "_": [maple_rule24,],
    "`": [maple_rule2, maple_rule24,],
    "a": [maple_rule24,],
    "b": [maple_rule24,],
    "c": [maple_rule24,],
    "d": [maple_rule24,],
    "e": [maple_rule24,],
    "f": [maple_rule24,],
    "g": [maple_rule24,],
    "h": [maple_rule24,],
    "i": [maple_rule24,],
    "j": [maple_rule24,],
    "k": [maple_rule24,],
    "l": [maple_rule24,],
    "m": [maple_rule24,],
    "n": [maple_rule24,],
    "o": [maple_rule24,],
    "p": [maple_rule24,],
    "q": [maple_rule24,],
    "r": [maple_rule24,],
    "s": [maple_rule24,],
    "t": [maple_rule24,],
    "u": [maple_rule24,],
    "v": [maple_rule24,],
    "w": [maple_rule24,],
    "x": [maple_rule24,],
    "y": [maple_rule24,],
    "z": [maple_rule24,],
    "|": [maple_rule18,],
}

# x.rulesDictDict for maple mode.
rulesDictDict = {
    "maple_main": rulesDict1,
}

# Import dict for maple mode.
importDict = {}
