"""
Common English character trigrams for garble detection.

This file is auto-generated by scripts/generate_data.py
Data source: Peter Norvig's word frequency list (https://norvig.com/ngrams/)
License: MIT

Do not edit this file manually.
"""

# fmt: off
COMMON_TRIGRAMS = frozenset({
    "aba", "abe", "abi", "abl", "abo", "abs", "aby", "aca", "acc", "ace", "ach", "aci", "ack", "aco", "acr",
    "act", "acu", "acy", "ada", "add", "ade", "adi", "adl", "adm", "ado", "ads", "adu", "adv", "ady", "ael",
    "afe", "aff", "afr", "aft", "aga", "age", "agi", "agn", "ago", "agr", "ags", "agu", "aho", "aid", "aig",
    "ail", "aim", "ain", "air", "ais", "ait", "ajo", "ake", "aki", "ala", "alb", "alc", "ald", "ale", "alf",
    "ali", "alk", "all", "alm", "alo", "alr", "als", "alt", "alu", "alw", "aly", "ama", "amb", "ame", "ami",
    "amm", "amo", "amp", "ams", "ana", "anc", "and", "ane", "ang", "ani", "ank", "ann", "ano", "ans", "ant",
    "anu", "any", "apa", "ape", "aph", "api", "apo", "app", "apr", "aps", "apt", "ara", "arb", "arc", "ard",
    "are", "arg", "ari", "ark", "arl", "arm", "arn", "aro", "arr", "ars", "art", "ary", "asc", "ase", "ash",
    "asi", "ask", "aso", "asp", "ass", "ast", "asu", "asy", "ata", "atc", "ate", "ath", "ati", "atl", "atm",
    "ato", "atr", "ats", "att", "atu", "auc", "aud", "aug", "aul", "aun", "aur", "aus", "aut", "ava", "ave",
    "avi", "avo", "awa", "axi", "aye", "ayi", "aym", "ays", "azi", "bab", "bac", "bad", "bag", "bal", "ban",
    "bar", "bas", "bat", "bay", "bea", "bec", "bed", "bee", "bef", "beg", "beh", "bei", "bel", "ben", "ber",
    "bes", "bet", "bia", "bid", "big", "bil", "bin", "bio", "bir", "bit", "bje", "bla", "ble", "bli", "blo",
    "blu", "bly", "bmi", "boa", "bod", "bol", "bon", "boo", "bor", "bos", "bot", "bou", "bov", "box", "boy",
    "bra", "bre", "bri", "bro", "bru", "bsc", "bse", "bsi", "bst", "bud", "bui", "bul", "bum", "bur", "bus",
    "but", "buy", "cab", "cad", "cal", "cam", "can", "cap", "car", "cas", "cat", "cau", "cce", "cco", "ccu",
    "ced", "cei", "cel", "cem", "cen", "cep", "cer", "ces", "cha", "che", "chi", "chn", "cho", "chr", "chu",
    "cia", "cid", "cie", "cif", "cil", "cin", "cio", "cip", "cir", "cis", "cit", "cka", "cke", "cki", "ckl",
    "cks", "cla", "cle", "cli", "clo", "clu", "coa", "coc", "cod", "col", "com", "con", "coo", "cop", "cor",
    "cos", "cot", "cou", "cov", "cra", "cre", "cri", "cro", "cru", "cta", "cte", "cti", "ctl", "cto", "ctr",
    "cts", "ctu", "cul", "cum", "cup", "cur", "cus", "cut", "cyc", "dai", "dal", "dam", "dan", "dar", "dat",
    "dav", "day", "dba", "dde", "ddi", "ddl", "ddr", "dea", "deb", "dec", "ded", "dee", "def", "deg", "del",
    "dem", "den", "deo", "dep", "der", "des", "det", "dev", "dex", "dge", "dia", "dic", "did", "die", "dif",
    "dig", "din", "dio", "dir", "dis", "dit", "div", "dle", "dli", "dly", "dmi", "dne", "doc", "doe", "dog",
    "dol", "dom", "don", "doo", "dor", "dou", "dow", "dra", "dre", "dri", "dro", "dru", "dua", "duc", "due",
    "dul", "dur", "dus", "dva", "dvd", "dve", "dvi", "dwa", "dwi", "eac", "ead", "eag", "eak", "eal", "eam",
    "ean", "eap", "ear", "eas", "eat", "eau", "eav", "eba", "ebo", "ebr", "ebs", "eca", "ece", "ech", "eci",
    "eck", "eco", "ecr", "ect", "ecu", "edb", "edd", "ede", "edg", "edi", "edo", "eds", "edu", "eed", "eek",
    "eel", "eem", "een", "eep", "eer", "ees", "eet", "efe", "eff", "efi", "efo", "eft", "efu", "ega", "ege",
    "egi", "ego", "egr", "egu", "eha", "ehi", "eho", "eig", "ein", "eir", "eit", "eiv", "ela", "elc", "eld",
    "ele", "elf", "eli", "ell", "elo", "elp", "els", "elt", "elv", "ely", "ema", "emb", "eme", "emi", "emo",
    "emp", "ems", "ena", "enc", "end", "ene", "eng", "eni", "enn", "eno", "enr", "ens", "ent", "enu", "env",
    "eon", "eop", "eor", "eos", "epa", "epe", "eph", "epi", "epl", "epo", "epr", "eps", "ept", "epu", "equ",
    "era", "erb", "erc", "erd", "ere", "erf", "erg", "eri", "erl", "erm", "ern", "ero", "erp", "err", "ers",
    "ert", "erv", "erw", "ery", "esa", "esb", "esc", "esd", "ese", "esh", "esi", "esk", "eso", "esp", "ess",
    "est", "esu", "eta", "etc", "ete", "eth", "eti", "eto", "etr", "ets", "ett", "etu", "etw", "ety", "eur",
    "eva", "eve", "evi", "evo", "ewa", "ewe", "ewi", "ews", "exa", "exc", "exe", "exi", "exp", "ext", "eye",
    "fac", "fai", "fal", "fam", "fan", "faq", "far", "fas", "fat", "fav", "fax", "fea", "feb", "fec", "fed",
    "fee", "fel", "fen", "fer", "fes", "fet", "few", "ffe", "ffi", "ffo", "fic", "fie", "fig", "fil", "fin",
    "fir", "fis", "fit", "fix", "fla", "fle", "fli", "flo", "flu", "foc", "fol", "foo", "for", "fou", "fra",
    "fre", "fri", "fro", "fte", "fts", "ftw", "fuc", "ful", "fun", "fur", "fut", "gag", "gai", "gal", "gam",
    "gan", "gar", "gas", "gat", "gay", "gaz", "ged", "gel", "gem", "gen", "geo", "ger", "ges", "get", "gge",
    "ghe", "ghl", "ght", "gia", "gic", "gie", "gif", "gin", "gio", "gir", "gis", "git", "giv", "gla", "gle",
    "gli", "glo", "gna", "gne", "gni", "gno", "god", "goi", "gol", "gon", "goo", "gor", "got", "gov", "gra",
    "gre", "gri", "gro", "gth", "gto", "gua", "gue", "gui", "gul", "gur", "gus", "hab", "had", "hae", "hai",
    "hal", "ham", "han", "hap", "har", "has", "hat", "hav", "hea", "hec", "hed", "hee", "hei", "hel", "hem",
    "hen", "heo", "her", "hes", "het", "hey", "hib", "hic", "hie", "hig", "hil", "him", "hin", "hio", "hip",
    "hir", "his", "hit", "hiv", "hly", "hni", "hno", "hod", "hoe", "hol", "hom", "hon", "hoo", "hop", "hor",
    "hos", "hot", "hou", "how", "hre", "hri", "hro", "hte", "htm", "hts", "hum", "hun", "hur", "hus", "hys",
    "iab", "iag", "ial", "iam", "ian", "iar", "iat", "ibe", "ibi", "ibl", "ibr", "ibu", "ica", "ice", "ich",
    "ici", "ick", "icl", "ico", "icr", "ics", "ict", "icu", "icy", "ida", "idd", "ide", "idg", "idi", "ids",
    "idu", "ied", "ief", "iel", "ien", "ier", "ies", "iet", "iev", "iew", "ife", "iff", "ifi", "ifo", "ift",
    "ify", "iga", "ige", "igh", "igi", "ign", "igu", "ike", "iki", "ila", "ild", "ile", "ili", "ill", "ilm",
    "ilo", "ils", "ilt", "ily", "ima", "ime", "imi", "imm", "imo", "imp", "ims", "imu", "ina", "inc", "ind",
    "ine", "inf", "ing", "ini", "ink", "inl", "inm", "inn", "ino", "ins", "int", "inu", "inv", "iod", "iol",
    "ion", "ior", "iou", "ipa", "ipe", "ipl", "ipm", "ipp", "ips", "ipt", "iqu", "ira", "irc", "ird", "ire",
    "iri", "irl", "irm", "iro", "irs", "irt", "isa", "isc", "ise", "ish", "isi", "isk", "isl", "ism", "iso",
    "isp", "iss", "ist", "ita", "itc", "ite", "ith", "iti", "itl", "ito", "its", "itt", "itu", "ity", "ium",
    "iva", "ive", "ivi", "ixe", "iza", "ize", "jac", "jam", "jan", "jap", "jec", "jer", "jew", "job", "joh",
    "joi", "jor", "jou", "joy", "jud", "jul", "jun", "jus", "kag", "kan", "kar", "kat", "ked", "kee", "kel",
    "ken", "ker", "kes", "ket", "key", "kid", "kil", "kin", "kit", "kno", "lab", "lac", "lad", "lag", "lai",
    "lak", "lam", "lan", "lap", "lar", "las", "lat", "lau", "law", "lay", "lbu", "lco", "lde", "ldi", "ldr",
    "lds", "lea", "leb", "lec", "led", "lee", "lef", "leg", "lem", "len", "lep", "ler", "les", "let", "lev",
    "lex", "ley", "lia", "lib", "lic", "lid", "lie", "lif", "lig", "lik", "lim", "lin", "lio", "lip", "lis",
    "lit", "liv", "liz", "lla", "lle", "lli", "llo", "lls", "llu", "lly", "lmo", "loa", "lob", "loc", "log",
    "lon", "loo", "lop", "lor", "los", "lot", "lou", "lov", "low", "loy", "lph", "lre", "lse", "lso", "lta",
    "lte", "lth", "lti", "lto", "lts", "ltu", "lty", "lua", "lub", "luc", "lud", "lue", "lum", "lun", "lus",
    "lut", "lve", "lwa", "lys", "mac", "mad", "mag", "mai", "maj", "mak", "mal", "man", "map", "mar", "mas",
    "mat", "max", "may", "maz", "mba", "mbe", "mbi", "mbl", "mbo", "mea", "med", "mee", "mel", "mem", "men",
    "mer", "mes", "met", "mic", "mid", "mig", "mil", "min", "mis", "mit", "mma", "mme", "mmi", "mmo", "mmu",
    "mob", "mod", "mol", "mom", "mon", "moo", "mor", "mos", "mot", "mou", "mov", "mpa", "mpe", "mpi", "mpl",
    "mpo", "mpr", "mps", "mpt", "mpu", "muc", "mul", "mum", "mun", "mus", "mys", "nab", "nad", "nag", "nal",
    "nam", "nan", "nar", "nas", "nat", "nav", "nce", "nch", "nci", "ncl", "nco", "ncr", "nct", "ncy", "nda",
    "nde", "ndi", "ndl", "ndo", "ndr", "nds", "ndu", "nea", "nec", "ned", "nee", "nef", "neg", "nei", "nel",
    "nem", "nen", "ner", "nes", "net", "nev", "new", "nex", "ney", "nfe", "nfi", "nfl", "nfo", "nga", "nge",
    "ngi", "ngl", "ngr", "ngs", "ngt", "ngu", "nha", "nia", "nic", "nie", "nif", "nig", "nim", "nin", "nio",
    "niq", "nis", "nit", "niv", "niz", "nke", "nki", "nks", "nli", "nlo", "nly", "nme", "nna", "nne", "nni",
    "nno", "nnu", "nny", "nol", "nom", "non", "nor", "nos", "not", "nou", "nov", "now", "nsa", "nse", "nsf",
    "nsh", "nsi", "nso", "nsp", "nst", "nsu", "nsw", "nta", "nte", "nth", "nti", "ntl", "nto", "ntr", "nts",
    "ntu", "nty", "nua", "nud", "nue", "nuf", "num", "nus", "nut", "nve", "nvi", "nvo", "oac", "oad", "oal",
    "oan", "oar", "oas", "oat", "oba", "obe", "obi", "obj", "obl", "obs", "oca", "occ", "oce", "och", "oci",
    "ock", "oco", "oct", "ocu", "oda", "ode", "odi", "ods", "odu", "ody", "oes", "ofe", "off", "ofi", "oft",
    "oge", "ogg", "ogi", "ogl", "ogo", "ogr", "ogs", "ogy", "ohn", "oic", "oid", "oil", "oin", "ois", "oje",
    "oke", "oki", "oks", "ola", "old", "ole", "olf", "oli", "oll", "olo", "ols", "olu", "olv", "oly", "oma",
    "omb", "ome", "omi", "omm", "omo", "omp", "oms", "ona", "onc", "ond", "one", "onf", "ong", "oni", "onl",
    "onm", "onn", "ono", "ons", "ont", "onv", "ony", "ood", "ook", "ool", "oom", "oon", "oop", "oor", "oos",
    "oot", "ope", "oph", "opi", "opl", "opm", "opo", "opp", "opr", "ops", "opt", "opu", "opy", "ora", "orc",
    "ord", "ore", "org", "ori", "ork", "orl", "orm", "orn", "oro", "orp", "orr", "ors", "ort", "oru", "orw",
    "ory", "osa", "ose", "osi", "oso", "osp", "oss", "ost", "ota", "ote", "oth", "oti", "oto", "ots", "ott",
    "oub", "oug", "oul", "oun", "oup", "our", "ous", "out", "ova", "ove", "ovi", "owa", "owe", "owi", "owl",
    "own", "ows", "oxi", "oye", "oys", "pac", "pag", "pai", "pal", "pan", "pap", "par", "pas", "pat", "pau",
    "pay", "pda", "pea", "pec", "ped", "pee", "pel", "pen", "peo", "per", "pes", "pet", "pha", "phe", "phi",
    "pho", "phy", "pic", "pie", "pil", "pin", "pir", "pit", "pla", "ple", "pli", "plo", "plu", "ply", "pme",
    "poi", "pok", "pol", "pon", "poo", "pop", "por", "pos", "pot", "pou", "pow", "ppe", "ppi", "ppl", "ppo",
    "ppr", "pra", "pre", "pri", "pro", "pte", "pti", "pto", "pub", "pul", "pur", "pus", "put", "pyr", "qua",
    "que", "qui", "quo", "rab", "rac", "rad", "raf", "rag", "rai", "ral", "ram", "ran", "rap", "rar", "ras",
    "rat", "rav", "raw", "ray", "rba", "rbi", "rbo", "rce", "rch", "rci", "rcu", "rda", "rde", "rdi", "rds",
    "rea", "reb", "rec", "red", "ree", "ref", "reg", "reh", "rei", "rel", "rem", "ren", "rep", "req", "rer",
    "res", "ret", "rev", "rew", "rfa", "rfe", "rfo", "rga", "rge", "rgi", "rgy", "ria", "rib", "ric", "rid",
    "rie", "rif", "rig", "ril", "rim", "rin", "rio", "rip", "ris", "rit", "riv", "riz", "rke", "rki", "rks",
    "rla", "rld", "rle", "rli", "rls", "rly", "rma", "rme", "rmi", "rmo", "rms", "rna", "rne", "rni", "rnm",
    "rno", "rns", "roa", "rob", "roc", "rod", "rof", "rog", "roj", "rok", "rol", "rom", "ron", "roo", "rop",
    "ror", "ros", "rot", "rou", "rov", "row", "roy", "rpo", "rpr", "rra", "rre", "rri", "rro", "rry", "rsa",
    "rse", "rsh", "rsi", "rso", "rss", "rst", "rta", "rte", "rth", "rti", "rtm", "rtn", "rto", "rts", "rtu",
    "rty", "rua", "ruc", "rue", "rug", "rui", "rul", "rum", "run", "rus", "rva", "rve", "rvi", "rwa", "sab",
    "sac", "saf", "sag", "sai", "sal", "sam", "san", "sar", "sas", "sat", "sav", "say", "sbi", "sca", "sce",
    "sch", "sci", "scl", "sco", "scr", "scu", "sda", "sea", "sec", "sed", "see", "sel", "sem", "sen", "sep",
    "seq", "ser", "ses", "set", "sev", "sex", "sha", "she", "shi", "sho", "sia", "sib", "sic", "sid", "sie",
    "sif", "sig", "sil", "sim", "sin", "sio", "sis", "sit", "siv", "siz", "ske", "ski", "sla", "sle", "sli",
    "slo", "sly", "sma", "sme", "smi", "smo", "soc", "sof", "sol", "som", "son", "sor", "sou", "spa", "spe",
    "spi", "spl", "spo", "spr", "squ", "ssa", "sse", "ssi", "sso", "ssu", "ssw", "sta", "ste", "sti", "stl",
    "stm", "sto", "str", "sts", "stu", "sty", "sua", "sub", "suc", "sue", "sug", "sui", "sul", "sum", "sun",
    "sup", "sur", "sus", "swe", "swi", "swo", "sym", "syn", "sys", "tab", "tac", "taf", "tag", "tai", "tak",
    "tal", "tam", "tan", "tar", "tas", "tat", "tau", "tax", "tay", "tba", "tch", "tea", "tec", "ted", "tee",
    "teg", "tei", "tel", "tem", "ten", "tep", "ter", "tes", "tev", "tex", "tfo", "tha", "the", "thi", "thl",
    "tho", "thr", "ths", "thu", "thy", "tia", "tib", "tic", "tie", "tif", "tig", "til", "tim", "tin", "tio",
    "tip", "tir", "tis", "tit", "tiv", "tla", "tle", "tly", "tma", "tme", "tne", "tob", "toc", "tod", "tog",
    "tol", "tom", "ton", "too", "top", "tor", "tos", "tot", "tou", "tow", "toy", "tra", "tre", "tri", "tro",
    "tru", "try", "tta", "tte", "tti", "ttl", "tto", "ttr", "tua", "tud", "tue", "tun", "tur", "tus", "tut",
    "twa", "twe", "twi", "two", "tyl", "typ", "uag", "ual", "uan", "uar", "uat", "ubj", "ubl", "ubm", "ubs",
    "uca", "ucc", "uce", "uch", "uck", "uct", "ude", "udg", "udi", "udy", "ued", "uel", "uen", "uer", "ues",
    "ufa", "uff", "uge", "ugg", "ugh", "ugu", "uic", "uid", "uil", "uin", "uip", "uir", "uis", "uit", "ula",
    "uld", "ule", "uli", "ull", "ult", "uly", "uma", "umb", "ume", "umm", "ump", "ums", "una", "unc", "und",
    "une", "ung", "uni", "unk", "unl", "unn", "uns", "unt", "uot", "upd", "upe", "upl", "upo", "upp", "ups",
    "ura", "urb", "urc", "urd", "ure", "urg", "uri", "url", "urn", "uro", "urp", "urr", "urs", "urt", "urv",
    "ury", "usa", "use", "ush", "usi", "usl", "uss", "ust", "usu", "uta", "ute", "uth", "uti", "uto", "uts",
    "utt", "utu", "uty", "vac", "vai", "val", "van", "var", "vas", "vat", "ved", "vel", "vem", "ven", "ver",
    "ves", "vey", "via", "vic", "vid", "vie", "vig", "vil", "vin", "vio", "vir", "vis", "vit", "voi", "vol",
    "vor", "vot", "wai", "wal", "wan", "war", "was", "wat", "way", "wea", "web", "wed", "wee", "wei", "wel",
    "wen", "wer", "wes", "wev", "wha", "whe", "whi", "who", "why", "wid", "wil", "win", "wir", "wis", "wit",
    "wle", "wne", "wnl", "wom", "won", "woo", "wor", "wou", "wri", "wro", "wse", "wsl", "xam", "xas", "xce",
    "xec", "xed", "xic", "xim", "xis", "xpe", "xpl", "xpo", "xpr", "xte", "xtr", "yah", "ycl", "yea", "yed",
    "yer", "yes", "yet", "yin", "yle", "yme", "yon", "yor", "you", "ype", "yri", "ysi", "yst", "yth", "ywo",
    "zat", "zed", "zer", "zin", "zon",
})
# fmt: on
