mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2024-11-16 17:27:37 +00:00
2c37e427e9
* Fix conflicts with main
* fix for multiple wallets
* Add tron to windows application configuration.
* Add macOS option for description message in configure_cake_wallet.sh
* Include missed monero dll for windows.
* fix conflicts with main
* Disable haven configuration for iOS as default. Add ability to configure cakewallet for iOS with for configuration script. Remove cw_shared configuration for cw_monero.
* fix: scan fixes, add date, allow sending while scanning
* add missing nano secrets file [skip ci]
* ios library
* don't pull prebuilds android
* Add auto generation of manifest file for android project even for iOS, macOS, Windows.
* feat: sync fixes, sp settings
* feat: fix resyncing
* store crash fix
* make init async so it won't lag
disable print starts
* fix monero_c build issues
* libstdc++
* Fix MacOS saving wallet file issue
Fix Secure Storage issue (somehow)
* update pubspec.lock
* fix build script
* Use dylib as iOS framework. Use custom path for loading of iOS framework for monero.dart. Add script for generate iOS framework for monero wallet.
* fix: date from height logic, status disconnected & chain tip get
* fix: params
* feat: electrum migration if using cake electrum
* fix nodes
update versions
* re-enable tron
* update sp_scanner to work on iOS [skip ci]
* bump monero_c hash
* bump monero_c commit
* bump moneroc version
* bump monero_c commit
* Add ability to build monero wallet lib as universal lib. Update macOS build guide. Change default arch for macOS project to .
* fix: wrong socket for old electrum nodes
* Fix unchecked wallet type call
* get App Dir correctly in default_settings_migration.dart
* handle previous issue with fetching linux documents directory [skip ci]
* backup fix
* fix NTFS issues
* Close the wallet when the wallet gets changed
* fix: double balance
* feat: node domain
* fix: menu name
* bump monero_c commit
* fix: update tip on set scanning
* fix: connection switching back and forth
* feat: check if node is electrs, and supports sp
* chore: fix build
* minor enhancements
* fixes and enhancements
* solve conflicts with main
* Only stop wallet on rename and delete
* fix: status toggle
* minor enhancement
* Monero.com fixes
* bump monero_c commit
* update sp_scanner to include windows and linux
* Update macOS build guide. Change brew dependencies for build unbound locally.
* fix conflicts and update macos build guide
* remove build cache when on gh actions
* update secure storage
* free up even more storage
* free up more storage
* Add initial wownero
* fix conflicts
* fix workflow issue
* build wownero
* ios and windows changes
* macos
* complete wownero flow (app side)
* add keychain group entitlement and update script for RunnerBase on macos
* update secure_storage version to 8.1.0 in configure.dart
* add wownero framework
* update ios builds
* proper path for wownero and monero
* finalizing wownero
* finalizing wownero
* free up even more storage
* revert commenting of build gradle configs
* revert commenting of secrets [skip ci]
* free more storage
* minor fixes
* link android wownero libraries
* bump monero_c commit
* wownero fixes
* rename target
* build_single.sh using clean env
* bump monero_c commit
* minor fix
* Add wownero polyseed
* fix conflicts with main
* fix: wallet seed display
fix: wownero not refreshing
* fix: wallet seed display
fix: wownero not refreshing
* bump monero_c commit
* minor fixes
* fix: incorrectly displaying XMR instead of WOW
* fix: incorrect restore height in wownero
* bump monero_c commit
* Add Inno Setup Script for windows exe installer
* drop libc++_shared.so
* fixes from comments
* Fix CMake for windows
* Merge latest monero dart changes [skip ci]
* bump monero_c commit
* add wownero to build scripts for macos [skip ci]
* add 14 word seed support to wownero
* UI fixes for wownero seed restore
* minor fixes
* reformat code to pass lints
* Add debug ledger code
* Add Litecoin Hardware Wallet Creation
* Add Litecoin Hardware Wallet Creation
* Fix Bitcoin not sending on Ledger
* Fixes to sending LTC using Ledger
* CW-679 Fix merge conflicts
* CW-679 Fix merge conflicts
* CW-679 Minor fixes
* CW-679 Add derivation Path of change address
* Add create Monero Wallet from Ledger
* bug fix to create Monero Wallet from Ledger
* ledger flutter plus refactoring
* ledger flutter plus refactoring
* ledger flutter plus refactoring
* Ups :|
* Ups :| I forgot USB
* Handle BT Off
* Fix Issue with A14 and USB
* Small Ledger Quality of life improvements
* Small Ledger Quality of life improvements
* Small Ledger Quality of life improvements
* Small Ledger Quality of life improvements
* Small Ledger Quality of life improvements
* Small Ledger Quality of life improvements
* Small Ledger Quality of life improvements
* Pls work
* Pls work
* Pls work
* Pls work
* Fix overpopulation
* Fix ble device detection and support for Stax and Flex
* clean up pubspec
* clean up
* MWeb merge fix
* MWeb merge fix
* Migrate to Ledger Flutter Plus
* Add connect device page before loading the wallet (Only monero)
* Add connect device page before loading the wallet (Only monero)
* Fix merge error
* Fix merge error
* Fix merge error && Allow for wallet switching
* Please compile now
* Move monero/ledger.dart from monero_c to cw_monero
* Upgrade ledger_flutter_plus
* Add more popups if action on the device is needed.
* Update monero_c dependency hash
* Yay ledger monero is even more efficient and avoids memory leaks 🥳
* [skip-ci] more code
* Fix Minor Bug
* Fix Minor Bug
* Apply requested changes
* [skip ci] Apply requested changes
* Minor Cleanup
* Welp I'm dumb :/
* Implement requested changes
* Increase ledger refresh speed
* Add Monero Ledger keep connection alive
* Add Monero Ledger keep connection alive
---------
Co-authored-by: OmarHatem <omarh.ismail1@gmail.com>
Co-authored-by: Czarek Nakamoto <cyjan@mrcyjanek.net>
Co-authored-by: m <m@cakewallet.com>
Co-authored-by: Rafael Saes <git@rafael.saes.dev>
Co-authored-by: Matthew Fosse <matt@fosse.co>
1689 lines
21 KiB
Dart
1689 lines
21 KiB
Dart
const prefixLength = 3;
|
|
|
|
String swapEndianBytes(String original) {
|
|
if (original.length != 8) {
|
|
return '';
|
|
}
|
|
|
|
return original[6] +
|
|
original[7] +
|
|
original[4] +
|
|
original[5] +
|
|
original[2] +
|
|
original[3] +
|
|
original[0] +
|
|
original[1];
|
|
}
|
|
|
|
List<String> tructWords(List<String> wordSet) {
|
|
final start = 0;
|
|
final end = prefixLength;
|
|
|
|
return wordSet.map((word) => word.substring(start, end)).toList();
|
|
}
|
|
|
|
String mnemonicDecode(String seed) {
|
|
final n = englistWordSet.length;
|
|
var out = '';
|
|
var wlist = seed.split(' ');
|
|
wlist.removeLast();
|
|
|
|
for (var i = 0; i < wlist.length; i += 3) {
|
|
final w1 =
|
|
tructWords(englistWordSet).indexOf(wlist[i].substring(0, prefixLength));
|
|
final w2 = tructWords(englistWordSet)
|
|
.indexOf(wlist[i + 1].substring(0, prefixLength));
|
|
final w3 = tructWords(englistWordSet)
|
|
.indexOf(wlist[i + 2].substring(0, prefixLength));
|
|
|
|
if (w1 == -1 || w2 == -1 || w3 == -1) {
|
|
print("invalid word in mnemonic");
|
|
return '';
|
|
}
|
|
|
|
final x = w1 + n * (((n - w1) + w2) % n) + n * n * (((n - w2) + w3) % n);
|
|
|
|
if (x % n != w1) {
|
|
print("Something went wrong when decoding your private key, please try again");
|
|
return '';
|
|
}
|
|
|
|
final _res = '0000000' + x.toRadixString(16);
|
|
final start = _res.length - 8;
|
|
final end = _res.length;
|
|
final res = _res.substring(start, end);
|
|
|
|
out += swapEndianBytes(res);
|
|
}
|
|
|
|
return out;
|
|
}
|
|
|
|
final englistWordSet = [
|
|
"abbey",
|
|
"abducts",
|
|
"ability",
|
|
"ablaze",
|
|
"abnormal",
|
|
"abort",
|
|
"abrasive",
|
|
"absorb",
|
|
"abyss",
|
|
"academy",
|
|
"aces",
|
|
"aching",
|
|
"acidic",
|
|
"acoustic",
|
|
"acquire",
|
|
"across",
|
|
"actress",
|
|
"acumen",
|
|
"adapt",
|
|
"addicted",
|
|
"adept",
|
|
"adhesive",
|
|
"adjust",
|
|
"adopt",
|
|
"adrenalin",
|
|
"adult",
|
|
"adventure",
|
|
"aerial",
|
|
"afar",
|
|
"affair",
|
|
"afield",
|
|
"afloat",
|
|
"afoot",
|
|
"afraid",
|
|
"after",
|
|
"against",
|
|
"agenda",
|
|
"aggravate",
|
|
"agile",
|
|
"aglow",
|
|
"agnostic",
|
|
"agony",
|
|
"agreed",
|
|
"ahead",
|
|
"aided",
|
|
"ailments",
|
|
"aimless",
|
|
"airport",
|
|
"aisle",
|
|
"ajar",
|
|
"akin",
|
|
"alarms",
|
|
"album",
|
|
"alchemy",
|
|
"alerts",
|
|
"algebra",
|
|
"alkaline",
|
|
"alley",
|
|
"almost",
|
|
"aloof",
|
|
"alpine",
|
|
"already",
|
|
"also",
|
|
"altitude",
|
|
"alumni",
|
|
"always",
|
|
"amaze",
|
|
"ambush",
|
|
"amended",
|
|
"amidst",
|
|
"ammo",
|
|
"amnesty",
|
|
"among",
|
|
"amply",
|
|
"amused",
|
|
"anchor",
|
|
"android",
|
|
"anecdote",
|
|
"angled",
|
|
"ankle",
|
|
"annoyed",
|
|
"answers",
|
|
"antics",
|
|
"anvil",
|
|
"anxiety",
|
|
"anybody",
|
|
"apart",
|
|
"apex",
|
|
"aphid",
|
|
"aplomb",
|
|
"apology",
|
|
"apply",
|
|
"apricot",
|
|
"aptitude",
|
|
"aquarium",
|
|
"arbitrary",
|
|
"archer",
|
|
"ardent",
|
|
"arena",
|
|
"argue",
|
|
"arises",
|
|
"army",
|
|
"around",
|
|
"arrow",
|
|
"arsenic",
|
|
"artistic",
|
|
"ascend",
|
|
"ashtray",
|
|
"aside",
|
|
"asked",
|
|
"asleep",
|
|
"aspire",
|
|
"assorted",
|
|
"asylum",
|
|
"athlete",
|
|
"atlas",
|
|
"atom",
|
|
"atrium",
|
|
"attire",
|
|
"auburn",
|
|
"auctions",
|
|
"audio",
|
|
"august",
|
|
"aunt",
|
|
"austere",
|
|
"autumn",
|
|
"avatar",
|
|
"avidly",
|
|
"avoid",
|
|
"awakened",
|
|
"awesome",
|
|
"awful",
|
|
"awkward",
|
|
"awning",
|
|
"awoken",
|
|
"axes",
|
|
"axis",
|
|
"axle",
|
|
"aztec",
|
|
"azure",
|
|
"baby",
|
|
"bacon",
|
|
"badge",
|
|
"baffles",
|
|
"bagpipe",
|
|
"bailed",
|
|
"bakery",
|
|
"balding",
|
|
"bamboo",
|
|
"banjo",
|
|
"baptism",
|
|
"basin",
|
|
"batch",
|
|
"bawled",
|
|
"bays",
|
|
"because",
|
|
"beer",
|
|
"befit",
|
|
"begun",
|
|
"behind",
|
|
"being",
|
|
"below",
|
|
"bemused",
|
|
"benches",
|
|
"berries",
|
|
"bested",
|
|
"betting",
|
|
"bevel",
|
|
"beware",
|
|
"beyond",
|
|
"bias",
|
|
"bicycle",
|
|
"bids",
|
|
"bifocals",
|
|
"biggest",
|
|
"bikini",
|
|
"bimonthly",
|
|
"binocular",
|
|
"biology",
|
|
"biplane",
|
|
"birth",
|
|
"biscuit",
|
|
"bite",
|
|
"biweekly",
|
|
"blender",
|
|
"blip",
|
|
"bluntly",
|
|
"boat",
|
|
"bobsled",
|
|
"bodies",
|
|
"bogeys",
|
|
"boil",
|
|
"boldly",
|
|
"bomb",
|
|
"border",
|
|
"boss",
|
|
"both",
|
|
"bounced",
|
|
"bovine",
|
|
"bowling",
|
|
"boxes",
|
|
"boyfriend",
|
|
"broken",
|
|
"brunt",
|
|
"bubble",
|
|
"buckets",
|
|
"budget",
|
|
"buffet",
|
|
"bugs",
|
|
"building",
|
|
"bulb",
|
|
"bumper",
|
|
"bunch",
|
|
"business",
|
|
"butter",
|
|
"buying",
|
|
"buzzer",
|
|
"bygones",
|
|
"byline",
|
|
"bypass",
|
|
"cabin",
|
|
"cactus",
|
|
"cadets",
|
|
"cafe",
|
|
"cage",
|
|
"cajun",
|
|
"cake",
|
|
"calamity",
|
|
"camp",
|
|
"candy",
|
|
"casket",
|
|
"catch",
|
|
"cause",
|
|
"cavernous",
|
|
"cease",
|
|
"cedar",
|
|
"ceiling",
|
|
"cell",
|
|
"cement",
|
|
"cent",
|
|
"certain",
|
|
"chlorine",
|
|
"chrome",
|
|
"cider",
|
|
"cigar",
|
|
"cinema",
|
|
"circle",
|
|
"cistern",
|
|
"citadel",
|
|
"civilian",
|
|
"claim",
|
|
"click",
|
|
"clue",
|
|
"coal",
|
|
"cobra",
|
|
"cocoa",
|
|
"code",
|
|
"coexist",
|
|
"coffee",
|
|
"cogs",
|
|
"cohesive",
|
|
"coils",
|
|
"colony",
|
|
"comb",
|
|
"cool",
|
|
"copy",
|
|
"corrode",
|
|
"costume",
|
|
"cottage",
|
|
"cousin",
|
|
"cowl",
|
|
"criminal",
|
|
"cube",
|
|
"cucumber",
|
|
"cuddled",
|
|
"cuffs",
|
|
"cuisine",
|
|
"cunning",
|
|
"cupcake",
|
|
"custom",
|
|
"cycling",
|
|
"cylinder",
|
|
"cynical",
|
|
"dabbing",
|
|
"dads",
|
|
"daft",
|
|
"dagger",
|
|
"daily",
|
|
"damp",
|
|
"dangerous",
|
|
"dapper",
|
|
"darted",
|
|
"dash",
|
|
"dating",
|
|
"dauntless",
|
|
"dawn",
|
|
"daytime",
|
|
"dazed",
|
|
"debut",
|
|
"decay",
|
|
"dedicated",
|
|
"deepest",
|
|
"deftly",
|
|
"degrees",
|
|
"dehydrate",
|
|
"deity",
|
|
"dejected",
|
|
"delayed",
|
|
"demonstrate",
|
|
"dented",
|
|
"deodorant",
|
|
"depth",
|
|
"desk",
|
|
"devoid",
|
|
"dewdrop",
|
|
"dexterity",
|
|
"dialect",
|
|
"dice",
|
|
"diet",
|
|
"different",
|
|
"digit",
|
|
"dilute",
|
|
"dime",
|
|
"dinner",
|
|
"diode",
|
|
"diplomat",
|
|
"directed",
|
|
"distance",
|
|
"ditch",
|
|
"divers",
|
|
"dizzy",
|
|
"doctor",
|
|
"dodge",
|
|
"does",
|
|
"dogs",
|
|
"doing",
|
|
"dolphin",
|
|
"domestic",
|
|
"donuts",
|
|
"doorway",
|
|
"dormant",
|
|
"dosage",
|
|
"dotted",
|
|
"double",
|
|
"dove",
|
|
"down",
|
|
"dozen",
|
|
"dreams",
|
|
"drinks",
|
|
"drowning",
|
|
"drunk",
|
|
"drying",
|
|
"dual",
|
|
"dubbed",
|
|
"duckling",
|
|
"dude",
|
|
"duets",
|
|
"duke",
|
|
"dullness",
|
|
"dummy",
|
|
"dunes",
|
|
"duplex",
|
|
"duration",
|
|
"dusted",
|
|
"duties",
|
|
"dwarf",
|
|
"dwelt",
|
|
"dwindling",
|
|
"dying",
|
|
"dynamite",
|
|
"dyslexic",
|
|
"each",
|
|
"eagle",
|
|
"earth",
|
|
"easy",
|
|
"eating",
|
|
"eavesdrop",
|
|
"eccentric",
|
|
"echo",
|
|
"eclipse",
|
|
"economics",
|
|
"ecstatic",
|
|
"eden",
|
|
"edgy",
|
|
"edited",
|
|
"educated",
|
|
"eels",
|
|
"efficient",
|
|
"eggs",
|
|
"egotistic",
|
|
"eight",
|
|
"either",
|
|
"eject",
|
|
"elapse",
|
|
"elbow",
|
|
"eldest",
|
|
"eleven",
|
|
"elite",
|
|
"elope",
|
|
"else",
|
|
"eluded",
|
|
"emails",
|
|
"ember",
|
|
"emerge",
|
|
"emit",
|
|
"emotion",
|
|
"empty",
|
|
"emulate",
|
|
"energy",
|
|
"enforce",
|
|
"enhanced",
|
|
"enigma",
|
|
"enjoy",
|
|
"enlist",
|
|
"enmity",
|
|
"enough",
|
|
"enraged",
|
|
"ensign",
|
|
"entrance",
|
|
"envy",
|
|
"epoxy",
|
|
"equip",
|
|
"erase",
|
|
"erected",
|
|
"erosion",
|
|
"error",
|
|
"eskimos",
|
|
"espionage",
|
|
"essential",
|
|
"estate",
|
|
"etched",
|
|
"eternal",
|
|
"ethics",
|
|
"etiquette",
|
|
"evaluate",
|
|
"evenings",
|
|
"evicted",
|
|
"evolved",
|
|
"examine",
|
|
"excess",
|
|
"exhale",
|
|
"exit",
|
|
"exotic",
|
|
"exquisite",
|
|
"extra",
|
|
"exult",
|
|
"fabrics",
|
|
"factual",
|
|
"fading",
|
|
"fainted",
|
|
"faked",
|
|
"fall",
|
|
"family",
|
|
"fancy",
|
|
"farming",
|
|
"fatal",
|
|
"faulty",
|
|
"fawns",
|
|
"faxed",
|
|
"fazed",
|
|
"feast",
|
|
"february",
|
|
"federal",
|
|
"feel",
|
|
"feline",
|
|
"females",
|
|
"fences",
|
|
"ferry",
|
|
"festival",
|
|
"fetches",
|
|
"fever",
|
|
"fewest",
|
|
"fiat",
|
|
"fibula",
|
|
"fictional",
|
|
"fidget",
|
|
"fierce",
|
|
"fifteen",
|
|
"fight",
|
|
"films",
|
|
"firm",
|
|
"fishing",
|
|
"fitting",
|
|
"five",
|
|
"fixate",
|
|
"fizzle",
|
|
"fleet",
|
|
"flippant",
|
|
"flying",
|
|
"foamy",
|
|
"focus",
|
|
"foes",
|
|
"foggy",
|
|
"foiled",
|
|
"folding",
|
|
"fonts",
|
|
"foolish",
|
|
"fossil",
|
|
"fountain",
|
|
"fowls",
|
|
"foxes",
|
|
"foyer",
|
|
"framed",
|
|
"friendly",
|
|
"frown",
|
|
"fruit",
|
|
"frying",
|
|
"fudge",
|
|
"fuel",
|
|
"fugitive",
|
|
"fully",
|
|
"fuming",
|
|
"fungal",
|
|
"furnished",
|
|
"fuselage",
|
|
"future",
|
|
"fuzzy",
|
|
"gables",
|
|
"gadget",
|
|
"gags",
|
|
"gained",
|
|
"galaxy",
|
|
"gambit",
|
|
"gang",
|
|
"gasp",
|
|
"gather",
|
|
"gauze",
|
|
"gave",
|
|
"gawk",
|
|
"gaze",
|
|
"gearbox",
|
|
"gecko",
|
|
"geek",
|
|
"gels",
|
|
"gemstone",
|
|
"general",
|
|
"geometry",
|
|
"germs",
|
|
"gesture",
|
|
"getting",
|
|
"geyser",
|
|
"ghetto",
|
|
"ghost",
|
|
"giant",
|
|
"giddy",
|
|
"gifts",
|
|
"gigantic",
|
|
"gills",
|
|
"gimmick",
|
|
"ginger",
|
|
"girth",
|
|
"giving",
|
|
"glass",
|
|
"gleeful",
|
|
"glide",
|
|
"gnaw",
|
|
"gnome",
|
|
"goat",
|
|
"goblet",
|
|
"godfather",
|
|
"goes",
|
|
"goggles",
|
|
"going",
|
|
"goldfish",
|
|
"gone",
|
|
"goodbye",
|
|
"gopher",
|
|
"gorilla",
|
|
"gossip",
|
|
"gotten",
|
|
"gourmet",
|
|
"governing",
|
|
"gown",
|
|
"greater",
|
|
"grunt",
|
|
"guarded",
|
|
"guest",
|
|
"guide",
|
|
"gulp",
|
|
"gumball",
|
|
"guru",
|
|
"gusts",
|
|
"gutter",
|
|
"guys",
|
|
"gymnast",
|
|
"gypsy",
|
|
"gyrate",
|
|
"habitat",
|
|
"hacksaw",
|
|
"haggled",
|
|
"hairy",
|
|
"hamburger",
|
|
"happens",
|
|
"hashing",
|
|
"hatchet",
|
|
"haunted",
|
|
"having",
|
|
"hawk",
|
|
"haystack",
|
|
"hazard",
|
|
"hectare",
|
|
"hedgehog",
|
|
"heels",
|
|
"hefty",
|
|
"height",
|
|
"hemlock",
|
|
"hence",
|
|
"heron",
|
|
"hesitate",
|
|
"hexagon",
|
|
"hickory",
|
|
"hiding",
|
|
"highway",
|
|
"hijack",
|
|
"hiker",
|
|
"hills",
|
|
"himself",
|
|
"hinder",
|
|
"hippo",
|
|
"hire",
|
|
"history",
|
|
"hitched",
|
|
"hive",
|
|
"hoax",
|
|
"hobby",
|
|
"hockey",
|
|
"hoisting",
|
|
"hold",
|
|
"honked",
|
|
"hookup",
|
|
"hope",
|
|
"hornet",
|
|
"hospital",
|
|
"hotel",
|
|
"hounded",
|
|
"hover",
|
|
"howls",
|
|
"hubcaps",
|
|
"huddle",
|
|
"huge",
|
|
"hull",
|
|
"humid",
|
|
"hunter",
|
|
"hurried",
|
|
"husband",
|
|
"huts",
|
|
"hybrid",
|
|
"hydrogen",
|
|
"hyper",
|
|
"iceberg",
|
|
"icing",
|
|
"icon",
|
|
"identity",
|
|
"idiom",
|
|
"idled",
|
|
"idols",
|
|
"igloo",
|
|
"ignore",
|
|
"iguana",
|
|
"illness",
|
|
"imagine",
|
|
"imbalance",
|
|
"imitate",
|
|
"impel",
|
|
"inactive",
|
|
"inbound",
|
|
"incur",
|
|
"industrial",
|
|
"inexact",
|
|
"inflamed",
|
|
"ingested",
|
|
"initiate",
|
|
"injury",
|
|
"inkling",
|
|
"inline",
|
|
"inmate",
|
|
"innocent",
|
|
"inorganic",
|
|
"input",
|
|
"inquest",
|
|
"inroads",
|
|
"insult",
|
|
"intended",
|
|
"inundate",
|
|
"invoke",
|
|
"inwardly",
|
|
"ionic",
|
|
"irate",
|
|
"iris",
|
|
"irony",
|
|
"irritate",
|
|
"island",
|
|
"isolated",
|
|
"issued",
|
|
"italics",
|
|
"itches",
|
|
"items",
|
|
"itinerary",
|
|
"itself",
|
|
"ivory",
|
|
"jabbed",
|
|
"jackets",
|
|
"jaded",
|
|
"jagged",
|
|
"jailed",
|
|
"jamming",
|
|
"january",
|
|
"jargon",
|
|
"jaunt",
|
|
"javelin",
|
|
"jaws",
|
|
"jazz",
|
|
"jeans",
|
|
"jeers",
|
|
"jellyfish",
|
|
"jeopardy",
|
|
"jerseys",
|
|
"jester",
|
|
"jetting",
|
|
"jewels",
|
|
"jigsaw",
|
|
"jingle",
|
|
"jittery",
|
|
"jive",
|
|
"jobs",
|
|
"jockey",
|
|
"jogger",
|
|
"joining",
|
|
"joking",
|
|
"jolted",
|
|
"jostle",
|
|
"journal",
|
|
"joyous",
|
|
"jubilee",
|
|
"judge",
|
|
"juggled",
|
|
"juicy",
|
|
"jukebox",
|
|
"july",
|
|
"jump",
|
|
"junk",
|
|
"jury",
|
|
"justice",
|
|
"juvenile",
|
|
"kangaroo",
|
|
"karate",
|
|
"keep",
|
|
"kennel",
|
|
"kept",
|
|
"kernels",
|
|
"kettle",
|
|
"keyboard",
|
|
"kickoff",
|
|
"kidneys",
|
|
"king",
|
|
"kiosk",
|
|
"kisses",
|
|
"kitchens",
|
|
"kiwi",
|
|
"knapsack",
|
|
"knee",
|
|
"knife",
|
|
"knowledge",
|
|
"knuckle",
|
|
"koala",
|
|
"laboratory",
|
|
"ladder",
|
|
"lagoon",
|
|
"lair",
|
|
"lakes",
|
|
"lamb",
|
|
"language",
|
|
"laptop",
|
|
"large",
|
|
"last",
|
|
"later",
|
|
"launching",
|
|
"lava",
|
|
"lawsuit",
|
|
"layout",
|
|
"lazy",
|
|
"lectures",
|
|
"ledge",
|
|
"leech",
|
|
"left",
|
|
"legion",
|
|
"leisure",
|
|
"lemon",
|
|
"lending",
|
|
"leopard",
|
|
"lesson",
|
|
"lettuce",
|
|
"lexicon",
|
|
"liar",
|
|
"library",
|
|
"licks",
|
|
"lids",
|
|
"lied",
|
|
"lifestyle",
|
|
"light",
|
|
"likewise",
|
|
"lilac",
|
|
"limits",
|
|
"linen",
|
|
"lion",
|
|
"lipstick",
|
|
"liquid",
|
|
"listen",
|
|
"lively",
|
|
"loaded",
|
|
"lobster",
|
|
"locker",
|
|
"lodge",
|
|
"lofty",
|
|
"logic",
|
|
"loincloth",
|
|
"long",
|
|
"looking",
|
|
"lopped",
|
|
"lordship",
|
|
"losing",
|
|
"lottery",
|
|
"loudly",
|
|
"love",
|
|
"lower",
|
|
"loyal",
|
|
"lucky",
|
|
"luggage",
|
|
"lukewarm",
|
|
"lullaby",
|
|
"lumber",
|
|
"lunar",
|
|
"lurk",
|
|
"lush",
|
|
"luxury",
|
|
"lymph",
|
|
"lynx",
|
|
"lyrics",
|
|
"macro",
|
|
"madness",
|
|
"magically",
|
|
"mailed",
|
|
"major",
|
|
"makeup",
|
|
"malady",
|
|
"mammal",
|
|
"maps",
|
|
"masterful",
|
|
"match",
|
|
"maul",
|
|
"maverick",
|
|
"maximum",
|
|
"mayor",
|
|
"maze",
|
|
"meant",
|
|
"mechanic",
|
|
"medicate",
|
|
"meeting",
|
|
"megabyte",
|
|
"melting",
|
|
"memoir",
|
|
"menu",
|
|
"merger",
|
|
"mesh",
|
|
"metro",
|
|
"mews",
|
|
"mice",
|
|
"midst",
|
|
"mighty",
|
|
"mime",
|
|
"mirror",
|
|
"misery",
|
|
"mittens",
|
|
"mixture",
|
|
"moat",
|
|
"mobile",
|
|
"mocked",
|
|
"mohawk",
|
|
"moisture",
|
|
"molten",
|
|
"moment",
|
|
"money",
|
|
"moon",
|
|
"mops",
|
|
"morsel",
|
|
"mostly",
|
|
"motherly",
|
|
"mouth",
|
|
"movement",
|
|
"mowing",
|
|
"much",
|
|
"muddy",
|
|
"muffin",
|
|
"mugged",
|
|
"mullet",
|
|
"mumble",
|
|
"mundane",
|
|
"muppet",
|
|
"mural",
|
|
"musical",
|
|
"muzzle",
|
|
"myriad",
|
|
"mystery",
|
|
"myth",
|
|
"nabbing",
|
|
"nagged",
|
|
"nail",
|
|
"names",
|
|
"nanny",
|
|
"napkin",
|
|
"narrate",
|
|
"nasty",
|
|
"natural",
|
|
"nautical",
|
|
"navy",
|
|
"nearby",
|
|
"necklace",
|
|
"needed",
|
|
"negative",
|
|
"neither",
|
|
"neon",
|
|
"nephew",
|
|
"nerves",
|
|
"nestle",
|
|
"network",
|
|
"neutral",
|
|
"never",
|
|
"newt",
|
|
"nexus",
|
|
"nibs",
|
|
"niche",
|
|
"niece",
|
|
"nifty",
|
|
"nightly",
|
|
"nimbly",
|
|
"nineteen",
|
|
"nirvana",
|
|
"nitrogen",
|
|
"nobody",
|
|
"nocturnal",
|
|
"nodes",
|
|
"noises",
|
|
"nomad",
|
|
"noodles",
|
|
"northern",
|
|
"nostril",
|
|
"noted",
|
|
"nouns",
|
|
"novelty",
|
|
"nowhere",
|
|
"nozzle",
|
|
"nuance",
|
|
"nucleus",
|
|
"nudged",
|
|
"nugget",
|
|
"nuisance",
|
|
"null",
|
|
"number",
|
|
"nuns",
|
|
"nurse",
|
|
"nutshell",
|
|
"nylon",
|
|
"oaks",
|
|
"oars",
|
|
"oasis",
|
|
"oatmeal",
|
|
"obedient",
|
|
"object",
|
|
"obliged",
|
|
"obnoxious",
|
|
"observant",
|
|
"obtains",
|
|
"obvious",
|
|
"occur",
|
|
"ocean",
|
|
"october",
|
|
"odds",
|
|
"odometer",
|
|
"offend",
|
|
"often",
|
|
"oilfield",
|
|
"ointment",
|
|
"okay",
|
|
"older",
|
|
"olive",
|
|
"olympics",
|
|
"omega",
|
|
"omission",
|
|
"omnibus",
|
|
"onboard",
|
|
"oncoming",
|
|
"oneself",
|
|
"ongoing",
|
|
"onion",
|
|
"online",
|
|
"onslaught",
|
|
"onto",
|
|
"onward",
|
|
"oozed",
|
|
"opacity",
|
|
"opened",
|
|
"opposite",
|
|
"optical",
|
|
"opus",
|
|
"orange",
|
|
"orbit",
|
|
"orchid",
|
|
"orders",
|
|
"organs",
|
|
"origin",
|
|
"ornament",
|
|
"orphans",
|
|
"oscar",
|
|
"ostrich",
|
|
"otherwise",
|
|
"otter",
|
|
"ouch",
|
|
"ought",
|
|
"ounce",
|
|
"ourselves",
|
|
"oust",
|
|
"outbreak",
|
|
"oval",
|
|
"oven",
|
|
"owed",
|
|
"owls",
|
|
"owner",
|
|
"oxidant",
|
|
"oxygen",
|
|
"oyster",
|
|
"ozone",
|
|
"pact",
|
|
"paddles",
|
|
"pager",
|
|
"pairing",
|
|
"palace",
|
|
"pamphlet",
|
|
"pancakes",
|
|
"paper",
|
|
"paradise",
|
|
"pastry",
|
|
"patio",
|
|
"pause",
|
|
"pavements",
|
|
"pawnshop",
|
|
"payment",
|
|
"peaches",
|
|
"pebbles",
|
|
"peculiar",
|
|
"pedantic",
|
|
"peeled",
|
|
"pegs",
|
|
"pelican",
|
|
"pencil",
|
|
"people",
|
|
"pepper",
|
|
"perfect",
|
|
"pests",
|
|
"petals",
|
|
"phase",
|
|
"pheasants",
|
|
"phone",
|
|
"phrases",
|
|
"physics",
|
|
"piano",
|
|
"picked",
|
|
"pierce",
|
|
"pigment",
|
|
"piloted",
|
|
"pimple",
|
|
"pinched",
|
|
"pioneer",
|
|
"pipeline",
|
|
"pirate",
|
|
"pistons",
|
|
"pitched",
|
|
"pivot",
|
|
"pixels",
|
|
"pizza",
|
|
"playful",
|
|
"pledge",
|
|
"pliers",
|
|
"plotting",
|
|
"plus",
|
|
"plywood",
|
|
"poaching",
|
|
"pockets",
|
|
"podcast",
|
|
"poetry",
|
|
"point",
|
|
"poker",
|
|
"polar",
|
|
"ponies",
|
|
"pool",
|
|
"popular",
|
|
"portents",
|
|
"possible",
|
|
"potato",
|
|
"pouch",
|
|
"poverty",
|
|
"powder",
|
|
"pram",
|
|
"present",
|
|
"pride",
|
|
"problems",
|
|
"pruned",
|
|
"prying",
|
|
"psychic",
|
|
"public",
|
|
"puck",
|
|
"puddle",
|
|
"puffin",
|
|
"pulp",
|
|
"pumpkins",
|
|
"punch",
|
|
"puppy",
|
|
"purged",
|
|
"push",
|
|
"putty",
|
|
"puzzled",
|
|
"pylons",
|
|
"pyramid",
|
|
"python",
|
|
"queen",
|
|
"quick",
|
|
"quote",
|
|
"rabbits",
|
|
"racetrack",
|
|
"radar",
|
|
"rafts",
|
|
"rage",
|
|
"railway",
|
|
"raking",
|
|
"rally",
|
|
"ramped",
|
|
"randomly",
|
|
"rapid",
|
|
"rarest",
|
|
"rash",
|
|
"rated",
|
|
"ravine",
|
|
"rays",
|
|
"razor",
|
|
"react",
|
|
"rebel",
|
|
"recipe",
|
|
"reduce",
|
|
"reef",
|
|
"refer",
|
|
"regular",
|
|
"reheat",
|
|
"reinvest",
|
|
"rejoices",
|
|
"rekindle",
|
|
"relic",
|
|
"remedy",
|
|
"renting",
|
|
"reorder",
|
|
"repent",
|
|
"request",
|
|
"reruns",
|
|
"rest",
|
|
"return",
|
|
"reunion",
|
|
"revamp",
|
|
"rewind",
|
|
"rhino",
|
|
"rhythm",
|
|
"ribbon",
|
|
"richly",
|
|
"ridges",
|
|
"rift",
|
|
"rigid",
|
|
"rims",
|
|
"ringing",
|
|
"riots",
|
|
"ripped",
|
|
"rising",
|
|
"ritual",
|
|
"river",
|
|
"roared",
|
|
"robot",
|
|
"rockets",
|
|
"rodent",
|
|
"rogue",
|
|
"roles",
|
|
"romance",
|
|
"roomy",
|
|
"roped",
|
|
"roster",
|
|
"rotate",
|
|
"rounded",
|
|
"rover",
|
|
"rowboat",
|
|
"royal",
|
|
"ruby",
|
|
"rudely",
|
|
"ruffled",
|
|
"rugged",
|
|
"ruined",
|
|
"ruling",
|
|
"rumble",
|
|
"runway",
|
|
"rural",
|
|
"rustled",
|
|
"ruthless",
|
|
"sabotage",
|
|
"sack",
|
|
"sadness",
|
|
"safety",
|
|
"saga",
|
|
"sailor",
|
|
"sake",
|
|
"salads",
|
|
"sample",
|
|
"sanity",
|
|
"sapling",
|
|
"sarcasm",
|
|
"sash",
|
|
"satin",
|
|
"saucepan",
|
|
"saved",
|
|
"sawmill",
|
|
"saxophone",
|
|
"sayings",
|
|
"scamper",
|
|
"scenic",
|
|
"school",
|
|
"science",
|
|
"scoop",
|
|
"scrub",
|
|
"scuba",
|
|
"seasons",
|
|
"second",
|
|
"sedan",
|
|
"seeded",
|
|
"segments",
|
|
"seismic",
|
|
"selfish",
|
|
"semifinal",
|
|
"sensible",
|
|
"september",
|
|
"sequence",
|
|
"serving",
|
|
"session",
|
|
"setup",
|
|
"seventh",
|
|
"sewage",
|
|
"shackles",
|
|
"shelter",
|
|
"shipped",
|
|
"shocking",
|
|
"shrugged",
|
|
"shuffled",
|
|
"shyness",
|
|
"siblings",
|
|
"sickness",
|
|
"sidekick",
|
|
"sieve",
|
|
"sifting",
|
|
"sighting",
|
|
"silk",
|
|
"simplest",
|
|
"sincerely",
|
|
"sipped",
|
|
"siren",
|
|
"situated",
|
|
"sixteen",
|
|
"sizes",
|
|
"skater",
|
|
"skew",
|
|
"skirting",
|
|
"skulls",
|
|
"skydive",
|
|
"slackens",
|
|
"sleepless",
|
|
"slid",
|
|
"slower",
|
|
"slug",
|
|
"smash",
|
|
"smelting",
|
|
"smidgen",
|
|
"smog",
|
|
"smuggled",
|
|
"snake",
|
|
"sneeze",
|
|
"sniff",
|
|
"snout",
|
|
"snug",
|
|
"soapy",
|
|
"sober",
|
|
"soccer",
|
|
"soda",
|
|
"software",
|
|
"soggy",
|
|
"soil",
|
|
"solved",
|
|
"somewhere",
|
|
"sonic",
|
|
"soothe",
|
|
"soprano",
|
|
"sorry",
|
|
"southern",
|
|
"sovereign",
|
|
"sowed",
|
|
"soya",
|
|
"space",
|
|
"speedy",
|
|
"sphere",
|
|
"spiders",
|
|
"splendid",
|
|
"spout",
|
|
"sprig",
|
|
"spud",
|
|
"spying",
|
|
"square",
|
|
"stacking",
|
|
"stellar",
|
|
"stick",
|
|
"stockpile",
|
|
"strained",
|
|
"stunning",
|
|
"stylishly",
|
|
"subtly",
|
|
"succeed",
|
|
"suddenly",
|
|
"suede",
|
|
"suffice",
|
|
"sugar",
|
|
"suitcase",
|
|
"sulking",
|
|
"summon",
|
|
"sunken",
|
|
"superior",
|
|
"surfer",
|
|
"sushi",
|
|
"suture",
|
|
"swagger",
|
|
"swept",
|
|
"swiftly",
|
|
"sword",
|
|
"swung",
|
|
"syllabus",
|
|
"symptoms",
|
|
"syndrome",
|
|
"syringe",
|
|
"system",
|
|
"taboo",
|
|
"tacit",
|
|
"tadpoles",
|
|
"tagged",
|
|
"tail",
|
|
"taken",
|
|
"talent",
|
|
"tamper",
|
|
"tanks",
|
|
"tapestry",
|
|
"tarnished",
|
|
"tasked",
|
|
"tattoo",
|
|
"taunts",
|
|
"tavern",
|
|
"tawny",
|
|
"taxi",
|
|
"teardrop",
|
|
"technical",
|
|
"tedious",
|
|
"teeming",
|
|
"tell",
|
|
"template",
|
|
"tender",
|
|
"tepid",
|
|
"tequila",
|
|
"terminal",
|
|
"testing",
|
|
"tether",
|
|
"textbook",
|
|
"thaw",
|
|
"theatrics",
|
|
"thirsty",
|
|
"thorn",
|
|
"threaten",
|
|
"thumbs",
|
|
"thwart",
|
|
"ticket",
|
|
"tidy",
|
|
"tiers",
|
|
"tiger",
|
|
"tilt",
|
|
"timber",
|
|
"tinted",
|
|
"tipsy",
|
|
"tirade",
|
|
"tissue",
|
|
"titans",
|
|
"toaster",
|
|
"tobacco",
|
|
"today",
|
|
"toenail",
|
|
"toffee",
|
|
"together",
|
|
"toilet",
|
|
"token",
|
|
"tolerant",
|
|
"tomorrow",
|
|
"tonic",
|
|
"toolbox",
|
|
"topic",
|
|
"torch",
|
|
"tossed",
|
|
"total",
|
|
"touchy",
|
|
"towel",
|
|
"toxic",
|
|
"toyed",
|
|
"trash",
|
|
"trendy",
|
|
"tribal",
|
|
"trolling",
|
|
"truth",
|
|
"trying",
|
|
"tsunami",
|
|
"tubes",
|
|
"tucks",
|
|
"tudor",
|
|
"tuesday",
|
|
"tufts",
|
|
"tugs",
|
|
"tuition",
|
|
"tulips",
|
|
"tumbling",
|
|
"tunnel",
|
|
"turnip",
|
|
"tusks",
|
|
"tutor",
|
|
"tuxedo",
|
|
"twang",
|
|
"tweezers",
|
|
"twice",
|
|
"twofold",
|
|
"tycoon",
|
|
"typist",
|
|
"tyrant",
|
|
"ugly",
|
|
"ulcers",
|
|
"ultimate",
|
|
"umbrella",
|
|
"umpire",
|
|
"unafraid",
|
|
"unbending",
|
|
"uncle",
|
|
"under",
|
|
"uneven",
|
|
"unfit",
|
|
"ungainly",
|
|
"unhappy",
|
|
"union",
|
|
"unjustly",
|
|
"unknown",
|
|
"unlikely",
|
|
"unmask",
|
|
"unnoticed",
|
|
"unopened",
|
|
"unplugs",
|
|
"unquoted",
|
|
"unrest",
|
|
"unsafe",
|
|
"until",
|
|
"unusual",
|
|
"unveil",
|
|
"unwind",
|
|
"unzip",
|
|
"upbeat",
|
|
"upcoming",
|
|
"update",
|
|
"upgrade",
|
|
"uphill",
|
|
"upkeep",
|
|
"upload",
|
|
"upon",
|
|
"upper",
|
|
"upright",
|
|
"upstairs",
|
|
"uptight",
|
|
"upwards",
|
|
"urban",
|
|
"urchins",
|
|
"urgent",
|
|
"usage",
|
|
"useful",
|
|
"usher",
|
|
"using",
|
|
"usual",
|
|
"utensils",
|
|
"utility",
|
|
"utmost",
|
|
"utopia",
|
|
"uttered",
|
|
"vacation",
|
|
"vague",
|
|
"vain",
|
|
"value",
|
|
"vampire",
|
|
"vane",
|
|
"vapidly",
|
|
"vary",
|
|
"vastness",
|
|
"vats",
|
|
"vaults",
|
|
"vector",
|
|
"veered",
|
|
"vegan",
|
|
"vehicle",
|
|
"vein",
|
|
"velvet",
|
|
"venomous",
|
|
"verification",
|
|
"vessel",
|
|
"veteran",
|
|
"vexed",
|
|
"vials",
|
|
"vibrate",
|
|
"victim",
|
|
"video",
|
|
"viewpoint",
|
|
"vigilant",
|
|
"viking",
|
|
"village",
|
|
"vinegar",
|
|
"violin",
|
|
"vipers",
|
|
"virtual",
|
|
"visited",
|
|
"vitals",
|
|
"vivid",
|
|
"vixen",
|
|
"vocal",
|
|
"vogue",
|
|
"voice",
|
|
"volcano",
|
|
"vortex",
|
|
"voted",
|
|
"voucher",
|
|
"vowels",
|
|
"voyage",
|
|
"vulture",
|
|
"wade",
|
|
"waffle",
|
|
"wagtail",
|
|
"waist",
|
|
"waking",
|
|
"wallets",
|
|
"wanted",
|
|
"warped",
|
|
"washing",
|
|
"water",
|
|
"waveform",
|
|
"waxing",
|
|
"wayside",
|
|
"weavers",
|
|
"website",
|
|
"wedge",
|
|
"weekday",
|
|
"weird",
|
|
"welders",
|
|
"went",
|
|
"wept",
|
|
"were",
|
|
"western",
|
|
"wetsuit",
|
|
"whale",
|
|
"when",
|
|
"whipped",
|
|
"whole",
|
|
"wickets",
|
|
"width",
|
|
"wield",
|
|
"wife",
|
|
"wiggle",
|
|
"wildly",
|
|
"winter",
|
|
"wipeout",
|
|
"wiring",
|
|
"wise",
|
|
"withdrawn",
|
|
"wives",
|
|
"wizard",
|
|
"wobbly",
|
|
"woes",
|
|
"woken",
|
|
"wolf",
|
|
"womanly",
|
|
"wonders",
|
|
"woozy",
|
|
"worry",
|
|
"wounded",
|
|
"woven",
|
|
"wrap",
|
|
"wrist",
|
|
"wrong",
|
|
"yacht",
|
|
"yahoo",
|
|
"yanks",
|
|
"yard",
|
|
"yawning",
|
|
"yearbook",
|
|
"yellow",
|
|
"yesterday",
|
|
"yeti",
|
|
"yields",
|
|
"yodel",
|
|
"yoga",
|
|
"younger",
|
|
"yoyo",
|
|
"zapped",
|
|
"zeal",
|
|
"zebra",
|
|
"zero",
|
|
"zesty",
|
|
"zigzags",
|
|
"zinger",
|
|
"zippers",
|
|
"zodiac",
|
|
"zombie",
|
|
"zones",
|
|
"zoom"
|
|
];
|