1836 lines
23 KiB
TypeScript
1836 lines
23 KiB
TypeScript
import { sha256 } from "@noble/hashes/sha256";
|
|
|
|
const animals = [
|
|
"canidae",
|
|
"felidae",
|
|
"cat",
|
|
"cattle",
|
|
"dog",
|
|
"donkey",
|
|
"goat",
|
|
"horse",
|
|
"pig",
|
|
"rabbit",
|
|
"aardvark",
|
|
"aardwolf",
|
|
"albatross",
|
|
"alligator",
|
|
"alpaca",
|
|
"amphibian",
|
|
"anaconda",
|
|
"angelfish",
|
|
"anglerfish",
|
|
"ant",
|
|
"anteater",
|
|
"antelope",
|
|
"antlion",
|
|
"ape",
|
|
"aphid",
|
|
"armadillo",
|
|
"asp",
|
|
"baboon",
|
|
"badger",
|
|
"bandicoot",
|
|
"barnacle",
|
|
"barracuda",
|
|
"basilisk",
|
|
"bass",
|
|
"bat",
|
|
"bear",
|
|
"beaver",
|
|
"bedbug",
|
|
"bee",
|
|
"beetle",
|
|
"bird",
|
|
"bison",
|
|
"blackbird",
|
|
"boa",
|
|
"boar",
|
|
"bobcat",
|
|
"bobolink",
|
|
"bonobo",
|
|
"booby",
|
|
"bovid",
|
|
"bug",
|
|
"butterfly",
|
|
"buzzard",
|
|
"camel",
|
|
"canid",
|
|
"capybara",
|
|
"cardinal",
|
|
"caribou",
|
|
"carp",
|
|
"cat",
|
|
"catshark",
|
|
"caterpillar",
|
|
"catfish",
|
|
"cattle",
|
|
"centipede",
|
|
"cephalopod",
|
|
"chameleon",
|
|
"cheetah",
|
|
"chickadee",
|
|
"chicken",
|
|
"chimpanzee",
|
|
"chinchilla",
|
|
"chipmunk",
|
|
"clam",
|
|
"clownfish",
|
|
"cobra",
|
|
"cockroach",
|
|
"cod",
|
|
"condor",
|
|
"constrictor",
|
|
"coral",
|
|
"cougar",
|
|
"cow",
|
|
"coyote",
|
|
"crab",
|
|
"crane",
|
|
"crawdad",
|
|
"crayfish",
|
|
"cricket",
|
|
"crocodile",
|
|
"crow",
|
|
"cuckoo",
|
|
"cicada",
|
|
"damselfly",
|
|
"deer",
|
|
"dingo",
|
|
"dinosaur",
|
|
"dog",
|
|
"dolphin",
|
|
"donkey",
|
|
"dormouse",
|
|
"dove",
|
|
"dragonfly",
|
|
"dragon",
|
|
"duck",
|
|
"eagle",
|
|
"earthworm",
|
|
"earwig",
|
|
"echidna",
|
|
"eel",
|
|
"egret",
|
|
"elephant",
|
|
"elk",
|
|
"emu",
|
|
"ermine",
|
|
"falcon",
|
|
"ferret",
|
|
"finch",
|
|
"firefly",
|
|
"fish",
|
|
"flamingo",
|
|
"flea",
|
|
"fly",
|
|
"flyingfish",
|
|
"fowl",
|
|
"fox",
|
|
"frog",
|
|
"gamefowl",
|
|
"galliform",
|
|
"gazelle",
|
|
"gecko",
|
|
"gerbil",
|
|
"gibbon",
|
|
"giraffe",
|
|
"goat",
|
|
"goldfish",
|
|
"goose",
|
|
"gopher",
|
|
"gorilla",
|
|
"grasshopper",
|
|
"grouse",
|
|
"guan",
|
|
"guanaco",
|
|
"guineafowl",
|
|
"gull",
|
|
"guppy",
|
|
"haddock",
|
|
"halibut",
|
|
"hamster",
|
|
"hare",
|
|
"harrier",
|
|
"hawk",
|
|
"hedgehog",
|
|
"heron",
|
|
"herring",
|
|
"hippopotamus",
|
|
"hookworm",
|
|
"hornet",
|
|
"horse",
|
|
"hoverfly",
|
|
"hummingbird",
|
|
"hyena",
|
|
"iguana",
|
|
"impala",
|
|
"jackal",
|
|
"jaguar",
|
|
"jay",
|
|
"jellyfish",
|
|
"junglefowl",
|
|
"kangaroo",
|
|
"kingfisher",
|
|
"kite",
|
|
"kiwi",
|
|
"koala",
|
|
"koi",
|
|
"krill",
|
|
"ladybug",
|
|
"lamprey",
|
|
"landfowl",
|
|
"lark",
|
|
"leech",
|
|
"lemming",
|
|
"lemur",
|
|
"leopard",
|
|
"leopon",
|
|
"limpet",
|
|
"lion",
|
|
"lizard",
|
|
"llama",
|
|
"lobster",
|
|
"locust",
|
|
"loon",
|
|
"louse",
|
|
"lungfish",
|
|
"lynx",
|
|
"macaw",
|
|
"mackerel",
|
|
"magpie",
|
|
"mammal",
|
|
"manatee",
|
|
"mandrill",
|
|
"marlin",
|
|
"marmoset",
|
|
"marmot",
|
|
"marsupial",
|
|
"marten",
|
|
"mastodon",
|
|
"meadowlark",
|
|
"meerkat",
|
|
"mink",
|
|
"minnow",
|
|
"mite",
|
|
"mockingbird",
|
|
"mole",
|
|
"mollusk",
|
|
"mongoose",
|
|
"monkey",
|
|
"moose",
|
|
"mosquito",
|
|
"moth",
|
|
"mouse",
|
|
"mule",
|
|
"muskox",
|
|
"narwhal",
|
|
"newt",
|
|
"nightingale",
|
|
"ocelot",
|
|
"octopus",
|
|
"opossum",
|
|
"orangutan",
|
|
"orca",
|
|
"ostrich",
|
|
"otter",
|
|
"owl",
|
|
"ox",
|
|
"panda",
|
|
"panther",
|
|
"parakeet",
|
|
"parrot",
|
|
"parrotfish",
|
|
"partridge",
|
|
"peacock",
|
|
"peafowl",
|
|
"pelican",
|
|
"penguin",
|
|
"perch",
|
|
"pheasant",
|
|
"pig",
|
|
"pigeon",
|
|
"pike",
|
|
"pinniped",
|
|
"piranha",
|
|
"planarian",
|
|
"platypus",
|
|
"pony",
|
|
"porcupine",
|
|
"porpoise",
|
|
"possum",
|
|
"prawn",
|
|
"primate",
|
|
"ptarmigan",
|
|
"puffin",
|
|
"puma",
|
|
"python",
|
|
"quail",
|
|
"quelea",
|
|
"quokka",
|
|
"rabbit",
|
|
"raccoon",
|
|
"rat",
|
|
"rattlesnake",
|
|
"raven",
|
|
"reindeer",
|
|
"reptile",
|
|
"rhinoceros",
|
|
"roadrunner",
|
|
"rodent",
|
|
"rook",
|
|
"rooster",
|
|
"roundworm",
|
|
"sailfish",
|
|
"salamander",
|
|
"salmon",
|
|
"sawfish",
|
|
"scallop",
|
|
"scorpion",
|
|
"seahorse",
|
|
"shark",
|
|
"sheep",
|
|
"shrew",
|
|
"shrimp",
|
|
"silkworm",
|
|
"silverfish",
|
|
"skink",
|
|
"skunk",
|
|
"sloth",
|
|
"slug",
|
|
"smelt",
|
|
"snail",
|
|
"snake",
|
|
"snipe",
|
|
"sole",
|
|
"sparrow",
|
|
"spider",
|
|
"spoonbill",
|
|
"squid",
|
|
"squirrel",
|
|
"starfish",
|
|
"stingray",
|
|
"stoat",
|
|
"stork",
|
|
"sturgeon",
|
|
"swallow",
|
|
"swan",
|
|
"swift",
|
|
"swordfish",
|
|
"swordtail",
|
|
"tahr",
|
|
"takin",
|
|
"tapir",
|
|
"tarantula",
|
|
"tarsier",
|
|
"termite",
|
|
"tern",
|
|
"thrush",
|
|
"tick",
|
|
"tiger",
|
|
"tiglon",
|
|
"toad",
|
|
"tortoise",
|
|
"toucan",
|
|
"trout",
|
|
"tuna",
|
|
"turkey",
|
|
"turtle",
|
|
"tyrannosaurus",
|
|
"urial",
|
|
"vicuna",
|
|
"viper",
|
|
"vole",
|
|
"vulture",
|
|
"wallaby",
|
|
"walrus",
|
|
"wasp",
|
|
"warbler",
|
|
"weasel",
|
|
"whale",
|
|
"whippet",
|
|
"whitefish",
|
|
"wildcat",
|
|
"wildebeest",
|
|
"wildfowl",
|
|
"wolf",
|
|
"wolverine",
|
|
"wombat",
|
|
"woodpecker",
|
|
"worm",
|
|
"wren",
|
|
"xerinae",
|
|
"yak",
|
|
"zebra",
|
|
"alpaca",
|
|
"cat",
|
|
"cattle",
|
|
"chicken",
|
|
"dog",
|
|
"donkey",
|
|
"ferret",
|
|
"gayal",
|
|
"goldfish",
|
|
"guppy",
|
|
"horse",
|
|
"koi",
|
|
"llama",
|
|
"sheep",
|
|
"yak",
|
|
"unicorn",
|
|
];
|
|
|
|
const adjectives = [
|
|
"average",
|
|
"big",
|
|
"colossal",
|
|
"fat",
|
|
"giant",
|
|
"gigantic",
|
|
"great",
|
|
"huge",
|
|
"immense",
|
|
"large",
|
|
"little",
|
|
"long",
|
|
"mammoth",
|
|
"massive",
|
|
"miniature",
|
|
"petite",
|
|
"puny",
|
|
"short",
|
|
"small",
|
|
"tall",
|
|
"tiny",
|
|
"boiling",
|
|
"breezy",
|
|
"broken",
|
|
"bumpy",
|
|
"chilly",
|
|
"cold",
|
|
"cool",
|
|
"creepy",
|
|
"crooked",
|
|
"cuddly",
|
|
"curly",
|
|
"damaged",
|
|
"damp",
|
|
"dirty",
|
|
"dry",
|
|
"dusty",
|
|
"filthy",
|
|
"flaky",
|
|
"fluffy",
|
|
"wet",
|
|
"broad",
|
|
"chubby",
|
|
"crooked",
|
|
"curved",
|
|
"deep",
|
|
"flat",
|
|
"high",
|
|
"hollow",
|
|
"low",
|
|
"narrow",
|
|
"round",
|
|
"shallow",
|
|
"skinny",
|
|
"square",
|
|
"steep",
|
|
"straight",
|
|
"wide",
|
|
"ancient",
|
|
"brief",
|
|
"early",
|
|
"fast",
|
|
"late",
|
|
"long",
|
|
"modern",
|
|
"old",
|
|
"quick",
|
|
"rapid",
|
|
"short",
|
|
"slow",
|
|
"swift",
|
|
"young",
|
|
"abundant",
|
|
"empty",
|
|
"few",
|
|
"heavy",
|
|
"light",
|
|
"many",
|
|
"numerous",
|
|
"Sound",
|
|
"cooing",
|
|
"deafening",
|
|
"faint",
|
|
"harsh",
|
|
"hissing",
|
|
"hushed",
|
|
"husky",
|
|
"loud",
|
|
"melodic",
|
|
"moaning",
|
|
"mute",
|
|
"noisy",
|
|
"purring",
|
|
"quiet",
|
|
"raspy",
|
|
"resonant",
|
|
"screeching",
|
|
"shrill",
|
|
"silent",
|
|
"soft",
|
|
"squealing",
|
|
"thundering",
|
|
"voiceless",
|
|
"whispering",
|
|
"bitter",
|
|
"delicious",
|
|
"fresh",
|
|
"juicy",
|
|
"ripe",
|
|
"rotten",
|
|
"salty",
|
|
"sour",
|
|
"spicy",
|
|
"stale",
|
|
"sticky",
|
|
"strong",
|
|
"sweet",
|
|
"tasteless",
|
|
"tasty",
|
|
"thirsty",
|
|
"fluttering",
|
|
"fuzzy",
|
|
"greasy",
|
|
"grubby",
|
|
"hard",
|
|
"hot",
|
|
"icy",
|
|
"loose",
|
|
"melted",
|
|
"plastic",
|
|
"prickly",
|
|
"rainy",
|
|
"rough",
|
|
"scattered",
|
|
"shaggy",
|
|
"shaky",
|
|
"sharp",
|
|
"shivering",
|
|
"silky",
|
|
"slimy",
|
|
"slippery",
|
|
"smooth",
|
|
"soft",
|
|
"solid",
|
|
"steady",
|
|
"sticky",
|
|
"tender",
|
|
"tight",
|
|
"uneven",
|
|
"weak",
|
|
"wet",
|
|
"wooden",
|
|
"afraid",
|
|
"angry",
|
|
"annoyed",
|
|
"anxious",
|
|
"arrogant",
|
|
"ashamed",
|
|
"awful",
|
|
"bad",
|
|
"bewildered",
|
|
"bored",
|
|
"combative",
|
|
"condemned",
|
|
"confused",
|
|
"creepy",
|
|
"cruel",
|
|
"dangerous",
|
|
"defeated",
|
|
"defiant",
|
|
"depressed",
|
|
"disgusted",
|
|
"disturbed",
|
|
"eerie",
|
|
"embarrassed",
|
|
"envious",
|
|
"evil",
|
|
"fierce",
|
|
"foolish",
|
|
"frantic",
|
|
"frightened",
|
|
"grieving",
|
|
"helpless",
|
|
"homeless",
|
|
"hungry",
|
|
"hurt",
|
|
"ill",
|
|
"jealous",
|
|
"lonely",
|
|
"mysterious",
|
|
"naughty",
|
|
"nervous",
|
|
"obnoxious",
|
|
"outrageous",
|
|
"panicky",
|
|
"repulsive",
|
|
"scary",
|
|
"scornful",
|
|
"selfish",
|
|
"sore",
|
|
"tense",
|
|
"terrible",
|
|
"thoughtless",
|
|
"tired",
|
|
"troubled",
|
|
"upset",
|
|
"uptight",
|
|
"weary",
|
|
"wicked",
|
|
"worried",
|
|
"agreeable",
|
|
"amused",
|
|
"brave",
|
|
"calm",
|
|
"charming",
|
|
"cheerful",
|
|
"comfortable",
|
|
"cooperative",
|
|
"courageous",
|
|
"delightful",
|
|
"determined",
|
|
"eager",
|
|
"elated",
|
|
"enchanting",
|
|
"encouraging",
|
|
"energetic",
|
|
"enthusiastic",
|
|
"excited",
|
|
"exuberant",
|
|
"fair",
|
|
"faithful",
|
|
"fantastic",
|
|
"fine",
|
|
"friendly",
|
|
"funny",
|
|
"gentle",
|
|
"glorious",
|
|
"good",
|
|
"happy",
|
|
"healthy",
|
|
"helpful",
|
|
"hilarious",
|
|
"jolly",
|
|
"joyous",
|
|
"kind",
|
|
"lively",
|
|
"lovely",
|
|
"lucky",
|
|
"obedient",
|
|
"perfect",
|
|
"pleasant",
|
|
"proud",
|
|
"relieved",
|
|
"silly",
|
|
"smiling",
|
|
"splendid",
|
|
"successful",
|
|
"thoughtful",
|
|
"victorious",
|
|
"vivacious",
|
|
"witty",
|
|
"wonderful",
|
|
"zealous",
|
|
"zany",
|
|
"other",
|
|
"good",
|
|
"new",
|
|
"old",
|
|
"great",
|
|
"high",
|
|
"small",
|
|
"different",
|
|
"large",
|
|
"local",
|
|
"social",
|
|
"important",
|
|
"long",
|
|
"young",
|
|
"national",
|
|
"british",
|
|
"right",
|
|
"early",
|
|
"possible",
|
|
"big",
|
|
"little",
|
|
"political",
|
|
"able",
|
|
"late",
|
|
"general",
|
|
"full",
|
|
"far",
|
|
"low",
|
|
"public",
|
|
"available",
|
|
"bad",
|
|
"main",
|
|
"sure",
|
|
"clear",
|
|
"major",
|
|
"economic",
|
|
"only",
|
|
"likely",
|
|
"real",
|
|
"black",
|
|
"particular",
|
|
"international",
|
|
"special",
|
|
"difficult",
|
|
"certain",
|
|
"open",
|
|
"whole",
|
|
"white",
|
|
"free",
|
|
"short",
|
|
"easy",
|
|
"strong",
|
|
"european",
|
|
"central",
|
|
"similar",
|
|
"human",
|
|
"common",
|
|
"necessary",
|
|
"single",
|
|
"personal",
|
|
"hard",
|
|
"private",
|
|
"poor",
|
|
"financial",
|
|
"wide",
|
|
"foreign",
|
|
"simple",
|
|
"recent",
|
|
"concerned",
|
|
"american",
|
|
"various",
|
|
"close",
|
|
"fine",
|
|
"english",
|
|
"wrong",
|
|
"present",
|
|
"royal",
|
|
"natural",
|
|
"individual",
|
|
"nice",
|
|
"french",
|
|
"nihilist",
|
|
"solipsist",
|
|
"materialist",
|
|
"surrealist",
|
|
"heroic",
|
|
"awesome",
|
|
"hedonist",
|
|
"absurd",
|
|
"current",
|
|
"modern",
|
|
"labour",
|
|
"legal",
|
|
"happy",
|
|
"final",
|
|
"red",
|
|
"normal",
|
|
"serious",
|
|
"previous",
|
|
"total",
|
|
"prime",
|
|
"significant",
|
|
"industrial",
|
|
"sorry",
|
|
"dead",
|
|
"specific",
|
|
"appropriate",
|
|
"top",
|
|
"soviet",
|
|
"basic",
|
|
"military",
|
|
"original",
|
|
"successful",
|
|
"aware",
|
|
"hon",
|
|
"popular",
|
|
"heavy",
|
|
"professional",
|
|
"direct",
|
|
"dark",
|
|
"cold",
|
|
"ready",
|
|
"green",
|
|
"useful",
|
|
"effective",
|
|
"western",
|
|
"traditional",
|
|
"scottish",
|
|
"german",
|
|
"independent",
|
|
"deep",
|
|
"interesting",
|
|
"considerable",
|
|
"involved",
|
|
"physical",
|
|
"hot",
|
|
"existing",
|
|
"responsible",
|
|
"complete",
|
|
"medical",
|
|
"blue",
|
|
"extra",
|
|
"past",
|
|
"male",
|
|
"interested",
|
|
"fair",
|
|
"essential",
|
|
"beautiful",
|
|
"civil",
|
|
"primary",
|
|
"obvious",
|
|
"future",
|
|
"environmental",
|
|
"positive",
|
|
"senior",
|
|
"nuclear",
|
|
"annual",
|
|
"relevant",
|
|
"huge",
|
|
"rich",
|
|
"commercial",
|
|
"safe",
|
|
"regional",
|
|
"practical",
|
|
"official",
|
|
"separate",
|
|
"key",
|
|
"chief",
|
|
"regular",
|
|
"due",
|
|
"additional",
|
|
"active",
|
|
"powerful",
|
|
"complex",
|
|
"standard",
|
|
"impossible",
|
|
"light",
|
|
"warm",
|
|
"middle",
|
|
"fresh",
|
|
"sexual",
|
|
"front",
|
|
"domestic",
|
|
"actual",
|
|
"united",
|
|
"technical",
|
|
"ordinary",
|
|
"cheap",
|
|
"strange",
|
|
"internal",
|
|
"excellent",
|
|
"quiet",
|
|
"soft",
|
|
"potential",
|
|
"northern",
|
|
"religious",
|
|
"quick",
|
|
"very",
|
|
"famous",
|
|
"cultural",
|
|
"proper",
|
|
"broad",
|
|
"joint",
|
|
"formal",
|
|
"limited",
|
|
"conservative",
|
|
"lovely",
|
|
"usual",
|
|
"ltd",
|
|
"unable",
|
|
"rural",
|
|
"initial",
|
|
"substantial",
|
|
"bright",
|
|
"average",
|
|
"leading",
|
|
"reasonable",
|
|
"immediate",
|
|
"suitable",
|
|
"equal",
|
|
"detailed",
|
|
"working",
|
|
"overall",
|
|
"female",
|
|
"afraid",
|
|
"democratic",
|
|
"growing",
|
|
"sufficient",
|
|
"scientific",
|
|
"eastern",
|
|
"correct",
|
|
"inc",
|
|
"irish",
|
|
"expensive",
|
|
"educational",
|
|
"mental",
|
|
"dangerous",
|
|
"critical",
|
|
"increased",
|
|
"familiar",
|
|
"unlikely",
|
|
"double",
|
|
"perfect",
|
|
"slow",
|
|
"tiny",
|
|
"dry",
|
|
"historical",
|
|
"thin",
|
|
"daily",
|
|
"southern",
|
|
"increasing",
|
|
"wild",
|
|
"alone",
|
|
"urban",
|
|
"empty",
|
|
"married",
|
|
"narrow",
|
|
"liberal",
|
|
"supposed",
|
|
"upper",
|
|
"apparent",
|
|
"tall",
|
|
"busy",
|
|
"bloody",
|
|
"prepared",
|
|
"russian",
|
|
"moral",
|
|
"careful",
|
|
"clean",
|
|
"attractive",
|
|
"japanese",
|
|
"vital",
|
|
"thick",
|
|
"alternative",
|
|
"fast",
|
|
"ancient",
|
|
"elderly",
|
|
"rare",
|
|
"external",
|
|
"capable",
|
|
"brief",
|
|
"wonderful",
|
|
"grand",
|
|
"typical",
|
|
"entire",
|
|
"grey",
|
|
"constant",
|
|
"vast",
|
|
"surprised",
|
|
"ideal",
|
|
"terrible",
|
|
"academic",
|
|
"funny",
|
|
"minor",
|
|
"pleased",
|
|
"severe",
|
|
"ill",
|
|
"corporate",
|
|
"negative",
|
|
"permanent",
|
|
"weak",
|
|
"brown",
|
|
"fundamental",
|
|
"odd",
|
|
"crucial",
|
|
"inner",
|
|
"used",
|
|
"criminal",
|
|
"contemporary",
|
|
"sharp",
|
|
"sick",
|
|
"near",
|
|
"roman",
|
|
"massive",
|
|
"unique",
|
|
"secondary",
|
|
"parliamentary",
|
|
"african",
|
|
"unknown",
|
|
"subsequent",
|
|
"angry",
|
|
"alive",
|
|
"guilty",
|
|
"lucky",
|
|
"enormous",
|
|
"well",
|
|
"yellow",
|
|
"unusual",
|
|
"net",
|
|
"tough",
|
|
"dear",
|
|
"extensive",
|
|
"glad",
|
|
"remaining",
|
|
"agricultural",
|
|
"alright",
|
|
"healthy",
|
|
"italian",
|
|
"principal",
|
|
"tired",
|
|
"efficient",
|
|
"comfortable",
|
|
"chinese",
|
|
"relative",
|
|
"friendly",
|
|
"conventional",
|
|
"willing",
|
|
"sudden",
|
|
"proposed",
|
|
"voluntary",
|
|
"slight",
|
|
"valuable",
|
|
"dramatic",
|
|
"golden",
|
|
"temporary",
|
|
"federal",
|
|
"keen",
|
|
"flat",
|
|
"silent",
|
|
"indian",
|
|
"worried",
|
|
"pale",
|
|
"statutory",
|
|
"welsh",
|
|
"dependent",
|
|
"firm",
|
|
"wet",
|
|
"competitive",
|
|
"armed",
|
|
"radical",
|
|
"outside",
|
|
"acceptable",
|
|
"sensitive",
|
|
"living",
|
|
"pure",
|
|
"global",
|
|
"emotional",
|
|
"sad",
|
|
"secret",
|
|
"rapid",
|
|
"adequate",
|
|
"fixed",
|
|
"sweet",
|
|
"administrative",
|
|
"wooden",
|
|
"remarkable",
|
|
"comprehensive",
|
|
"surprising",
|
|
"solid",
|
|
"rough",
|
|
"mere",
|
|
"mass",
|
|
"brilliant",
|
|
"maximum",
|
|
"absolute",
|
|
"electronic",
|
|
"visual",
|
|
"electric",
|
|
"cool",
|
|
"spanish",
|
|
"literary",
|
|
"continuing",
|
|
"supreme",
|
|
"chemical",
|
|
"genuine",
|
|
"exciting",
|
|
"written",
|
|
"advanced",
|
|
"extreme",
|
|
"classical",
|
|
"fit",
|
|
"favourite",
|
|
"widespread",
|
|
"confident",
|
|
"straight",
|
|
"proud",
|
|
"numerous",
|
|
"opposite",
|
|
"distinct",
|
|
"mad",
|
|
"helpful",
|
|
"given",
|
|
"disabled",
|
|
"consistent",
|
|
"anxious",
|
|
"nervous",
|
|
"awful",
|
|
"stable",
|
|
"constitutional",
|
|
"satisfied",
|
|
"conscious",
|
|
"developing",
|
|
"strategic",
|
|
"holy",
|
|
"smooth",
|
|
"dominant",
|
|
"remote",
|
|
"theoretical",
|
|
"outstanding",
|
|
"pink",
|
|
"pretty",
|
|
"clinical",
|
|
"minimum",
|
|
"honest",
|
|
"impressive",
|
|
"related",
|
|
"residential",
|
|
"extraordinary",
|
|
"plain",
|
|
"visible",
|
|
"accurate",
|
|
"distant",
|
|
"still",
|
|
"greek",
|
|
"complicated",
|
|
"musical",
|
|
"precise",
|
|
"gentle",
|
|
"broken",
|
|
"live",
|
|
"silly",
|
|
"fat",
|
|
"tight",
|
|
"monetary",
|
|
"round",
|
|
"psychological",
|
|
"violent",
|
|
"unemployed",
|
|
"inevitable",
|
|
"junior",
|
|
"sensible",
|
|
"grateful",
|
|
"pleasant",
|
|
"dirty",
|
|
"structural",
|
|
"welcome",
|
|
"deaf",
|
|
"above",
|
|
"continuous",
|
|
"blind",
|
|
"overseas",
|
|
"mean",
|
|
"entitled",
|
|
"delighted",
|
|
"loose",
|
|
"occasional",
|
|
"evident",
|
|
"desperate",
|
|
"fellow",
|
|
"universal",
|
|
"square",
|
|
"steady",
|
|
"classic",
|
|
"equivalent",
|
|
"intellectual",
|
|
"victorian",
|
|
"level",
|
|
"ultimate",
|
|
"creative",
|
|
"lost",
|
|
"medieval",
|
|
"clever",
|
|
"linguistic",
|
|
"convinced",
|
|
"judicial",
|
|
"raw",
|
|
"sophisticated",
|
|
"asleep",
|
|
"vulnerable",
|
|
"illegal",
|
|
"outer",
|
|
"revolutionary",
|
|
"bitter",
|
|
"changing",
|
|
"australian",
|
|
"native",
|
|
"imperial",
|
|
"strict",
|
|
"wise",
|
|
"informal",
|
|
"flexible",
|
|
"collective",
|
|
"frequent",
|
|
"experimental",
|
|
"spiritual",
|
|
"intense",
|
|
"rational",
|
|
"generous",
|
|
"inadequate",
|
|
"prominent",
|
|
"logical",
|
|
"bare",
|
|
"historic",
|
|
"modest",
|
|
"dutch",
|
|
"acute",
|
|
"electrical",
|
|
"valid",
|
|
"weekly",
|
|
"gross",
|
|
"automatic",
|
|
"loud",
|
|
"reliable",
|
|
"mutual",
|
|
"liable",
|
|
"multiple",
|
|
"ruling",
|
|
"curious",
|
|
"sole",
|
|
"managing",
|
|
"pregnant",
|
|
"latin",
|
|
"nearby",
|
|
"exact",
|
|
"underlying",
|
|
"identical",
|
|
"satisfactory",
|
|
"marginal",
|
|
"distinctive",
|
|
"electoral",
|
|
"urgent",
|
|
"presidential",
|
|
"controversial",
|
|
"everyday",
|
|
"encouraging",
|
|
"organic",
|
|
"continued",
|
|
"expected",
|
|
"statistical",
|
|
"desirable",
|
|
"innocent",
|
|
"improved",
|
|
"exclusive",
|
|
"marked",
|
|
"experienced",
|
|
"unexpected",
|
|
"superb",
|
|
"sheer",
|
|
"disappointed",
|
|
"frightened",
|
|
"gastric",
|
|
"romantic",
|
|
"naked",
|
|
"reluctant",
|
|
"magnificent",
|
|
"convenient",
|
|
"established",
|
|
"closed",
|
|
"uncertain",
|
|
"artificial",
|
|
"diplomatic",
|
|
"tremendous",
|
|
"marine",
|
|
"mechanical",
|
|
"retail",
|
|
"institutional",
|
|
"mixed",
|
|
"required",
|
|
"biological",
|
|
"known",
|
|
"functional",
|
|
"straightforward",
|
|
"superior",
|
|
"digital",
|
|
"spectacular",
|
|
"unhappy",
|
|
"confused",
|
|
"unfair",
|
|
"aggressive",
|
|
"spare",
|
|
"painful",
|
|
"abstract",
|
|
"asian",
|
|
"associated",
|
|
"legislative",
|
|
"monthly",
|
|
"intelligent",
|
|
"hungry",
|
|
"explicit",
|
|
"nasty",
|
|
"just",
|
|
"faint",
|
|
"coloured",
|
|
"ridiculous",
|
|
"amazing",
|
|
"comparable",
|
|
"successive",
|
|
"realistic",
|
|
"back",
|
|
"decent",
|
|
"decentralized",
|
|
"bitcoin",
|
|
"cypherpunk",
|
|
"unnecessary",
|
|
"flying",
|
|
"random",
|
|
"influential",
|
|
"dull",
|
|
"genetic",
|
|
"neat",
|
|
"marvellous",
|
|
"crazy",
|
|
"damp",
|
|
"giant",
|
|
"secure",
|
|
"bottom",
|
|
"skilled",
|
|
"subtle",
|
|
"elegant",
|
|
"brave",
|
|
"lesser",
|
|
"parallel",
|
|
"steep",
|
|
"intensive",
|
|
"casual",
|
|
"tropical",
|
|
"lonely",
|
|
"partial",
|
|
"preliminary",
|
|
"concrete",
|
|
"alleged",
|
|
"assistant",
|
|
"vertical",
|
|
"upset",
|
|
"delicate",
|
|
"mild",
|
|
"occupational",
|
|
"excessive",
|
|
"progressive",
|
|
"exceptional",
|
|
"integrated",
|
|
"striking",
|
|
"continental",
|
|
"okay",
|
|
"harsh",
|
|
"combined",
|
|
"fierce",
|
|
"handsome",
|
|
"characteristic",
|
|
"chronic",
|
|
"compulsory",
|
|
"interim",
|
|
"objective",
|
|
"splendid",
|
|
"magic",
|
|
"systematic",
|
|
"obliged",
|
|
"payable",
|
|
"fun",
|
|
"horrible",
|
|
"primitive",
|
|
"fascinating",
|
|
"ideological",
|
|
"metropolitan",
|
|
"surrounding",
|
|
"estimated",
|
|
"peaceful",
|
|
"premier",
|
|
"operational",
|
|
"technological",
|
|
"kind",
|
|
"advisory",
|
|
"hostile",
|
|
"precious",
|
|
"accessible",
|
|
"determined",
|
|
"excited",
|
|
"impressed",
|
|
"provincial",
|
|
"smart",
|
|
"endless",
|
|
"isolated",
|
|
"drunk",
|
|
"geographical",
|
|
"like",
|
|
"dynamic",
|
|
"boring",
|
|
"forthcoming",
|
|
"unfortunate",
|
|
"definite",
|
|
"super",
|
|
"notable",
|
|
"indirect",
|
|
"stiff",
|
|
"wealthy",
|
|
"awkward",
|
|
"lively",
|
|
"neutral",
|
|
"artistic",
|
|
"content",
|
|
"mature",
|
|
"colonial",
|
|
"ambitious",
|
|
"evil",
|
|
"magnetic",
|
|
"verbal",
|
|
"legitimate",
|
|
"sympathetic",
|
|
"empirical",
|
|
"head",
|
|
"shallow",
|
|
"vague",
|
|
"naval",
|
|
"depressed",
|
|
"shared",
|
|
"added",
|
|
"shocked",
|
|
"mid",
|
|
"worthwhile",
|
|
"qualified",
|
|
"missing",
|
|
"blank",
|
|
"absent",
|
|
"favourable",
|
|
"polish",
|
|
"israeli",
|
|
"developed",
|
|
"profound",
|
|
"representative",
|
|
"enthusiastic",
|
|
"dreadful",
|
|
"rigid",
|
|
"reduced",
|
|
"cruel",
|
|
"coastal",
|
|
"peculiar",
|
|
"swiss",
|
|
"crude",
|
|
"extended",
|
|
"selected",
|
|
"eager",
|
|
"canadian",
|
|
"bold",
|
|
"relaxed",
|
|
"corresponding",
|
|
"running",
|
|
"planned",
|
|
"applicable",
|
|
"immense",
|
|
"allied",
|
|
"comparative",
|
|
"uncomfortable",
|
|
"conservation",
|
|
"productive",
|
|
"beneficial",
|
|
"bored",
|
|
"charming",
|
|
"minimal",
|
|
"mobile",
|
|
"turkish",
|
|
"orange",
|
|
"rear",
|
|
"passive",
|
|
"suspicious",
|
|
"overwhelming",
|
|
"fatal",
|
|
"resulting",
|
|
"symbolic",
|
|
"registered",
|
|
"neighbouring",
|
|
"calm",
|
|
"irrelevant",
|
|
"patient",
|
|
"compact",
|
|
"profitable",
|
|
"rival",
|
|
"loyal",
|
|
"moderate",
|
|
"distinguished",
|
|
"interior",
|
|
"noble",
|
|
"insufficient",
|
|
"eligible",
|
|
"mysterious",
|
|
"varying",
|
|
"managerial",
|
|
"molecular",
|
|
"olympic",
|
|
"linear",
|
|
"prospective",
|
|
"printed",
|
|
"parental",
|
|
"diverse",
|
|
"elaborate",
|
|
"furious",
|
|
"fiscal",
|
|
"burning",
|
|
"useless",
|
|
"semantic",
|
|
"embarrassed",
|
|
"inherent",
|
|
"philosophical",
|
|
"deliberate",
|
|
"awake",
|
|
"variable",
|
|
"promising",
|
|
"unpleasant",
|
|
"varied",
|
|
"sacred",
|
|
"selective",
|
|
"inclined",
|
|
"tender",
|
|
"hidden",
|
|
"worthy",
|
|
"intermediate",
|
|
"sound",
|
|
"protective",
|
|
"fortunate",
|
|
"slim",
|
|
"defensive",
|
|
"divine",
|
|
"stuck",
|
|
"driving",
|
|
"invisible",
|
|
"misleading",
|
|
"circular",
|
|
"mathematical",
|
|
"inappropriate",
|
|
"liquid",
|
|
"persistent",
|
|
"solar",
|
|
"doubtful",
|
|
"manual",
|
|
"architectural",
|
|
"intact",
|
|
"incredible",
|
|
"devoted",
|
|
"prior",
|
|
"tragic",
|
|
"respectable",
|
|
"optimistic",
|
|
"convincing",
|
|
"unacceptable",
|
|
"decisive",
|
|
"competent",
|
|
"spatial",
|
|
"respective",
|
|
"binding",
|
|
"relieved",
|
|
"nursing",
|
|
"toxic",
|
|
"select",
|
|
"redundant",
|
|
"integral",
|
|
"then",
|
|
"probable",
|
|
"amateur",
|
|
"fond",
|
|
"passing",
|
|
"specified",
|
|
"territorial",
|
|
"horizontal",
|
|
"inland",
|
|
"cognitive",
|
|
"regulatory",
|
|
"miserable",
|
|
"resident",
|
|
"polite",
|
|
"scared",
|
|
"gothic",
|
|
"civilian",
|
|
"instant",
|
|
"lengthy",
|
|
"adverse",
|
|
"korean",
|
|
"unconscious",
|
|
"anonymous",
|
|
"aesthetic",
|
|
"orthodox",
|
|
"static",
|
|
"unaware",
|
|
"costly",
|
|
"fantastic",
|
|
"foolish",
|
|
"fashionable",
|
|
"causal",
|
|
"compatible",
|
|
"wee",
|
|
"implicit",
|
|
"dual",
|
|
"ok",
|
|
"cheerful",
|
|
"subjective",
|
|
"forward",
|
|
"surviving",
|
|
"exotic",
|
|
"purple",
|
|
"cautious",
|
|
"visiting",
|
|
"aggregate",
|
|
"ethical",
|
|
"teenage",
|
|
"dying",
|
|
"disastrous",
|
|
"delicious",
|
|
"confidential",
|
|
"underground",
|
|
"thorough",
|
|
"grim",
|
|
"autonomous",
|
|
"atomic",
|
|
"frozen",
|
|
"colourful",
|
|
"injured",
|
|
"uniform",
|
|
"ashamed",
|
|
"glorious",
|
|
"wicked",
|
|
"coherent",
|
|
"rising",
|
|
"shy",
|
|
"novel",
|
|
"balanced",
|
|
"delightful",
|
|
"arbitrary",
|
|
"adjacent",
|
|
"worrying",
|
|
"weird",
|
|
"unchanged",
|
|
"rolling",
|
|
"evolutionary",
|
|
"intimate",
|
|
"sporting",
|
|
"disciplinary",
|
|
"formidable",
|
|
"lexical",
|
|
"noisy",
|
|
"gradual",
|
|
"accused",
|
|
"homeless",
|
|
"supporting",
|
|
"coming",
|
|
"renewed",
|
|
"excess",
|
|
"retired",
|
|
"rubber",
|
|
"chosen",
|
|
"outdoor",
|
|
"embarrassing",
|
|
"preferred",
|
|
"bizarre",
|
|
"appalling",
|
|
"agreed",
|
|
"imaginative",
|
|
"governing",
|
|
"accepted",
|
|
"vocational",
|
|
"mighty",
|
|
"puzzled",
|
|
"worldwide",
|
|
"organisational",
|
|
"sunny",
|
|
"eldest",
|
|
"eventual",
|
|
"spontaneous",
|
|
"vivid",
|
|
"rude",
|
|
"faithful",
|
|
"ministerial",
|
|
"innovative",
|
|
"controlled",
|
|
"conceptual",
|
|
"unwilling",
|
|
"civic",
|
|
"meaningful",
|
|
"alive",
|
|
"brainy",
|
|
"breakable",
|
|
"busy",
|
|
"careful",
|
|
"cautious",
|
|
"clever",
|
|
"concerned",
|
|
"crazy",
|
|
"curious",
|
|
"dead",
|
|
"different",
|
|
"difficult",
|
|
"doubtful",
|
|
"easy",
|
|
"famous",
|
|
"fragile",
|
|
"helpful",
|
|
"helpless",
|
|
"important",
|
|
"impossible",
|
|
"innocent",
|
|
"inquisitive",
|
|
"modern",
|
|
"open",
|
|
"outstanding",
|
|
"poor",
|
|
"powerful",
|
|
"puzzled",
|
|
"real",
|
|
"rich",
|
|
"shy",
|
|
"sleepy",
|
|
"super",
|
|
"tame",
|
|
"uninterested",
|
|
"wandering",
|
|
"wild",
|
|
"wrong",
|
|
"adorable",
|
|
"alert",
|
|
"average",
|
|
"beautiful",
|
|
"blonde",
|
|
"bloody",
|
|
"blushing",
|
|
"bright",
|
|
"clean",
|
|
"clear",
|
|
"cloudy",
|
|
"colorful",
|
|
"crowded",
|
|
"cute",
|
|
"dark",
|
|
"drab",
|
|
"distinct",
|
|
"dull",
|
|
"elegant",
|
|
"fancy",
|
|
"filthy",
|
|
"glamorous",
|
|
"gleaming",
|
|
"graceful",
|
|
"grotesque",
|
|
"homely",
|
|
"light",
|
|
"misty",
|
|
"motionless",
|
|
"muddy",
|
|
"plain",
|
|
"poised",
|
|
"quaint",
|
|
"shiny",
|
|
"smoggy",
|
|
"sparkling",
|
|
"spotless",
|
|
"stormy",
|
|
"strange",
|
|
"ugly",
|
|
"unsightly",
|
|
"unusual",
|
|
"bad",
|
|
"better",
|
|
"beautiful",
|
|
"big",
|
|
"black",
|
|
"blue",
|
|
"bright",
|
|
"clumsy",
|
|
"crazy",
|
|
"dizzy",
|
|
"dull",
|
|
"fat",
|
|
"frail",
|
|
"friendly",
|
|
"funny",
|
|
"great",
|
|
"green",
|
|
"gigantic",
|
|
"gorgeous",
|
|
"grumpy",
|
|
"handsome",
|
|
"happy",
|
|
"horrible",
|
|
"itchy",
|
|
"jittery",
|
|
"jolly",
|
|
"kind",
|
|
"long",
|
|
"lazy",
|
|
"magnificent",
|
|
"magenta",
|
|
"many",
|
|
"mighty",
|
|
"mushy",
|
|
"nasty",
|
|
"new",
|
|
"nice",
|
|
"nosy",
|
|
"nutty",
|
|
"nutritious",
|
|
"odd",
|
|
"orange",
|
|
"ordinary",
|
|
"pretty",
|
|
"precious",
|
|
"prickly",
|
|
"purple",
|
|
"quaint",
|
|
"quiet",
|
|
"quick",
|
|
"quickest",
|
|
"rainy",
|
|
"rare",
|
|
"ratty",
|
|
"red",
|
|
"roasted",
|
|
"robust",
|
|
"round",
|
|
"sad",
|
|
"scary",
|
|
"scrawny",
|
|
"short",
|
|
"silly",
|
|
"stingy",
|
|
"strange",
|
|
"striped",
|
|
"spotty",
|
|
"tart",
|
|
"tall",
|
|
"tame",
|
|
"tan",
|
|
"tender",
|
|
"testy",
|
|
"tricky",
|
|
"tough",
|
|
"ugly",
|
|
"ugliest",
|
|
"vast",
|
|
"watery",
|
|
"wasteful",
|
|
"wonderful",
|
|
"yellow",
|
|
"yummy",
|
|
"zany",
|
|
];
|
|
|
|
function capitalize(s: string) {
|
|
return s.charAt(0).toUpperCase() + s.slice(1);
|
|
}
|
|
|
|
/**
|
|
* deterministically create adjective + animal names
|
|
*/
|
|
export default function (seed: string) {
|
|
if (!seed) {
|
|
throw new Error("No seed provided");
|
|
}
|
|
const hash = sha256(seed); // Uint8Array
|
|
const adjective = adjectives[hash[0] % adjectives.length];
|
|
const animal = animals[hash[1] % animals.length];
|
|
return `${capitalize(adjective)} ${capitalize(animal)}`;
|
|
}
|