2022-02-28 21:16:41 +00:00
|
|
|
const MORSE_MAP = {
|
2022-02-28 21:38:31 +00:00
|
|
|
'A': '.-',
|
|
|
|
'B': '-...',
|
|
|
|
'C': '-.-.',
|
|
|
|
'D': '-..',
|
|
|
|
'E': '.',
|
|
|
|
'F': '..-.',
|
|
|
|
'G': '--.',
|
|
|
|
'H': '....',
|
|
|
|
'I': '..',
|
|
|
|
'J': '.---',
|
|
|
|
'K': '-.-',
|
|
|
|
'L': '.-..',
|
|
|
|
'M': '--',
|
|
|
|
'N': '-.',
|
|
|
|
'O': '---',
|
|
|
|
'P': '.--.',
|
|
|
|
'Q': '--.-',
|
|
|
|
'R': '.-.',
|
|
|
|
'S': '...',
|
|
|
|
'T': '-',
|
|
|
|
'U': '..-',
|
|
|
|
'V': '...-',
|
|
|
|
'W': '.--',
|
|
|
|
'X': '-..-',
|
|
|
|
'Y': '-.--',
|
|
|
|
'Z': '--..',
|
|
|
|
'1': '.----',
|
|
|
|
'2': '..---',
|
|
|
|
'3': '...--',
|
|
|
|
'4': '....-',
|
|
|
|
'5': '.....',
|
|
|
|
'6': '-....',
|
|
|
|
'7': '--...',
|
|
|
|
'8': '---..',
|
|
|
|
'9': '----.',
|
|
|
|
'0': '-----',
|
|
|
|
'.': '.-.-.-',
|
|
|
|
'?': '..--..',
|
|
|
|
'!': '-.-.--',
|
|
|
|
'=': '-...-',
|
|
|
|
'+': '.-.-.',
|
2024-09-03 03:33:23 +00:00
|
|
|
'-': '-....-',
|
|
|
|
'clear': '........'
|
2022-02-28 21:16:41 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
const REVERSE_MORSE_MAP = function() {
|
|
|
|
const reversed = {};
|
|
|
|
Object.keys(MORSE_MAP).forEach(key => {
|
|
|
|
reversed[MORSE_MAP[key]] = key;
|
|
|
|
});
|
|
|
|
return reversed;
|
|
|
|
}();
|
|
|
|
|
2024-09-03 02:35:20 +00:00
|
|
|
const SYMBOLS = [
|
|
|
|
'.',
|
|
|
|
'?',
|
|
|
|
'!',
|
|
|
|
'=',
|
|
|
|
'+',
|
|
|
|
'-'
|
|
|
|
];
|
|
|
|
|
2022-02-28 21:16:41 +00:00
|
|
|
const COMMON_WORDS = {
|
|
|
|
"description": "Common English words.",
|
|
|
|
"commonWords":
|
|
|
|
[
|
2024-05-09 03:16:39 +00:00
|
|
|
"a",
|
|
|
|
"able",
|
|
|
|
"about",
|
|
|
|
"absolute",
|
|
|
|
"accept",
|
|
|
|
"account",
|
|
|
|
"achieve",
|
|
|
|
"across",
|
|
|
|
"act",
|
|
|
|
"active",
|
|
|
|
"actual",
|
|
|
|
"add",
|
|
|
|
"address",
|
|
|
|
"admit",
|
|
|
|
"advertise",
|
|
|
|
"affect",
|
|
|
|
"afford",
|
|
|
|
"after",
|
|
|
|
"afternoon",
|
|
|
|
"again",
|
|
|
|
"against",
|
|
|
|
"age",
|
|
|
|
"agent",
|
|
|
|
"ago",
|
|
|
|
"agree",
|
|
|
|
"air",
|
|
|
|
"all",
|
|
|
|
"allow",
|
|
|
|
"almost",
|
|
|
|
"along",
|
|
|
|
"already",
|
|
|
|
"alright",
|
|
|
|
"also",
|
|
|
|
"although",
|
|
|
|
"always",
|
|
|
|
"america",
|
|
|
|
"amount",
|
|
|
|
"and",
|
|
|
|
"another",
|
|
|
|
"answer",
|
|
|
|
"any",
|
|
|
|
"apart",
|
|
|
|
"apparent",
|
|
|
|
"appear",
|
|
|
|
"apply",
|
|
|
|
"appoint",
|
|
|
|
"approach",
|
|
|
|
"appropriate",
|
|
|
|
"area",
|
|
|
|
"argue",
|
|
|
|
"arm",
|
|
|
|
"around",
|
|
|
|
"arrange",
|
|
|
|
"art",
|
|
|
|
"as",
|
|
|
|
"ask",
|
|
|
|
"associate",
|
|
|
|
"assume",
|
|
|
|
"at",
|
|
|
|
"attend",
|
|
|
|
"authority",
|
|
|
|
"available",
|
|
|
|
"aware",
|
|
|
|
"away",
|
|
|
|
"awful",
|
|
|
|
"baby",
|
|
|
|
"back",
|
|
|
|
"bad",
|
|
|
|
"bag",
|
|
|
|
"balance",
|
|
|
|
"ball",
|
|
|
|
"bank",
|
|
|
|
"bar",
|
|
|
|
"base",
|
|
|
|
"basis",
|
|
|
|
"be",
|
|
|
|
"bear",
|
|
|
|
"beat",
|
|
|
|
"beauty",
|
|
|
|
"because",
|
|
|
|
"become",
|
|
|
|
"bed",
|
|
|
|
"before",
|
|
|
|
"begin",
|
|
|
|
"behind",
|
|
|
|
"believe",
|
|
|
|
"benefit",
|
|
|
|
"best",
|
|
|
|
"bet",
|
|
|
|
"between",
|
|
|
|
"big",
|
|
|
|
"bill",
|
|
|
|
"birth",
|
|
|
|
"bit",
|
|
|
|
"black",
|
|
|
|
"bloke",
|
|
|
|
"blood",
|
|
|
|
"blow",
|
|
|
|
"blue",
|
|
|
|
"board",
|
|
|
|
"boat",
|
|
|
|
"body",
|
|
|
|
"book",
|
|
|
|
"both",
|
|
|
|
"bother",
|
|
|
|
"bottle",
|
|
|
|
"bottom",
|
|
|
|
"box",
|
|
|
|
"boy",
|
|
|
|
"break",
|
|
|
|
"brief",
|
|
|
|
"brilliant",
|
|
|
|
"bring",
|
|
|
|
"britain",
|
|
|
|
"brother",
|
|
|
|
"budget",
|
|
|
|
"build",
|
|
|
|
"bus",
|
|
|
|
"business",
|
|
|
|
"busy",
|
|
|
|
"but",
|
|
|
|
"buy",
|
|
|
|
"by",
|
|
|
|
"cake",
|
|
|
|
"call",
|
|
|
|
"can",
|
|
|
|
"car",
|
|
|
|
"card",
|
|
|
|
"care",
|
|
|
|
"carry",
|
|
|
|
"case",
|
|
|
|
"cat",
|
|
|
|
"catch",
|
|
|
|
"cause",
|
|
|
|
"cent",
|
|
|
|
"centre",
|
|
|
|
"certain",
|
|
|
|
"chair",
|
|
|
|
"chairman",
|
|
|
|
"chance",
|
|
|
|
"change",
|
|
|
|
"chap",
|
|
|
|
"character",
|
|
|
|
"charge",
|
|
|
|
"cheap",
|
|
|
|
"check",
|
|
|
|
"child",
|
|
|
|
"choice",
|
|
|
|
"choose",
|
|
|
|
"Christmas",
|
|
|
|
"church",
|
|
|
|
"city",
|
|
|
|
"claim",
|
|
|
|
"class",
|
|
|
|
"clean",
|
|
|
|
"clear",
|
|
|
|
"client",
|
|
|
|
"clock",
|
|
|
|
"close",
|
|
|
|
"closes",
|
|
|
|
"clothe",
|
|
|
|
"club",
|
|
|
|
"coffee",
|
|
|
|
"cold",
|
|
|
|
"colleague",
|
|
|
|
"collect",
|
|
|
|
"college",
|
|
|
|
"colour",
|
|
|
|
"come",
|
|
|
|
"comment",
|
|
|
|
"commit",
|
|
|
|
"committee",
|
|
|
|
"common",
|
|
|
|
"community",
|
|
|
|
"company",
|
|
|
|
"compare",
|
|
|
|
"complete",
|
|
|
|
"compute",
|
|
|
|
"concern",
|
|
|
|
"condition",
|
|
|
|
"confer",
|
|
|
|
"consider",
|
|
|
|
"consult",
|
|
|
|
"contact",
|
|
|
|
"continue",
|
|
|
|
"contract",
|
|
|
|
"control",
|
|
|
|
"converse",
|
|
|
|
"cook",
|
|
|
|
"copy",
|
|
|
|
"corner",
|
|
|
|
"correct",
|
|
|
|
"cost",
|
|
|
|
"could",
|
|
|
|
"council",
|
|
|
|
"count",
|
|
|
|
"country",
|
|
|
|
"county",
|
|
|
|
"couple",
|
|
|
|
"course",
|
|
|
|
"court",
|
|
|
|
"cover",
|
|
|
|
"create",
|
|
|
|
"cross",
|
|
|
|
"cup",
|
|
|
|
"current",
|
|
|
|
"cut",
|
|
|
|
"dad",
|
|
|
|
"danger",
|
|
|
|
"date",
|
|
|
|
"day",
|
|
|
|
"dead",
|
|
|
|
"deal",
|
|
|
|
"dear",
|
|
|
|
"debate",
|
|
|
|
"decide",
|
|
|
|
"decision",
|
|
|
|
"deep",
|
|
|
|
"definite",
|
|
|
|
"degree",
|
|
|
|
"department",
|
|
|
|
"depend",
|
|
|
|
"describe",
|
|
|
|
"design",
|
|
|
|
"detail",
|
|
|
|
"develop",
|
|
|
|
"die",
|
|
|
|
"difference",
|
|
|
|
"difficult",
|
|
|
|
"dinner",
|
|
|
|
"direct",
|
|
|
|
"discuss",
|
|
|
|
"district",
|
|
|
|
"divide",
|
|
|
|
"do",
|
|
|
|
"doctor",
|
|
|
|
"document",
|
|
|
|
"dog",
|
|
|
|
"door",
|
|
|
|
"double",
|
|
|
|
"doubt",
|
|
|
|
"down",
|
|
|
|
"draw",
|
|
|
|
"dress",
|
|
|
|
"drink",
|
|
|
|
"drive",
|
|
|
|
"drop",
|
|
|
|
"dry",
|
|
|
|
"due",
|
|
|
|
"during",
|
|
|
|
"each",
|
|
|
|
"early",
|
|
|
|
"east",
|
|
|
|
"easy",
|
|
|
|
"eat",
|
|
|
|
"economy",
|
|
|
|
"educate",
|
|
|
|
"effect",
|
|
|
|
"egg",
|
|
|
|
"eight",
|
|
|
|
"either",
|
|
|
|
"elect",
|
|
|
|
"electric",
|
|
|
|
"eleven",
|
|
|
|
"else",
|
|
|
|
"employ",
|
|
|
|
"encourage",
|
|
|
|
"end",
|
|
|
|
"engine",
|
|
|
|
"english",
|
|
|
|
"enjoy",
|
|
|
|
"enough",
|
|
|
|
"enter",
|
|
|
|
"environment",
|
|
|
|
"equal",
|
|
|
|
"especial",
|
|
|
|
"europe",
|
|
|
|
"even",
|
|
|
|
"evening",
|
|
|
|
"ever",
|
|
|
|
"every",
|
|
|
|
"evidence",
|
|
|
|
"exact",
|
|
|
|
"example",
|
|
|
|
"except",
|
|
|
|
"excuse",
|
|
|
|
"exercise",
|
|
|
|
"exist",
|
|
|
|
"expect",
|
|
|
|
"expense",
|
|
|
|
"experience",
|
|
|
|
"explain",
|
|
|
|
"express",
|
|
|
|
"extra",
|
|
|
|
"eye",
|
|
|
|
"face",
|
|
|
|
"fact",
|
|
|
|
"fair",
|
|
|
|
"fall",
|
|
|
|
"family",
|
|
|
|
"far",
|
|
|
|
"farm",
|
|
|
|
"fast",
|
|
|
|
"father",
|
|
|
|
"favour",
|
|
|
|
"feed",
|
|
|
|
"feel",
|
|
|
|
"few",
|
|
|
|
"field",
|
|
|
|
"fight",
|
|
|
|
"figure",
|
|
|
|
"file",
|
|
|
|
"fill",
|
|
|
|
"film",
|
|
|
|
"final",
|
|
|
|
"finance",
|
|
|
|
"find",
|
|
|
|
"fine",
|
|
|
|
"finish",
|
|
|
|
"fire",
|
|
|
|
"first",
|
|
|
|
"fish",
|
|
|
|
"fit",
|
|
|
|
"five",
|
|
|
|
"flat",
|
|
|
|
"floor",
|
|
|
|
"fly",
|
|
|
|
"follow",
|
|
|
|
"food",
|
|
|
|
"foot",
|
|
|
|
"for",
|
|
|
|
"force",
|
|
|
|
"forget",
|
|
|
|
"form",
|
|
|
|
"fortune",
|
|
|
|
"forward",
|
|
|
|
"four",
|
|
|
|
"france",
|
|
|
|
"free",
|
|
|
|
"friday",
|
|
|
|
"friend",
|
|
|
|
"from",
|
|
|
|
"front",
|
|
|
|
"full",
|
|
|
|
"fun",
|
|
|
|
"function",
|
|
|
|
"fund",
|
|
|
|
"further",
|
|
|
|
"future",
|
|
|
|
"game",
|
|
|
|
"garden",
|
|
|
|
"gas",
|
|
|
|
"general",
|
|
|
|
"germany",
|
|
|
|
"get",
|
|
|
|
"girl",
|
|
|
|
"give",
|
|
|
|
"glass",
|
|
|
|
"go",
|
|
|
|
"god",
|
|
|
|
"good",
|
|
|
|
"goodbye",
|
|
|
|
"govern",
|
|
|
|
"grand",
|
|
|
|
"grant",
|
|
|
|
"great",
|
|
|
|
"green",
|
|
|
|
"ground",
|
|
|
|
"group",
|
|
|
|
"grow",
|
|
|
|
"guess",
|
|
|
|
"guy",
|
|
|
|
"hair",
|
|
|
|
"half",
|
|
|
|
"hall",
|
|
|
|
"hand",
|
|
|
|
"hang",
|
|
|
|
"happen",
|
|
|
|
"happy",
|
|
|
|
"hard",
|
|
|
|
"hate",
|
|
|
|
"have",
|
|
|
|
"he",
|
|
|
|
"head",
|
|
|
|
"health",
|
|
|
|
"hear",
|
|
|
|
"heart",
|
|
|
|
"heat",
|
|
|
|
"heavy",
|
|
|
|
"hell",
|
|
|
|
"help",
|
|
|
|
"here",
|
|
|
|
"high",
|
|
|
|
"history",
|
|
|
|
"hit",
|
|
|
|
"hold",
|
|
|
|
"holiday",
|
|
|
|
"home",
|
|
|
|
"honest",
|
|
|
|
"hope",
|
|
|
|
"horse",
|
|
|
|
"hospital",
|
|
|
|
"hot",
|
|
|
|
"hour",
|
|
|
|
"house",
|
|
|
|
"how",
|
|
|
|
"however",
|
|
|
|
"hullo",
|
|
|
|
"hundred",
|
|
|
|
"husband",
|
|
|
|
"idea",
|
|
|
|
"identify",
|
|
|
|
"if",
|
|
|
|
"imagine",
|
|
|
|
"important",
|
|
|
|
"improve",
|
|
|
|
"in",
|
|
|
|
"include",
|
|
|
|
"income",
|
|
|
|
"increase",
|
|
|
|
"indeed",
|
|
|
|
"individual",
|
|
|
|
"industry",
|
|
|
|
"inform",
|
|
|
|
"inside",
|
|
|
|
"instead",
|
|
|
|
"insure",
|
|
|
|
"interest",
|
|
|
|
"into",
|
|
|
|
"introduce",
|
|
|
|
"invest",
|
|
|
|
"involve",
|
|
|
|
"issue",
|
|
|
|
"it",
|
|
|
|
"item",
|
|
|
|
"jesus",
|
|
|
|
"job",
|
|
|
|
"join",
|
|
|
|
"judge",
|
|
|
|
"jump",
|
|
|
|
"just",
|
|
|
|
"keep",
|
|
|
|
"key",
|
|
|
|
"kid",
|
|
|
|
"kill",
|
|
|
|
"kind",
|
|
|
|
"king",
|
|
|
|
"kitchen",
|
|
|
|
"knock",
|
|
|
|
"know",
|
|
|
|
"labour",
|
|
|
|
"lad",
|
|
|
|
"lady",
|
|
|
|
"land",
|
|
|
|
"language",
|
|
|
|
"large",
|
|
|
|
"last",
|
|
|
|
"late",
|
|
|
|
"laugh",
|
|
|
|
"law",
|
|
|
|
"lay",
|
|
|
|
"lead",
|
|
|
|
"learn",
|
|
|
|
"leave",
|
|
|
|
"left",
|
|
|
|
"leg",
|
|
|
|
"less",
|
|
|
|
"let",
|
|
|
|
"letter",
|
|
|
|
"level",
|
|
|
|
"lie",
|
|
|
|
"life",
|
|
|
|
"light",
|
|
|
|
"like",
|
|
|
|
"likely",
|
|
|
|
"limit",
|
|
|
|
"line",
|
|
|
|
"link",
|
|
|
|
"list",
|
|
|
|
"listen",
|
|
|
|
"little",
|
|
|
|
"live",
|
|
|
|
"load",
|
|
|
|
"local",
|
|
|
|
"lock",
|
|
|
|
"london",
|
|
|
|
"long",
|
|
|
|
"look",
|
|
|
|
"lord",
|
|
|
|
"lose",
|
|
|
|
"lot",
|
|
|
|
"love",
|
|
|
|
"low",
|
|
|
|
"luck",
|
|
|
|
"lunch",
|
|
|
|
"machine",
|
|
|
|
"main",
|
|
|
|
"major",
|
|
|
|
"make",
|
|
|
|
"man",
|
|
|
|
"manage",
|
|
|
|
"many",
|
|
|
|
"mark",
|
|
|
|
"market",
|
|
|
|
"marry",
|
|
|
|
"match",
|
|
|
|
"matter",
|
|
|
|
"may",
|
|
|
|
"maybe",
|
|
|
|
"mean",
|
|
|
|
"meaning",
|
|
|
|
"measure",
|
|
|
|
"meet",
|
|
|
|
"member",
|
|
|
|
"mention",
|
|
|
|
"middle",
|
|
|
|
"might",
|
|
|
|
"mile",
|
|
|
|
"milk",
|
|
|
|
"million",
|
|
|
|
"mind",
|
|
|
|
"minister",
|
|
|
|
"minus",
|
|
|
|
"minute",
|
|
|
|
"miss",
|
|
|
|
"mister",
|
|
|
|
"moment",
|
|
|
|
"monday",
|
|
|
|
"money",
|
|
|
|
"month",
|
|
|
|
"more",
|
|
|
|
"morning",
|
|
|
|
"most",
|
|
|
|
"mother",
|
|
|
|
"motion",
|
|
|
|
"move",
|
|
|
|
"mrs",
|
|
|
|
"much",
|
|
|
|
"music",
|
|
|
|
"must",
|
|
|
|
"name",
|
|
|
|
"nation",
|
|
|
|
"nature",
|
|
|
|
"near",
|
|
|
|
"necessary",
|
|
|
|
"need",
|
|
|
|
"never",
|
|
|
|
"new",
|
|
|
|
"news",
|
|
|
|
"next",
|
|
|
|
"nice",
|
|
|
|
"night",
|
|
|
|
"nine",
|
|
|
|
"no",
|
|
|
|
"non",
|
|
|
|
"none",
|
|
|
|
"normal",
|
|
|
|
"north",
|
|
|
|
"not",
|
|
|
|
"note",
|
|
|
|
"notice",
|
|
|
|
"now",
|
|
|
|
"number",
|
|
|
|
"obvious",
|
|
|
|
"occasion",
|
|
|
|
"odd",
|
|
|
|
"of",
|
|
|
|
"off",
|
|
|
|
"offer",
|
|
|
|
"office",
|
|
|
|
"often",
|
|
|
|
"okay",
|
|
|
|
"old",
|
|
|
|
"on",
|
|
|
|
"once",
|
|
|
|
"one",
|
|
|
|
"only",
|
|
|
|
"open",
|
|
|
|
"operate",
|
|
|
|
"opportunity",
|
|
|
|
"oppose",
|
|
|
|
"or",
|
|
|
|
"order",
|
|
|
|
"organize",
|
|
|
|
"original",
|
|
|
|
"other",
|
|
|
|
"otherwise",
|
|
|
|
"ought",
|
|
|
|
"out",
|
|
|
|
"over",
|
|
|
|
"own",
|
|
|
|
"pack",
|
|
|
|
"page",
|
|
|
|
"paint",
|
|
|
|
"pair",
|
|
|
|
"paper",
|
|
|
|
"paragraph",
|
|
|
|
"pardon",
|
|
|
|
"parent",
|
|
|
|
"park",
|
|
|
|
"part",
|
|
|
|
"particular",
|
|
|
|
"party",
|
|
|
|
"pass",
|
|
|
|
"past",
|
|
|
|
"pay",
|
|
|
|
"pence",
|
|
|
|
"pension",
|
|
|
|
"people",
|
|
|
|
"per",
|
|
|
|
"percent",
|
|
|
|
"perfect",
|
|
|
|
"perhaps",
|
|
|
|
"period",
|
|
|
|
"person",
|
|
|
|
"photograph",
|
|
|
|
"pick",
|
|
|
|
"picture",
|
|
|
|
"piece",
|
|
|
|
"place",
|
|
|
|
"plan",
|
|
|
|
"play",
|
|
|
|
"please",
|
|
|
|
"plus",
|
|
|
|
"point",
|
|
|
|
"police",
|
|
|
|
"policy",
|
|
|
|
"politic",
|
|
|
|
"poor",
|
|
|
|
"position",
|
|
|
|
"positive",
|
|
|
|
"possible",
|
|
|
|
"post",
|
|
|
|
"pound",
|
|
|
|
"power",
|
|
|
|
"practise",
|
|
|
|
"prepare",
|
|
|
|
"present",
|
|
|
|
"press",
|
|
|
|
"pressure",
|
|
|
|
"presume",
|
|
|
|
"pretty",
|
|
|
|
"previous",
|
|
|
|
"price",
|
|
|
|
"print",
|
|
|
|
"private",
|
|
|
|
"probable",
|
|
|
|
"problem",
|
|
|
|
"proceed",
|
|
|
|
"process",
|
|
|
|
"produce",
|
|
|
|
"product",
|
|
|
|
"programme",
|
|
|
|
"project",
|
|
|
|
"proper",
|
|
|
|
"propose",
|
|
|
|
"protect",
|
|
|
|
"provide",
|
|
|
|
"public",
|
|
|
|
"pull",
|
|
|
|
"purpose",
|
|
|
|
"push",
|
|
|
|
"put",
|
|
|
|
"quality",
|
|
|
|
"quarter",
|
|
|
|
"question",
|
|
|
|
"quick",
|
|
|
|
"quid",
|
|
|
|
"quiet",
|
|
|
|
"quite",
|
|
|
|
"radio",
|
|
|
|
"rail",
|
|
|
|
"raise",
|
|
|
|
"range",
|
|
|
|
"rate",
|
|
|
|
"rather",
|
|
|
|
"read",
|
|
|
|
"ready",
|
|
|
|
"real",
|
|
|
|
"realise",
|
|
|
|
"really",
|
|
|
|
"reason",
|
|
|
|
"receive",
|
|
|
|
"recent",
|
|
|
|
"reckon",
|
|
|
|
"recognize",
|
|
|
|
"recommend",
|
|
|
|
"record",
|
|
|
|
"red",
|
|
|
|
"reduce",
|
|
|
|
"refer",
|
|
|
|
"regard",
|
|
|
|
"region",
|
|
|
|
"relation",
|
|
|
|
"remember",
|
|
|
|
"report",
|
|
|
|
"represent",
|
|
|
|
"require",
|
|
|
|
"research",
|
|
|
|
"resource",
|
|
|
|
"respect",
|
|
|
|
"responsible",
|
|
|
|
"rest",
|
|
|
|
"result",
|
|
|
|
"return",
|
|
|
|
"rid",
|
|
|
|
"right",
|
|
|
|
"ring",
|
|
|
|
"rise",
|
|
|
|
"road",
|
|
|
|
"role",
|
|
|
|
"roll",
|
|
|
|
"room",
|
|
|
|
"round",
|
|
|
|
"rule",
|
|
|
|
"run",
|
|
|
|
"safe",
|
|
|
|
"sale",
|
|
|
|
"same",
|
|
|
|
"saturday",
|
|
|
|
"save",
|
|
|
|
"say",
|
|
|
|
"scheme",
|
|
|
|
"school",
|
|
|
|
"science",
|
|
|
|
"score",
|
|
|
|
"scotland",
|
|
|
|
"seat",
|
|
|
|
"second",
|
|
|
|
"secretary",
|
|
|
|
"section",
|
|
|
|
"secure",
|
|
|
|
"see",
|
|
|
|
"seem",
|
|
|
|
"self",
|
|
|
|
"sell",
|
|
|
|
"send",
|
|
|
|
"sense",
|
|
|
|
"separate",
|
|
|
|
"serious",
|
|
|
|
"serve",
|
|
|
|
"service",
|
|
|
|
"set",
|
|
|
|
"settle",
|
|
|
|
"seven",
|
|
|
|
"shall",
|
|
|
|
"share",
|
|
|
|
"she",
|
|
|
|
"sheet",
|
|
|
|
"shoe",
|
|
|
|
"shoot",
|
|
|
|
"shop",
|
|
|
|
"short",
|
|
|
|
"should",
|
|
|
|
"show",
|
|
|
|
"shut",
|
|
|
|
"sick",
|
|
|
|
"side",
|
|
|
|
"sign",
|
|
|
|
"similar",
|
|
|
|
"simple",
|
|
|
|
"since",
|
|
|
|
"sing",
|
|
|
|
"single",
|
|
|
|
"sir",
|
|
|
|
"sister",
|
|
|
|
"sit",
|
|
|
|
"site",
|
|
|
|
"situate",
|
|
|
|
"six",
|
|
|
|
"size",
|
|
|
|
"sleep",
|
|
|
|
"slight",
|
|
|
|
"slow",
|
|
|
|
"small",
|
|
|
|
"smoke",
|
|
|
|
"so",
|
|
|
|
"social",
|
|
|
|
"society",
|
|
|
|
"some",
|
|
|
|
"son",
|
|
|
|
"soon",
|
|
|
|
"sorry",
|
|
|
|
"sort",
|
|
|
|
"sound",
|
|
|
|
"south",
|
|
|
|
"space",
|
|
|
|
"speak",
|
|
|
|
"special",
|
|
|
|
"specific",
|
|
|
|
"speed",
|
|
|
|
"spell",
|
|
|
|
"spend",
|
|
|
|
"square",
|
|
|
|
"staff",
|
|
|
|
"stage",
|
|
|
|
"stairs",
|
|
|
|
"stand",
|
|
|
|
"standard",
|
|
|
|
"start",
|
|
|
|
"state",
|
|
|
|
"station",
|
|
|
|
"stay",
|
|
|
|
"step",
|
|
|
|
"stick",
|
|
|
|
"still",
|
|
|
|
"stop",
|
|
|
|
"story",
|
|
|
|
"straight",
|
|
|
|
"strategy",
|
|
|
|
"street",
|
|
|
|
"strike",
|
|
|
|
"strong",
|
|
|
|
"structure",
|
|
|
|
"student",
|
|
|
|
"study",
|
|
|
|
"stuff",
|
|
|
|
"stupid",
|
|
|
|
"subject",
|
|
|
|
"succeed",
|
|
|
|
"such",
|
|
|
|
"sudden",
|
|
|
|
"suggest",
|
|
|
|
"suit",
|
|
|
|
"summer",
|
|
|
|
"sun",
|
|
|
|
"sunday",
|
|
|
|
"supply",
|
|
|
|
"support",
|
|
|
|
"suppose",
|
|
|
|
"sure",
|
|
|
|
"surprise",
|
|
|
|
"switch",
|
|
|
|
"system",
|
|
|
|
"table",
|
|
|
|
"take",
|
|
|
|
"talk",
|
|
|
|
"tape",
|
|
|
|
"tax",
|
|
|
|
"tea",
|
|
|
|
"teach",
|
|
|
|
"team",
|
|
|
|
"telephone",
|
|
|
|
"television",
|
|
|
|
"tell",
|
|
|
|
"ten",
|
|
|
|
"tend",
|
|
|
|
"term",
|
|
|
|
"terrible",
|
|
|
|
"test",
|
|
|
|
"than",
|
|
|
|
"thank",
|
|
|
|
"the",
|
|
|
|
"then",
|
|
|
|
"there",
|
|
|
|
"therefore",
|
|
|
|
"they",
|
|
|
|
"thing",
|
|
|
|
"think",
|
|
|
|
"thirteen",
|
|
|
|
"thirty",
|
|
|
|
"this",
|
|
|
|
"thou",
|
|
|
|
"though",
|
|
|
|
"thousand",
|
|
|
|
"three",
|
|
|
|
"through",
|
|
|
|
"throw",
|
|
|
|
"thursday",
|
|
|
|
"tie",
|
|
|
|
"time",
|
|
|
|
"to",
|
|
|
|
"today",
|
|
|
|
"together",
|
|
|
|
"tomorrow",
|
|
|
|
"tonight",
|
|
|
|
"too",
|
|
|
|
"top",
|
|
|
|
"total",
|
|
|
|
"touch",
|
|
|
|
"toward",
|
|
|
|
"town",
|
|
|
|
"trade",
|
|
|
|
"traffic",
|
|
|
|
"train",
|
|
|
|
"transport",
|
|
|
|
"travel",
|
|
|
|
"treat",
|
|
|
|
"tree",
|
|
|
|
"trouble",
|
|
|
|
"true",
|
|
|
|
"trust",
|
|
|
|
"try",
|
|
|
|
"tuesday",
|
|
|
|
"turn",
|
|
|
|
"twelve",
|
|
|
|
"twenty",
|
|
|
|
"two",
|
|
|
|
"type",
|
|
|
|
"under",
|
|
|
|
"understand",
|
|
|
|
"union",
|
|
|
|
"unit",
|
|
|
|
"unite",
|
|
|
|
"university",
|
|
|
|
"unless",
|
|
|
|
"until",
|
|
|
|
"up",
|
|
|
|
"upon",
|
|
|
|
"use",
|
|
|
|
"usual",
|
|
|
|
"value",
|
|
|
|
"various",
|
|
|
|
"very",
|
|
|
|
"video",
|
|
|
|
"view",
|
|
|
|
"village",
|
|
|
|
"visit",
|
|
|
|
"vote",
|
|
|
|
"wage",
|
|
|
|
"wait",
|
|
|
|
"walk",
|
|
|
|
"wall",
|
|
|
|
"want",
|
|
|
|
"war",
|
|
|
|
"warm",
|
|
|
|
"wash",
|
|
|
|
"waste",
|
|
|
|
"watch",
|
|
|
|
"water",
|
|
|
|
"way",
|
|
|
|
"we",
|
|
|
|
"wear",
|
|
|
|
"wednesday",
|
|
|
|
"wee",
|
|
|
|
"week",
|
|
|
|
"weigh",
|
|
|
|
"welcome",
|
|
|
|
"well",
|
|
|
|
"west",
|
|
|
|
"what",
|
|
|
|
"when",
|
|
|
|
"where",
|
|
|
|
"whether",
|
|
|
|
"which",
|
|
|
|
"while",
|
|
|
|
"white",
|
|
|
|
"who",
|
|
|
|
"whole",
|
|
|
|
"why",
|
|
|
|
"wide",
|
|
|
|
"wife",
|
|
|
|
"will",
|
|
|
|
"win",
|
|
|
|
"wind",
|
|
|
|
"window",
|
|
|
|
"wish",
|
|
|
|
"with",
|
|
|
|
"within",
|
|
|
|
"without",
|
|
|
|
"woman",
|
|
|
|
"wonder",
|
|
|
|
"wood",
|
|
|
|
"word",
|
|
|
|
"work",
|
|
|
|
"world",
|
|
|
|
"worry",
|
|
|
|
"worse",
|
|
|
|
"worth",
|
|
|
|
"would",
|
|
|
|
"write",
|
|
|
|
"wrong",
|
|
|
|
"year",
|
|
|
|
"yes",
|
|
|
|
"yesterday",
|
|
|
|
"yet",
|
|
|
|
"you",
|
|
|
|
"young"
|
2022-02-28 21:16:41 +00:00
|
|
|
]
|
|
|
|
};
|
|
|
|
|
2024-05-09 03:16:39 +00:00
|
|
|
// Thanks to https://github.com/dariusk/corpora/blob/master/data/words/common.json (CC0 license)
|
|
|
|
const MORSE_WORDS = [
|
|
|
|
"0",
|
|
|
|
"1",
|
|
|
|
"2",
|
|
|
|
"3",
|
|
|
|
"4",
|
|
|
|
"5",
|
|
|
|
"6",
|
|
|
|
"7",
|
|
|
|
"8",
|
|
|
|
"9",
|
|
|
|
".",
|
|
|
|
"?",
|
|
|
|
"!",
|
|
|
|
"=",
|
|
|
|
"+",
|
|
|
|
"-",
|
|
|
|
"QRG",
|
|
|
|
"QRI",
|
|
|
|
"QRK",
|
|
|
|
"QRL",
|
|
|
|
"QRM",
|
|
|
|
"QRN",
|
|
|
|
"QRO",
|
|
|
|
"QRP",
|
|
|
|
"QRQ",
|
|
|
|
"QRR",
|
|
|
|
"QRRR",
|
|
|
|
"QRS",
|
|
|
|
"QRT",
|
|
|
|
"QRU",
|
|
|
|
"QRV",
|
|
|
|
"QRX",
|
|
|
|
"QRZ",
|
|
|
|
"QSA",
|
|
|
|
"QSB",
|
|
|
|
"QSD",
|
|
|
|
"QSK",
|
|
|
|
"QSL",
|
|
|
|
"QSM",
|
|
|
|
"QSN",
|
|
|
|
"QSO",
|
|
|
|
"QSP",
|
|
|
|
"QST",
|
|
|
|
"QSX",
|
|
|
|
"QSY",
|
|
|
|
"QTA",
|
|
|
|
"QTC",
|
|
|
|
"QTH",
|
|
|
|
"QTR",
|
|
|
|
"AA",
|
|
|
|
"AB",
|
|
|
|
"ABT",
|
|
|
|
"ADEE",
|
|
|
|
"ADR",
|
|
|
|
"AGN",
|
|
|
|
"AM",
|
|
|
|
"ANT",
|
|
|
|
"BCI",
|
|
|
|
"BCL",
|
|
|
|
"BCNU",
|
|
|
|
"BK",
|
|
|
|
"BN",
|
|
|
|
"BT",
|
|
|
|
"BTR",
|
|
|
|
"Bug",
|
|
|
|
"C",
|
|
|
|
"CFM",
|
|
|
|
"CK",
|
|
|
|
"CKT",
|
|
|
|
"CL",
|
|
|
|
"CLBK",
|
|
|
|
"CLD",
|
|
|
|
"CLG",
|
|
|
|
"CNT",
|
|
|
|
"CONDX",
|
|
|
|
"CQ",
|
|
|
|
"CU",
|
|
|
|
"CUL",
|
|
|
|
"CUM",
|
|
|
|
"CW",
|
|
|
|
"DA",
|
|
|
|
"DE",
|
|
|
|
"DIFF",
|
|
|
|
"DLD",
|
|
|
|
"DLVD",
|
|
|
|
"DN",
|
|
|
|
"DR",
|
|
|
|
"DX",
|
|
|
|
"EL",
|
|
|
|
"ES",
|
|
|
|
"FB",
|
|
|
|
"FER",
|
|
|
|
"FM",
|
|
|
|
"GA",
|
|
|
|
"GB",
|
|
|
|
"GD",
|
|
|
|
"GE",
|
|
|
|
"GESS",
|
|
|
|
"GG",
|
|
|
|
"GM",
|
|
|
|
"GN",
|
|
|
|
"GND",
|
|
|
|
"GUD",
|
|
|
|
"GV",
|
|
|
|
"HH",
|
|
|
|
"HI",
|
|
|
|
"HR",
|
|
|
|
"HV",
|
|
|
|
"HW",
|
|
|
|
"IMI",
|
|
|
|
"LNG",
|
|
|
|
"LTR",
|
|
|
|
"LVG",
|
|
|
|
"MA",
|
|
|
|
"MILLS",
|
|
|
|
"MSG",
|
|
|
|
"N",
|
|
|
|
"NCS",
|
|
|
|
"ND",
|
|
|
|
"NM",
|
|
|
|
"NR",
|
|
|
|
"NW",
|
|
|
|
"OB",
|
|
|
|
"OC",
|
|
|
|
"OM",
|
|
|
|
"OP",
|
|
|
|
"OPR",
|
|
|
|
"OT",
|
|
|
|
"PBL",
|
|
|
|
"PKG",
|
|
|
|
"PSE",
|
|
|
|
"PT",
|
|
|
|
"PWR",
|
|
|
|
"PX",
|
|
|
|
"R",
|
|
|
|
"RC",
|
|
|
|
"RCD",
|
|
|
|
"RCVR",
|
|
|
|
"REF",
|
|
|
|
"RFI",
|
|
|
|
"RIG",
|
|
|
|
"RPT",
|
|
|
|
"RTTY",
|
|
|
|
"RST",
|
|
|
|
"RX",
|
|
|
|
"SASE",
|
|
|
|
"SED",
|
|
|
|
"SEZ",
|
|
|
|
"SGD",
|
|
|
|
"SIG",
|
|
|
|
"SINE",
|
|
|
|
"SKED",
|
|
|
|
"SRI",
|
|
|
|
"SS",
|
|
|
|
"SSB",
|
|
|
|
"STN",
|
|
|
|
"SUM",
|
|
|
|
"SVC",
|
|
|
|
"T",
|
|
|
|
"TFC",
|
|
|
|
"TMW",
|
|
|
|
"TKS",
|
|
|
|
"TNX",
|
|
|
|
"TR",
|
|
|
|
"TX",
|
|
|
|
"T/R",
|
|
|
|
"TRIX",
|
|
|
|
"TT",
|
|
|
|
"TTS",
|
|
|
|
"TU",
|
|
|
|
"TVI",
|
|
|
|
"TX",
|
|
|
|
"TXT",
|
|
|
|
"U",
|
|
|
|
"UR",
|
|
|
|
"URS",
|
|
|
|
"VFB",
|
|
|
|
"VFO",
|
|
|
|
"VY",
|
|
|
|
"W",
|
|
|
|
"WA",
|
|
|
|
"WD",
|
|
|
|
"WDS",
|
|
|
|
"WKD",
|
|
|
|
"WKG",
|
|
|
|
"WPM",
|
|
|
|
"WRD",
|
|
|
|
"WX",
|
|
|
|
"TXVR",
|
|
|
|
"XMTR",
|
|
|
|
"XTL",
|
|
|
|
"XYL",
|
|
|
|
"YF",
|
|
|
|
"YL",
|
|
|
|
"YR",
|
|
|
|
"73",
|
|
|
|
"KG7DAB",
|
|
|
|
"KF7WNR",
|
|
|
|
"K7LWA",
|
|
|
|
"W7UUL",
|
|
|
|
"KB7LTT",
|
|
|
|
"WA2AFT",
|
|
|
|
"KE7BSC",
|
|
|
|
"AB7MK",
|
|
|
|
"KF7ZZB",
|
|
|
|
"N1MNB",
|
|
|
|
"KF7YKN",
|
|
|
|
"K7IS",
|
|
|
|
"KJ7ZOL",
|
|
|
|
"N1SXY",
|
|
|
|
"KF7BMP",
|
|
|
|
"KF4ELO",
|
|
|
|
"KF7SWZ",
|
|
|
|
"K7ETA",
|
|
|
|
"KF5CZU",
|
|
|
|
"KI7MLV",
|
|
|
|
"K7TJA",
|
|
|
|
"N7GRN",
|
|
|
|
"KG7AHK",
|
|
|
|
"KG7CMP",
|
|
|
|
"KG7GWH",
|
|
|
|
"KI7HQJ",
|
|
|
|
"K7PWN",
|
|
|
|
"KI7ZEJ",
|
|
|
|
"AG7Z",
|
|
|
|
"KI7QVE",
|
|
|
|
"W1ZKY",
|
|
|
|
"KG7PKS",
|
|
|
|
"KD7NKS",
|
|
|
|
"KF7TIH"
|
|
|
|
];
|
|
|
|
|
2022-02-28 21:16:41 +00:00
|
|
|
const ALL_WORDS = COMMON_WORDS.commonWords;
|
|
|
|
|
2022-02-28 21:38:31 +00:00
|
|
|
const EASY_WORDS = COMMON_WORDS.commonWords.filter(word => word.length < 5);
|