From dc19dd94b7481573926183d076ccfe4eca104e83 Mon Sep 17 00:00:00 2001 From: Mari Date: Thu, 4 Jan 2024 20:58:43 -0800 Subject: [PATCH] basic vore scenario generator --- .idea/dataSources.xml | 13 + README.md | 56 + example.png | Bin 0 -> 54289 bytes .../0000_initialize_responses_table.sql | 14 + migrations/0001_add_initial_values.sql | 1570 +++++++++++++++++ package-lock.json | 67 +- package.json | 8 +- src/commands.ts | 376 ++++ src/dbAccess.ts | 180 ++ src/generated.ts | 233 +++ src/index.ts | 126 +- src/rolltable.ts | 43 + wrangler.toml | 62 +- 13 files changed, 2681 insertions(+), 67 deletions(-) create mode 100644 .idea/dataSources.xml create mode 100644 README.md create mode 100644 example.png create mode 100644 migrations/0000_initialize_responses_table.sql create mode 100644 migrations/0001_add_initial_values.sql create mode 100644 src/commands.ts create mode 100644 src/dbAccess.ts create mode 100644 src/generated.ts create mode 100644 src/rolltable.ts diff --git a/.idea/dataSources.xml b/.idea/dataSources.xml new file mode 100644 index 0000000..666baba --- /dev/null +++ b/.idea/dataSources.xml @@ -0,0 +1,13 @@ + + + + + java.sql.Driver + true + true + org.isaacmcfadyen.D1Driver + jdbc:d1://d09d3c74-c75f-4418-8f1b-2fe7f21637e6 + $ProjectFileDir$ + + + \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..0b14f85 --- /dev/null +++ b/README.md @@ -0,0 +1,56 @@ +# Vore Scenario Generator + +![Example scenario, reading: +The action takes place at a sports event. +The encounter is themed around voreception. +The action begins when a threat is made. +Things are more difficult because someone is not prepared +Partway through, unexpectedly, the prey nearly escapes +The vore scene is focused on the aftermath +The word of the day is Millionaire](example.png) + +It does exactly what it says on the tin: it generates random vore scenarios. For you! +[The list of default responses are here if you want to check it in advance.](https://scenario-generator.deliciousreya.net/responses) + +## Usage + +### Installation + +* +Visit [this Discord OAuth link](https://discord.com/api/oauth2/authorize?client_id=1192326191189864458&permissions=0&scope=applications.commands) +and give permission to use application commands in your server. Share it with the admin of your server if you don't +have permission yourself! +* Don't worry - not only does this bot not do anything nefarious with your messages, but it actually can't read them at + all. It only reads the commands you give it and its own messages! If you're concerned, though, please go through the + code. Kink stuff is very personal and private! Use caution when running random horny software! + +### Generation + +* Run the `/generate` command to generate a random scenario. +* Don't like what you got? Pick the components you don't like from the select box, + then click "Reroll Selected" to generate fresh ones. +* Think the scenario is beyond saving? Click "Trash it." to delete the message. +* Satisfied with the results? Click "Looks good!" to remove the reroll commands. + +### Customization + +Note that changes to custom responses will be sent to your current channel and will be visible to the admin (that's me) +and everyone in the server, as well as anyone who knows or can guess your server ID. Assume your responses are not +private. + +* Run `/response add [table] [text]` to add a new custom response. Use the table listing in the Discord command. +* Run `/response delete [table] [text]` to remove a custom response. Give the response text exactly! +* Run `/response edit [table] [old text] [new text]` to modify a custom response. Give the old response text exactly! +* Run `/response list` to get a link to a list of all responses that will be given in the current server, including both + default and custom responses. + +## Credits + +* Icon source: [obsid1an on DeviantArt](https://www.deviantart.com/obsid1an/art/Slot-Machine-Game-Icon-341475642) +* Writing for default responses by [Ssublissive](https://aryion.com/g4/gallery/Ssublissive), with additional writing by + [DeliciousReya](https://aryion.com/g4/gallery/DeliciousReya), [Seina](https://aryion.com/g4/user/RediQ) and 1 other. +* Development by [DeliciousReya](https://aryion.com/g4/gallery/DeliciousReya), using + [slash-create](https://slash-create.js.org/#/) and + [discord-snowflake](https://github.com/ianmitchell/interaction-kit/tree/main/packages/discord-snowflake). +* Hosted on [CloudFlare Workers](https://developers.cloudflare.com/workers/) + with [D1](https://developers.cloudflare.com/d1/). diff --git a/example.png b/example.png new file mode 100644 index 0000000000000000000000000000000000000000..28a4500ed97568eb2a58e8ceb4a7ba2ff0f58d8d GIT binary patch literal 54289 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 literal 0 HcmV?d00001 diff --git a/migrations/0000_initialize_responses_table.sql b/migrations/0000_initialize_responses_table.sql new file mode 100644 index 0000000..6c8a4fe --- /dev/null +++ b/migrations/0000_initialize_responses_table.sql @@ -0,0 +1,14 @@ +-- Migration number: 0000 2024-01-04T08:37:46.641Z +CREATE TABLE IF NOT EXISTS responses ( + id INTEGER PRIMARY KEY ASC NOT NULL, + tableId INTEGER NOT NULL CHECK (tableId IN (0, 1, 2, 3, 4, 5, 6)), + text TEXT NOT NULL, + timestamp INTEGER NOT NULL, + userSnowflake TEXT NOT NULL, + serverSnowflake TEXT NULL, + access INTEGER NOT NULL CHECK (access IN (0, 1, 2)) +) STRICT; + +CREATE UNIQUE INDEX IF NOT EXISTS responses_unique_global ON responses (tableId, text) WHERE access = 0; +CREATE UNIQUE INDEX IF NOT EXISTS responses_unique_by_server ON responses (serverSnowflake, tableId, text) WHERE access = 1; +CREATE UNIQUE INDEX IF NOT EXISTS responses_unique_by_dm ON responses (userSnowflake, tableId, text) WHERE access = 2; diff --git a/migrations/0001_add_initial_values.sql b/migrations/0001_add_initial_values.sql new file mode 100644 index 0000000..9d65253 --- /dev/null +++ b/migrations/0001_add_initial_values.sql @@ -0,0 +1,1570 @@ +-- Migration number: 0001 2024-01-04T10:09:22.903Z +INSERT OR IGNORE INTO responses (id, tableId, text, timestamp, userSnowflake, serverSnowflake, access) +VALUES (1704363988831, 0, 'in someone''s home', 1704363988831, '126936953789743104', NULL, 0), + (1704363988832, 0, 'out on the street', 1704363988831, '126936953789743104', NULL, 0), + (1704363988833, 0, 'in the Pink Light District', 1704363988831, '126936953789743104', NULL, 0), + (1704363988834, 0, 'in a shop', 1704363988831, '126936953789743104', NULL, 0), + (1704363988835, 0, 'in a cafe', 1704363988831, '126936953789743104', NULL, 0), + (1704363988836, 0, 'on campus', 1704363988831, '126936953789743104', NULL, 0), + (1704363988837, 0, 'somewhere shady', 1704363988831, '126936953789743104', NULL, 0), + (1704363988838, 0, 'in line for something', 1704363988831, '126936953789743104', NULL, 0), + (1704363988839, 0, 'during practice', 1704363988831, '126936953789743104', NULL, 0), + (1704363988840, 0, 'in the car', 1704363988831, '126936953789743104', NULL, 0), + (1704363988841, 0, 'on a road trip', 1704363988831, '126936953789743104', NULL, 0), + (1704363988842, 0, 'at a theme park', 1704363988831, '126936953789743104', NULL, 0), + (1704363854890, 1, 'misunderstanding', 1704363854890, '126936953789743104', NULL, 0), + (1704363854891, 1, 'starvation', 1704363854890, '126936953789743104', NULL, 0), + (1704363854892, 1, 'jealousy', 1704363854890, '126936953789743104', NULL, 0), + (1704363854893, 1, 'affection', 1704363854890, '126936953789743104', NULL, 0), + (1704363854894, 1, 'protectiveness', 1704363854890, '126936953789743104', NULL, 0), + (1704363854895, 1, 'playfulness', 1704363854890, '126936953789743104', NULL, 0), + (1704363854896, 1, 'self-defense', 1704363854890, '126936953789743104', NULL, 0), + (1704363854897, 1, 'anxiety', 1704363854890, '126936953789743104', NULL, 0), + (1704363854898, 1, 'loneliness', 1704363854890, '126936953789743104', NULL, 0), + (1704363854899, 1, 'boredom', 1704363854890, '126936953789743104', NULL, 0), + (1704363854900, 1, 'friendship', 1704363854890, '126936953789743104', NULL, 0), + (1704363854901, 1, 'romance', 1704363854890, '126936953789743104', NULL, 0), + (1704363854902, 1, 'rejection', 1704363854890, '126936953789743104', NULL, 0), + (1704363854903, 1, 'lust', 1704363854890, '126936953789743104', NULL, 0), + (1704363854904, 1, 'obsession', 1704363854890, '126936953789743104', NULL, 0), + (1704363854905, 1, 'confusion', 1704363854890, '126936953789743104', NULL, 0), + (1704363854906, 1, 'superiority', 1704363854890, '126936953789743104', NULL, 0), + (1704363854907, 1, 'inferiority', 1704363854890, '126936953789743104', NULL, 0), + (1704363854908, 1, 'casualness', 1704363854890, '126936953789743104', NULL, 0), + (1704363456528, 2, 'an external threat stresses someone out', 1704363456528, '126936953789743104', NULL, 0), + (1704363456529, 2, 'someone''s restraint gives way', 1704363456528, '126936953789743104', NULL, 0), + (1704363456530, 2, 'something foolish is said', 1704363456528, '126936953789743104', NULL, 0), + (1704363456531, 2, 'someone is bored', 1704363456528, '126936953789743104', NULL, 0), + (1704363456532, 2, 'something is overheard', 1704363456528, '126936953789743104', NULL, 0), + (1704363456533, 2, 'an argument builds to a fever pitch', 1704363456528, '126936953789743104', NULL, 0), + (1704363456534, 2, 'indecision gets frustrating', 1704363456528, '126936953789743104', NULL, 0), + (1704363456535, 2, 'feelings are unexpectedly hurt', 1704363456528, '126936953789743104', NULL, 0), + (1704363456536, 2, 'a stomach growls', 1704363456528, '126936953789743104', NULL, 0), + (1704364175747, 3, 'the size difference is prohibitive', 1704364175747, '126936953789743104', NULL, 0), + (1704364175748, 3, 'there''s a big audience watching', 1704364175747, '126936953789743104', NULL, 0), + (1704364175749, 3, 'someone has never tried vore before', 1704364175747, '126936953789743104', NULL, 0), + (1704364175750, 3, 'family tradition forbids this', 1704364175747, '126936953789743104', NULL, 0), + (1704364175751, 3, 'the characters are not supposed to speak to each other', 1704364175747, '126936953789743104', + NULL, 0), + (1704364175752, 3, 'the prey is dominant over the pred', 1704364175747, '126936953789743104', NULL, 0), + (1704364175753, 3, 'friends are trying to pull the characters apart', 1704364175747, '126936953789743104', NULL, + 0), + (1704364175754, 3, 'there isn''t a lot of room here', 1704364175747, '126936953789743104', NULL, 0), + (1704364175755, 3, 'vore is prohibited here', 1704364175747, '126936953789743104', NULL, 0), + (1704364442145, 4, 'someone who would normally have intervened doesn''t', 1704364442145, '126936953789743104', + NULL, 0), + (1704364442146, 4, 'the prey turns things around on the pred', 1704364442145, '126936953789743104', NULL, 0), + (1704364442147, 4, 'an unexpected ally helps out', 1704364442145, '126936953789743104', NULL, 0), + (1704364442148, 4, 'the prey''s enjoyment sharply changes', 1704364442145, '126936953789743104', NULL, 0), + (1704364442149, 4, 'the antacids mysteriously go missing', 1704364442145, '126936953789743104', NULL, 0), + (1704364442150, 4, 'the pred starts to develop indigestion', 1704364442145, '126936953789743104', NULL, 0), + (1704364442151, 4, 'a betrayal seals the prey''s fate', 1704364442145, '126936953789743104', NULL, 0), + (1704364442152, 4, 'the pred has second thoughts', 1704364442145, '126936953789743104', NULL, 0), + (1704364712751, 5, 'the pred''s feelings', 1704364712751, '126936953789743104', NULL, 0), + (1704364712752, 5, 'the prey''s feelings', 1704364712751, '126936953789743104', NULL, 0), + (1704364712753, 5, 'the pred''s stomach acids', 1704364712751, '126936953789743104', NULL, 0), + (1704364712754, 5, 'the pred''s mouth', 1704364712751, '126936953789743104', NULL, 0), + (1704364712755, 5, 'the prey''s body', 1704364712751, '126936953789743104', NULL, 0), + (1704364712756, 5, 'the pred''s intestines', 1704364712751, '126936953789743104', NULL, 0), + (1704364712757, 5, 'the pred''s weight', 1704364712751, '126936953789743104', NULL, 0), + (1704364712758, 5, 'detailed digestion', 1704364712751, '126936953789743104', NULL, 0), + (1704364712759, 5, 'scientific description of digestion', 1704364712751, '126936953789743104', NULL, 0), + (1704364712760, 5, 'the prey''s humiliation', 1704364712751, '126936953789743104', NULL, 0), + (1704364712761, 5, 'the observers'' feelings', 1704364712751, '126936953789743104', NULL, 0); +INSERT OR IGNORE INTO responses (id, tableId, text, timestamp, userSnowflake, serverSnowflake, access) +VALUES (1704362871734, 6, 'Ace', 1704362871734, '126936953789743104', NULL, 0), + (1704362871735, 6, 'Acid', 1704362871734, '126936953789743104', NULL, 0), + (1704362871736, 6, 'Acne', 1704362871734, '126936953789743104', NULL, 0), + (1704362871737, 6, 'Acre', 1704362871734, '126936953789743104', NULL, 0), + (1704362871738, 6, 'Africa', 1704362871734, '126936953789743104', NULL, 0), + (1704362871739, 6, 'Agent', 1704362871734, '126936953789743104', NULL, 0), + (1704362871740, 6, 'Air', 1704362871734, '126936953789743104', NULL, 0), + (1704362871741, 6, 'Aircraft', 1704362871734, '126936953789743104', NULL, 0), + (1704362871742, 6, 'Airplane', 1704362871734, '126936953789743104', NULL, 0), + (1704362871743, 6, 'Alarm Clock', 1704362871734, '126936953789743104', NULL, 0), + (1704362871744, 6, 'Alaska', 1704362871734, '126936953789743104', NULL, 0), + (1704362871745, 6, 'Alcohol', 1704362871734, '126936953789743104', NULL, 0), + (1704362871746, 6, 'Alien', 1704362871734, '126936953789743104', NULL, 0), + (1704362871747, 6, 'Alligator', 1704362871734, '126936953789743104', NULL, 0), + (1704362871748, 6, 'Alps', 1704362871734, '126936953789743104', NULL, 0), + (1704362871749, 6, 'Amazon', 1704362871734, '126936953789743104', NULL, 0), + (1704362871750, 6, 'Ambulance', 1704362871734, '126936953789743104', NULL, 0), + (1704362871751, 6, 'America', 1704362871734, '126936953789743104', NULL, 0), + (1704362871752, 6, 'Anchor', 1704362871734, '126936953789743104', NULL, 0), + (1704362871753, 6, 'Angel', 1704362871734, '126936953789743104', NULL, 0), + (1704362871754, 6, 'Animal', 1704362871734, '126936953789743104', NULL, 0), + (1704362871755, 6, 'Ankle', 1704362871734, '126936953789743104', NULL, 0), + (1704362871756, 6, 'Ant', 1704362871734, '126936953789743104', NULL, 0), + (1704362871757, 6, 'Antarctica', 1704362871734, '126936953789743104', NULL, 0), + (1704362871758, 6, 'Anthem', 1704362871734, '126936953789743104', NULL, 0), + (1704362871759, 6, 'Apple', 1704362871734, '126936953789743104', NULL, 0), + (1704362871760, 6, 'Apples', 1704362871734, '126936953789743104', NULL, 0), + (1704362871761, 6, 'Apron', 1704362871734, '126936953789743104', NULL, 0), + (1704362871762, 6, 'Archaeologist', 1704362871734, '126936953789743104', NULL, 0), + (1704362871763, 6, 'Aristocrat', 1704362871734, '126936953789743104', NULL, 0), + (1704362871764, 6, 'Arm', 1704362871734, '126936953789743104', NULL, 0), + (1704362871765, 6, 'Armor', 1704362871734, '126936953789743104', NULL, 0), + (1704362871766, 6, 'Army', 1704362871734, '126936953789743104', NULL, 0), + (1704362871767, 6, 'Ash', 1704362871734, '126936953789743104', NULL, 0), + (1704362871768, 6, 'Ashes', 1704362871734, '126936953789743104', NULL, 0), + (1704362871769, 6, 'Asleep', 1704362871734, '126936953789743104', NULL, 0), + (1704362871770, 6, 'Ass', 1704362871734, '126936953789743104', NULL, 0), + (1704362871771, 6, 'Astronaut', 1704362871734, '126936953789743104', NULL, 0), + (1704362871772, 6, 'Athlete', 1704362871734, '126936953789743104', NULL, 0), + (1704362871773, 6, 'Atlantis', 1704362871734, '126936953789743104', NULL, 0), + (1704362871774, 6, 'Attic', 1704362871734, '126936953789743104', NULL, 0), + (1704362871775, 6, 'Aunt', 1704362871734, '126936953789743104', NULL, 0), + (1704362871776, 6, 'Australia', 1704362871734, '126936953789743104', NULL, 0), + (1704362871777, 6, 'Avalanche', 1704362871734, '126936953789743104', NULL, 0), + (1704362871778, 6, 'Axe', 1704362871734, '126936953789743104', NULL, 0), + (1704362871779, 6, 'Aztec', 1704362871734, '126936953789743104', NULL, 0), + (1704362871780, 6, 'Baby', 1704362871734, '126936953789743104', NULL, 0), + (1704362871781, 6, 'Baby-sitter', 1704362871734, '126936953789743104', NULL, 0), + (1704362871782, 6, 'Back', 1704362871734, '126936953789743104', NULL, 0), + (1704362871783, 6, 'Backbone', 1704362871734, '126936953789743104', NULL, 0), + (1704362871784, 6, 'Bacon', 1704362871734, '126936953789743104', NULL, 0), + (1704362871785, 6, 'Bag', 1704362871734, '126936953789743104', NULL, 0), + (1704362871786, 6, 'Baggage', 1704362871734, '126936953789743104', NULL, 0), + (1704362871787, 6, 'Baked', 1704362871734, '126936953789743104', NULL, 0), + (1704362871788, 6, 'Ball', 1704362871734, '126936953789743104', NULL, 0), + (1704362871789, 6, 'Balloon', 1704362871734, '126936953789743104', NULL, 0), + (1704362871790, 6, 'Ballpoint Pen', 1704362871734, '126936953789743104', NULL, 0), + (1704362871791, 6, 'Balls', 1704362871734, '126936953789743104', NULL, 0), + (1704362871792, 6, 'Banana Peel', 1704362871734, '126936953789743104', NULL, 0), + (1704362871793, 6, 'Banana', 1704362871734, '126936953789743104', NULL, 0), + (1704362871794, 6, 'Band', 1704362871734, '126936953789743104', NULL, 0), + (1704362871795, 6, 'Bang', 1704362871734, '126936953789743104', NULL, 0), + (1704362871796, 6, 'Banister', 1704362871734, '126936953789743104', NULL, 0), + (1704362871797, 6, 'Bank', 1704362871734, '126936953789743104', NULL, 0), + (1704362871798, 6, 'Bar', 1704362871734, '126936953789743104', NULL, 0), + (1704362871799, 6, 'Barbecue', 1704362871734, '126936953789743104', NULL, 0), + (1704362871800, 6, 'Barber', 1704362871734, '126936953789743104', NULL, 0), + (1704362871801, 6, 'Bargain', 1704362871734, '126936953789743104', NULL, 0), + (1704362871802, 6, 'Bark', 1704362871734, '126936953789743104', NULL, 0), + (1704362871803, 6, 'Bartender', 1704362871734, '126936953789743104', NULL, 0), + (1704362871804, 6, 'Baseball', 1704362871734, '126936953789743104', NULL, 0), + (1704362871805, 6, 'Baseboard', 1704362871734, '126936953789743104', NULL, 0), + (1704362871806, 6, 'Basketball', 1704362871734, '126936953789743104', NULL, 0), + (1704362871807, 6, 'Bass', 1704362871734, '126936953789743104', NULL, 0), + (1704362871808, 6, 'Bat', 1704362871734, '126936953789743104', NULL, 0), + (1704362871809, 6, 'Bath', 1704362871734, '126936953789743104', NULL, 0), + (1704362871810, 6, 'Bathroom Scale', 1704362871734, '126936953789743104', NULL, 0), + (1704362871811, 6, 'Batteries', 1704362871734, '126936953789743104', NULL, 0), + (1704362871812, 6, 'Battery', 1704362871734, '126936953789743104', NULL, 0), + (1704362871813, 6, 'Battle', 1704362871734, '126936953789743104', NULL, 0), + (1704362871814, 6, 'Battleship', 1704362871734, '126936953789743104', NULL, 0), + (1704362871815, 6, 'Bay', 1704362871734, '126936953789743104', NULL, 0), + (1704362871816, 6, 'Beach', 1704362871734, '126936953789743104', NULL, 0), + (1704362871817, 6, 'Beam', 1704362871734, '126936953789743104', NULL, 0), + (1704362871818, 6, 'Bean', 1704362871734, '126936953789743104', NULL, 0), + (1704362871819, 6, 'Beans', 1704362871734, '126936953789743104', NULL, 0), + (1704362871820, 6, 'Bear', 1704362871734, '126936953789743104', NULL, 0), + (1704362871821, 6, 'Beard', 1704362871734, '126936953789743104', NULL, 0), + (1704362871822, 6, 'Beat', 1704362871734, '126936953789743104', NULL, 0), + (1704362871823, 6, 'Beaver', 1704362871734, '126936953789743104', NULL, 0), + (1704362871824, 6, 'Bed', 1704362871734, '126936953789743104', NULL, 0), + (1704362871825, 6, 'Bedbug', 1704362871734, '126936953789743104', NULL, 0), + (1704362871826, 6, 'Bedspread', 1704362871734, '126936953789743104', NULL, 0), + (1704362871827, 6, 'Bedtime', 1704362871734, '126936953789743104', NULL, 0), + (1704362871828, 6, 'Bee', 1704362871734, '126936953789743104', NULL, 0), + (1704362871829, 6, 'Beef', 1704362871734, '126936953789743104', NULL, 0), + (1704362871830, 6, 'Beer', 1704362871734, '126936953789743104', NULL, 0), + (1704362871831, 6, 'Behind', 1704362871734, '126936953789743104', NULL, 0), + (1704362871832, 6, 'Beijing', 1704362871734, '126936953789743104', NULL, 0), + (1704362871833, 6, 'Bell', 1704362871734, '126936953789743104', NULL, 0), + (1704362871834, 6, 'Belt', 1704362871734, '126936953789743104', NULL, 0), + (1704362871835, 6, 'Bench', 1704362871734, '126936953789743104', NULL, 0), + (1704362871836, 6, 'Bender', 1704362871734, '126936953789743104', NULL, 0), + (1704362871837, 6, 'Berlin', 1704362871734, '126936953789743104', NULL, 0), + (1704362871838, 6, 'Bermuda', 1704362871734, '126936953789743104', NULL, 0), + (1704362871839, 6, 'Berry', 1704362871734, '126936953789743104', NULL, 0), + (1704362871840, 6, 'Bicycle', 1704362871734, '126936953789743104', NULL, 0), + (1704362871841, 6, 'Big Bang', 1704362871734, '126936953789743104', NULL, 0), + (1704362871842, 6, 'Big Ben', 1704362871734, '126936953789743104', NULL, 0), + (1704362871843, 6, 'Big', 1704362871734, '126936953789743104', NULL, 0), + (1704362871844, 6, 'Bike', 1704362871734, '126936953789743104', NULL, 0), + (1704362871845, 6, 'Bikini', 1704362871734, '126936953789743104', NULL, 0), + (1704362871846, 6, 'Bill', 1704362871734, '126936953789743104', NULL, 0), + (1704362871847, 6, 'Bird', 1704362871734, '126936953789743104', NULL, 0), + (1704362871848, 6, 'Bird''s Nest', 1704362871734, '126936953789743104', NULL, 0), + (1704362871849, 6, 'Birthday', 1704362871734, '126936953789743104', NULL, 0), + (1704362871850, 6, 'Biscuit', 1704362871734, '126936953789743104', NULL, 0), + (1704362871851, 6, 'Biscuits', 1704362871734, '126936953789743104', NULL, 0), + (1704362871852, 6, 'Bisexual', 1704362871734, '126936953789743104', NULL, 0), + (1704362871853, 6, 'Bitch', 1704362871734, '126936953789743104', NULL, 0), + (1704362871854, 6, 'Bite', 1704362871734, '126936953789743104', NULL, 0), + (1704362871855, 6, 'Black', 1704362871734, '126936953789743104', NULL, 0), + (1704362871856, 6, 'Blacksmith', 1704362871734, '126936953789743104', NULL, 0), + (1704362871857, 6, 'Blade', 1704362871734, '126936953789743104', NULL, 0), + (1704362871858, 6, 'Blanket', 1704362871734, '126936953789743104', NULL, 0), + (1704362871859, 6, 'Blind', 1704362871734, '126936953789743104', NULL, 0), + (1704362871860, 6, 'Bling', 1704362871734, '126936953789743104', NULL, 0), + (1704362871861, 6, 'Blizzard', 1704362871734, '126936953789743104', NULL, 0), + (1704362871862, 6, 'Block', 1704362871734, '126936953789743104', NULL, 0), + (1704362871863, 6, 'Blonde', 1704362871734, '126936953789743104', NULL, 0), + (1704362871864, 6, 'Blow', 1704362871734, '126936953789743104', NULL, 0), + (1704362871865, 6, 'Blue', 1704362871734, '126936953789743104', NULL, 0), + (1704362871866, 6, 'Blues', 1704362871734, '126936953789743104', NULL, 0), + (1704362871867, 6, 'Blush', 1704362871734, '126936953789743104', NULL, 0), + (1704362871868, 6, 'Board', 1704362871734, '126936953789743104', NULL, 0), + (1704362871869, 6, 'Boat', 1704362871734, '126936953789743104', NULL, 0), + (1704362871870, 6, 'Bobsled', 1704362871734, '126936953789743104', NULL, 0), + (1704362871871, 6, 'Body', 1704362871734, '126936953789743104', NULL, 0), + (1704362871872, 6, 'Boil', 1704362871734, '126936953789743104', NULL, 0), + (1704362871873, 6, 'Bolt', 1704362871734, '126936953789743104', NULL, 0), + (1704362871874, 6, 'Bomb', 1704362871734, '126936953789743104', NULL, 0), + (1704362871875, 6, 'Bond', 1704362871734, '126936953789743104', NULL, 0), + (1704362871876, 6, 'Bondage', 1704362871734, '126936953789743104', NULL, 0), + (1704362871877, 6, 'Bone', 1704362871734, '126936953789743104', NULL, 0), + (1704362871878, 6, 'Bong', 1704362871734, '126936953789743104', NULL, 0), + (1704362871879, 6, 'Bonnet', 1704362871734, '126936953789743104', NULL, 0), + (1704362871880, 6, 'Bonsai', 1704362871734, '126936953789743104', NULL, 0), + (1704362871881, 6, 'Boob', 1704362871734, '126936953789743104', NULL, 0), + (1704362871882, 6, 'Book', 1704362871734, '126936953789743104', NULL, 0), + (1704362871883, 6, 'Bookend', 1704362871734, '126936953789743104', NULL, 0), + (1704362871884, 6, 'Boom', 1704362871734, '126936953789743104', NULL, 0), + (1704362871885, 6, 'Boot', 1704362871734, '126936953789743104', NULL, 0), + (1704362871886, 6, 'Booty', 1704362871734, '126936953789743104', NULL, 0), + (1704362871887, 6, 'Booze', 1704362871734, '126936953789743104', NULL, 0), + (1704362871888, 6, 'Boss', 1704362871734, '126936953789743104', NULL, 0), + (1704362871889, 6, 'Bottle', 1704362871734, '126936953789743104', NULL, 0), + (1704362871890, 6, 'Bottom', 1704362871734, '126936953789743104', NULL, 0), + (1704362871891, 6, 'Bow', 1704362871734, '126936953789743104', NULL, 0), + (1704362871892, 6, 'Bowl', 1704362871734, '126936953789743104', NULL, 0), + (1704362871893, 6, 'Bowler', 1704362871734, '126936953789743104', NULL, 0), + (1704362871894, 6, 'Bowtie', 1704362871734, '126936953789743104', NULL, 0), + (1704362871895, 6, 'Box', 1704362871734, '126936953789743104', NULL, 0), + (1704362871896, 6, 'Boxer', 1704362871734, '126936953789743104', NULL, 0), + (1704362871897, 6, 'Boxers', 1704362871734, '126936953789743104', NULL, 0), + (1704362871898, 6, 'Boy', 1704362871734, '126936953789743104', NULL, 0), + (1704362871899, 6, 'Bra', 1704362871734, '126936953789743104', NULL, 0), + (1704362871900, 6, 'Bracelet', 1704362871734, '126936953789743104', NULL, 0), + (1704362871901, 6, 'Brain', 1704362871734, '126936953789743104', NULL, 0), + (1704362871902, 6, 'Branch', 1704362871734, '126936953789743104', NULL, 0), + (1704362871903, 6, 'Brass', 1704362871734, '126936953789743104', NULL, 0), + (1704362871904, 6, 'Brave', 1704362871734, '126936953789743104', NULL, 0), + (1704362871905, 6, 'Brazil', 1704362871734, '126936953789743104', NULL, 0), + (1704362871906, 6, 'Bread', 1704362871734, '126936953789743104', NULL, 0), + (1704362871907, 6, 'Break', 1704362871734, '126936953789743104', NULL, 0), + (1704362871908, 6, 'Breast', 1704362871734, '126936953789743104', NULL, 0), + (1704362871909, 6, 'Brick', 1704362871734, '126936953789743104', NULL, 0), + (1704362871910, 6, 'Bride', 1704362871734, '126936953789743104', NULL, 0), + (1704362871911, 6, 'Bridge', 1704362871734, '126936953789743104', NULL, 0), + (1704362871912, 6, 'Briefs', 1704362871734, '126936953789743104', NULL, 0), + (1704362871913, 6, 'Broccoli', 1704362871734, '126936953789743104', NULL, 0), + (1704362871914, 6, 'Broken', 1704362871734, '126936953789743104', NULL, 0), + (1704362871915, 6, 'Broom', 1704362871734, '126936953789743104', NULL, 0), + (1704362871916, 6, 'Brother', 1704362871734, '126936953789743104', NULL, 0), + (1704362871917, 6, 'Brown', 1704362871734, '126936953789743104', NULL, 0), + (1704362871918, 6, 'Brownie', 1704362871734, '126936953789743104', NULL, 0), + (1704362871919, 6, 'Brunette', 1704362871734, '126936953789743104', NULL, 0), + (1704362871920, 6, 'Brush', 1704362871734, '126936953789743104', NULL, 0), + (1704362871921, 6, 'Bubble', 1704362871734, '126936953789743104', NULL, 0), + (1704362871922, 6, 'Buck', 1704362871734, '126936953789743104', NULL, 0), + (1704362871923, 6, 'Bucket', 1704362871734, '126936953789743104', NULL, 0), + (1704362871924, 6, 'Bud', 1704362871734, '126936953789743104', NULL, 0), + (1704362871925, 6, 'Buffalo', 1704362871734, '126936953789743104', NULL, 0), + (1704362871926, 6, 'Bug', 1704362871734, '126936953789743104', NULL, 0), + (1704362871927, 6, 'Bugle', 1704362871734, '126936953789743104', NULL, 0), + (1704362871928, 6, 'Bulb', 1704362871734, '126936953789743104', NULL, 0), + (1704362871929, 6, 'Bunk Bed', 1704362871734, '126936953789743104', NULL, 0), + (1704362871930, 6, 'Bunk', 1704362871734, '126936953789743104', NULL, 0), + (1704362871931, 6, 'Bunny', 1704362871734, '126936953789743104', NULL, 0), + (1704362871932, 6, 'Burn', 1704362871734, '126936953789743104', NULL, 0), + (1704362871933, 6, 'Bus', 1704362871734, '126936953789743104', NULL, 0), + (1704362871934, 6, 'Bush', 1704362871734, '126936953789743104', NULL, 0), + (1704362871935, 6, 'Bust', 1704362871734, '126936953789743104', NULL, 0), + (1704362871936, 6, 'Butt', 1704362871734, '126936953789743104', NULL, 0), + (1704362871937, 6, 'Butter', 1704362871734, '126936953789743104', NULL, 0), + (1704362871938, 6, 'Butterfly', 1704362871734, '126936953789743104', NULL, 0), + (1704362871939, 6, 'Button', 1704362871734, '126936953789743104', NULL, 0), + (1704362871940, 6, 'Buy', 1704362871734, '126936953789743104', NULL, 0), + (1704362871941, 6, 'Cable', 1704362871734, '126936953789743104', NULL, 0), + (1704362871942, 6, 'Caboose', 1704362871734, '126936953789743104', NULL, 0), + (1704362871943, 6, 'Caesar', 1704362871734, '126936953789743104', NULL, 0), + (1704362871944, 6, 'Cafeteria', 1704362871734, '126936953789743104', NULL, 0), + (1704362871945, 6, 'Cake', 1704362871734, '126936953789743104', NULL, 0), + (1704362871946, 6, 'Calculator', 1704362871734, '126936953789743104', NULL, 0), + (1704362871947, 6, 'Calf', 1704362871734, '126936953789743104', NULL, 0), + (1704362871948, 6, 'Camp', 1704362871734, '126936953789743104', NULL, 0), + (1704362871949, 6, 'Campsite', 1704362871734, '126936953789743104', NULL, 0), + (1704362871950, 6, 'Can', 1704362871734, '126936953789743104', NULL, 0), + (1704362871951, 6, 'Canada', 1704362871734, '126936953789743104', NULL, 0), + (1704362871952, 6, 'Candle', 1704362871734, '126936953789743104', NULL, 0), + (1704362871953, 6, 'Candlestick', 1704362871734, '126936953789743104', NULL, 0), + (1704362871954, 6, 'Candy', 1704362871734, '126936953789743104', NULL, 0), + (1704362871955, 6, 'Cane', 1704362871734, '126936953789743104', NULL, 0), + (1704362871956, 6, 'Cannons', 1704362871734, '126936953789743104', NULL, 0), + (1704362871957, 6, 'Cap', 1704362871734, '126936953789743104', NULL, 0), + (1704362871958, 6, 'Capital', 1704362871734, '126936953789743104', NULL, 0), + (1704362871959, 6, 'Captain', 1704362871734, '126936953789743104', NULL, 0), + (1704362871960, 6, 'Car', 1704362871734, '126936953789743104', NULL, 0), + (1704362871961, 6, 'Card', 1704362871734, '126936953789743104', NULL, 0), + (1704362871962, 6, 'Caroler', 1704362871734, '126936953789743104', NULL, 0), + (1704362871963, 6, 'Carpet', 1704362871734, '126936953789743104', NULL, 0), + (1704362871964, 6, 'Carrot', 1704362871734, '126936953789743104', NULL, 0), + (1704362871965, 6, 'Cartography', 1704362871734, '126936953789743104', NULL, 0), + (1704362871966, 6, 'Casino', 1704362871734, '126936953789743104', NULL, 0), + (1704362871967, 6, 'Cast', 1704362871734, '126936953789743104', NULL, 0), + (1704362871968, 6, 'Castle', 1704362871734, '126936953789743104', NULL, 0), + (1704362871969, 6, 'Cat', 1704362871734, '126936953789743104', NULL, 0), + (1704362871970, 6, 'Catalog', 1704362871734, '126936953789743104', NULL, 0), + (1704362871971, 6, 'Catcher', 1704362871734, '126936953789743104', NULL, 0), + (1704362871972, 6, 'Cave', 1704362871734, '126936953789743104', NULL, 0), + (1704362871973, 6, 'Ceiling Fan', 1704362871734, '126936953789743104', NULL, 0), + (1704362871974, 6, 'Cell', 1704362871734, '126936953789743104', NULL, 0), + (1704362871975, 6, 'Cello', 1704362871734, '126936953789743104', NULL, 0), + (1704362871976, 6, 'Centaur', 1704362871734, '126936953789743104', NULL, 0), + (1704362871977, 6, 'Center', 1704362871734, '126936953789743104', NULL, 0), + (1704362871978, 6, 'Century', 1704362871734, '126936953789743104', NULL, 0), + (1704362871979, 6, 'Chain', 1704362871734, '126936953789743104', NULL, 0), + (1704362871980, 6, 'Chains', 1704362871734, '126936953789743104', NULL, 0), + (1704362871981, 6, 'Chair', 1704362871734, '126936953789743104', NULL, 0), + (1704362871982, 6, 'Chalk', 1704362871734, '126936953789743104', NULL, 0), + (1704362871983, 6, 'Champagne', 1704362871734, '126936953789743104', NULL, 0), + (1704362871984, 6, 'Champion', 1704362871734, '126936953789743104', NULL, 0), + (1704362871985, 6, 'Change', 1704362871734, '126936953789743104', NULL, 0), + (1704362871986, 6, 'Chaps', 1704362871734, '126936953789743104', NULL, 0), + (1704362871987, 6, 'Charge', 1704362871734, '126936953789743104', NULL, 0), + (1704362871988, 6, 'Check', 1704362871734, '126936953789743104', NULL, 0), + (1704362871989, 6, 'Cheek', 1704362871734, '126936953789743104', NULL, 0), + (1704362871990, 6, 'Cheese', 1704362871734, '126936953789743104', NULL, 0), + (1704362871991, 6, 'Cherry', 1704362871734, '126936953789743104', NULL, 0), + (1704362871992, 6, 'Chest', 1704362871734, '126936953789743104', NULL, 0), + (1704362871993, 6, 'Chestnut', 1704362871734, '126936953789743104', NULL, 0), + (1704362871994, 6, 'Chew', 1704362871734, '126936953789743104', NULL, 0), + (1704362871995, 6, 'Chick', 1704362871734, '126936953789743104', NULL, 0), + (1704362871996, 6, 'Chicken', 1704362871734, '126936953789743104', NULL, 0), + (1704362871997, 6, 'China', 1704362871734, '126936953789743104', NULL, 0), + (1704362871998, 6, 'Chip', 1704362871734, '126936953789743104', NULL, 0), + (1704362871999, 6, 'Chocolate', 1704362871734, '126936953789743104', NULL, 0), + (1704362872000, 6, 'Choke', 1704362871734, '126936953789743104', NULL, 0), + (1704362872001, 6, 'Christmas', 1704362871734, '126936953789743104', NULL, 0), + (1704362872002, 6, 'Chubby', 1704362871734, '126936953789743104', NULL, 0), + (1704362872003, 6, 'Church', 1704362871734, '126936953789743104', NULL, 0), + (1704362872004, 6, 'Cigar', 1704362871734, '126936953789743104', NULL, 0), + (1704362872005, 6, 'Cigarette', 1704362871734, '126936953789743104', NULL, 0), + (1704362872006, 6, 'Circle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872007, 6, 'Circus', 1704362871734, '126936953789743104', NULL, 0), + (1704362872008, 6, 'Clam', 1704362871734, '126936953789743104', NULL, 0), + (1704362872009, 6, 'Clap', 1704362871734, '126936953789743104', NULL, 0), + (1704362872010, 6, 'Claw', 1704362871734, '126936953789743104', NULL, 0), + (1704362872011, 6, 'Cleopatra', 1704362871734, '126936953789743104', NULL, 0), + (1704362872012, 6, 'Cliff', 1704362871734, '126936953789743104', NULL, 0), + (1704362872013, 6, 'Cloak', 1704362871734, '126936953789743104', NULL, 0), + (1704362872014, 6, 'Clock', 1704362871734, '126936953789743104', NULL, 0), + (1704362872015, 6, 'Clog', 1704362871734, '126936953789743104', NULL, 0), + (1704362872016, 6, 'Cloud', 1704362871734, '126936953789743104', NULL, 0), + (1704362872017, 6, 'Clown', 1704362871734, '126936953789743104', NULL, 0), + (1704362872018, 6, 'Club', 1704362871734, '126936953789743104', NULL, 0), + (1704362872019, 6, 'Clue', 1704362871734, '126936953789743104', NULL, 0), + (1704362872020, 6, 'Coach', 1704362871734, '126936953789743104', NULL, 0), + (1704362872021, 6, 'Coal', 1704362871734, '126936953789743104', NULL, 0), + (1704362872022, 6, 'Coast', 1704362871734, '126936953789743104', NULL, 0), + (1704362872023, 6, 'Coat', 1704362871734, '126936953789743104', NULL, 0), + (1704362872024, 6, 'Cock', 1704362871734, '126936953789743104', NULL, 0), + (1704362872025, 6, 'Cocktail', 1704362871734, '126936953789743104', NULL, 0), + (1704362872026, 6, 'Code', 1704362871734, '126936953789743104', NULL, 0), + (1704362872027, 6, 'Coffee', 1704362871734, '126936953789743104', NULL, 0), + (1704362872028, 6, 'Cold', 1704362871734, '126936953789743104', NULL, 0), + (1704362872029, 6, 'Collar', 1704362871734, '126936953789743104', NULL, 0), + (1704362872030, 6, 'Columbus', 1704362871734, '126936953789743104', NULL, 0), + (1704362872031, 6, 'Comb', 1704362871734, '126936953789743104', NULL, 0), + (1704362872032, 6, 'Comet', 1704362871734, '126936953789743104', NULL, 0), + (1704362872033, 6, 'Comfy', 1704362871734, '126936953789743104', NULL, 0), + (1704362872034, 6, 'Comic', 1704362871734, '126936953789743104', NULL, 0), + (1704362872035, 6, 'Commando', 1704362871734, '126936953789743104', NULL, 0), + (1704362872036, 6, 'Commercial', 1704362871734, '126936953789743104', NULL, 0), + (1704362872037, 6, 'Compound', 1704362871734, '126936953789743104', NULL, 0), + (1704362872038, 6, 'Computer', 1704362871734, '126936953789743104', NULL, 0), + (1704362872039, 6, 'Concert', 1704362871734, '126936953789743104', NULL, 0), + (1704362872040, 6, 'Condom', 1704362871734, '126936953789743104', NULL, 0), + (1704362872041, 6, 'Conductor', 1704362871734, '126936953789743104', NULL, 0), + (1704362872042, 6, 'Cone', 1704362871734, '126936953789743104', NULL, 0), + (1704362872043, 6, 'Contract', 1704362871734, '126936953789743104', NULL, 0), + (1704362872044, 6, 'Cook', 1704362871734, '126936953789743104', NULL, 0), + (1704362872045, 6, 'Cookie', 1704362871734, '126936953789743104', NULL, 0), + (1704362872046, 6, 'Coozie', 1704362871734, '126936953789743104', NULL, 0), + (1704362872047, 6, 'Copper', 1704362871734, '126936953789743104', NULL, 0), + (1704362872048, 6, 'Corn', 1704362871734, '126936953789743104', NULL, 0), + (1704362872049, 6, 'Cotton', 1704362871734, '126936953789743104', NULL, 0), + (1704362872050, 6, 'Couch', 1704362871734, '126936953789743104', NULL, 0), + (1704362872051, 6, 'Cougar', 1704362871734, '126936953789743104', NULL, 0), + (1704362872052, 6, 'Cough', 1704362871734, '126936953789743104', NULL, 0), + (1704362872053, 6, 'Country', 1704362871734, '126936953789743104', NULL, 0), + (1704362872054, 6, 'Couple', 1704362871734, '126936953789743104', NULL, 0), + (1704362872055, 6, 'Court', 1704362871734, '126936953789743104', NULL, 0), + (1704362872056, 6, 'Cover', 1704362871734, '126936953789743104', NULL, 0), + (1704362872057, 6, 'Cow', 1704362871734, '126936953789743104', NULL, 0), + (1704362872058, 6, 'Cowboy', 1704362871734, '126936953789743104', NULL, 0), + (1704362872059, 6, 'Cowgirl', 1704362871734, '126936953789743104', NULL, 0), + (1704362872060, 6, 'Coyote', 1704362871734, '126936953789743104', NULL, 0), + (1704362872061, 6, 'Crab', 1704362871734, '126936953789743104', NULL, 0), + (1704362872062, 6, 'Crabs', 1704362871734, '126936953789743104', NULL, 0), + (1704362872063, 6, 'Crack', 1704362871734, '126936953789743104', NULL, 0), + (1704362872064, 6, 'Craft', 1704362871734, '126936953789743104', NULL, 0), + (1704362872065, 6, 'Crane', 1704362871734, '126936953789743104', NULL, 0), + (1704362872066, 6, 'Crap', 1704362871734, '126936953789743104', NULL, 0), + (1704362872067, 6, 'Crash', 1704362871734, '126936953789743104', NULL, 0), + (1704362872068, 6, 'Crayon', 1704362871734, '126936953789743104', NULL, 0), + (1704362872069, 6, 'Cream', 1704362871734, '126936953789743104', NULL, 0), + (1704362872070, 6, 'Cricket', 1704362871734, '126936953789743104', NULL, 0), + (1704362872071, 6, 'Crisp', 1704362871734, '126936953789743104', NULL, 0), + (1704362872072, 6, 'Cross', 1704362871734, '126936953789743104', NULL, 0), + (1704362872073, 6, 'Crow', 1704362871734, '126936953789743104', NULL, 0), + (1704362872074, 6, 'Crown', 1704362871734, '126936953789743104', NULL, 0), + (1704362872075, 6, 'Crumb', 1704362871734, '126936953789743104', NULL, 0), + (1704362872076, 6, 'Crusader', 1704362871734, '126936953789743104', NULL, 0), + (1704362872077, 6, 'Crystal', 1704362871734, '126936953789743104', NULL, 0), + (1704362872078, 6, 'Cuckoo', 1704362871734, '126936953789743104', NULL, 0), + (1704362872079, 6, 'Cucumber', 1704362871734, '126936953789743104', NULL, 0), + (1704362872080, 6, 'Cuddle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872081, 6, 'Cuffs', 1704362871734, '126936953789743104', NULL, 0), + (1704362872082, 6, 'Cup', 1704362871734, '126936953789743104', NULL, 0), + (1704362872083, 6, 'Cupcake', 1704362871734, '126936953789743104', NULL, 0), + (1704362872084, 6, 'Curry', 1704362871734, '126936953789743104', NULL, 0), + (1704362872085, 6, 'Cycle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872086, 6, 'Czar', 1704362871734, '126936953789743104', NULL, 0), + (1704362872087, 6, 'Czech', 1704362871734, '126936953789743104', NULL, 0), + (1704362872088, 6, 'Dad', 1704362871734, '126936953789743104', NULL, 0), + (1704362872089, 6, 'Daddy', 1704362871734, '126936953789743104', NULL, 0), + (1704362872090, 6, 'Dame', 1704362871734, '126936953789743104', NULL, 0), + (1704362872091, 6, 'Dance', 1704362871734, '126936953789743104', NULL, 0), + (1704362872092, 6, 'Darkness', 1704362871734, '126936953789743104', NULL, 0), + (1704362872093, 6, 'Dash', 1704362871734, '126936953789743104', NULL, 0), + (1704362872094, 6, 'Dashboard', 1704362871734, '126936953789743104', NULL, 0), + (1704362872095, 6, 'Date', 1704362871734, '126936953789743104', NULL, 0), + (1704362872096, 6, 'Day', 1704362871734, '126936953789743104', NULL, 0), + (1704362872097, 6, 'Death', 1704362871734, '126936953789743104', NULL, 0), + (1704362872098, 6, 'Deck', 1704362871734, '126936953789743104', NULL, 0), + (1704362872099, 6, 'Deep', 1704362871734, '126936953789743104', NULL, 0), + (1704362872100, 6, 'Degree', 1704362871734, '126936953789743104', NULL, 0), + (1704362872101, 6, 'Delta', 1704362871734, '126936953789743104', NULL, 0), + (1704362872102, 6, 'Dentist', 1704362871734, '126936953789743104', NULL, 0), + (1704362872103, 6, 'Desk', 1704362871734, '126936953789743104', NULL, 0), + (1704362872104, 6, 'Diagonal', 1704362871734, '126936953789743104', NULL, 0), + (1704362872105, 6, 'Diamond', 1704362871734, '126936953789743104', NULL, 0), + (1704362872106, 6, 'Diarrhea', 1704362871734, '126936953789743104', NULL, 0), + (1704362872107, 6, 'Dice', 1704362871734, '126936953789743104', NULL, 0), + (1704362872108, 6, 'Dick', 1704362871734, '126936953789743104', NULL, 0), + (1704362872109, 6, 'Dictionary', 1704362871734, '126936953789743104', NULL, 0), + (1704362872110, 6, 'Dildo', 1704362871734, '126936953789743104', NULL, 0), + (1704362872111, 6, 'Dinosaur', 1704362871734, '126936953789743104', NULL, 0), + (1704362872112, 6, 'Director', 1704362871734, '126936953789743104', NULL, 0), + (1704362872113, 6, 'Dirty', 1704362871734, '126936953789743104', NULL, 0), + (1704362872114, 6, 'Disease', 1704362871734, '126936953789743104', NULL, 0), + (1704362872115, 6, 'Disk', 1704362871734, '126936953789743104', NULL, 0), + (1704362872116, 6, 'Ditch', 1704362871734, '126936953789743104', NULL, 0), + (1704362872117, 6, 'Dizzy', 1704362871734, '126936953789743104', NULL, 0), + (1704362872118, 6, 'Dock', 1704362871734, '126936953789743104', NULL, 0), + (1704362872119, 6, 'Doctor', 1704362871734, '126936953789743104', NULL, 0), + (1704362872120, 6, 'Dog', 1704362871734, '126936953789743104', NULL, 0), + (1704362872121, 6, 'Doggy', 1704362871734, '126936953789743104', NULL, 0), + (1704362872122, 6, 'Doghouse', 1704362871734, '126936953789743104', NULL, 0), + (1704362872123, 6, 'Doll', 1704362871734, '126936953789743104', NULL, 0), + (1704362872124, 6, 'Dollar', 1704362871734, '126936953789743104', NULL, 0), + (1704362872125, 6, 'Dominate', 1704362871734, '126936953789743104', NULL, 0), + (1704362872126, 6, 'Dominoes', 1704362871734, '126936953789743104', NULL, 0), + (1704362872127, 6, 'Donkey', 1704362871734, '126936953789743104', NULL, 0), + (1704362872128, 6, 'Door', 1704362871734, '126936953789743104', NULL, 0), + (1704362872129, 6, 'Dorsal', 1704362871734, '126936953789743104', NULL, 0), + (1704362872130, 6, 'Double', 1704362871734, '126936953789743104', NULL, 0), + (1704362872131, 6, 'Douche', 1704362871734, '126936953789743104', NULL, 0), + (1704362872132, 6, 'Down', 1704362871734, '126936953789743104', NULL, 0), + (1704362872133, 6, 'Download', 1704362871734, '126936953789743104', NULL, 0), + (1704362872134, 6, 'Draft', 1704362871734, '126936953789743104', NULL, 0), + (1704362872135, 6, 'Drag', 1704362871734, '126936953789743104', NULL, 0), + (1704362872136, 6, 'Dragon', 1704362871734, '126936953789743104', NULL, 0), + (1704362872137, 6, 'Draw', 1704362871734, '126936953789743104', NULL, 0), + (1704362872138, 6, 'Drawback', 1704362871734, '126936953789743104', NULL, 0), + (1704362872139, 6, 'Drawing', 1704362871734, '126936953789743104', NULL, 0), + (1704362872140, 6, 'Dream', 1704362871734, '126936953789743104', NULL, 0), + (1704362872141, 6, 'Dress', 1704362871734, '126936953789743104', NULL, 0), + (1704362872142, 6, 'Dressing', 1704362871734, '126936953789743104', NULL, 0), + (1704362872143, 6, 'Drill', 1704362871734, '126936953789743104', NULL, 0), + (1704362872144, 6, 'Dripping', 1704362871734, '126936953789743104', NULL, 0), + (1704362872145, 6, 'Driver', 1704362871734, '126936953789743104', NULL, 0), + (1704362872146, 6, 'Drone', 1704362871734, '126936953789743104', NULL, 0), + (1704362872147, 6, 'Drop', 1704362871734, '126936953789743104', NULL, 0), + (1704362872148, 6, 'Drought', 1704362871734, '126936953789743104', NULL, 0), + (1704362872149, 6, 'Drum', 1704362871734, '126936953789743104', NULL, 0), + (1704362872150, 6, 'Drunk', 1704362871734, '126936953789743104', NULL, 0), + (1704362872151, 6, 'Dryer', 1704362871734, '126936953789743104', NULL, 0), + (1704362872152, 6, 'Duck', 1704362871734, '126936953789743104', NULL, 0), + (1704362872153, 6, 'Dump Truck', 1704362871734, '126936953789743104', NULL, 0), + (1704362872154, 6, 'Dust', 1704362871734, '126936953789743104', NULL, 0), + (1704362872155, 6, 'Dwarf', 1704362871734, '126936953789743104', NULL, 0), + (1704362872156, 6, 'Eagle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872157, 6, 'Ear', 1704362871734, '126936953789743104', NULL, 0), + (1704362872158, 6, 'Earache', 1704362871734, '126936953789743104', NULL, 0), + (1704362872159, 6, 'Earth', 1704362871734, '126936953789743104', NULL, 0), + (1704362872160, 6, 'Earthquake', 1704362871734, '126936953789743104', NULL, 0), + (1704362872161, 6, 'Easel', 1704362871734, '126936953789743104', NULL, 0), + (1704362872162, 6, 'Easter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872163, 6, 'Eat', 1704362871734, '126936953789743104', NULL, 0), + (1704362872164, 6, 'Eden', 1704362871734, '126936953789743104', NULL, 0), + (1704362872165, 6, 'Egg', 1704362871734, '126936953789743104', NULL, 0), + (1704362872166, 6, 'Egypt', 1704362871734, '126936953789743104', NULL, 0), + (1704362872167, 6, 'Einstein', 1704362871734, '126936953789743104', NULL, 0), + (1704362872168, 6, 'Elbow', 1704362871734, '126936953789743104', NULL, 0), + (1704362872169, 6, 'Electricity', 1704362871734, '126936953789743104', NULL, 0), + (1704362872170, 6, 'Elephant', 1704362871734, '126936953789743104', NULL, 0), + (1704362872171, 6, 'Elevator', 1704362871734, '126936953789743104', NULL, 0), + (1704362872172, 6, 'Elf', 1704362871734, '126936953789743104', NULL, 0), + (1704362872173, 6, 'Embassy', 1704362871734, '126936953789743104', NULL, 0), + (1704362872174, 6, 'Emission', 1704362871734, '126936953789743104', NULL, 0), + (1704362872175, 6, 'Engine', 1704362871734, '126936953789743104', NULL, 0), + (1704362872176, 6, 'England', 1704362871734, '126936953789743104', NULL, 0), + (1704362872177, 6, 'Escort', 1704362871734, '126936953789743104', NULL, 0), + (1704362872178, 6, 'Eureka', 1704362871734, '126936953789743104', NULL, 0), + (1704362872179, 6, 'Europe', 1704362871734, '126936953789743104', NULL, 0), + (1704362872180, 6, 'Exercise', 1704362871734, '126936953789743104', NULL, 0), + (1704362872181, 6, 'Experiment', 1704362871734, '126936953789743104', NULL, 0), + (1704362872182, 6, 'Exponential', 1704362871734, '126936953789743104', NULL, 0), + (1704362872183, 6, 'Eye', 1704362871734, '126936953789743104', NULL, 0), + (1704362872184, 6, 'Eyebrow', 1704362871734, '126936953789743104', NULL, 0), + (1704362872185, 6, 'Eyes', 1704362871734, '126936953789743104', NULL, 0), + (1704362872186, 6, 'Fabric', 1704362871734, '126936953789743104', NULL, 0), + (1704362872187, 6, 'Face', 1704362871734, '126936953789743104', NULL, 0), + (1704362872188, 6, 'Facial', 1704362871734, '126936953789743104', NULL, 0), + (1704362872189, 6, 'Fair', 1704362871734, '126936953789743104', NULL, 0), + (1704362872190, 6, 'Fall', 1704362871734, '126936953789743104', NULL, 0), + (1704362872191, 6, 'Fan', 1704362871734, '126936953789743104', NULL, 0), + (1704362872192, 6, 'Fantasy', 1704362871734, '126936953789743104', NULL, 0), + (1704362872193, 6, 'Farm', 1704362871734, '126936953789743104', NULL, 0), + (1704362872194, 6, 'Fast', 1704362871734, '126936953789743104', NULL, 0), + (1704362872195, 6, 'Fatty', 1704362871734, '126936953789743104', NULL, 0), + (1704362872196, 6, 'Feather', 1704362871734, '126936953789743104', NULL, 0), + (1704362872197, 6, 'Fecal', 1704362871734, '126936953789743104', NULL, 0), + (1704362872198, 6, 'Fence', 1704362871734, '126936953789743104', NULL, 0), + (1704362872199, 6, 'Fetch', 1704362871734, '126936953789743104', NULL, 0), + (1704362872200, 6, 'Fetish', 1704362871734, '126936953789743104', NULL, 0), + (1704362872201, 6, 'Fever', 1704362871734, '126936953789743104', NULL, 0), + (1704362872202, 6, 'Fiddle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872203, 6, 'Field', 1704362871734, '126936953789743104', NULL, 0), + (1704362872204, 6, 'Fighter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872205, 6, 'Figment', 1704362871734, '126936953789743104', NULL, 0), + (1704362872206, 6, 'Figure', 1704362871734, '126936953789743104', NULL, 0), + (1704362872207, 6, 'File', 1704362871734, '126936953789743104', NULL, 0), + (1704362872208, 6, 'Film', 1704362871734, '126936953789743104', NULL, 0), + (1704362872209, 6, 'Finger', 1704362871734, '126936953789743104', NULL, 0), + (1704362872210, 6, 'Fire Engine', 1704362871734, '126936953789743104', NULL, 0), + (1704362872211, 6, 'Fire', 1704362871734, '126936953789743104', NULL, 0), + (1704362872212, 6, 'Firefighter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872213, 6, 'Fireside', 1704362871734, '126936953789743104', NULL, 0), + (1704362872214, 6, 'Fish', 1704362871734, '126936953789743104', NULL, 0), + (1704362872215, 6, 'Fishing', 1704362871734, '126936953789743104', NULL, 0), + (1704362872216, 6, 'Fist', 1704362871734, '126936953789743104', NULL, 0), + (1704362872217, 6, 'Fix', 1704362871734, '126936953789743104', NULL, 0), + (1704362872218, 6, 'Flag', 1704362871734, '126936953789743104', NULL, 0), + (1704362872219, 6, 'Flagpole', 1704362871734, '126936953789743104', NULL, 0), + (1704362872220, 6, 'Flash', 1704362871734, '126936953789743104', NULL, 0), + (1704362872221, 6, 'Flashlight', 1704362871734, '126936953789743104', NULL, 0), + (1704362872222, 6, 'Flat', 1704362871734, '126936953789743104', NULL, 0), + (1704362872223, 6, 'Flesh', 1704362871734, '126936953789743104', NULL, 0), + (1704362872224, 6, 'Flock', 1704362871734, '126936953789743104', NULL, 0), + (1704362872225, 6, 'Flood', 1704362871734, '126936953789743104', NULL, 0), + (1704362872226, 6, 'Floor', 1704362871734, '126936953789743104', NULL, 0), + (1704362872227, 6, 'Flower', 1704362871734, '126936953789743104', NULL, 0), + (1704362872228, 6, 'Fluff', 1704362871734, '126936953789743104', NULL, 0), + (1704362872229, 6, 'Flute', 1704362871734, '126936953789743104', NULL, 0), + (1704362872230, 6, 'Flutter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872231, 6, 'Fly', 1704362871734, '126936953789743104', NULL, 0), + (1704362872232, 6, 'Foam', 1704362871734, '126936953789743104', NULL, 0), + (1704362872233, 6, 'Fog', 1704362871734, '126936953789743104', NULL, 0), + (1704362872234, 6, 'Foil', 1704362871734, '126936953789743104', NULL, 0), + (1704362872235, 6, 'Foot', 1704362871734, '126936953789743104', NULL, 0), + (1704362872236, 6, 'Football', 1704362871734, '126936953789743104', NULL, 0), + (1704362872237, 6, 'Force', 1704362871734, '126936953789743104', NULL, 0), + (1704362872238, 6, 'Forehead', 1704362871734, '126936953789743104', NULL, 0), + (1704362872239, 6, 'Foreskin', 1704362871734, '126936953789743104', NULL, 0), + (1704362872240, 6, 'Forest', 1704362871734, '126936953789743104', NULL, 0), + (1704362872241, 6, 'Fork', 1704362871734, '126936953789743104', NULL, 0), + (1704362872242, 6, 'France', 1704362871734, '126936953789743104', NULL, 0), + (1704362872243, 6, 'Freak', 1704362871734, '126936953789743104', NULL, 0), + (1704362872244, 6, 'Freckle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872245, 6, 'Freckles', 1704362871734, '126936953789743104', NULL, 0), + (1704362872246, 6, 'French', 1704362871734, '126936953789743104', NULL, 0), + (1704362872247, 6, 'Friction', 1704362871734, '126936953789743104', NULL, 0), + (1704362872248, 6, 'Frog', 1704362871734, '126936953789743104', NULL, 0), + (1704362872249, 6, 'Front', 1704362871734, '126936953789743104', NULL, 0), + (1704362872250, 6, 'Frost', 1704362871734, '126936953789743104', NULL, 0), + (1704362872251, 6, 'Frown', 1704362871734, '126936953789743104', NULL, 0), + (1704362872252, 6, 'Fuel', 1704362871734, '126936953789743104', NULL, 0), + (1704362872253, 6, 'Funny', 1704362871734, '126936953789743104', NULL, 0), + (1704362872254, 6, 'Furry', 1704362871734, '126936953789743104', NULL, 0), + (1704362872255, 6, 'G-spot', 1704362871734, '126936953789743104', NULL, 0), + (1704362872256, 6, 'Gag', 1704362871734, '126936953789743104', NULL, 0), + (1704362872257, 6, 'Gallop', 1704362871734, '126936953789743104', NULL, 0), + (1704362872258, 6, 'Game', 1704362871734, '126936953789743104', NULL, 0), + (1704362872259, 6, 'Gang', 1704362871734, '126936953789743104', NULL, 0), + (1704362872260, 6, 'Gangbang', 1704362871734, '126936953789743104', NULL, 0), + (1704362872261, 6, 'Gangster', 1704362871734, '126936953789743104', NULL, 0), + (1704362872262, 6, 'Garbage', 1704362871734, '126936953789743104', NULL, 0), + (1704362872263, 6, 'Garden', 1704362871734, '126936953789743104', NULL, 0), + (1704362872264, 6, 'Gas', 1704362871734, '126936953789743104', NULL, 0), + (1704362872265, 6, 'Gash', 1704362871734, '126936953789743104', NULL, 0), + (1704362872266, 6, 'Gay', 1704362871734, '126936953789743104', NULL, 0), + (1704362872267, 6, 'Gear', 1704362871734, '126936953789743104', NULL, 0), + (1704362872268, 6, 'Genie', 1704362871734, '126936953789743104', NULL, 0), + (1704362872269, 6, 'Genius', 1704362871734, '126936953789743104', NULL, 0), + (1704362872270, 6, 'Gerbil', 1704362871734, '126936953789743104', NULL, 0), + (1704362872271, 6, 'Germany', 1704362871734, '126936953789743104', NULL, 0), + (1704362872272, 6, 'Ghost', 1704362871734, '126936953789743104', NULL, 0), + (1704362872273, 6, 'Giant', 1704362871734, '126936953789743104', NULL, 0), + (1704362872274, 6, 'Gigolo', 1704362871734, '126936953789743104', NULL, 0), + (1704362872275, 6, 'Gingerbread Man', 1704362871734, '126936953789743104', NULL, 0), + (1704362872276, 6, 'Giraffe', 1704362871734, '126936953789743104', NULL, 0), + (1704362872277, 6, 'Girl', 1704362871734, '126936953789743104', NULL, 0), + (1704362872278, 6, 'Glacier', 1704362871734, '126936953789743104', NULL, 0), + (1704362872279, 6, 'Glass', 1704362871734, '126936953789743104', NULL, 0), + (1704362872280, 6, 'Glasses', 1704362871734, '126936953789743104', NULL, 0), + (1704362872281, 6, 'Glide', 1704362871734, '126936953789743104', NULL, 0), + (1704362872282, 6, 'Glitter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872283, 6, 'Glove', 1704362871734, '126936953789743104', NULL, 0), + (1704362872284, 6, 'Glue Stick', 1704362871734, '126936953789743104', NULL, 0), + (1704362872285, 6, 'Goat', 1704362871734, '126936953789743104', NULL, 0), + (1704362872286, 6, 'Goblin', 1704362871734, '126936953789743104', NULL, 0), + (1704362872287, 6, 'Gold', 1704362871734, '126936953789743104', NULL, 0), + (1704362872288, 6, 'Goldilocks', 1704362871734, '126936953789743104', NULL, 0), + (1704362872289, 6, 'Golf', 1704362871734, '126936953789743104', NULL, 0), + (1704362872290, 6, 'Goodbye', 1704362871734, '126936953789743104', NULL, 0), + (1704362872291, 6, 'Goose', 1704362871734, '126936953789743104', NULL, 0), + (1704362872292, 6, 'Governor', 1704362871734, '126936953789743104', NULL, 0), + (1704362872293, 6, 'Grace', 1704362871734, '126936953789743104', NULL, 0), + (1704362872294, 6, 'Grandfather', 1704362871734, '126936953789743104', NULL, 0), + (1704362872295, 6, 'Grandma', 1704362871734, '126936953789743104', NULL, 0), + (1704362872296, 6, 'Grape', 1704362871734, '126936953789743104', NULL, 0), + (1704362872297, 6, 'Grass', 1704362871734, '126936953789743104', NULL, 0), + (1704362872298, 6, 'Greece', 1704362871734, '126936953789743104', NULL, 0), + (1704362872299, 6, 'Green', 1704362871734, '126936953789743104', NULL, 0), + (1704362872300, 6, 'Greenhouse', 1704362871734, '126936953789743104', NULL, 0), + (1704362872301, 6, 'Grill', 1704362871734, '126936953789743104', NULL, 0), + (1704362872302, 6, 'Groom', 1704362871734, '126936953789743104', NULL, 0), + (1704362872303, 6, 'Grope', 1704362871734, '126936953789743104', NULL, 0), + (1704362872304, 6, 'Ground', 1704362871734, '126936953789743104', NULL, 0), + (1704362872305, 6, 'Group', 1704362871734, '126936953789743104', NULL, 0), + (1704362872306, 6, 'Grown-up', 1704362871734, '126936953789743104', NULL, 0), + (1704362872307, 6, 'Guitar', 1704362871734, '126936953789743104', NULL, 0), + (1704362872308, 6, 'Gum', 1704362871734, '126936953789743104', NULL, 0), + (1704362872309, 6, 'Gumball', 1704362871734, '126936953789743104', NULL, 0), + (1704362872310, 6, 'Gymnast', 1704362871734, '126936953789743104', NULL, 0), + (1704362872311, 6, 'Hail', 1704362871734, '126936953789743104', NULL, 0), + (1704362872312, 6, 'Hair', 1704362871734, '126936953789743104', NULL, 0), + (1704362872313, 6, 'Half', 1704362871734, '126936953789743104', NULL, 0), + (1704362872314, 6, 'Halloween', 1704362871734, '126936953789743104', NULL, 0), + (1704362872315, 6, 'Ham', 1704362871734, '126936953789743104', NULL, 0), + (1704362872316, 6, 'Hamburger', 1704362871734, '126936953789743104', NULL, 0), + (1704362872317, 6, 'Hammer', 1704362871734, '126936953789743104', NULL, 0), + (1704362872318, 6, 'Hamster', 1704362871734, '126936953789743104', NULL, 0), + (1704362872319, 6, 'Hand', 1704362871734, '126936953789743104', NULL, 0), + (1704362872320, 6, 'Happy', 1704362871734, '126936953789743104', NULL, 0), + (1704362872321, 6, 'Hat', 1704362871734, '126936953789743104', NULL, 0), + (1704362872322, 6, 'Hawaii', 1704362871734, '126936953789743104', NULL, 0), + (1704362872323, 6, 'Hawk', 1704362871734, '126936953789743104', NULL, 0), + (1704362872324, 6, 'Head', 1704362871734, '126936953789743104', NULL, 0), + (1704362872325, 6, 'Headache', 1704362871734, '126936953789743104', NULL, 0), + (1704362872326, 6, 'Headboard', 1704362871734, '126936953789743104', NULL, 0), + (1704362872327, 6, 'Headlights', 1704362871734, '126936953789743104', NULL, 0), + (1704362872328, 6, 'Heart', 1704362871734, '126936953789743104', NULL, 0), + (1704362872329, 6, 'Helicopter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872330, 6, 'Hell', 1704362871734, '126936953789743104', NULL, 0), + (1704362872331, 6, 'Helmet', 1704362871734, '126936953789743104', NULL, 0), + (1704362872332, 6, 'Herb', 1704362871734, '126936953789743104', NULL, 0), + (1704362872333, 6, 'Hercules', 1704362871734, '126936953789743104', NULL, 0), + (1704362872334, 6, 'Hide', 1704362871734, '126936953789743104', NULL, 0), + (1704362872335, 6, 'Hide-and-Seek', 1704362871734, '126936953789743104', NULL, 0), + (1704362872336, 6, 'High', 1704362871734, '126936953789743104', NULL, 0), + (1704362872337, 6, 'Hill', 1704362871734, '126936953789743104', NULL, 0), + (1704362872338, 6, 'Himalayas', 1704362871734, '126936953789743104', NULL, 0), + (1704362872339, 6, 'Hippo', 1704362871734, '126936953789743104', NULL, 0), + (1704362872340, 6, 'Hit', 1704362871734, '126936953789743104', NULL, 0), + (1704362872341, 6, 'Hockey', 1704362871734, '126936953789743104', NULL, 0), + (1704362872342, 6, 'Hole', 1704362871734, '126936953789743104', NULL, 0), + (1704362872343, 6, 'Hollywood', 1704362871734, '126936953789743104', NULL, 0), + (1704362872344, 6, 'Home', 1704362871734, '126936953789743104', NULL, 0), + (1704362872345, 6, 'Homer', 1704362871734, '126936953789743104', NULL, 0), + (1704362872346, 6, 'Homerun', 1704362871734, '126936953789743104', NULL, 0), + (1704362872347, 6, 'Homework', 1704362871734, '126936953789743104', NULL, 0), + (1704362872348, 6, 'Honey', 1704362871734, '126936953789743104', NULL, 0), + (1704362872349, 6, 'Hood', 1704362871734, '126936953789743104', NULL, 0), + (1704362872350, 6, 'Hook', 1704362871734, '126936953789743104', NULL, 0), + (1704362872351, 6, 'Hooker', 1704362871734, '126936953789743104', NULL, 0), + (1704362872352, 6, 'Hooters', 1704362871734, '126936953789743104', NULL, 0), + (1704362872353, 6, 'Hopscotch', 1704362871734, '126936953789743104', NULL, 0), + (1704362872354, 6, 'Horn', 1704362871734, '126936953789743104', NULL, 0), + (1704362872355, 6, 'Horny', 1704362871734, '126936953789743104', NULL, 0), + (1704362872356, 6, 'Horse', 1704362871734, '126936953789743104', NULL, 0), + (1704362872357, 6, 'Horseshoe', 1704362871734, '126936953789743104', NULL, 0), + (1704362872358, 6, 'Hose', 1704362871734, '126936953789743104', NULL, 0), + (1704362872359, 6, 'Hospital', 1704362871734, '126936953789743104', NULL, 0), + (1704362872360, 6, 'Hot Dog', 1704362871734, '126936953789743104', NULL, 0), + (1704362872361, 6, 'Hot', 1704362871734, '126936953789743104', NULL, 0), + (1704362872362, 6, 'Hotel', 1704362871734, '126936953789743104', NULL, 0), + (1704362872363, 6, 'House', 1704362871734, '126936953789743104', NULL, 0), + (1704362872364, 6, 'Huddle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872365, 6, 'Hug', 1704362871734, '126936953789743104', NULL, 0), + (1704362872366, 6, 'Hump', 1704362871734, '126936953789743104', NULL, 0), + (1704362872367, 6, 'Hungry', 1704362871734, '126936953789743104', NULL, 0), + (1704362872368, 6, 'Hurdle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872369, 6, 'Hurl', 1704362871734, '126936953789743104', NULL, 0), + (1704362872370, 6, 'Hurt', 1704362871734, '126936953789743104', NULL, 0), + (1704362872371, 6, 'Husband', 1704362871734, '126936953789743104', NULL, 0), + (1704362872372, 6, 'Hydrogen', 1704362871734, '126936953789743104', NULL, 0), + (1704362872373, 6, 'Ice Age', 1704362871734, '126936953789743104', NULL, 0), + (1704362872374, 6, 'Ice Cream Cone', 1704362871734, '126936953789743104', NULL, 0), + (1704362872375, 6, 'Ice Cream', 1704362871734, '126936953789743104', NULL, 0), + (1704362872376, 6, 'Ice', 1704362871734, '126936953789743104', NULL, 0), + (1704362872377, 6, 'Iceland', 1704362871734, '126936953789743104', NULL, 0), + (1704362872378, 6, 'Igloo', 1704362871734, '126936953789743104', NULL, 0), + (1704362872379, 6, 'Implode', 1704362871734, '126936953789743104', NULL, 0), + (1704362872380, 6, 'Important', 1704362871734, '126936953789743104', NULL, 0), + (1704362872381, 6, 'Inch', 1704362871734, '126936953789743104', NULL, 0), + (1704362872382, 6, 'Inchworm', 1704362871734, '126936953789743104', NULL, 0), + (1704362872383, 6, 'India', 1704362871734, '126936953789743104', NULL, 0), + (1704362872384, 6, 'Ink', 1704362871734, '126936953789743104', NULL, 0), + (1704362872385, 6, 'Intern', 1704362871734, '126936953789743104', NULL, 0), + (1704362872386, 6, 'Internet', 1704362871734, '126936953789743104', NULL, 0), + (1704362872387, 6, 'Ipad', 1704362871734, '126936953789743104', NULL, 0), + (1704362872388, 6, 'Ipod', 1704362871734, '126936953789743104', NULL, 0), + (1704362872389, 6, 'Iron', 1704362871734, '126936953789743104', NULL, 0), + (1704362872390, 6, 'Ironic', 1704362871734, '126936953789743104', NULL, 0), + (1704362872391, 6, 'Ironing Board', 1704362871734, '126936953789743104', NULL, 0), + (1704362872392, 6, 'Ivory', 1704362871734, '126936953789743104', NULL, 0), + (1704362872393, 6, 'Jack', 1704362871734, '126936953789743104', NULL, 0), + (1704362872394, 6, 'Jacket', 1704362871734, '126936953789743104', NULL, 0), + (1704362872395, 6, 'Jail', 1704362871734, '126936953789743104', NULL, 0), + (1704362872396, 6, 'Jam', 1704362871734, '126936953789743104', NULL, 0), + (1704362872397, 6, 'Jar', 1704362871734, '126936953789743104', NULL, 0), + (1704362872398, 6, 'Jazz', 1704362871734, '126936953789743104', NULL, 0), + (1704362872399, 6, 'Jeans', 1704362871734, '126936953789743104', NULL, 0), + (1704362872400, 6, 'Jelly', 1704362871734, '126936953789743104', NULL, 0), + (1704362872401, 6, 'Jellyfish', 1704362871734, '126936953789743104', NULL, 0), + (1704362872402, 6, 'Jerk', 1704362871734, '126936953789743104', NULL, 0), + (1704362872403, 6, 'Jet', 1704362871734, '126936953789743104', NULL, 0), + (1704362872404, 6, 'Jeweler', 1704362871734, '126936953789743104', NULL, 0), + (1704362872405, 6, 'Jewels', 1704362871734, '126936953789743104', NULL, 0), + (1704362872406, 6, 'Joan of Arc', 1704362871734, '126936953789743104', NULL, 0), + (1704362872407, 6, 'Job', 1704362871734, '126936953789743104', NULL, 0), + (1704362872408, 6, 'Jockey', 1704362871734, '126936953789743104', NULL, 0), + (1704362872409, 6, 'John', 1704362871734, '126936953789743104', NULL, 0), + (1704362872410, 6, 'Johnson', 1704362871734, '126936953789743104', NULL, 0), + (1704362872411, 6, 'Joint', 1704362871734, '126936953789743104', NULL, 0), + (1704362872412, 6, 'Joker', 1704362871734, '126936953789743104', NULL, 0), + (1704362872413, 6, 'Joystick', 1704362871734, '126936953789743104', NULL, 0), + (1704362872414, 6, 'Judge', 1704362871734, '126936953789743104', NULL, 0), + (1704362872415, 6, 'Jugs', 1704362871734, '126936953789743104', NULL, 0), + (1704362872416, 6, 'Juice', 1704362871734, '126936953789743104', NULL, 0), + (1704362872417, 6, 'Jump', 1704362871734, '126936953789743104', NULL, 0), + (1704362872418, 6, 'Jumper', 1704362871734, '126936953789743104', NULL, 0), + (1704362872419, 6, 'Jungle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872420, 6, 'Jupiter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872421, 6, 'Kangaroo', 1704362871734, '126936953789743104', NULL, 0), + (1704362872422, 6, 'Keg', 1704362871734, '126936953789743104', NULL, 0), + (1704362872423, 6, 'Ketchup', 1704362871734, '126936953789743104', NULL, 0), + (1704362872424, 6, 'Key', 1704362871734, '126936953789743104', NULL, 0), + (1704362872425, 6, 'Kick', 1704362871734, '126936953789743104', NULL, 0), + (1704362872426, 6, 'Kid', 1704362871734, '126936953789743104', NULL, 0), + (1704362872427, 6, 'Kilogram', 1704362871734, '126936953789743104', NULL, 0), + (1704362872428, 6, 'Kilt', 1704362871734, '126936953789743104', NULL, 0), + (1704362872429, 6, 'King Arthur', 1704362871734, '126936953789743104', NULL, 0), + (1704362872430, 6, 'King', 1704362871734, '126936953789743104', NULL, 0), + (1704362872431, 6, 'Kinky', 1704362871734, '126936953789743104', NULL, 0), + (1704362872432, 6, 'Kiss', 1704362871734, '126936953789743104', NULL, 0), + (1704362872433, 6, 'Kitchen', 1704362871734, '126936953789743104', NULL, 0), + (1704362872434, 6, 'Kite', 1704362871734, '126936953789743104', NULL, 0), + (1704362872435, 6, 'Kitty', 1704362871734, '126936953789743104', NULL, 0), + (1704362872436, 6, 'Kiwi', 1704362871734, '126936953789743104', NULL, 0), + (1704362872437, 6, 'Knee', 1704362871734, '126936953789743104', NULL, 0), + (1704362872438, 6, 'Knees', 1704362871734, '126936953789743104', NULL, 0), + (1704362872439, 6, 'Knife', 1704362871734, '126936953789743104', NULL, 0), + (1704362872440, 6, 'Knight', 1704362871734, '126936953789743104', NULL, 0), + (1704362872441, 6, 'Knob', 1704362871734, '126936953789743104', NULL, 0), + (1704362872442, 6, 'Knockers', 1704362871734, '126936953789743104', NULL, 0), + (1704362872443, 6, 'Knot', 1704362871734, '126936953789743104', NULL, 0), + (1704362872444, 6, 'Kung Fu', 1704362871734, '126936953789743104', NULL, 0), + (1704362872445, 6, 'Lab', 1704362871734, '126936953789743104', NULL, 0), + (1704362872446, 6, 'Lace', 1704362871734, '126936953789743104', NULL, 0), + (1704362872447, 6, 'Ladder', 1704362871734, '126936953789743104', NULL, 0), + (1704362872448, 6, 'Ladybug', 1704362871734, '126936953789743104', NULL, 0), + (1704362872449, 6, 'Lamp', 1704362871734, '126936953789743104', NULL, 0), + (1704362872450, 6, 'Landfill', 1704362871734, '126936953789743104', NULL, 0), + (1704362872451, 6, 'Landscape', 1704362871734, '126936953789743104', NULL, 0), + (1704362872452, 6, 'Lap', 1704362871734, '126936953789743104', NULL, 0), + (1704362872453, 6, 'Laser', 1704362871734, '126936953789743104', NULL, 0), + (1704362872454, 6, 'Latex', 1704362871734, '126936953789743104', NULL, 0), + (1704362872455, 6, 'Laugh', 1704362871734, '126936953789743104', NULL, 0), + (1704362872456, 6, 'Laundry', 1704362871734, '126936953789743104', NULL, 0), + (1704362872457, 6, 'Lawnmower', 1704362871734, '126936953789743104', NULL, 0), + (1704362872458, 6, 'Lawyer', 1704362871734, '126936953789743104', NULL, 0), + (1704362872459, 6, 'Lead', 1704362871734, '126936953789743104', NULL, 0), + (1704362872460, 6, 'Leaf', 1704362871734, '126936953789743104', NULL, 0), + (1704362872461, 6, 'Leather', 1704362871734, '126936953789743104', NULL, 0), + (1704362872462, 6, 'Leg', 1704362871734, '126936953789743104', NULL, 0), + (1704362872463, 6, 'Legend', 1704362871734, '126936953789743104', NULL, 0), + (1704362872464, 6, 'Legs', 1704362871734, '126936953789743104', NULL, 0), + (1704362872465, 6, 'Lemon', 1704362871734, '126936953789743104', NULL, 0), + (1704362872466, 6, 'Lemonade', 1704362871734, '126936953789743104', NULL, 0), + (1704362872467, 6, 'Leprechaun', 1704362871734, '126936953789743104', NULL, 0), + (1704362872468, 6, 'Letter Opener', 1704362871734, '126936953789743104', NULL, 0), + (1704362872469, 6, 'Letter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872470, 6, 'Lick', 1704362871734, '126936953789743104', NULL, 0), + (1704362872471, 6, 'Lie', 1704362871734, '126936953789743104', NULL, 0), + (1704362872472, 6, 'Life', 1704362871734, '126936953789743104', NULL, 0), + (1704362872473, 6, 'Ligament', 1704362871734, '126936953789743104', NULL, 0), + (1704362872474, 6, 'Light Bulb', 1704362871734, '126936953789743104', NULL, 0), + (1704362872475, 6, 'Light', 1704362871734, '126936953789743104', NULL, 0), + (1704362872476, 6, 'Lighter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872477, 6, 'Lightning', 1704362871734, '126936953789743104', NULL, 0), + (1704362872478, 6, 'Lightsaber', 1704362871734, '126936953789743104', NULL, 0), + (1704362872479, 6, 'Lime', 1704362871734, '126936953789743104', NULL, 0), + (1704362872480, 6, 'Limousine', 1704362871734, '126936953789743104', NULL, 0), + (1704362872481, 6, 'Line', 1704362871734, '126936953789743104', NULL, 0), + (1704362872482, 6, 'Lingerie', 1704362871734, '126936953789743104', NULL, 0), + (1704362872483, 6, 'Link', 1704362871734, '126936953789743104', NULL, 0), + (1704362872484, 6, 'Lion', 1704362871734, '126936953789743104', NULL, 0), + (1704362872485, 6, 'Lip', 1704362871734, '126936953789743104', NULL, 0), + (1704362872486, 6, 'Lips', 1704362871734, '126936953789743104', NULL, 0), + (1704362872487, 6, 'Liquor', 1704362871734, '126936953789743104', NULL, 0), + (1704362872488, 6, 'Litter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872489, 6, 'Living Room', 1704362871734, '126936953789743104', NULL, 0), + (1704362872490, 6, 'Lizard', 1704362871734, '126936953789743104', NULL, 0), + (1704362872491, 6, 'Lobster', 1704362871734, '126936953789743104', NULL, 0), + (1704362872492, 6, 'Loch Ness', 1704362871734, '126936953789743104', NULL, 0), + (1704362872493, 6, 'Lock', 1704362871734, '126936953789743104', NULL, 0), + (1704362872494, 6, 'Locust', 1704362871734, '126936953789743104', NULL, 0), + (1704362872495, 6, 'Log', 1704362871734, '126936953789743104', NULL, 0), + (1704362872496, 6, 'Logo', 1704362871734, '126936953789743104', NULL, 0), + (1704362872497, 6, 'Lollipop', 1704362871734, '126936953789743104', NULL, 0), + (1704362872498, 6, 'London', 1704362871734, '126936953789743104', NULL, 0), + (1704362872499, 6, 'Long', 1704362871734, '126936953789743104', NULL, 0), + (1704362872500, 6, 'Loose', 1704362871734, '126936953789743104', NULL, 0), + (1704362872501, 6, 'Lotion', 1704362871734, '126936953789743104', NULL, 0), + (1704362872502, 6, 'Love', 1704362871734, '126936953789743104', NULL, 0), + (1704362872503, 6, 'Lube', 1704362871734, '126936953789743104', NULL, 0), + (1704362872504, 6, 'Luck', 1704362871734, '126936953789743104', NULL, 0), + (1704362872505, 6, 'Lumberjack', 1704362871734, '126936953789743104', NULL, 0), + (1704362872506, 6, 'Lunch', 1704362871734, '126936953789743104', NULL, 0), + (1704362872507, 6, 'Lunchbox', 1704362871734, '126936953789743104', NULL, 0), + (1704362872508, 6, 'Lust', 1704362871734, '126936953789743104', NULL, 0), + (1704362872509, 6, 'Lyric', 1704362871734, '126936953789743104', NULL, 0), + (1704362872510, 6, 'Macaroni', 1704362871734, '126936953789743104', NULL, 0), + (1704362872511, 6, 'Magazine', 1704362871734, '126936953789743104', NULL, 0), + (1704362872512, 6, 'Magic', 1704362871734, '126936953789743104', NULL, 0), + (1704362872513, 6, 'Magician', 1704362871734, '126936953789743104', NULL, 0), + (1704362872514, 6, 'Mail', 1704362871734, '126936953789743104', NULL, 0), + (1704362872515, 6, 'Mailbox', 1704362871734, '126936953789743104', NULL, 0), + (1704362872516, 6, 'Mailman', 1704362871734, '126936953789743104', NULL, 0), + (1704362872517, 6, 'Makeup', 1704362871734, '126936953789743104', NULL, 0), + (1704362872518, 6, 'Mammoth', 1704362871734, '126936953789743104', NULL, 0), + (1704362872519, 6, 'Manboobs', 1704362871734, '126936953789743104', NULL, 0), + (1704362872520, 6, 'Manicure', 1704362871734, '126936953789743104', NULL, 0), + (1704362872521, 6, 'Map', 1704362871734, '126936953789743104', NULL, 0), + (1704362872522, 6, 'Maple', 1704362871734, '126936953789743104', NULL, 0), + (1704362872523, 6, 'Maracas', 1704362871734, '126936953789743104', NULL, 0), + (1704362872524, 6, 'Marathon', 1704362871734, '126936953789743104', NULL, 0), + (1704362872525, 6, 'Marble', 1704362871734, '126936953789743104', NULL, 0), + (1704362872526, 6, 'March', 1704362871734, '126936953789743104', NULL, 0), + (1704362872527, 6, 'Mark', 1704362871734, '126936953789743104', NULL, 0), + (1704362872528, 6, 'Martini', 1704362871734, '126936953789743104', NULL, 0), + (1704362872529, 6, 'Mass', 1704362871734, '126936953789743104', NULL, 0), + (1704362872530, 6, 'Match', 1704362871734, '126936953789743104', NULL, 0), + (1704362872531, 6, 'Matchstick', 1704362871734, '126936953789743104', NULL, 0), + (1704362872532, 6, 'Mattress', 1704362871734, '126936953789743104', NULL, 0), + (1704362872533, 6, 'Meat', 1704362871734, '126936953789743104', NULL, 0), + (1704362872534, 6, 'Medic', 1704362871734, '126936953789743104', NULL, 0), + (1704362872535, 6, 'Melons', 1704362871734, '126936953789743104', NULL, 0), + (1704362872536, 6, 'Member', 1704362871734, '126936953789743104', NULL, 0), + (1704362872537, 6, 'Memory', 1704362871734, '126936953789743104', NULL, 0), + (1704362872538, 6, 'Mercury', 1704362871734, '126936953789743104', NULL, 0), + (1704362872539, 6, 'Mesh', 1704362871734, '126936953789743104', NULL, 0), + (1704362872540, 6, 'Mess', 1704362871734, '126936953789743104', NULL, 0), + (1704362872541, 6, 'Meter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872542, 6, 'Mexico', 1704362871734, '126936953789743104', NULL, 0), + (1704362872543, 6, 'Microscope', 1704362871734, '126936953789743104', NULL, 0), + (1704362872544, 6, 'Microwave', 1704362871734, '126936953789743104', NULL, 0), + (1704362872545, 6, 'Migrate', 1704362871734, '126936953789743104', NULL, 0), + (1704362872546, 6, 'Mile', 1704362871734, '126936953789743104', NULL, 0), + (1704362872547, 6, 'Milk', 1704362871734, '126936953789743104', NULL, 0), + (1704362872548, 6, 'Mill', 1704362871734, '126936953789743104', NULL, 0), + (1704362872549, 6, 'Millionaire', 1704362871734, '126936953789743104', NULL, 0), + (1704362872550, 6, 'Mime', 1704362871734, '126936953789743104', NULL, 0), + (1704362872551, 6, 'Mine', 1704362871734, '126936953789743104', NULL, 0), + (1704362872552, 6, 'Minotaur', 1704362871734, '126936953789743104', NULL, 0), + (1704362872553, 6, 'Mint', 1704362871734, '126936953789743104', NULL, 0), + (1704362872554, 6, 'Minute', 1704362871734, '126936953789743104', NULL, 0), + (1704362872555, 6, 'Mirror', 1704362871734, '126936953789743104', NULL, 0), + (1704362872556, 6, 'Miss', 1704362871734, '126936953789743104', NULL, 0), + (1704362872557, 6, 'Missile', 1704362871734, '126936953789743104', NULL, 0), + (1704362872558, 6, 'Missionary', 1704362871734, '126936953789743104', NULL, 0), + (1704362872559, 6, 'Mixer', 1704362871734, '126936953789743104', NULL, 0), + (1704362872560, 6, 'Model', 1704362871734, '126936953789743104', NULL, 0), + (1704362872561, 6, 'Mohawk', 1704362871734, '126936953789743104', NULL, 0), + (1704362872562, 6, 'Moist', 1704362871734, '126936953789743104', NULL, 0), + (1704362872563, 6, 'Mole', 1704362871734, '126936953789743104', NULL, 0), + (1704362872564, 6, 'Mom', 1704362871734, '126936953789743104', NULL, 0), + (1704362872565, 6, 'Mona Lisa', 1704362871734, '126936953789743104', NULL, 0), + (1704362872566, 6, 'Monday', 1704362871734, '126936953789743104', NULL, 0), + (1704362872567, 6, 'Money', 1704362871734, '126936953789743104', NULL, 0), + (1704362872568, 6, 'Monkey', 1704362871734, '126936953789743104', NULL, 0), + (1704362872569, 6, 'Monster', 1704362871734, '126936953789743104', NULL, 0), + (1704362872570, 6, 'Moon', 1704362871734, '126936953789743104', NULL, 0), + (1704362872571, 6, 'Mop', 1704362871734, '126936953789743104', NULL, 0), + (1704362872572, 6, 'Moscow', 1704362871734, '126936953789743104', NULL, 0), + (1704362872573, 6, 'Moses', 1704362871734, '126936953789743104', NULL, 0), + (1704362872574, 6, 'Mosquito', 1704362871734, '126936953789743104', NULL, 0), + (1704362872575, 6, 'Motel', 1704362871734, '126936953789743104', NULL, 0), + (1704362872576, 6, 'Mother', 1704362871734, '126936953789743104', NULL, 0), + (1704362872577, 6, 'Motorboat', 1704362871734, '126936953789743104', NULL, 0), + (1704362872578, 6, 'Motorcycle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872579, 6, 'Mount', 1704362871734, '126936953789743104', NULL, 0), + (1704362872580, 6, 'Mountain', 1704362871734, '126936953789743104', NULL, 0), + (1704362872581, 6, 'Mountie', 1704362871734, '126936953789743104', NULL, 0), + (1704362872582, 6, 'Mouse', 1704362871734, '126936953789743104', NULL, 0), + (1704362872583, 6, 'Mouth', 1704362871734, '126936953789743104', NULL, 0), + (1704362872584, 6, 'Movie', 1704362871734, '126936953789743104', NULL, 0), + (1704362872585, 6, 'Movies', 1704362871734, '126936953789743104', NULL, 0), + (1704362872586, 6, 'Mud', 1704362871734, '126936953789743104', NULL, 0), + (1704362872587, 6, 'Mug', 1704362871734, '126936953789743104', NULL, 0), + (1704362872588, 6, 'Mummy', 1704362871734, '126936953789743104', NULL, 0), + (1704362872589, 6, 'Mushroom', 1704362871734, '126936953789743104', NULL, 0), + (1704362872590, 6, 'Music', 1704362871734, '126936953789743104', NULL, 0), + (1704362872591, 6, 'Musketeer', 1704362871734, '126936953789743104', NULL, 0), + (1704362872592, 6, 'Mustard', 1704362871734, '126936953789743104', NULL, 0), + (1704362872593, 6, 'Mute', 1704362871734, '126936953789743104', NULL, 0), + (1704362872594, 6, 'Myth', 1704362871734, '126936953789743104', NULL, 0); +INSERT OR IGNORE INTO responses (id, tableId, text, timestamp, userSnowflake, serverSnowflake, access) +VALUES (1704362872595, 6, 'Nail', 1704362871734, '126936953789743104', NULL, 0), + (1704362872596, 6, 'Naked', 1704362871734, '126936953789743104', NULL, 0), + (1704362872597, 6, 'Napoleon', 1704362871734, '126936953789743104', NULL, 0), + (1704362872598, 6, 'Nature', 1704362871734, '126936953789743104', NULL, 0), + (1704362872599, 6, 'Navel', 1704362871734, '126936953789743104', NULL, 0), + (1704362872600, 6, 'Necklace', 1704362871734, '126936953789743104', NULL, 0), + (1704362872601, 6, 'Needle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872602, 6, 'Neighbor', 1704362871734, '126936953789743104', NULL, 0), + (1704362872603, 6, 'Neighborhood', 1704362871734, '126936953789743104', NULL, 0), + (1704362872604, 6, 'Nerve', 1704362871734, '126936953789743104', NULL, 0), + (1704362872605, 6, 'Net', 1704362871734, '126936953789743104', NULL, 0), + (1704362872606, 6, 'Neutron', 1704362871734, '126936953789743104', NULL, 0), + (1704362872607, 6, 'New York', 1704362871734, '126936953789743104', NULL, 0), + (1704362872608, 6, 'New', 1704362871734, '126936953789743104', NULL, 0), + (1704362872609, 6, 'Newsletter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872610, 6, 'Newton', 1704362871734, '126936953789743104', NULL, 0), + (1704362872611, 6, 'Niece', 1704362871734, '126936953789743104', NULL, 0), + (1704362872612, 6, 'Night', 1704362871734, '126936953789743104', NULL, 0), + (1704362872613, 6, 'Nightmare', 1704362871734, '126936953789743104', NULL, 0), + (1704362872614, 6, 'Ninja', 1704362871734, '126936953789743104', NULL, 0), + (1704362872615, 6, 'Nipple', 1704362871734, '126936953789743104', NULL, 0), + (1704362872616, 6, 'Noah', 1704362871734, '126936953789743104', NULL, 0), + (1704362872617, 6, 'Noodle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872618, 6, 'Nose', 1704362871734, '126936953789743104', NULL, 0), + (1704362872619, 6, 'Note', 1704362871734, '126936953789743104', NULL, 0), + (1704362872620, 6, 'Notre Dame', 1704362871734, '126936953789743104', NULL, 0), + (1704362872621, 6, 'Novel', 1704362871734, '126936953789743104', NULL, 0), + (1704362872622, 6, 'Nude', 1704362871734, '126936953789743104', NULL, 0), + (1704362872623, 6, 'Nurse', 1704362871734, '126936953789743104', NULL, 0), + (1704362872624, 6, 'Nut', 1704362871734, '126936953789743104', NULL, 0), + (1704362872625, 6, 'Nuts', 1704362871734, '126936953789743104', NULL, 0), + (1704362872626, 6, 'Nylon', 1704362871734, '126936953789743104', NULL, 0), + (1704362872627, 6, 'Oasis', 1704362871734, '126936953789743104', NULL, 0), + (1704362872628, 6, 'Observatory', 1704362871734, '126936953789743104', NULL, 0), + (1704362872629, 6, 'Ocean', 1704362871734, '126936953789743104', NULL, 0), + (1704362872630, 6, 'Octopus', 1704362871734, '126936953789743104', NULL, 0), + (1704362872631, 6, 'Oil', 1704362871734, '126936953789743104', NULL, 0), + (1704362872632, 6, 'Old', 1704362871734, '126936953789743104', NULL, 0), + (1704362872633, 6, 'Olive', 1704362871734, '126936953789743104', NULL, 0), + (1704362872634, 6, 'Olympus', 1704362871734, '126936953789743104', NULL, 0), + (1704362872635, 6, 'Onion', 1704362871734, '126936953789743104', NULL, 0), + (1704362872636, 6, 'Opaque', 1704362871734, '126936953789743104', NULL, 0), + (1704362872637, 6, 'Opera', 1704362871734, '126936953789743104', NULL, 0), + (1704362872638, 6, 'Orange', 1704362871734, '126936953789743104', NULL, 0), + (1704362872639, 6, 'Organ', 1704362871734, '126936953789743104', NULL, 0), + (1704362872640, 6, 'Orgasm', 1704362871734, '126936953789743104', NULL, 0), + (1704362872641, 6, 'Orgy', 1704362871734, '126936953789743104', NULL, 0), + (1704362872642, 6, 'Outer Space', 1704362871734, '126936953789743104', NULL, 0), + (1704362872643, 6, 'Outside', 1704362871734, '126936953789743104', NULL, 0), + (1704362872644, 6, 'Ovation', 1704362871734, '126936953789743104', NULL, 0), + (1704362872645, 6, 'Overture', 1704362871734, '126936953789743104', NULL, 0), + (1704362872646, 6, 'Oyster', 1704362871734, '126936953789743104', NULL, 0), + (1704362872647, 6, 'Pacific', 1704362871734, '126936953789743104', NULL, 0), + (1704362872648, 6, 'Package', 1704362871734, '126936953789743104', NULL, 0), + (1704362872649, 6, 'Pad', 1704362871734, '126936953789743104', NULL, 0), + (1704362872650, 6, 'Paddle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872651, 6, 'Page', 1704362871734, '126936953789743104', NULL, 0), + (1704362872652, 6, 'Paint', 1704362871734, '126936953789743104', NULL, 0), + (1704362872653, 6, 'Pajamas', 1704362871734, '126936953789743104', NULL, 0), + (1704362872654, 6, 'Palace', 1704362871734, '126936953789743104', NULL, 0), + (1704362872655, 6, 'Palm', 1704362871734, '126936953789743104', NULL, 0), + (1704362872656, 6, 'Pan', 1704362871734, '126936953789743104', NULL, 0), + (1704362872657, 6, 'Pants', 1704362871734, '126936953789743104', NULL, 0), + (1704362872658, 6, 'Paper', 1704362871734, '126936953789743104', NULL, 0), + (1704362872659, 6, 'Paperback', 1704362871734, '126936953789743104', NULL, 0), + (1704362872660, 6, 'Parachute', 1704362871734, '126936953789743104', NULL, 0), + (1704362872661, 6, 'Parade', 1704362871734, '126936953789743104', NULL, 0), + (1704362872662, 6, 'Park', 1704362871734, '126936953789743104', NULL, 0), + (1704362872663, 6, 'Parody', 1704362871734, '126936953789743104', NULL, 0), + (1704362872664, 6, 'Parrot', 1704362871734, '126936953789743104', NULL, 0), + (1704362872665, 6, 'Part', 1704362871734, '126936953789743104', NULL, 0), + (1704362872666, 6, 'Party', 1704362871734, '126936953789743104', NULL, 0), + (1704362872667, 6, 'Pass', 1704362871734, '126936953789743104', NULL, 0), + (1704362872668, 6, 'Password', 1704362871734, '126936953789743104', NULL, 0), + (1704362872669, 6, 'Paste', 1704362871734, '126936953789743104', NULL, 0), + (1704362872670, 6, 'Pastry', 1704362871734, '126936953789743104', NULL, 0), + (1704362872671, 6, 'Patient', 1704362871734, '126936953789743104', NULL, 0), + (1704362872672, 6, 'Pawn', 1704362871734, '126936953789743104', NULL, 0), + (1704362872673, 6, 'Pea', 1704362871734, '126936953789743104', NULL, 0), + (1704362872674, 6, 'Peach', 1704362871734, '126936953789743104', NULL, 0), + (1704362872675, 6, 'Peaches', 1704362871734, '126936953789743104', NULL, 0), + (1704362872676, 6, 'Peanut', 1704362871734, '126936953789743104', NULL, 0), + (1704362872677, 6, 'Pear', 1704362871734, '126936953789743104', NULL, 0), + (1704362872678, 6, 'Pearl', 1704362871734, '126936953789743104', NULL, 0), + (1704362872679, 6, 'Peasant', 1704362871734, '126936953789743104', NULL, 0), + (1704362872680, 6, 'Pecker', 1704362871734, '126936953789743104', NULL, 0), + (1704362872681, 6, 'Pee', 1704362871734, '126936953789743104', NULL, 0), + (1704362872682, 6, 'Pen', 1704362871734, '126936953789743104', NULL, 0), + (1704362872683, 6, 'Pencil', 1704362871734, '126936953789743104', NULL, 0), + (1704362872684, 6, 'Penguin', 1704362871734, '126936953789743104', NULL, 0), + (1704362872685, 6, 'Penis', 1704362871734, '126936953789743104', NULL, 0), + (1704362872686, 6, 'Penny', 1704362871734, '126936953789743104', NULL, 0), + (1704362872687, 6, 'Pentagon', 1704362871734, '126936953789743104', NULL, 0), + (1704362872688, 6, 'Pepper', 1704362871734, '126936953789743104', NULL, 0), + (1704362872689, 6, 'Period', 1704362871734, '126936953789743104', NULL, 0), + (1704362872690, 6, 'Person', 1704362871734, '126936953789743104', NULL, 0), + (1704362872691, 6, 'Pew', 1704362871734, '126936953789743104', NULL, 0), + (1704362872692, 6, 'Pharmacist', 1704362871734, '126936953789743104', NULL, 0), + (1704362872693, 6, 'Philosopher', 1704362871734, '126936953789743104', NULL, 0), + (1704362872694, 6, 'Phoenix', 1704362871734, '126936953789743104', NULL, 0), + (1704362872695, 6, 'Photograph', 1704362871734, '126936953789743104', NULL, 0), + (1704362872696, 6, 'Piano', 1704362871734, '126936953789743104', NULL, 0), + (1704362872697, 6, 'Pickle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872698, 6, 'Picnic', 1704362871734, '126936953789743104', NULL, 0), + (1704362872699, 6, 'Pie', 1704362871734, '126936953789743104', NULL, 0), + (1704362872700, 6, 'Pig', 1704362871734, '126936953789743104', NULL, 0), + (1704362872701, 6, 'Pigpen', 1704362871734, '126936953789743104', NULL, 0), + (1704362872702, 6, 'Pillow', 1704362871734, '126936953789743104', NULL, 0), + (1704362872703, 6, 'Pillows', 1704362871734, '126936953789743104', NULL, 0), + (1704362872704, 6, 'Pilot', 1704362871734, '126936953789743104', NULL, 0), + (1704362872705, 6, 'Pimp', 1704362871734, '126936953789743104', NULL, 0), + (1704362872706, 6, 'Pin', 1704362871734, '126936953789743104', NULL, 0), + (1704362872707, 6, 'Pinch', 1704362871734, '126936953789743104', NULL, 0), + (1704362872708, 6, 'Pine', 1704362871734, '126936953789743104', NULL, 0), + (1704362872709, 6, 'Pink', 1704362871734, '126936953789743104', NULL, 0), + (1704362872710, 6, 'Pinwheel', 1704362871734, '126936953789743104', NULL, 0), + (1704362872711, 6, 'Pipe', 1704362871734, '126936953789743104', NULL, 0), + (1704362872712, 6, 'Pirate', 1704362871734, '126936953789743104', NULL, 0), + (1704362872713, 6, 'Pistol', 1704362871734, '126936953789743104', NULL, 0), + (1704362872714, 6, 'Pit', 1704362871734, '126936953789743104', NULL, 0), + (1704362872715, 6, 'Pitch', 1704362871734, '126936953789743104', NULL, 0), + (1704362872716, 6, 'Pitcher', 1704362871734, '126936953789743104', NULL, 0), + (1704362872717, 6, 'Pizza Sauce', 1704362871734, '126936953789743104', NULL, 0), + (1704362872718, 6, 'Pizza', 1704362871734, '126936953789743104', NULL, 0), + (1704362872719, 6, 'Plane', 1704362871734, '126936953789743104', NULL, 0), + (1704362872720, 6, 'Plastic', 1704362871734, '126936953789743104', NULL, 0), + (1704362872721, 6, 'Plate', 1704362871734, '126936953789743104', NULL, 0), + (1704362872722, 6, 'Platypus', 1704362871734, '126936953789743104', NULL, 0), + (1704362872723, 6, 'Play', 1704362871734, '126936953789743104', NULL, 0), + (1704362872724, 6, 'Player', 1704362871734, '126936953789743104', NULL, 0), + (1704362872725, 6, 'Playground', 1704362871734, '126936953789743104', NULL, 0), + (1704362872726, 6, 'Plot', 1704362871734, '126936953789743104', NULL, 0), + (1704362872727, 6, 'Plumber', 1704362871734, '126936953789743104', NULL, 0), + (1704362872728, 6, 'Pocket', 1704362871734, '126936953789743104', NULL, 0), + (1704362872729, 6, 'Poem', 1704362871734, '126936953789743104', NULL, 0), + (1704362872730, 6, 'Pogo Stick', 1704362871734, '126936953789743104', NULL, 0), + (1704362872731, 6, 'Point', 1704362871734, '126936953789743104', NULL, 0), + (1704362872732, 6, 'Poison', 1704362871734, '126936953789743104', NULL, 0), + (1704362872733, 6, 'Poker', 1704362871734, '126936953789743104', NULL, 0), + (1704362872734, 6, 'Pole', 1704362871734, '126936953789743104', NULL, 0), + (1704362872735, 6, 'Police', 1704362871734, '126936953789743104', NULL, 0), + (1704362872736, 6, 'Polish', 1704362871734, '126936953789743104', NULL, 0), + (1704362872737, 6, 'Polo', 1704362871734, '126936953789743104', NULL, 0), + (1704362872738, 6, 'Pool', 1704362871734, '126936953789743104', NULL, 0), + (1704362872739, 6, 'Poop', 1704362871734, '126936953789743104', NULL, 0), + (1704362872740, 6, 'Pop', 1704362871734, '126936953789743104', NULL, 0), + (1704362872741, 6, 'Popcorn', 1704362871734, '126936953789743104', NULL, 0), + (1704362872742, 6, 'Popsicle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872743, 6, 'Porch', 1704362871734, '126936953789743104', NULL, 0), + (1704362872744, 6, 'Pork', 1704362871734, '126936953789743104', NULL, 0), + (1704362872745, 6, 'Porn', 1704362871734, '126936953789743104', NULL, 0), + (1704362872746, 6, 'Port', 1704362871734, '126936953789743104', NULL, 0), + (1704362872747, 6, 'Positive', 1704362871734, '126936953789743104', NULL, 0), + (1704362872748, 6, 'Post', 1704362871734, '126936953789743104', NULL, 0), + (1704362872749, 6, 'Pot', 1704362871734, '126936953789743104', NULL, 0), + (1704362872750, 6, 'Potato', 1704362871734, '126936953789743104', NULL, 0), + (1704362872751, 6, 'Potter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872752, 6, 'Pound', 1704362871734, '126936953789743104', NULL, 0), + (1704362872753, 6, 'Powder', 1704362871734, '126936953789743104', NULL, 0), + (1704362872754, 6, 'Press', 1704362871734, '126936953789743104', NULL, 0), + (1704362872755, 6, 'Prick', 1704362871734, '126936953789743104', NULL, 0), + (1704362872756, 6, 'Princess', 1704362871734, '126936953789743104', NULL, 0), + (1704362872757, 6, 'Prison', 1704362871734, '126936953789743104', NULL, 0), + (1704362872758, 6, 'Prize', 1704362871734, '126936953789743104', NULL, 0), + (1704362872759, 6, 'Pro', 1704362871734, '126936953789743104', NULL, 0), + (1704362872760, 6, 'Professor', 1704362871734, '126936953789743104', NULL, 0), + (1704362872761, 6, 'Prostate', 1704362871734, '126936953789743104', NULL, 0), + (1704362872762, 6, 'Psychologist', 1704362871734, '126936953789743104', NULL, 0), + (1704362872763, 6, 'Pub', 1704362871734, '126936953789743104', NULL, 0), + (1704362872764, 6, 'Pucker', 1704362871734, '126936953789743104', NULL, 0), + (1704362872765, 6, 'Pumpkin', 1704362871734, '126936953789743104', NULL, 0), + (1704362872766, 6, 'Pupil', 1704362871734, '126936953789743104', NULL, 0), + (1704362872767, 6, 'Puppet', 1704362871734, '126936953789743104', NULL, 0), + (1704362872768, 6, 'Puppy', 1704362871734, '126936953789743104', NULL, 0), + (1704362872769, 6, 'Purple', 1704362871734, '126936953789743104', NULL, 0), + (1704362872770, 6, 'Purse', 1704362871734, '126936953789743104', NULL, 0), + (1704362872771, 6, 'Push', 1704362871734, '126936953789743104', NULL, 0), + (1704362872772, 6, 'Pussy', 1704362871734, '126936953789743104', NULL, 0), + (1704362872773, 6, 'Puzzle Piece', 1704362871734, '126936953789743104', NULL, 0), + (1704362872774, 6, 'Pyramid', 1704362871734, '126936953789743104', NULL, 0), + (1704362872775, 6, 'Quack', 1704362871734, '126936953789743104', NULL, 0), + (1704362872776, 6, 'Quarantine', 1704362871734, '126936953789743104', NULL, 0), + (1704362872777, 6, 'Quarter', 1704362871734, '126936953789743104', NULL, 0), + (1704362872778, 6, 'Queef', 1704362871734, '126936953789743104', NULL, 0), + (1704362872779, 6, 'Queen', 1704362871734, '126936953789743104', NULL, 0), + (1704362872780, 6, 'Queer', 1704362871734, '126936953789743104', NULL, 0), + (1704362872781, 6, 'Quiet', 1704362871734, '126936953789743104', NULL, 0), + (1704362872782, 6, 'Rabbit', 1704362871734, '126936953789743104', NULL, 0), + (1704362872783, 6, 'Race', 1704362871734, '126936953789743104', NULL, 0), + (1704362872784, 6, 'Rack', 1704362871734, '126936953789743104', NULL, 0), + (1704362872785, 6, 'Racket', 1704362871734, '126936953789743104', NULL, 0), + (1704362872786, 6, 'Radio', 1704362871734, '126936953789743104', NULL, 0), + (1704362872787, 6, 'Rail', 1704362871734, '126936953789743104', NULL, 0), + (1704362872788, 6, 'Rainbow', 1704362871734, '126936953789743104', NULL, 0), + (1704362872789, 6, 'Rainwater', 1704362871734, '126936953789743104', NULL, 0), + (1704362872790, 6, 'Ram', 1704362871734, '126936953789743104', NULL, 0), + (1704362872791, 6, 'Ranch', 1704362871734, '126936953789743104', NULL, 0), + (1704362872792, 6, 'Random', 1704362871734, '126936953789743104', NULL, 0), + (1704362872793, 6, 'Rat', 1704362871734, '126936953789743104', NULL, 0), + (1704362872794, 6, 'Rattle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872795, 6, 'Rave', 1704362871734, '126936953789743104', NULL, 0), + (1704362872796, 6, 'Ray', 1704362871734, '126936953789743104', NULL, 0), + (1704362872797, 6, 'Razor', 1704362871734, '126936953789743104', NULL, 0), + (1704362872798, 6, 'Record', 1704362871734, '126936953789743104', NULL, 0), + (1704362872799, 6, 'Rectum', 1704362871734, '126936953789743104', NULL, 0), + (1704362872800, 6, 'Recycle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872801, 6, 'Red', 1704362871734, '126936953789743104', NULL, 0), + (1704362872802, 6, 'Regret', 1704362871734, '126936953789743104', NULL, 0), + (1704362872803, 6, 'Reindeer', 1704362871734, '126936953789743104', NULL, 0), + (1704362872804, 6, 'Retail', 1704362871734, '126936953789743104', NULL, 0), + (1704362872805, 6, 'Revolution', 1704362871734, '126936953789743104', NULL, 0), + (1704362872806, 6, 'Rib', 1704362871734, '126936953789743104', NULL, 0), + (1704362872807, 6, 'Rice', 1704362871734, '126936953789743104', NULL, 0), + (1704362872808, 6, 'Rifle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872809, 6, 'Ring', 1704362871734, '126936953789743104', NULL, 0), + (1704362872810, 6, 'Ringleader', 1704362871734, '126936953789743104', NULL, 0), + (1704362872811, 6, 'Rip', 1704362871734, '126936953789743104', NULL, 0), + (1704362872812, 6, 'River', 1704362871734, '126936953789743104', NULL, 0), + (1704362872813, 6, 'Roach', 1704362871734, '126936953789743104', NULL, 0), + (1704362872814, 6, 'Road', 1704362871734, '126936953789743104', NULL, 0), + (1704362872815, 6, 'Robe', 1704362871734, '126936953789743104', NULL, 0), + (1704362872816, 6, 'Robin', 1704362871734, '126936953789743104', NULL, 0), + (1704362872817, 6, 'Robot', 1704362871734, '126936953789743104', NULL, 0), + (1704362872818, 6, 'Rock', 1704362871734, '126936953789743104', NULL, 0), + (1704362872819, 6, 'Rocket', 1704362871734, '126936953789743104', NULL, 0), + (1704362872820, 6, 'Rodeo', 1704362871734, '126936953789743104', NULL, 0), + (1704362872821, 6, 'Roll', 1704362871734, '126936953789743104', NULL, 0), + (1704362872822, 6, 'Roller Blade', 1704362871734, '126936953789743104', NULL, 0), + (1704362872823, 6, 'Roller Coaster', 1704362871734, '126936953789743104', NULL, 0), + (1704362872824, 6, 'Rome', 1704362871734, '126936953789743104', NULL, 0), + (1704362872825, 6, 'Roof', 1704362871734, '126936953789743104', NULL, 0), + (1704362872826, 6, 'Rookie', 1704362871734, '126936953789743104', NULL, 0), + (1704362872827, 6, 'Root', 1704362871734, '126936953789743104', NULL, 0), + (1704362872828, 6, 'Rope', 1704362871734, '126936953789743104', NULL, 0), + (1704362872829, 6, 'Rose', 1704362871734, '126936953789743104', NULL, 0), + (1704362872830, 6, 'Roulette', 1704362871734, '126936953789743104', NULL, 0), + (1704362872831, 6, 'Round', 1704362871734, '126936953789743104', NULL, 0), + (1704362872832, 6, 'Row', 1704362871734, '126936953789743104', NULL, 0), + (1704362872833, 6, 'Rubber', 1704362871734, '126936953789743104', NULL, 0), + (1704362872834, 6, 'Rug', 1704362871734, '126936953789743104', NULL, 0), + (1704362872835, 6, 'Ruler', 1704362871734, '126936953789743104', NULL, 0), + (1704362872836, 6, 'Russia', 1704362871734, '126936953789743104', NULL, 0), + (1704362872837, 6, 'Rust', 1704362871734, '126936953789743104', NULL, 0), + (1704362872838, 6, 'Sack', 1704362871734, '126936953789743104', NULL, 0), + (1704362872839, 6, 'Sad', 1704362871734, '126936953789743104', NULL, 0), + (1704362872840, 6, 'Saddle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872841, 6, 'Safe', 1704362871734, '126936953789743104', NULL, 0), + (1704362872842, 6, 'Sahara', 1704362871734, '126936953789743104', NULL, 0), + (1704362872843, 6, 'Sail', 1704362871734, '126936953789743104', NULL, 0), + (1704362872844, 6, 'Salad', 1704362871734, '126936953789743104', NULL, 0), + (1704362872845, 6, 'Saloon', 1704362871734, '126936953789743104', NULL, 0), + (1704362872846, 6, 'Salsa', 1704362871734, '126936953789743104', NULL, 0), + (1704362872847, 6, 'Salt and Pepper', 1704362871734, '126936953789743104', NULL, 0), + (1704362872848, 6, 'Salt', 1704362871734, '126936953789743104', NULL, 0), + (1704362872849, 6, 'Sand', 1704362871734, '126936953789743104', NULL, 0), + (1704362872850, 6, 'Sandcastle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872851, 6, 'Sandwich', 1704362871734, '126936953789743104', NULL, 0), + (1704362872852, 6, 'Santa', 1704362871734, '126936953789743104', NULL, 0), + (1704362872853, 6, 'Satellite', 1704362871734, '126936953789743104', NULL, 0), + (1704362872854, 6, 'Saturn', 1704362871734, '126936953789743104', NULL, 0), + (1704362872855, 6, 'Sauna', 1704362871734, '126936953789743104', NULL, 0), + (1704362872856, 6, 'Sausage', 1704362871734, '126936953789743104', NULL, 0), + (1704362872857, 6, 'Saw', 1704362871734, '126936953789743104', NULL, 0), + (1704362872858, 6, 'Scale', 1704362871734, '126936953789743104', NULL, 0), + (1704362872859, 6, 'Scarecrow', 1704362871734, '126936953789743104', NULL, 0), + (1704362872860, 6, 'Scared', 1704362871734, '126936953789743104', NULL, 0), + (1704362872861, 6, 'School Bus', 1704362871734, '126936953789743104', NULL, 0), + (1704362872862, 6, 'School', 1704362871734, '126936953789743104', NULL, 0), + (1704362872863, 6, 'Scientist', 1704362871734, '126936953789743104', NULL, 0), + (1704362872864, 6, 'Score', 1704362871734, '126936953789743104', NULL, 0), + (1704362872865, 6, 'Scorpion', 1704362871734, '126936953789743104', NULL, 0), + (1704362872866, 6, 'Scratch', 1704362871734, '126936953789743104', NULL, 0), + (1704362872867, 6, 'Scream', 1704362871734, '126936953789743104', NULL, 0), + (1704362872868, 6, 'Screen', 1704362871734, '126936953789743104', NULL, 0), + (1704362872869, 6, 'Screw', 1704362871734, '126936953789743104', NULL, 0), + (1704362872870, 6, 'Scroll', 1704362871734, '126936953789743104', NULL, 0), + (1704362872871, 6, 'Scuba Diver', 1704362871734, '126936953789743104', NULL, 0), + (1704362872872, 6, 'Seal', 1704362871734, '126936953789743104', NULL, 0), + (1704362872873, 6, 'Seashell', 1704362871734, '126936953789743104', NULL, 0), + (1704362872874, 6, 'Second', 1704362871734, '126936953789743104', NULL, 0), + (1704362872875, 6, 'Secretary', 1704362871734, '126936953789743104', NULL, 0), + (1704362872876, 6, 'Seed', 1704362871734, '126936953789743104', NULL, 0), + (1704362872877, 6, 'Seesaw', 1704362871734, '126936953789743104', NULL, 0), + (1704362872878, 6, 'Semen', 1704362871734, '126936953789743104', NULL, 0), + (1704362872879, 6, 'Server', 1704362871734, '126936953789743104', NULL, 0), + (1704362872880, 6, 'Sex', 1704362871734, '126936953789743104', NULL, 0), + (1704362872881, 6, 'Shadow', 1704362871734, '126936953789743104', NULL, 0), + (1704362872882, 6, 'Shaft', 1704362871734, '126936953789743104', NULL, 0), + (1704362872883, 6, 'Shakespeare', 1704362871734, '126936953789743104', NULL, 0), + (1704362872884, 6, 'Shallow', 1704362871734, '126936953789743104', NULL, 0), + (1704362872885, 6, 'Shame', 1704362871734, '126936953789743104', NULL, 0), + (1704362872886, 6, 'Shampoo', 1704362871734, '126936953789743104', NULL, 0), + (1704362872887, 6, 'Share', 1704362871734, '126936953789743104', NULL, 0), + (1704362872888, 6, 'Shark', 1704362871734, '126936953789743104', NULL, 0), + (1704362872889, 6, 'Shave', 1704362871734, '126936953789743104', NULL, 0), + (1704362872890, 6, 'Shed', 1704362871734, '126936953789743104', NULL, 0), + (1704362872891, 6, 'Sheep', 1704362871734, '126936953789743104', NULL, 0), + (1704362872892, 6, 'Sheet', 1704362871734, '126936953789743104', NULL, 0), + (1704362872893, 6, 'Shelf', 1704362871734, '126936953789743104', NULL, 0), + (1704362872894, 6, 'Shell', 1704362871734, '126936953789743104', NULL, 0), + (1704362872895, 6, 'Sherlock', 1704362871734, '126936953789743104', NULL, 0), + (1704362872896, 6, 'Sherwood', 1704362871734, '126936953789743104', NULL, 0), + (1704362872897, 6, 'Ship', 1704362871734, '126936953789743104', NULL, 0), + (1704362872898, 6, 'Shipwreck', 1704362871734, '126936953789743104', NULL, 0), + (1704362872899, 6, 'Shirt', 1704362871734, '126936953789743104', NULL, 0), + (1704362872900, 6, 'Shoe', 1704362871734, '126936953789743104', NULL, 0), + (1704362872901, 6, 'Shoelace', 1704362871734, '126936953789743104', NULL, 0), + (1704362872902, 6, 'Shoot', 1704362871734, '126936953789743104', NULL, 0), + (1704362872903, 6, 'Shop', 1704362871734, '126936953789743104', NULL, 0), + (1704362872904, 6, 'Shopping Cart', 1704362871734, '126936953789743104', NULL, 0), + (1704362872905, 6, 'Short', 1704362871734, '126936953789743104', NULL, 0), + (1704362872906, 6, 'Shorts', 1704362871734, '126936953789743104', NULL, 0), + (1704362872907, 6, 'Shot', 1704362871734, '126936953789743104', NULL, 0), + (1704362872908, 6, 'Shoulder', 1704362871734, '126936953789743104', NULL, 0), + (1704362872909, 6, 'Shower', 1704362871734, '126936953789743104', NULL, 0), + (1704362872910, 6, 'Shrew', 1704362871734, '126936953789743104', NULL, 0), + (1704362872911, 6, 'Sick', 1704362871734, '126936953789743104', NULL, 0), + (1704362872912, 6, 'Sign', 1704362871734, '126936953789743104', NULL, 0), + (1704362872913, 6, 'Silk', 1704362871734, '126936953789743104', NULL, 0), + (1704362872914, 6, 'Sin', 1704362871734, '126936953789743104', NULL, 0), + (1704362872915, 6, 'Singer', 1704362871734, '126936953789743104', NULL, 0), + (1704362872916, 6, 'Sink', 1704362871734, '126936953789743104', NULL, 0), + (1704362872917, 6, 'Sister', 1704362871734, '126936953789743104', NULL, 0), + (1704362872918, 6, 'Skank', 1704362871734, '126936953789743104', NULL, 0), + (1704362872919, 6, 'Skate', 1704362871734, '126936953789743104', NULL, 0), + (1704362872920, 6, 'Skateboard', 1704362871734, '126936953789743104', NULL, 0), + (1704362872921, 6, 'Skates', 1704362871734, '126936953789743104', NULL, 0), + (1704362872922, 6, 'Ski Goggles', 1704362871734, '126936953789743104', NULL, 0), + (1704362872923, 6, 'Ski', 1704362871734, '126936953789743104', NULL, 0), + (1704362872924, 6, 'Skid', 1704362871734, '126936953789743104', NULL, 0), + (1704362872925, 6, 'Skirt', 1704362871734, '126936953789743104', NULL, 0), + (1704362872926, 6, 'Skull', 1704362871734, '126936953789743104', NULL, 0), + (1704362872927, 6, 'Skyscraper', 1704362871734, '126936953789743104', NULL, 0), + (1704362872928, 6, 'Slam Dunk', 1704362871734, '126936953789743104', NULL, 0), + (1704362872929, 6, 'Sled', 1704362871734, '126936953789743104', NULL, 0), + (1704362872930, 6, 'Sleep', 1704362871734, '126936953789743104', NULL, 0), + (1704362872931, 6, 'Slide', 1704362871734, '126936953789743104', NULL, 0), + (1704362872932, 6, 'Sling', 1704362871734, '126936953789743104', NULL, 0), + (1704362872933, 6, 'Slip', 1704362871734, '126936953789743104', NULL, 0), + (1704362872934, 6, 'Slipper', 1704362871734, '126936953789743104', NULL, 0), + (1704362872935, 6, 'Sloth', 1704362871734, '126936953789743104', NULL, 0), + (1704362872936, 6, 'Slow', 1704362871734, '126936953789743104', NULL, 0), + (1704362872937, 6, 'Slug', 1704362871734, '126936953789743104', NULL, 0), + (1704362872938, 6, 'Slump', 1704362871734, '126936953789743104', NULL, 0), + (1704362872939, 6, 'Slut', 1704362871734, '126936953789743104', NULL, 0), + (1704362872940, 6, 'Smegma', 1704362871734, '126936953789743104', NULL, 0), + (1704362872941, 6, 'Smell', 1704362871734, '126936953789743104', NULL, 0), + (1704362872942, 6, 'Smile', 1704362871734, '126936953789743104', NULL, 0), + (1704362872943, 6, 'Smog', 1704362871734, '126936953789743104', NULL, 0), + (1704362872944, 6, 'Smoke', 1704362871734, '126936953789743104', NULL, 0), + (1704362872945, 6, 'Smoothie', 1704362871734, '126936953789743104', NULL, 0), + (1704362872946, 6, 'Smuggler', 1704362871734, '126936953789743104', NULL, 0), + (1704362872947, 6, 'Snag', 1704362871734, '126936953789743104', NULL, 0), + (1704362872948, 6, 'Snail', 1704362871734, '126936953789743104', NULL, 0), + (1704362872949, 6, 'Snake', 1704362871734, '126936953789743104', NULL, 0), + (1704362872950, 6, 'Snap', 1704362871734, '126936953789743104', NULL, 0), + (1704362872951, 6, 'Snatch', 1704362871734, '126936953789743104', NULL, 0), + (1704362872952, 6, 'Sneeze', 1704362871734, '126936953789743104', NULL, 0), + (1704362872953, 6, 'Sniff', 1704362871734, '126936953789743104', NULL, 0), + (1704362872954, 6, 'Snort', 1704362871734, '126936953789743104', NULL, 0), + (1704362872955, 6, 'Snow', 1704362871734, '126936953789743104', NULL, 0), + (1704362872956, 6, 'Snowflake', 1704362871734, '126936953789743104', NULL, 0), + (1704362872957, 6, 'Snowman', 1704362871734, '126936953789743104', NULL, 0), + (1704362872958, 6, 'Snuggle', 1704362871734, '126936953789743104', NULL, 0), + (1704362872959, 6, 'Soap', 1704362871734, '126936953789743104', NULL, 0), + (1704362872960, 6, 'Sock', 1704362871734, '126936953789743104', NULL, 0), + (1704362872961, 6, 'Socks', 1704362871734, '126936953789743104', NULL, 0), + (1704362872962, 6, 'Softballs', 1704362871734, '126936953789743104', NULL, 0), + (1704362872963, 6, 'Soldier', 1704362871734, '126936953789743104', NULL, 0), + (1704362872964, 6, 'Solo', 1704362871734, '126936953789743104', NULL, 0), + (1704362872965, 6, 'Song', 1704362871734, '126936953789743104', NULL, 0), + (1704362872966, 6, 'Sore', 1704362871734, '126936953789743104', NULL, 0), + (1704362872967, 6, 'Soul', 1704362871734, '126936953789743104', NULL, 0), + (1704362872968, 6, 'Sound', 1704362871734, '126936953789743104', NULL, 0), + (1704362872969, 6, 'Soup', 1704362871734, '126936953789743104', NULL, 0), + (1704362872970, 6, 'Space', 1704362871734, '126936953789743104', NULL, 0), + (1704362872971, 6, 'Spank', 1704362871734, '126936953789743104', NULL, 0), + (1704362872972, 6, 'Spare', 1704362871734, '126936953789743104', NULL, 0), + (1704362872973, 6, 'Speed', 1704362871734, '126936953789743104', NULL, 0), + (1704362872974, 6, 'Spell', 1704362871734, '126936953789743104', NULL, 0), + (1704362872975, 6, 'Sperm', 1704362871734, '126936953789743104', NULL, 0), + (1704362872976, 6, 'Sphinx', 1704362871734, '126936953789743104', NULL, 0), + (1704362872977, 6, 'Spice', 1704362871734, '126936953789743104', NULL, 0), + (1704362872978, 6, 'Spider Web', 1704362871734, '126936953789743104', NULL, 0), + (1704362872979, 6, 'Spider', 1704362871734, '126936953789743104', NULL, 0), + (1704362872980, 6, 'Spike', 1704362871734, '126936953789743104', NULL, 0), + (1704362872981, 6, 'Spine', 1704362871734, '126936953789743104', NULL, 0), + (1704362872982, 6, 'Spirit', 1704362871734, '126936953789743104', NULL, 0), + (1704362872983, 6, 'Spoon', 1704362871734, '126936953789743104', NULL, 0), + (1704362872984, 6, 'Spot', 1704362871734, '126936953789743104', NULL, 0), + (1704362872985, 6, 'Spray', 1704362871734, '126936953789743104', NULL, 0), + (1704362872986, 6, 'Spread', 1704362871734, '126936953789743104', NULL, 0), + (1704362872987, 6, 'Spring', 1704362871734, '126936953789743104', NULL, 0), + (1704362872988, 6, 'Sprinkler', 1704362871734, '126936953789743104', NULL, 0), + (1704362872989, 6, 'Spurs', 1704362871734, '126936953789743104', NULL, 0), + (1704362872990, 6, 'Spy', 1704362871734, '126936953789743104', NULL, 0), + (1704362872991, 6, 'Square', 1704362871734, '126936953789743104', NULL, 0), + (1704362872992, 6, 'Squash', 1704362871734, '126936953789743104', NULL, 0), + (1704362872993, 6, 'Squirrel', 1704362871734, '126936953789743104', NULL, 0), + (1704362872994, 6, 'Squirt', 1704362871734, '126936953789743104', NULL, 0), + (1704362872995, 6, 'St.patrick', 1704362871734, '126936953789743104', NULL, 0), + (1704362872996, 6, 'Stable', 1704362871734, '126936953789743104', NULL, 0), + (1704362872997, 6, 'Stadium', 1704362871734, '126936953789743104', NULL, 0), + (1704362872998, 6, 'Staff', 1704362871734, '126936953789743104', NULL, 0), + (1704362872999, 6, 'Stairs', 1704362871734, '126936953789743104', NULL, 0), + (1704362873000, 6, 'Stalker', 1704362871734, '126936953789743104', NULL, 0), + (1704362873001, 6, 'Stamp', 1704362871734, '126936953789743104', NULL, 0), + (1704362873002, 6, 'Standing', 1704362871734, '126936953789743104', NULL, 0), + (1704362873003, 6, 'Star', 1704362871734, '126936953789743104', NULL, 0), + (1704362873004, 6, 'State', 1704362871734, '126936953789743104', NULL, 0), + (1704362873005, 6, 'Steam', 1704362871734, '126936953789743104', NULL, 0), + (1704362873006, 6, 'Steamy', 1704362871734, '126936953789743104', NULL, 0), + (1704362873007, 6, 'Steel', 1704362871734, '126936953789743104', NULL, 0), + (1704362873008, 6, 'Step', 1704362871734, '126936953789743104', NULL, 0), + (1704362873009, 6, 'Stethoscope', 1704362871734, '126936953789743104', NULL, 0), + (1704362873010, 6, 'Stick', 1704362871734, '126936953789743104', NULL, 0), + (1704362873011, 6, 'Sticker', 1704362871734, '126936953789743104', NULL, 0), + (1704362873012, 6, 'Stiff', 1704362871734, '126936953789743104', NULL, 0), + (1704362873013, 6, 'Stiletto', 1704362871734, '126936953789743104', NULL, 0), + (1704362873014, 6, 'Stock', 1704362871734, '126936953789743104', NULL, 0), + (1704362873015, 6, 'Stockholder', 1704362871734, '126936953789743104', NULL, 0), + (1704362873016, 6, 'Stones', 1704362871734, '126936953789743104', NULL, 0), + (1704362873017, 6, 'Stool', 1704362871734, '126936953789743104', NULL, 0), + (1704362873018, 6, 'Stoplight', 1704362871734, '126936953789743104', NULL, 0), + (1704362873019, 6, 'Storm', 1704362871734, '126936953789743104', NULL, 0), + (1704362873020, 6, 'Story', 1704362871734, '126936953789743104', NULL, 0), + (1704362873021, 6, 'Stove', 1704362871734, '126936953789743104', NULL, 0), + (1704362873022, 6, 'Stowaway', 1704362871734, '126936953789743104', NULL, 0), + (1704362873023, 6, 'Straight', 1704362871734, '126936953789743104', NULL, 0), + (1704362873024, 6, 'Strap', 1704362871734, '126936953789743104', NULL, 0), + (1704362873025, 6, 'Straw', 1704362871734, '126936953789743104', NULL, 0), + (1704362873026, 6, 'Stream', 1704362871734, '126936953789743104', NULL, 0), + (1704362873027, 6, 'Street', 1704362871734, '126936953789743104', NULL, 0), + (1704362873028, 6, 'Strike', 1704362871734, '126936953789743104', NULL, 0), + (1704362873029, 6, 'String', 1704362871734, '126936953789743104', NULL, 0), + (1704362873030, 6, 'Strip', 1704362871734, '126936953789743104', NULL, 0), + (1704362873031, 6, 'Stripe', 1704362871734, '126936953789743104', NULL, 0), + (1704362873032, 6, 'Stripper', 1704362871734, '126936953789743104', NULL, 0), + (1704362873033, 6, 'Strobe', 1704362871734, '126936953789743104', NULL, 0), + (1704362873034, 6, 'Stud', 1704362871734, '126936953789743104', NULL, 0), + (1704362873035, 6, 'Student', 1704362871734, '126936953789743104', NULL, 0), + (1704362873036, 6, 'Sub', 1704362871734, '126936953789743104', NULL, 0), + (1704362873037, 6, 'Sugar', 1704362871734, '126936953789743104', NULL, 0), + (1704362873038, 6, 'Suit', 1704362871734, '126936953789743104', NULL, 0), + (1704362873039, 6, 'Sumo', 1704362871734, '126936953789743104', NULL, 0), + (1704362873040, 6, 'Sun', 1704362871734, '126936953789743104', NULL, 0), + (1704362873041, 6, 'Sunburn', 1704362871734, '126936953789743104', NULL, 0), + (1704362873042, 6, 'Superhero', 1704362871734, '126936953789743104', NULL, 0), + (1704362873043, 6, 'Swallow', 1704362871734, '126936953789743104', NULL, 0), + (1704362873044, 6, 'Swamp', 1704362871734, '126936953789743104', NULL, 0), + (1704362873045, 6, 'Sweat', 1704362871734, '126936953789743104', NULL, 0), + (1704362873046, 6, 'Swimmers', 1704362871734, '126936953789743104', NULL, 0), + (1704362873047, 6, 'Swimming Pool', 1704362871734, '126936953789743104', NULL, 0), + (1704362873048, 6, 'Swing', 1704362871734, '126936953789743104', NULL, 0), + (1704362873049, 6, 'Switch', 1704362871734, '126936953789743104', NULL, 0), + (1704362873050, 6, 'Sword', 1704362871734, '126936953789743104', NULL, 0), + (1704362873051, 6, 'Table', 1704362871734, '126936953789743104', NULL, 0), + (1704362873052, 6, 'Tablet', 1704362871734, '126936953789743104', NULL, 0), + (1704362873053, 6, 'Taboo', 1704362871734, '126936953789743104', NULL, 0), + (1704362873054, 6, 'Taco', 1704362871734, '126936953789743104', NULL, 0), + (1704362873055, 6, 'Tag', 1704362871734, '126936953789743104', NULL, 0), + (1704362873056, 6, 'Tail', 1704362871734, '126936953789743104', NULL, 0), + (1704362873057, 6, 'Talk', 1704362871734, '126936953789743104', NULL, 0), + (1704362873058, 6, 'Tank', 1704362871734, '126936953789743104', NULL, 0), + (1704362873059, 6, 'Tap', 1704362871734, '126936953789743104', NULL, 0), + (1704362873060, 6, 'Taste', 1704362871734, '126936953789743104', NULL, 0), + (1704362873061, 6, 'Tattoo', 1704362871734, '126936953789743104', NULL, 0), + (1704362873062, 6, 'Tavern', 1704362871734, '126936953789743104', NULL, 0), + (1704362873063, 6, 'Taxi Cab', 1704362871734, '126936953789743104', NULL, 0), + (1704362873064, 6, 'Tea', 1704362871734, '126936953789743104', NULL, 0), + (1704362873065, 6, 'Teabag', 1704362871734, '126936953789743104', NULL, 0), + (1704362873066, 6, 'Teacher', 1704362871734, '126936953789743104', NULL, 0), + (1704362873067, 6, 'Team', 1704362871734, '126936953789743104', NULL, 0), + (1704362873068, 6, 'Teapot', 1704362871734, '126936953789743104', NULL, 0), + (1704362873069, 6, 'Tear', 1704362871734, '126936953789743104', NULL, 0), + (1704362873070, 6, 'Tease', 1704362871734, '126936953789743104', NULL, 0), + (1704362873071, 6, 'Telephone', 1704362871734, '126936953789743104', NULL, 0), + (1704362873072, 6, 'Telescope', 1704362871734, '126936953789743104', NULL, 0), + (1704362873073, 6, 'Temple', 1704362871734, '126936953789743104', NULL, 0), + (1704362873074, 6, 'Tennis Shoes', 1704362871734, '126936953789743104', NULL, 0), + (1704362873075, 6, 'Tent', 1704362871734, '126936953789743104', NULL, 0), + (1704362873076, 6, 'Tequila', 1704362871734, '126936953789743104', NULL, 0), + (1704362873077, 6, 'Texas', 1704362871734, '126936953789743104', NULL, 0), + (1704362873078, 6, 'Theater', 1704362871734, '126936953789743104', NULL, 0), + (1704362873079, 6, 'Thief', 1704362871734, '126936953789743104', NULL, 0), + (1704362873080, 6, 'Threesome', 1704362871734, '126936953789743104', NULL, 0), + (1704362873081, 6, 'Throat', 1704362871734, '126936953789743104', NULL, 0), + (1704362873082, 6, 'Throne', 1704362871734, '126936953789743104', NULL, 0), + (1704362873083, 6, 'Thumb', 1704362871734, '126936953789743104', NULL, 0), + (1704362873084, 6, 'Thunder', 1704362871734, '126936953789743104', NULL, 0), + (1704362873085, 6, 'Tick', 1704362871734, '126936953789743104', NULL, 0), + (1704362873086, 6, 'Tickle', 1704362871734, '126936953789743104', NULL, 0), + (1704362873087, 6, 'Tie', 1704362871734, '126936953789743104', NULL, 0), + (1704362873088, 6, 'Tiger', 1704362871734, '126936953789743104', NULL, 0), + (1704362873089, 6, 'Time', 1704362871734, '126936953789743104', NULL, 0), + (1704362873090, 6, 'Tin', 1704362871734, '126936953789743104', NULL, 0), + (1704362873091, 6, 'Tint', 1704362871734, '126936953789743104', NULL, 0), + (1704362873092, 6, 'Tip', 1704362871734, '126936953789743104', NULL, 0), + (1704362873093, 6, 'Tipi', 1704362871734, '126936953789743104', NULL, 0), + (1704362873094, 6, 'Tiptoe', 1704362871734, '126936953789743104', NULL, 0), + (1704362873095, 6, 'Tired', 1704362871734, '126936953789743104', NULL, 0), + (1704362873096, 6, 'Tit', 1704362871734, '126936953789743104', NULL, 0), + (1704362873097, 6, 'Toast', 1704362871734, '126936953789743104', NULL, 0), + (1704362873098, 6, 'Toilet Paper', 1704362871734, '126936953789743104', NULL, 0), + (1704362873099, 6, 'Tokyo', 1704362871734, '126936953789743104', NULL, 0), + (1704362873100, 6, 'Tongue', 1704362871734, '126936953789743104', NULL, 0), + (1704362873101, 6, 'Tool', 1704362871734, '126936953789743104', NULL, 0), + (1704362873102, 6, 'Tooth', 1704362871734, '126936953789743104', NULL, 0), + (1704362873103, 6, 'Toothbrush', 1704362871734, '126936953789743104', NULL, 0), + (1704362873104, 6, 'Top', 1704362871734, '126936953789743104', NULL, 0), + (1704362873105, 6, 'Torch', 1704362871734, '126936953789743104', NULL, 0), + (1704362873106, 6, 'Tornado', 1704362871734, '126936953789743104', NULL, 0), + (1704362873107, 6, 'Torture', 1704362871734, '126936953789743104', NULL, 0), + (1704362873108, 6, 'Touch', 1704362871734, '126936953789743104', NULL, 0), + (1704362873109, 6, 'Touchdown', 1704362871734, '126936953789743104', NULL, 0), + (1704362873110, 6, 'Tournament', 1704362871734, '126936953789743104', NULL, 0), + (1704362873111, 6, 'Tower', 1704362871734, '126936953789743104', NULL, 0), + (1704362873112, 6, 'Toy', 1704362871734, '126936953789743104', NULL, 0), + (1704362873113, 6, 'Track', 1704362871734, '126936953789743104', NULL, 0), + (1704362873114, 6, 'Tractor', 1704362871734, '126936953789743104', NULL, 0), + (1704362873115, 6, 'Train', 1704362871734, '126936953789743104', NULL, 0), + (1704362873116, 6, 'Tramp', 1704362871734, '126936953789743104', NULL, 0), + (1704362873117, 6, 'Trash', 1704362871734, '126936953789743104', NULL, 0), + (1704362873118, 6, 'Treasure', 1704362871734, '126936953789743104', NULL, 0), + (1704362873119, 6, 'Treehouse', 1704362871734, '126936953789743104', NULL, 0), + (1704362873120, 6, 'Tree', 1704362871734, '126936953789743104', NULL, 0), + (1704362873121, 6, 'Triangle', 1704362871734, '126936953789743104', NULL, 0), + (1704362873122, 6, 'Trick', 1704362871734, '126936953789743104', NULL, 0), + (1704362873123, 6, 'Trim', 1704362871734, '126936953789743104', NULL, 0), + (1704362873124, 6, 'Trip', 1704362871734, '126936953789743104', NULL, 0), + (1704362873125, 6, 'Troll', 1704362871734, '126936953789743104', NULL, 0), + (1704362873126, 6, 'Trousers', 1704362871734, '126936953789743104', NULL, 0), + (1704362873127, 6, 'Truck', 1704362871734, '126936953789743104', NULL, 0), + (1704362873128, 6, 'Trunk', 1704362871734, '126936953789743104', NULL, 0), + (1704362873129, 6, 'Tuba', 1704362871734, '126936953789743104', NULL, 0), + (1704362873130, 6, 'Tube', 1704362871734, '126936953789743104', NULL, 0), + (1704362873131, 6, 'Tubesteak', 1704362871734, '126936953789743104', NULL, 0), + (1704362873132, 6, 'Tuna', 1704362871734, '126936953789743104', NULL, 0), + (1704362873133, 6, 'Tunnel', 1704362871734, '126936953789743104', NULL, 0), + (1704362873134, 6, 'Turd', 1704362871734, '126936953789743104', NULL, 0), + (1704362873135, 6, 'Turkey', 1704362871734, '126936953789743104', NULL, 0), + (1704362873136, 6, 'Turtle', 1704362871734, '126936953789743104', NULL, 0), + (1704362873137, 6, 'Tutor', 1704362871734, '126936953789743104', NULL, 0), + (1704362873138, 6, 'Tutu', 1704362871734, '126936953789743104', NULL, 0), + (1704362873139, 6, 'Tuxedo', 1704362871734, '126936953789743104', NULL, 0), + (1704362873140, 6, 'Tv', 1704362871734, '126936953789743104', NULL, 0), + (1704362873141, 6, 'Twig', 1704362871734, '126936953789743104', NULL, 0), + (1704362873142, 6, 'Type', 1704362871734, '126936953789743104', NULL, 0), + (1704362873143, 6, 'Udders', 1704362871734, '126936953789743104', NULL, 0), + (1704362873144, 6, 'Undertaker', 1704362871734, '126936953789743104', NULL, 0), + (1704362873145, 6, 'Unicorn', 1704362871734, '126936953789743104', NULL, 0), + (1704362873146, 6, 'University', 1704362871734, '126936953789743104', NULL, 0), + (1704362873147, 6, 'Upgrade', 1704362871734, '126936953789743104', NULL, 0), + (1704362873148, 6, 'Uranus', 1704362871734, '126936953789743104', NULL, 0), + (1704362873149, 6, 'Vacuum', 1704362871734, '126936953789743104', NULL, 0), + (1704362873150, 6, 'Valentine', 1704362871734, '126936953789743104', NULL, 0), + (1704362873151, 6, 'Vampire', 1704362871734, '126936953789743104', NULL, 0), + (1704362873152, 6, 'Van', 1704362871734, '126936953789743104', NULL, 0), + (1704362873153, 6, 'Vasectomy', 1704362871734, '126936953789743104', NULL, 0), + (1704362873154, 6, 'Vegas', 1704362871734, '126936953789743104', NULL, 0), + (1704362873155, 6, 'Vegetarian', 1704362871734, '126936953789743104', NULL, 0), + (1704362873156, 6, 'Vein', 1704362871734, '126936953789743104', NULL, 0), + (1704362873157, 6, 'Venus', 1704362871734, '126936953789743104', NULL, 0), + (1704362873158, 6, 'Vet', 1704362871734, '126936953789743104', NULL, 0), + (1704362873159, 6, 'Vibrator', 1704362871734, '126936953789743104', NULL, 0), + (1704362873160, 6, 'Video', 1704362871734, '126936953789743104', NULL, 0), + (1704362873161, 6, 'Viking', 1704362871734, '126936953789743104', NULL, 0), + (1704362873162, 6, 'Vinyl', 1704362871734, '126936953789743104', NULL, 0), + (1704362873163, 6, 'Violet', 1704362871734, '126936953789743104', NULL, 0), + (1704362873164, 6, 'Virgin', 1704362871734, '126936953789743104', NULL, 0), + (1704362873165, 6, 'Virus', 1704362871734, '126936953789743104', NULL, 0), + (1704362873166, 6, 'Vision', 1704362871734, '126936953789743104', NULL, 0), + (1704362873167, 6, 'Vitamin', 1704362871734, '126936953789743104', NULL, 0), + (1704362873168, 6, 'Vodka', 1704362871734, '126936953789743104', NULL, 0), + (1704362873169, 6, 'Volcano', 1704362871734, '126936953789743104', NULL, 0), + (1704362873170, 6, 'Volume', 1704362871734, '126936953789743104', NULL, 0), + (1704362873171, 6, 'Vomit', 1704362871734, '126936953789743104', NULL, 0), + (1704362873172, 6, 'Wad', 1704362871734, '126936953789743104', NULL, 0), + (1704362873173, 6, 'Wagon', 1704362871734, '126936953789743104', NULL, 0), + (1704362873174, 6, 'Waitress', 1704362871734, '126936953789743104', NULL, 0), + (1704362873175, 6, 'Wake', 1704362871734, '126936953789743104', NULL, 0), + (1704362873176, 6, 'Wall', 1704362871734, '126936953789743104', NULL, 0), + (1704362873177, 6, 'Wallet', 1704362871734, '126936953789743104', NULL, 0), + (1704362873178, 6, 'Walrus', 1704362871734, '126936953789743104', NULL, 0), + (1704362873179, 6, 'Wang', 1704362871734, '126936953789743104', NULL, 0), + (1704362873180, 6, 'War', 1704362871734, '126936953789743104', NULL, 0), + (1704362873181, 6, 'Washer', 1704362871734, '126936953789743104', NULL, 0), + (1704362873182, 6, 'Washington', 1704362871734, '126936953789743104', NULL, 0), + (1704362873183, 6, 'Waste', 1704362871734, '126936953789743104', NULL, 0), + (1704362873184, 6, 'Watch', 1704362871734, '126936953789743104', NULL, 0), + (1704362873185, 6, 'Water', 1704362871734, '126936953789743104', NULL, 0), + (1704362873186, 6, 'Watermelon', 1704362871734, '126936953789743104', NULL, 0), + (1704362873187, 6, 'Wave', 1704362871734, '126936953789743104', NULL, 0), + (1704362873188, 6, 'Wax', 1704362871734, '126936953789743104', NULL, 0), + (1704362873189, 6, 'Web', 1704362871734, '126936953789743104', NULL, 0), + (1704362873190, 6, 'Wedding Ring', 1704362871734, '126936953789743104', NULL, 0), + (1704362873191, 6, 'Wedding', 1704362871734, '126936953789743104', NULL, 0), + (1704362873192, 6, 'Weed', 1704362871734, '126936953789743104', NULL, 0), + (1704362873193, 6, 'Well', 1704362871734, '126936953789743104', NULL, 0), + (1704362873194, 6, 'Wench', 1704362871734, '126936953789743104', NULL, 0), + (1704362873195, 6, 'Werewolf', 1704362871734, '126936953789743104', NULL, 0), + (1704362873196, 6, 'Wet', 1704362871734, '126936953789743104', NULL, 0), + (1704362873197, 6, 'Whale', 1704362871734, '126936953789743104', NULL, 0), + (1704362873198, 6, 'Wheel', 1704362871734, '126936953789743104', NULL, 0), + (1704362873199, 6, 'Wheelchair', 1704362871734, '126936953789743104', NULL, 0), + (1704362873200, 6, 'Whip', 1704362871734, '126936953789743104', NULL, 0), + (1704362873201, 6, 'Whisk', 1704362871734, '126936953789743104', NULL, 0), + (1704362873202, 6, 'Whiskey', 1704362871734, '126936953789743104', NULL, 0), + (1704362873203, 6, 'Whistle', 1704362871734, '126936953789743104', NULL, 0), + (1704362873204, 6, 'White', 1704362871734, '126936953789743104', NULL, 0), + (1704362873205, 6, 'Wiener', 1704362871734, '126936953789743104', NULL, 0), + (1704362873206, 6, 'Wind', 1704362871734, '126936953789743104', NULL, 0), + (1704362873207, 6, 'Windmill', 1704362871734, '126936953789743104', NULL, 0), + (1704362873208, 6, 'Window', 1704362871734, '126936953789743104', NULL, 0), + (1704362873209, 6, 'Wine', 1704362871734, '126936953789743104', NULL, 0), + (1704362873210, 6, 'Wing', 1704362871734, '126936953789743104', NULL, 0), + (1704362873211, 6, 'Winter', 1704362871734, '126936953789743104', NULL, 0), + (1704362873212, 6, 'Wish', 1704362871734, '126936953789743104', NULL, 0), + (1704362873213, 6, 'Witch', 1704362871734, '126936953789743104', NULL, 0), + (1704362873214, 6, 'Wizard', 1704362871734, '126936953789743104', NULL, 0), + (1704362873215, 6, 'Wobble', 1704362871734, '126936953789743104', NULL, 0), + (1704362873216, 6, 'Wolf', 1704362871734, '126936953789743104', NULL, 0), + (1704362873217, 6, 'Wonderland', 1704362871734, '126936953789743104', NULL, 0), + (1704362873218, 6, 'Wood', 1704362871734, '126936953789743104', NULL, 0), + (1704362873219, 6, 'Wool', 1704362871734, '126936953789743104', NULL, 0), + (1704362873220, 6, 'Worm', 1704362871734, '126936953789743104', NULL, 0), + (1704362873221, 6, 'Wristwatch', 1704362871734, '126936953789743104', NULL, 0), + (1704362873222, 6, 'Yard', 1704362871734, '126936953789743104', NULL, 0), + (1704362873223, 6, 'Yellowstone', 1704362871734, '126936953789743104', NULL, 0), + (1704362873224, 6, 'Yo-yo', 1704362871734, '126936953789743104', NULL, 0), + (1704362873225, 6, 'Yolk', 1704362871734, '126936953789743104', NULL, 0), + (1704362873226, 6, 'Zero', 1704362871734, '126936953789743104', NULL, 0), + (1704362873227, 6, 'Zombie', 1704362871734, '126936953789743104', NULL, 0), + (1704362873228, 6, 'Zoo', 1704362871734, '126936953789743104', NULL, 0); diff --git a/package-lock.json b/package-lock.json index 499be78..efba794 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,6 +7,11 @@ "": { "name": "ncc-gen", "version": "0.0.0", + "dependencies": { + "discord-snowflake": "^2.0.0", + "jose": "^5.2.0", + "slash-create": "^6.0.2" + }, "devDependencies": { "@cloudflare/workers-types": "^4.20231218.0", "typescript": "^5.0.4", @@ -498,7 +503,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.0.tgz", "integrity": "sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==", - "dev": true, "engines": { "node": ">=14" } @@ -685,6 +689,14 @@ } } }, + "node_modules/discord-snowflake": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/discord-snowflake/-/discord-snowflake-2.0.0.tgz", + "integrity": "sha512-MFWier0d78ajvk1lAXUCm7wbNnY2bD7/rqvtemuhoebkBBS9AnA0OwQI7SpYqiy/01GR1raLPTsIOwWCj8Pb+w==", + "engines": { + "node": ">=18" + } + }, "node_modules/esbuild": { "version": "0.17.19", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", @@ -740,6 +752,11 @@ "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", "dev": true }, + "node_modules/eventemitter3": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", + "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==" + }, "node_modules/exit-hook": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-2.2.1.tgz", @@ -848,6 +865,19 @@ "node": ">=0.12.0" } }, + "node_modules/jose": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/jose/-/jose-5.2.0.tgz", + "integrity": "sha512-oW3PCnvyrcm1HMvGTzqjxxfnEs9EoFOFWi2HsEGhlFVOXxTE3K9GKWVMFoFw06yPUqwpvEWic1BmtUZBI/tIjw==", + "funding": { + "url": "https://github.com/sponsors/panva" + } + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==" + }, "node_modules/magic-string": { "version": "0.25.9", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", @@ -1034,6 +1064,35 @@ "node": ">=10" } }, + "node_modules/slash-create": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/slash-create/-/slash-create-6.0.2.tgz", + "integrity": "sha512-V2gqs7Ov3C8hjS2aODwzGUM/4WqpRiNXSPh69Bk3soyL7Kvkc/75HfwOgz9fTNNU+H/u5EMtvjR4hJgey0HKHA==", + "dependencies": { + "eventemitter3": "^5.0.1", + "lodash.isequal": "^4.5.0", + "tweetnacl": "^1.0.3", + "undici": "^5.28.2" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/Snazzah" + }, + "peerDependencies": { + "express": "^4", + "fastify": "^3 || ^4" + }, + "peerDependenciesMeta": { + "express": { + "optional": true + }, + "fastify": { + "optional": true + } + } + }, "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -1088,6 +1147,11 @@ "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", "dev": true }, + "node_modules/tweetnacl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" + }, "node_modules/typescript": { "version": "5.3.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", @@ -1105,7 +1169,6 @@ "version": "5.28.2", "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.2.tgz", "integrity": "sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==", - "dev": true, "dependencies": { "@fastify/busboy": "^2.0.0" }, diff --git a/package.json b/package.json index d3a60ce..b2afe40 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { - "name": "ncc-gen", - "version": "0.0.0", + "name": "vore-scenario-gen", + "version": "1.0.0", "private": true, "scripts": { "deploy": "wrangler deploy", @@ -11,5 +11,9 @@ "@cloudflare/workers-types": "^4.20231218.0", "typescript": "^5.0.4", "wrangler": "^3.0.0" + }, + "dependencies": { + "discord-snowflake": "^2.0.0", + "slash-create": "^6.0.2" } } diff --git a/src/commands.ts b/src/commands.ts new file mode 100644 index 0000000..1479e67 --- /dev/null +++ b/src/commands.ts @@ -0,0 +1,376 @@ +import { CommandContext, CommandOptionType, ComponentContext, SlashCommand, type SlashCreator } from 'slash-create/web'; +import { + calculateUnlockedValues, + DELETE_ID, + DONE_ID, + generateErrorMessageFor, + generateFieldFor, + generateMessageFor, + generateValuesFor, + getEmbedFrom, + loadEmbed, + populateLocksFor, + REROLL_ID, + RollTableNames, + SELECT_ID, + selectUnlockedFrom +} from './generated.js'; +import { type DbAccess, DeleteResult, UpdateResult } from './dbAccess.js'; +import { isTable, RollTableOrder, ValueAccess } from './rolltable.js'; +import { getTimestamp, isSnowflake, type Snowflake } from 'discord-snowflake'; + +export class ResponseCommand extends SlashCommand { + private readonly db: DbAccess + private readonly baseUrl: string; + + constructor(creator: SlashCreator, db: DbAccess, baseUrl: string, forGuilds?: Snowflake|Snowflake[]) { + super(creator, { + name: "response", + description: "Modifies the responses available in the generator.", + nsfw: false, + guildIDs: forGuilds, + dmPermission: true, + options: [ + { + type: CommandOptionType.SUB_COMMAND, + name: "add", + description: "Adds a new response to the generator.", + options: [ + { + type: CommandOptionType.INTEGER, + name: "table", + description: "The table to insert the response into.", + choices: RollTableOrder.map(v => ({name: RollTableNames[v], value: v})), + required: true, + }, + { + type: CommandOptionType.STRING, + name: "text", + description: "The text to use as the response.", + required: true, + } + ] + }, + { + type: CommandOptionType.SUB_COMMAND, + name: "list", + description: "Lists responses that will appear in /generate in the current context." + }, + { + type: CommandOptionType.SUB_COMMAND, + name: "edit", + description: "Modifies a response that was previously created.", + options: [ + { + type: CommandOptionType.INTEGER, + name: "table", + description: "The table to update the response from.", + choices: RollTableOrder.map(v => ({name: RollTableNames[v], value: v})), + required: true, + }, + { + type: CommandOptionType.STRING, + name: "old_text", + description: "The text of the response to edit.", + required: true, + }, + { + type: CommandOptionType.STRING, + name: "new_text", + description: "The text to replace the response with.", + required: true, + } + ] + }, + { + type: CommandOptionType.SUB_COMMAND, + name: "delete", + description: "Deletes a response that was previously created.", + options: [ + { + type: CommandOptionType.INTEGER, + name: "table", + description: "The table to delete the response from.", + choices: RollTableOrder.map(v => ({name: RollTableNames[v], value: v})), + required: true, + }, + { + type: CommandOptionType.STRING, + name: "text", + description: "The text of the response to delete.", + required: true, + }, + ] + }, + ] + }); + this.baseUrl = baseUrl + this.db = db + } + + async run(ctx: CommandContext): Promise { + switch (ctx.subcommands[0]) { + case "add": + try { + await this.onAdd(ctx) + } catch (e) { + await ctx.send(generateErrorMessageFor(e, "add a new response")) + } + break + case "list": + try { + await this.onList(ctx) + } catch (e) { + await ctx.send(generateErrorMessageFor(e, "get the list URL")) + } + break + case "edit": + try { + await this.onEdit(ctx) + } catch (e) { + await ctx.send(generateErrorMessageFor(e, "edit a response")) + } + break + case "delete": + try { + await this.onDelete(ctx) + } catch (e) { + await ctx.send(generateErrorMessageFor(e, "delete a response")) + } + break + default: + await ctx.send(generateErrorMessageFor(Error("I don't know what command you want"), "manage responses")) + break + } + } + + private async onAdd(ctx: CommandContext): Promise { + const guildId = ctx.guildID ?? null + const userId = ctx.user.id + const id = ctx.interactionID + if (!isSnowflake(id)) { + throw Error("the snowflake wasn't a snowflake") + } + const timestamp = getTimestamp(id) + const table = ctx.options['add']['table'] + if (!isTable(table)) { + throw Error(`there's no table number ${table}`) + } + const text = ctx.options['add']['text'] + const { timestamp: insertedTimestamp, access, inserted } = await this.db.putResponse(timestamp, table, text, userId, guildId, guildId === null ? ValueAccess.CreatorDM : ValueAccess.Server) + + await ctx.send({ + embeds: [{ + title: `${inserted ? 'Your new' : 'An existing'}${access === ValueAccess.Global ? " global" : ""} response`, + fields: [generateFieldFor(table, text)], + timestamp: new Date(insertedTimestamp), + }], + ephemeral: !inserted, + }) + } + + private async onList(ctx: CommandContext) { + if (ctx.guildID) { + await ctx.send({ + embeds: [{ + title: `Response list for this server`, + description: "Shows all global and server-local responses.", + url: `${this.baseUrl}/responses?server=${ctx.guildID}`, + }] + }) + } else { + await ctx.send({ + embeds: [{ + title: `Response list for DMs`, + description: "It's not supported right now, so please just hang tight." + }] + }) + } + } + + private async onEdit(ctx: CommandContext): Promise { + const guildId = ctx.guildID ?? null + const userId = ctx.user.id + const id = ctx.interactionID + if (!isSnowflake(id)) { + throw Error("the snowflake wasn't a snowflake") + } + const timestamp = getTimestamp(id) + const table = ctx.options['edit']['table'] + if (!isTable(table)) { + throw Error(`there's no table number ${table}`) + } + const oldText = ctx.options['edit']['old_text'] + const newText = ctx.options['edit']['new_text'] + const result = await this.db.updateResponse(timestamp, table, oldText, newText, userId, guildId, guildId === null ? ValueAccess.CreatorDM : ValueAccess.Server) + switch (result.result) { + case UpdateResult.Updated: + await ctx.send({ + embeds: [{ + title: `Your updated response`, + fields: [generateFieldFor(table, oldText), generateFieldFor(table, newText)], + timestamp: new Date(timestamp).toISOString() + }], + }) + break + case UpdateResult.NewConflict: + await ctx.send({ + embeds: [{ + title: `An existing${result.access === ValueAccess.Global ? " global" : ""} response`, + fields: [generateFieldFor(table, newText)], + timestamp: new Date(result.timestamp).toISOString(), + }], + ephemeral: true, + }) + break + case UpdateResult.NoOldText: + await ctx.send({ + embeds: [{ + title: `A nonexistent response`, + fields: [generateFieldFor(table, oldText)], + }], + ephemeral: true, + }) + break + case UpdateResult.OldGlobal: + await ctx.send({ + embeds: [{ + title: `An uneditable global response`, + fields: [generateFieldFor(table, oldText)], + }], + ephemeral: true, + }) + break + } + } + + private async onDelete(ctx: CommandContext): Promise { + const guildId = ctx.guildID ?? null + const userId = ctx.user.id + const id = ctx.interactionID + if (!isSnowflake(id)) { + throw Error("the snowflake wasn't a snowflake") + } + const timestamp = getTimestamp(id) + const table = ctx.options['delete']['table'] + if (!isTable(table)) { + throw Error(`there's no table number ${table}`) + } + const text = ctx.options['delete']['text'] + const result = await this.db.deleteResponse(table, text, userId, guildId, guildId === null ? ValueAccess.CreatorDM : ValueAccess.Server) + switch (result.result) { + case DeleteResult.Deleted: + await ctx.send({ + embeds: [{ + title: 'Your deleted response', + fields: [generateFieldFor(table, text)], + timestamp: new Date(result.timestamp).toISOString(), + }] + }) + break + case DeleteResult.OldGlobal: + await ctx.send({ + embeds: [{ + title: 'An undeletable global response', + fields: [generateFieldFor(table, text)], + timestamp: new Date(result.timestamp).toISOString(), + }], + ephemeral: true + }) + break + case DeleteResult.NoOldText: + await ctx.send({ + embeds: [{ + title: 'A nonexistent response', + fields: [generateFieldFor(table, text)], + }], + ephemeral: true + }) + break + } + } +} + +export class GenerateCommand extends SlashCommand { + private readonly db: DbAccess + + constructor(creator: SlashCreator, db: DbAccess, forGuilds?: Snowflake|Snowflake[]) { + super(creator, { + name: "generate", + description: "Generates a new scenario to play with and sends it to the current channel.", + nsfw: false, + dmPermission: true, + guildIDs: forGuilds, + throttling: { + duration: 5, + usages: 1, + } + }); + this.db = db + if (!forGuilds) { + creator.registerGlobalComponent(DONE_ID, this.onDone.bind(this)) + creator.registerGlobalComponent(REROLL_ID, this.onReroll.bind(this)) + creator.registerGlobalComponent(SELECT_ID, this.onSelect.bind(this)) + creator.registerGlobalComponent(DELETE_ID, this.onDelete.bind(this)) + } + } + + async run(ctx: CommandContext): Promise { + try { + const tables = calculateUnlockedValues() + const responses = await (ctx.guildID + ? this.db.getResponsesInServer(ctx.guildID) + : this.db.getResponsesInDMWith(ctx.user.id)) + const values = generateValuesFor(tables, responses) + const locks = populateLocksFor(values) + await ctx.send(generateMessageFor(values, locks)) + } catch (e) { + await ctx.send(generateErrorMessageFor(e, "generate a scenario for you")) + } + } + + async onSelect(ctx: ComponentContext): Promise { + try { + const oldEmbed = getEmbedFrom(ctx.message) + const {values, locked: oldLocks} = loadEmbed(oldEmbed) + const newLocks = selectUnlockedFrom(ctx.values, oldLocks) + await ctx.editParent(generateMessageFor(values, newLocks)) + } catch (e) { + await ctx.send(generateErrorMessageFor(e, "change the selected components")) + } + } + + async onDone(ctx: ComponentContext): Promise { + try { + const oldEmbed = getEmbedFrom(ctx.message) + const { values } = loadEmbed(oldEmbed) + await ctx.editParent(generateMessageFor(values, undefined)) + } catch (e) { + await ctx.send(generateErrorMessageFor(e, "finish this scenario")) + } + } + + async onReroll(ctx: ComponentContext): Promise { + try { + const oldEmbed = getEmbedFrom(ctx.message) + const { values: oldValues, locked: locks } = loadEmbed(oldEmbed) + const selected = calculateUnlockedValues(oldValues, locks) + const responses = await (ctx.guildID + ? this.db.getResponsesInServer(ctx.guildID) + : this.db.getResponsesInDMWith(ctx.user.id)) + const newValues = generateValuesFor(selected, responses, oldValues) + await ctx.editParent(generateMessageFor(newValues, locks)) + } catch (e) { + await ctx.send(generateErrorMessageFor(e, "reroll this scenario")) + throw e + } + } + + async onDelete(ctx: ComponentContext): Promise { + try { + await ctx.delete(ctx.messageID) + } catch (e) { + await ctx.send(generateErrorMessageFor(e, "delete this scenario")) + } + } +} diff --git a/src/dbAccess.ts b/src/dbAccess.ts new file mode 100644 index 0000000..0832a61 --- /dev/null +++ b/src/dbAccess.ts @@ -0,0 +1,180 @@ +import { type RollableTables, RollTable, RollTableOrder, ValueAccess } from './rolltable.js'; + +interface DbResponse { + tableId: RollTable, + text: string, +} + +export enum UpdateResult { + Updated = 0, + NewConflict = 1, + OldGlobal = 2, + NoOldText = 3, +} + +export enum DeleteResult { + Deleted = 0, + OldGlobal = 2, + NoOldText = 3, +} + +function buildRollableTables(responses: DbResponse[]): RollableTables { + const out: {[key in RollTable]?: string[]} = {} + for (const table of RollTableOrder) { + out[table] = [] + } + for (const { tableId, text } of responses) { + out[tableId]?.push(text) + } + return out as RollableTables +} + +export class DbAccess { + private readonly getResponsesInServerQuery: D1PreparedStatement + private readonly getResponsesInDMQuery: D1PreparedStatement; + private readonly putResponseQuery: D1PreparedStatement; + private readonly checkResponseAlreadyExistsQuery: D1PreparedStatement; + private readonly getResponsesGlobal: D1PreparedStatement; + private readonly updateResponseQuery: D1PreparedStatement; + private readonly deleteResponseQuery: D1PreparedStatement; + + constructor(db: D1Database) { + this.getResponsesGlobal = db.prepare( + `SELECT DISTINCT tableId, text FROM responses + WHERE access = ${ValueAccess.Global}`) + this.getResponsesInServerQuery = db.prepare( + `SELECT DISTINCT tableId, text FROM responses + WHERE access = ${ValueAccess.Global} + OR (access = ${ValueAccess.Server} AND serverSnowflake = ?);`) + this.getResponsesInDMQuery = db.prepare( + `SELECT DISTINCT tableId, text FROM responses + WHERE access = ${ValueAccess.Global} + OR (access = ${ValueAccess.CreatorDM} AND userSnowflake = ?);`) + this.putResponseQuery = db.prepare( + `INSERT OR IGNORE INTO responses (id, tableId, text, timestamp, userSnowflake, serverSnowflake, access) VALUES (?, ?, ?, ?, ?, ?, ?) RETURNING timestamp, access;`) + this.updateResponseQuery = db.prepare( + `UPDATE responses SET text = ?3, timestamp = ?4, userSnowflake = ?5, serverSnowflake = ?6 + WHERE tableId = ?1 AND text = ?2 + AND ((?7 = ${ValueAccess.CreatorDM} AND access = ${ValueAccess.CreatorDM} AND userSnowflake = ?5) + OR (?7 = ${ValueAccess.Server} AND access = ${ValueAccess.Server} AND serverSnowflake = ?6)) + RETURNING timestamp, access;`) + this.deleteResponseQuery = db.prepare( + `DELETE FROM responses + WHERE tableId = ?1 AND text = ?2 + AND ((?5 = ${ValueAccess.CreatorDM} AND access = ${ValueAccess.CreatorDM} AND userSnowflake = ?3) + OR (?5 = ${ValueAccess.Server} AND access = ${ValueAccess.Server} AND serverSnowflake = ?4)) + RETURNING timestamp, access;`) + this.checkResponseAlreadyExistsQuery = db.prepare( + `SELECT timestamp, access FROM responses + WHERE tableId = ?1 AND text = ?2 + AND (access = ${ValueAccess.Global} + OR (?3 = ${ValueAccess.CreatorDM} AND access = ${ValueAccess.CreatorDM} AND userSnowflake = ?4) + OR (?3 = ${ValueAccess.Server} AND access = ${ValueAccess.Server} AND serverSnowflake = ?4));`) + } + + async getGlobalResponses(): Promise { + const {results} = await this.getResponsesGlobal.all() + return buildRollableTables(results) + } + + async getResponsesInServer(inServerSnowflake: string): Promise { + const statement = this.getResponsesInServerQuery.bind(inServerSnowflake) + const {results} = await statement.all() + return buildRollableTables(results) + } + + async getResponsesInDMWith(withUserSnowflake: string): Promise { + const statement = this.getResponsesInDMQuery.bind(withUserSnowflake) + const {results} = await statement.all() + return buildRollableTables(results) + } + + async putResponse(requestTimestamp: number, table: RollTable, text: string, fromUserSnowflake: string, inServerSnowflake: string|null, access?: ValueAccess): Promise<{ + timestamp: number, + access: ValueAccess, + inserted: boolean + }> { + const effectiveAccess = access ?? (inServerSnowflake ? ValueAccess.Server : ValueAccess.CreatorDM) + const relevantSnowflake = access === ValueAccess.Server ? inServerSnowflake : access === ValueAccess.CreatorDM ? fromUserSnowflake : null + const existingResponseStatement = this.checkResponseAlreadyExistsQuery.bind(table, text, effectiveAccess, relevantSnowflake) + const existingResponse = await existingResponseStatement.first<{timestamp: number, access: ValueAccess}>() + if (existingResponse) { + return { + timestamp: existingResponse.timestamp, + access: existingResponse.access, + inserted: false, + } + } + const statement = this.putResponseQuery.bind( + requestTimestamp, table, text, requestTimestamp, fromUserSnowflake, inServerSnowflake, effectiveAccess) + const result = await statement.first<{timestamp: number, access: ValueAccess}>() + if (!result) { + throw Error("no response from insert") + } + return { + timestamp: result.timestamp, + access: result.access, + inserted: true + } + } + + async updateResponse(timestamp: number, table: RollTable, oldText: string, newText: string, userId: string, guildId: string | null, access?: ValueAccess): Promise<{result: UpdateResult.NoOldText|UpdateResult.Updated} | {result: UpdateResult.NewConflict, timestamp: number, access: ValueAccess} | {result: UpdateResult.OldGlobal, timestamp: number, access: ValueAccess.Global}> { + const effectiveAccess = access ?? (guildId ? ValueAccess.Server : ValueAccess.CreatorDM) + const relevantSnowflake = access === ValueAccess.Server ? guildId : access === ValueAccess.CreatorDM ? userId : null + const existingOldResponseStatement = this.checkResponseAlreadyExistsQuery.bind(table, oldText, effectiveAccess, relevantSnowflake) + const existingOldResponse = await existingOldResponseStatement.first<{timestamp: number, access: ValueAccess}>() + if (!existingOldResponse) { + return { + result: UpdateResult.NoOldText + } + } else if (existingOldResponse.access === ValueAccess.Global) { + return { + timestamp: existingOldResponse.timestamp, + access: existingOldResponse.access, + result: UpdateResult.OldGlobal, + } + } + const existingNewResponseStatement = this.checkResponseAlreadyExistsQuery.bind(table, newText, effectiveAccess, relevantSnowflake) + const existingNewResponse = await existingNewResponseStatement.first<{timestamp: number, access: ValueAccess}>() + if (existingNewResponse) { + return { + result: UpdateResult.NewConflict, + timestamp: existingNewResponse.timestamp, + access: existingNewResponse.access, + } + } + const statement = this.updateResponseQuery.bind( + table, oldText, newText, timestamp, userId, guildId, effectiveAccess) + await statement.run() + return {result: UpdateResult.Updated} + } + + async deleteResponse(table: RollTable, text: string, userId: string, guildId: string | null, access?: ValueAccess): Promise< + {result: DeleteResult.Deleted, timestamp: number, access: ValueAccess} | + {result: DeleteResult.NoOldText} | + {result: DeleteResult.OldGlobal, timestamp: number, access: ValueAccess.Global} + > { + const effectiveAccess = access ?? (guildId ? ValueAccess.Server : ValueAccess.CreatorDM) + const relevantSnowflake = access === ValueAccess.Server ? guildId : access === ValueAccess.CreatorDM ? userId : null + const existingOldResponseStatement = this.checkResponseAlreadyExistsQuery.bind(table, text, effectiveAccess, relevantSnowflake) + const existingOldResponse = await existingOldResponseStatement.first<{timestamp: number, access: ValueAccess}>() + if (!existingOldResponse) { + return { + result: DeleteResult.NoOldText + } + } else if (existingOldResponse.access === ValueAccess.Global) { + return { + timestamp: existingOldResponse.timestamp, + access: existingOldResponse.access, + result: DeleteResult.OldGlobal, + } + } + const statement = this.deleteResponseQuery.bind( + table, text, userId, guildId, effectiveAccess) + const deleted = await statement.first<{timestamp: number, access: ValueAccess}>() + if (!deleted) { + throw Error("no response from delete") + } + return {result: DeleteResult.Deleted, timestamp: deleted.timestamp, access: deleted.access} + } +} diff --git a/src/generated.ts b/src/generated.ts new file mode 100644 index 0000000..1e0b091 --- /dev/null +++ b/src/generated.ts @@ -0,0 +1,233 @@ +import { type RollableTables, rollOn, RollTable, RollTableOrder } from './rolltable.js'; +import { + ButtonStyle, + type ComponentActionRow, + type ComponentButton, + type ComponentSelectMenu, + type ComponentSelectOption, + ComponentType, + EmbedField, + MessageEmbed, type MessageEmbedOptions, type MessageOptions +} from 'slash-create/web'; + +export type ComponentValues = { [key in RollTable]?: string } +export type ComponentLocks = { [Key in RollTable]?: boolean } + +export interface GeneratedMessage { + values: ComponentValues + locked?: ComponentLocks +} + +export const RollTableEmoji = { + [RollTable.Setting]: '\u{1f3d9}\ufe0f', + [RollTable.Theme]: '\u{1f4d4}', + [RollTable.Start]: '\u25b6\ufe0f', + [RollTable.Challenge]: '\u{1f613}', + [RollTable.Twist]: '\u{1f500}', + [RollTable.Focus]: '\u{1f444}', + [RollTable.Word]: '\u{2728}' +} as const satisfies {readonly [key in RollTable]: string} + +export const RollTableEmbedTitles = { + [RollTable.Setting]: 'The action takes place...', + [RollTable.Theme]: 'The encounter is themed around...', + [RollTable.Start]: 'The action begins when...', + [RollTable.Challenge]: 'Things are more difficult because...', + [RollTable.Twist]: 'Partway through, unexpectedly...', + [RollTable.Focus]: 'The vore scene is focused on...', + [RollTable.Word]: 'The word of the day is...' +} as const satisfies {readonly [key in RollTable]: string} + +export const RollTableNames = { + [RollTable.Setting]: 'Setting', + [RollTable.Theme]: 'Theme', + [RollTable.Start]: 'Inciting Incident', + [RollTable.Challenge]: 'Challenge', + [RollTable.Twist]: 'Twist', + [RollTable.Focus]: 'Vore Scene Focus', + [RollTable.Word]: 'Word of the Day' +} as const satisfies {readonly [key in RollTable]: string} + + +export const RollTableEmbedsReversed = { + "\u{1f3d9}\ufe0f The action takes place...": RollTable.Setting, + "\u{1f4d4} The encounter is themed around...": RollTable.Theme, + "\u25b6\ufe0f The action begins when...": RollTable.Start, + "\u{1f613} Things are more difficult because...": RollTable.Challenge, + "\u{1f500} Partway through, unexpectedly...": RollTable.Twist, + "\u{1f444} The vore scene is focused on...": RollTable.Focus, + "\u{2728} The word of the day is...": RollTable.Word, +} as const satisfies {readonly [key in RollTable as `${typeof RollTableEmoji[key]} ${typeof RollTableEmbedTitles[key]}`]: key} & {[other: string]: RollTable} + +export function calculateUnlockedValues(original?: ComponentValues|undefined, locks?: ComponentLocks|undefined): RollTable[] { + if (!original && !locks) { + return RollTableOrder + } + const existingItems = original ? RollTableOrder.filter(v => typeof original[v] !== "undefined") : RollTableOrder + return locks ? existingItems.filter(v => locks[v] !== true) : existingItems +} + +export function generateValuesFor(selected: readonly RollTable[], tables: RollableTables, original: ComponentValues = {}): ComponentValues { + const result: ComponentValues = Object.assign({}, original) + for (const table of selected) { + result[table] = rollOn(table, tables) + } + return result +} + +export const LOCK_SUFFIX = " \u{1f512}" +export const UNLOCK_SUFFIX = " \u{1f513}" + +export function generateFieldFor(field: RollTable, value: string, lock: boolean|null = null) { + return { + name: RollTableEmoji[field] + " " + RollTableEmbedTitles[field] + (lock !== null ? (lock ? LOCK_SUFFIX : UNLOCK_SUFFIX) : ""), + value, + } +} + +export function generateEmbedFor(values: ComponentValues, locks: ComponentLocks|undefined): MessageEmbedOptions { + const fields: EmbedField[] = [] + const usableLocks = locks ?? {} + for (const field of RollTableOrder) { + const value = values[field] + if (value) { + fields.push(generateFieldFor(field, value, usableLocks.hasOwnProperty(field) ? usableLocks[field] : null)) + } + } + return { + title: 'Your generated scenario', + fields, + timestamp: new Date().toISOString() + } +} + +export function getEmbedFrom({embeds}: {embeds?: MessageEmbed[]|undefined}): MessageEmbed { + const result = embeds && embeds.length >= 1 ? embeds[0] : null + if (!result) { + throw Error("there were no embeds on the message to read") + } + return result +} +export function loadEmbed(embed: MessageEmbed): GeneratedMessage { + const result: {values: ComponentValues, locked: ComponentLocks} = { + values: {}, + locked: {}, + } + if (!embed.fields || embed.fields.length === 0) { + throw Error("there were no fields on the embed to read") + } + for (const field of embed.fields!) { + let locked: boolean|undefined, + name = field.name + if (name.endsWith(LOCK_SUFFIX)) { + locked = true + name = name.substring(0, name.length - LOCK_SUFFIX.length) + } else if (name.endsWith(UNLOCK_SUFFIX)) { + locked = false + name = name.substring(0, name.length - UNLOCK_SUFFIX.length) + } else { + throw Error(`there was no lock or unlock suffix on ${name}`) + } + const value = field.value + if (RollTableEmbedsReversed.hasOwnProperty(name)) { + const table = RollTableEmbedsReversed[name as keyof typeof RollTableEmbedsReversed] + if (typeof locked !== "undefined") { + result.locked[table] = locked + } + result.values[table] = value + } else { + throw Error(`I don't know a field named ${name}`) + } + } + return result +} + +export function populateLocksFor(values: ComponentValues, original?: ComponentLocks|undefined): ComponentLocks { + const result = Object.assign({}, original) + for (const table of RollTableOrder) { + if (typeof values[table] !== "undefined") { + result[table] = result[table] ?? true + } + } + return result +} + +export function selectUnlockedFrom(values: string[], oldLocks?: ComponentLocks | undefined): ComponentLocks { + const result = Object.assign({}, oldLocks ?? {}) + for (const table of RollTableOrder) { + if (result.hasOwnProperty(table)) { + result[table] = !values.includes(`${table}`) + } + } + return result +} + +export const SELECT_ID = "selected" +export const REROLL_ID = "reroll" +export const DONE_ID = "done" +export const DELETE_ID = "delete" + +export function generateActionsFor(values: ComponentValues, locks: ComponentLocks|undefined): ComponentActionRow[] { + if (!locks) { + return [] + } + const items = RollTableOrder.filter((v) => values.hasOwnProperty(v)) + const lockedItems = items.filter((v) => locks[v] === true) + const selectOptions: ComponentSelectOption[] = items.map((v) => ({ + default: !(locks[v] ?? false), + value: `${v}`, + label: RollTableNames[v], + emoji: {name: RollTableEmoji[v]} + })) + if (selectOptions.length === 0) { + return [] + } + const select: ComponentSelectMenu = { + type: ComponentType.STRING_SELECT, + custom_id: SELECT_ID, + disabled: false, + max_values: selectOptions.length, + min_values: 0, + options: selectOptions, + placeholder: 'Components to reroll' + } + const selectRow: ComponentActionRow = { type: ComponentType.ACTION_ROW, components: [ select ] } + const rerollButton: ComponentButton = { + type: ComponentType.BUTTON, + custom_id: REROLL_ID, + disabled: lockedItems.length === items.length, + emoji: {name: '\u{1f3b2}'}, + label: (lockedItems.length === 0 ? "Reroll ALL" : "Reroll Selected"), + style: ButtonStyle.PRIMARY + } + const doneButton: ComponentButton = { + type: ComponentType.BUTTON, + custom_id: DONE_ID, + disabled: false, + emoji: { name: '\u{1f44d}' }, + label: 'Looks good!', + style: ButtonStyle.SUCCESS, + } + const deleteButton: ComponentButton = { + type: ComponentType.BUTTON, + custom_id: DELETE_ID, + disabled: false, + emoji: { name: '\u{1f5d1}\ufe0f' }, + label: 'Trash it.', + style: ButtonStyle.DESTRUCTIVE, + } + const buttonRow: ComponentActionRow = { type: ComponentType.ACTION_ROW, components: [rerollButton, doneButton, deleteButton] } + return [selectRow, buttonRow] +} + +export function generateMessageFor(values: ComponentValues, locks: ComponentLocks|undefined): MessageOptions { + return { embeds: [generateEmbedFor(values, locks)], components: generateActionsFor(values, locks), ephemeral: false } +} + +export function generateErrorMessageFor(e: unknown, context?: string): MessageOptions { + console.error(`Error when trying to ${context ?? "do something (unknown context)"}`, e) + return { + content: `I wasn't able to ${context ?? "do that"}. Thing is, ${e}...`, + ephemeral: true, + } +} diff --git a/src/index.ts b/src/index.ts index 8087b85..61d159c 100644 --- a/src/index.ts +++ b/src/index.ts @@ -8,25 +8,121 @@ * Learn more at https://developers.cloudflare.com/workers/ */ +import { CloudflareWorkerServer, SlashCreator } from 'slash-create/web'; +import { GenerateCommand, ResponseCommand } from './commands.js'; +import { DbAccess } from './dbAccess.js'; +import { isSnowflake, type Snowflake } from 'discord-snowflake'; +import { RollTableOrder } from './rolltable.js'; +import { RollTableEmbedTitles, RollTableEmoji, RollTableNames } from './generated.js'; + export interface Env { - // Example binding to KV. Learn more at https://developers.cloudflare.com/workers/runtime-apis/kv/ - // MY_KV_NAMESPACE: KVNamespace; - // - // Example binding to Durable Object. Learn more at https://developers.cloudflare.com/workers/runtime-apis/durable-objects/ - // MY_DURABLE_OBJECT: DurableObjectNamespace; - // - // Example binding to R2. Learn more at https://developers.cloudflare.com/workers/runtime-apis/r2/ - // MY_BUCKET: R2Bucket; - // - // Example binding to a Service. Learn more at https://developers.cloudflare.com/workers/runtime-apis/service-bindings/ - // MY_SERVICE: Fetcher; - // - // Example binding to a Queue. Learn more at https://developers.cloudflare.com/queues/javascript-apis/ - // MY_QUEUE: Queue; + BASE_URL: string; + DISCORD_APP_ID: string + DISCORD_APP_SECRET: string + DISCORD_PUBLIC_KEY: string + DISCORD_DEV_GUILD_IDS: string + DB: D1Database +} + +function getHandler(env: Env, token?: string) { + const dbAccess = new DbAccess(env.DB) + const server = new CloudflareWorkerServer() + const creator = new SlashCreator({ + allowedMentions: {everyone: false, roles: false, users: false}, + applicationID: env.DISCORD_APP_ID, + componentTimeouts: true, + defaultImageSize: 0, + disableTimeouts: false, + endpointPath: '/discord/interactions', + handleCommandsManually: false, + publicKey: env.DISCORD_PUBLIC_KEY, + unknownCommandResponse: true, + token: token, + }) + const withGuilds: Snowflake[] = env.DISCORD_DEV_GUILD_IDS ? env.DISCORD_DEV_GUILD_IDS.split(",").flatMap(v => isSnowflake(v) ? [v] : []) : [] + creator.withServer(server) + creator.registerCommand(new GenerateCommand(creator, dbAccess)) + creator.registerCommand(new ResponseCommand(creator, dbAccess, env.BASE_URL)) + creator.registerCommand(new GenerateCommand(creator, dbAccess, withGuilds)) + creator.registerCommand(new ResponseCommand(creator, dbAccess, env.BASE_URL, withGuilds)) + + return { + fetch: server.fetch.bind(server), + syncCommands: creator.syncCommands.bind(creator), + db: dbAccess, + } +} + +function getAuthorization(username: string, password: string): string { + return btoa(username + ":" + password) } export default { async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise { - return new Response('Hello World!'); + const tokenRequest = new Request(`https://discord.com/api/v10/oauth2/token`, { + headers: new Headers({ + "Content-Type": "application/x-www-form-urlencoded", + "Authorization": `Basic ${getAuthorization(env.DISCORD_APP_ID, env.DISCORD_APP_SECRET)}`, + }), + body: new URLSearchParams({"grant_type": "client_credentials", "scope": "applications.commands.update"}), + method: "POST" + }) + const tokenResponse = await fetch(tokenRequest) + if (tokenResponse.status !== 200) { + const text = await tokenResponse.text() + console.error(`Failed getting token`, text) + return new Response(`Could not sync commands: Failed getting token: ${tokenResponse.status} ${tokenResponse.statusText}\n${text}`, {status: 500}) + } + const json = await tokenResponse.json() as {access_token: string} + const handler = getHandler(env, "Bearer " + json.access_token) + const url = new URL(request.url) + if (url.pathname === "/discord/interactions") { + try { + return handler.fetch(request, env, ctx) + } catch (e) { + console.error("Failed to respond to interactions endpoint", e); + return new Response(`Could not respond to interaction: ${e}`, { + status: 500 + }) + } + } else if (url.pathname === "/discord/sync") { + try { + await handler.syncCommands({ + deleteCommands: true, + syncGuilds: true, + }) + } catch (e) { + console.error("Failed to respond to sync endpoint", e) + return new Response(`Could not sync commands: ${e}`, { + status: 500, + }) + } + return new Response(`Synced commands!`, { + status: 200, + }) + } else if (url.pathname === "/responses") { + try { + const response = [] + const server = url.searchParams.get("server") + const tables = await (server === null + ? handler.db.getGlobalResponses() + : handler.db.getResponsesInServer(server)) + for (const table of RollTableOrder) { + response.push(`${RollTableNames[table]} - ${RollTableEmoji[table]} ${RollTableEmbedTitles[table]}`) + for (const value of tables[table]) { + response.push(` * ${value}`) + } + response.push('') + } + return new Response(response.join('\n'), {status: 200}) + } catch (e) { + console.error("Failed to respond to list endpoint", e) + return new Response(`Could not list responses: ${e}`, { + status: 500, + }) + } + } else { + return new Response(`Invalid path ${url.pathname}`, {status: 404}) + } }, }; diff --git a/src/rolltable.ts b/src/rolltable.ts new file mode 100644 index 0000000..27ed1da --- /dev/null +++ b/src/rolltable.ts @@ -0,0 +1,43 @@ +export enum RollTable { + Setting = 0, + Theme = 1, + Start = 2, + Challenge = 3, + Twist = 4, + Focus = 5, + Word = 6, +} + +export enum ValueAccess { + Global = 0, + Server = 1, + CreatorDM = 2, +} + +export const RollTableOrder = + [RollTable.Setting, RollTable.Theme, RollTable.Start, RollTable.Challenge, RollTable.Twist, RollTable.Focus, RollTable.Word] as const satisfies RollTable[] + +export const RollTableOrdinals = + { + [RollTable.Setting]: 0, + [RollTable.Theme]: 1, + [RollTable.Start]: 2, + [RollTable.Challenge]: 3, + [RollTable.Twist]: 4, + [RollTable.Focus]: 5, + [RollTable.Word]: 6, + } as const satisfies {[key in RollTable]: number} & {[key in Extract as typeof RollTableOrder[key]]: key} + +export type RollableTables = {readonly [key in RollTable]: readonly string[]} + +export function isTable(val: number): val is RollTable { + return RollTableOrdinals.hasOwnProperty(val) +} + +export function rollOn(table: RollTable, tables: RollableTables): string { + const values = tables[table] + if (values.length === 0) { + throw Error(`no possible options for table ${table}`) + } + return values[Math.floor(values.length * Math.random())] +} diff --git a/wrangler.toml b/wrangler.toml index 03404a2..44ae9ea 100644 --- a/wrangler.toml +++ b/wrangler.toml @@ -1,51 +1,17 @@ -name = "ncc-gen" +name = "vore-scenario-generator" main = "src/index.ts" compatibility_date = "2023-12-18" -# Variable bindings. These are arbitrary, plaintext strings (similar to environment variables) -# Note: Use secrets to store sensitive data. -# Docs: https://developers.cloudflare.com/workers/platform/environment-variables -# [vars] -# MY_VARIABLE = "production_value" - -# Bind a KV Namespace. Use KV as persistent storage for small key-value pairs. -# Docs: https://developers.cloudflare.com/workers/runtime-apis/kv -# [[kv_namespaces]] -# binding = "MY_KV_NAMESPACE" -# id = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" - -# Bind an R2 Bucket. Use R2 to store arbitrarily large blobs of data, such as files. -# Docs: https://developers.cloudflare.com/r2/api/workers/workers-api-usage/ -# [[r2_buckets]] -# binding = "MY_BUCKET" -# bucket_name = "my-bucket" - -# Bind a Queue producer. Use this binding to schedule an arbitrary task that may be processed later by a Queue consumer. -# Docs: https://developers.cloudflare.com/queues/get-started -# [[queues.producers]] -# binding = "MY_QUEUE" -# queue = "my-queue" - -# Bind a Queue consumer. Queue Consumers can retrieve tasks scheduled by Producers to act on them. -# Docs: https://developers.cloudflare.com/queues/get-started -# [[queues.consumers]] -# queue = "my-queue" - -# Bind another Worker service. Use this binding to call another Worker without network overhead. -# Docs: https://developers.cloudflare.com/workers/platform/services -# [[services]] -# binding = "MY_SERVICE" -# service = "my-service" - -# Bind a Durable Object. Durable objects are a scale-to-zero compute primitive based on the actor model. -# Durable Objects can live for as long as needed. Use these when you need a long-running "server", such as in realtime apps. -# Docs: https://developers.cloudflare.com/workers/runtime-apis/durable-objects -# [[durable_objects.bindings]] -# name = "MY_DURABLE_OBJECT" -# class_name = "MyDurableObject" - -# Durable Object migrations. -# Docs: https://developers.cloudflare.com/workers/learning/using-durable-objects#configure-durable-object-classes-with-migrations -# [[migrations]] -# tag = "v1" -# new_classes = ["MyDurableObject"] +[vars] +# BASE_URL +# DISCORD_APP_ID +# DISCORD_APP_SECRET +# DISCORD_PUBLIC_KEY +# DISCORD_DEV_GUILD_IDS + +[[d1_databases]] +binding = "DB" # i.e. available in your Worker on env.DB +database_name = "production-ncc-gen" +database_id = "d09d3c74-c75f-4418-8f1b-2fe7f21637e6" +migrations_table = "d1_migrations" +migrations_dir = "migrations"