thetwistedpixie commited on
Commit
e19deba
·
verified ·
1 Parent(s): 8c83915

Add 3 files

Browse files
Files changed (3) hide show
  1. README.md +7 -5
  2. index.html +1722 -19
  3. prompts.txt +1 -0
README.md CHANGED
@@ -1,10 +1,12 @@
1
  ---
2
- title: Skibs
3
- emoji: 📊
4
- colorFrom: yellow
5
- colorTo: blue
6
  sdk: static
7
  pinned: false
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: skibs
3
+ emoji: 🐳
4
+ colorFrom: red
5
+ colorTo: pink
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite
10
  ---
11
 
12
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
index.html CHANGED
@@ -1,19 +1,1722 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>BoomBuddy: The Skibidi Odyssey</title>
7
+ <script src="https://cdn.tailwindcss.com"></script>
8
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
9
+ <style>
10
+ @import url('https://fonts.googleapis.com/css2?family=Comic+Neue:wght@400;700&family=Permanent+Marker&display=swap');
11
+
12
+ :root {
13
+ --neon-pink: #ff6ec7;
14
+ --neon-blue: #00f7ff;
15
+ --neon-yellow: #fff01f;
16
+ --neon-green: #00ff7f;
17
+ --neon-purple: #c724ff;
18
+ }
19
+
20
+ body {
21
+ font-family: 'Comic Neue', cursive;
22
+ background-color: #111;
23
+ color: white;
24
+ overflow-x: hidden;
25
+ }
26
+
27
+ .title-font {
28
+ font-family: 'Permanent Marker', cursive;
29
+ }
30
+
31
+ .neon-text-pink {
32
+ text-shadow: 0 0 5px var(--neon-pink), 0 0 15px var(--neon-pink);
33
+ color: var(--neon-pink);
34
+ }
35
+
36
+ .neon-text-blue {
37
+ text-shadow: 0 0 5px var(--neon-blue), 0 0 15px var(--neon-blue);
38
+ color: var(--neon-blue);
39
+ }
40
+
41
+ .neon-text-yellow {
42
+ text-shadow: 0 0 5px var(--neon-yellow), 0 0 15px var(--neon-yellow);
43
+ color: var(--neon-yellow);
44
+ }
45
+
46
+ .neon-text-green {
47
+ text-shadow: 0 0 5px var(--neon-green), 0 0 15px var(--neon-green);
48
+ color: var(--neon-green);
49
+ }
50
+
51
+ .neon-text-purple {
52
+ text-shadow: 0 0 5px var(--neon-purple), 0 0 15px var(--neon-purple);
53
+ color: var(--neon-purple);
54
+ }
55
+
56
+ .neon-border-pink {
57
+ box-shadow: 0 0 5px var(--neon-pink), 0 0 15px var(--neon-pink), inset 0 0 5px var(--neon-pink);
58
+ border: 2px solid var(--neon-pink);
59
+ }
60
+
61
+ .neon-border-blue {
62
+ box-shadow: 0 0 5px var(--neon-blue), 0 0 15px var(--neon-blue), inset 0 0 5px var(--neon-blue);
63
+ border: 2px solid var(--neon-blue);
64
+ }
65
+
66
+ .neon-border-yellow {
67
+ box-shadow: 0 0 5px var(--neon-yellow), 0 0 15px var(--neon-yellow), inset 0 0 5px var(--neon-yellow);
68
+ border: 2px solid var(--neon-yellow);
69
+ }
70
+
71
+ .neon-border-green {
72
+ box-shadow: 0 0 5px var(--neon-green), 0 0 15px var(--neon-green), inset 0 0 5px var(--neon-green);
73
+ border: 2px solid var(--neon-green);
74
+ }
75
+
76
+ .neon-border-purple {
77
+ box-shadow: 0 0 5px var(--neon-purple), 0 0 15px var(--neon-purple), inset 0 0 5px var(--neon-purple);
78
+ border: 2px solid var(--neon-purple);
79
+ }
80
+
81
+ .skibidi-spin {
82
+ animation: skibidi-spin 3s infinite linear;
83
+ }
84
+
85
+ @keyframes skibidi-spin {
86
+ 0% { transform: rotate(0deg); }
87
+ 25% { transform: rotate(5deg); }
88
+ 50% { transform: rotate(0deg); }
89
+ 75% { transform: rotate(-5deg); }
90
+ 100% { transform: rotate(0deg); }
91
+ }
92
+
93
+ .skibidi-bounce {
94
+ animation: skibidi-bounce 2s infinite;
95
+ }
96
+
97
+ @keyframes skibidi-bounce {
98
+ 0%, 100% { transform: translateY(0); }
99
+ 50% { transform: translateY(-20px); }
100
+ }
101
+
102
+ .skibidi-pulse {
103
+ animation: skibidi-pulse 1.5s infinite;
104
+ }
105
+
106
+ @keyframes skibidi-pulse {
107
+ 0%, 100% { transform: scale(1); }
108
+ 50% { transform: scale(1.05); }
109
+ }
110
+
111
+ .skibidi-flicker {
112
+ animation: skibidi-flicker 1.5s infinite alternate;
113
+ }
114
+
115
+ @keyframes skibidi-flicker {
116
+ 0%, 18%, 22%, 25%, 53%, 57%, 100% {
117
+ opacity: 1;
118
+ }
119
+ 20%, 24%, 55% {
120
+ opacity: 0.3;
121
+ }
122
+ }
123
+
124
+ .comic-box {
125
+ clip-path: polygon(
126
+ 0% 0%,
127
+ 100% 0%,
128
+ 100% 75%,
129
+ 75% 75%,
130
+ 75% 100%,
131
+ 50% 75%,
132
+ 0% 75%
133
+ );
134
+ }
135
+
136
+ .speech-bubble {
137
+ position: relative;
138
+ background: white;
139
+ border-radius: 1em;
140
+ color: black;
141
+ padding: 1rem;
142
+ }
143
+
144
+ .speech-bubble:after {
145
+ content: '';
146
+ position: absolute;
147
+ bottom: -10px;
148
+ left: 20px;
149
+ border-width: 15px 15px 0;
150
+ border-style: solid;
151
+ border-color: white transparent;
152
+ }
153
+
154
+ .app-screen {
155
+ border-radius: 30px;
156
+ overflow: hidden;
157
+ position: relative;
158
+ }
159
+
160
+ .app-notch {
161
+ position: absolute;
162
+ top: 0;
163
+ left: 50%;
164
+ transform: translateX(-50%);
165
+ width: 40%;
166
+ height: 30px;
167
+ background: #111;
168
+ border-bottom-left-radius: 15px;
169
+ border-bottom-right-radius: 15px;
170
+ z-index: 10;
171
+ }
172
+
173
+ .feature-icon {
174
+ width: 60px;
175
+ height: 60px;
176
+ display: flex;
177
+ align-items: center;
178
+ justify-content: center;
179
+ border-radius: 20px;
180
+ font-size: 28px;
181
+ }
182
+
183
+ .glow-hover:hover {
184
+ transform: scale(1.05);
185
+ transition: all 0.3s ease;
186
+ }
187
+
188
+ /* Map styles */
189
+ #map {
190
+ width: 100%;
191
+ height: 100%;
192
+ background-color: #222;
193
+ position: relative;
194
+ overflow: hidden;
195
+ }
196
+
197
+ .map-marker {
198
+ position: absolute;
199
+ width: 20px;
200
+ height: 20px;
201
+ background-color: var(--neon-pink);
202
+ border-radius: 50%;
203
+ transform: translate(-50%, -50%);
204
+ }
205
+
206
+ .map-path {
207
+ position: absolute;
208
+ height: 3px;
209
+ background-color: var(--neon-blue);
210
+ transform-origin: left center;
211
+ }
212
+
213
+ /* Story generator styles */
214
+ .story-result {
215
+ min-height: 100px;
216
+ overflow-y: auto;
217
+ max-height: 200px;
218
+ }
219
+
220
+ /* Spray meter styles */
221
+ .spray-meter {
222
+ width: 100%;
223
+ height: 20px;
224
+ background-color: #333;
225
+ border-radius: 10px;
226
+ overflow: hidden;
227
+ }
228
+
229
+ .spray-fill {
230
+ height: 100%;
231
+ background: linear-gradient(to right, var(--neon-green), var(--neon-yellow));
232
+ transition: width 0.5s ease;
233
+ }
234
+
235
+ /* Tab system */
236
+ .tab-content {
237
+ display: none;
238
+ }
239
+
240
+ .tab-content.active {
241
+ display: block;
242
+ }
243
+
244
+ /* Mobile responsive */
245
+ @media (max-width: 640px) {
246
+ .app-screen {
247
+ max-width: 100%;
248
+ height: 400px;
249
+ }
250
+ }
251
+ </style>
252
+ </head>
253
+ <body class="min-h-screen">
254
+ <!-- Main App Container -->
255
+ <div class="app-container hidden">
256
+ <!-- App Header -->
257
+ <header class="bg-black neon-border-purple p-4">
258
+ <div class="flex justify-between items-center">
259
+ <div class="flex items-center">
260
+ <div class="w-10 h-10 rounded-full neon-border-pink bg-black flex items-center justify-center mr-2">
261
+ <span class="text-xl">🚐</span>
262
+ </div>
263
+ <h1 class="text-xl font-bold title-font neon-text-pink">
264
+ Boom<span class="neon-text-yellow">Buddy</span>
265
+ </h1>
266
+ </div>
267
+ <div class="flex items-center space-x-2">
268
+ <span class="text-sm neon-text-blue">🐷👦</span>
269
+ <button id="logoutBtn" class="text-sm neon-text-yellow hover:neon-text-pink">
270
+ <i class="fas fa-sign-out-alt"></i>
271
+ </button>
272
+ </div>
273
+ </div>
274
+ </header>
275
+
276
+ <!-- Main App Content -->
277
+ <main class="flex-1 overflow-y-auto">
278
+ <!-- Tab Navigation -->
279
+ <div class="flex border-b border-gray-800">
280
+ <button class="tab-btn flex-1 py-3 neon-text-blue hover:neon-text-pink" data-tab="map">
281
+ <i class="fas fa-map-marker-alt mr-1"></i> Map
282
+ </button>
283
+ <button class="tab-btn flex-1 py-3 neon-text-pink hover:neon-text-yellow" data-tab="spray">
284
+ <i class="fas fa-spray-can mr-1"></i> Spray
285
+ </button>
286
+ <button class="tab-btn flex-1 py-3 neon-text-yellow hover:neon-text-green" data-tab="stories">
287
+ <i class="fas fa-book mr-1"></i> Stories
288
+ </button>
289
+ </div>
290
+
291
+ <!-- Tab Contents -->
292
+ <div class="p-4">
293
+ <!-- Map Tab -->
294
+ <div id="map-tab" class="tab-content active">
295
+ <div class="app-screen neon-border-blue mx-auto relative" style="height: 300px;">
296
+ <div class="app-notch"></div>
297
+ <div id="map" class="absolute inset-0">
298
+ <!-- Map will be generated here -->
299
+ </div>
300
+ </div>
301
+ <div class="mt-4 bg-gray-900 rounded-xl p-4 neon-border-yellow">
302
+ <h3 class="text-lg font-bold neon-text-blue mb-2">Navigation</h3>
303
+ <div class="flex items-center mb-2">
304
+ <div class="w-3 h-3 rounded-full bg-green-500 mr-2"></div>
305
+ <p class="text-sm">Current location: <span id="currentLocation" class="neon-text-pink">Loading...</span></p>
306
+ </div>
307
+ <div class="flex items-center mb-2">
308
+ <div class="w-3 h-3 rounded-full bg-pink-500 mr-2"></div>
309
+ <p class="text-sm">Destination: <span id="destination" class="neon-text-yellow">Boom Festival</span></p>
310
+ </div>
311
+ <div class="mt-3">
312
+ <p class="text-sm neon-text-green" id="navigationText">"Oi Piglet, we're heading to the Skibidi toilets first!"</p>
313
+ </div>
314
+ <button id="refreshLocation" class="mt-3 px-4 py-2 bg-blue-600 hover:bg-blue-700 rounded-full text-sm neon-border-blue">
315
+ <i class="fas fa-sync-alt mr-1"></i> Update Location
316
+ </button>
317
+ </div>
318
+ </div>
319
+
320
+ <!-- Spray Tab -->
321
+ <div id="spray-tab" class="tab-content">
322
+ <div class="app-screen neon-border-yellow mx-auto relative" style="height: 300px;">
323
+ <div class="app-notch"></div>
324
+ <div class="absolute inset-0 bg-gradient-to-b from-yellow-900 to-black p-4 flex flex-col items-center justify-center">
325
+ <div class="w-24 h-24 rounded-full neon-border-pink flex items-center justify-center mb-4 cursor-pointer" id="sprayButton">
326
+ <span class="text-4xl">💨</span>
327
+ </div>
328
+ <p class="text-sm neon-text-yellow mb-2" id="sprayMessage">"Piglet didn't see that coming!"</p>
329
+ <div class="w-full bg-gray-800 rounded-full p-1 neon-border-green mb-2">
330
+ <div class="spray-meter">
331
+ <div class="spray-fill" id="sprayFill" style="width: 0%"></div>
332
+ </div>
333
+ </div>
334
+ <p class="text-xs neon-text-blue mb-4" id="sprayLevel">Level: Spray Novice</p>
335
+ <div class="text-center">
336
+ <p class="text-sm neon-text-pink">Today's sprays: <span id="sprayCount" class="text-xl">0</span></p>
337
+ <p class="text-xs neon-text-yellow">All-time sprays: <span id="totalSprays">0</span></p>
338
+ </div>
339
+ </div>
340
+ </div>
341
+ <div class="mt-4 bg-gray-900 rounded-xl p-4 neon-border-pink">
342
+ <h3 class="text-lg font-bold neon-text-yellow mb-2">Spray Achievements</h3>
343
+ <div class="grid grid-cols-3 gap-2 text-center">
344
+ <div class="bg-gray-800 p-2 rounded neon-border-blue">
345
+ <span class="text-xs block neon-text-blue">Sneaky Spray</span>
346
+ <span class="text-sm" id="sneakySpray">0</span>
347
+ </div>
348
+ <div class="bg-gray-800 p-2 rounded neon-border-pink">
349
+ <span class="text-xs block neon-text-pink">Double Tap</span>
350
+ <span class="text-sm" id="doubleSpray">0</span>
351
+ </div>
352
+ <div class="bg-gray-800 p-2 rounded neon-border-yellow">
353
+ <span class="text-xs block neon-text-yellow">Nasal Assassin</span>
354
+ <span class="text-sm" id="nasalAssassin">0</span>
355
+ </div>
356
+ </div>
357
+ </div>
358
+ </div>
359
+
360
+ <!-- Stories Tab -->
361
+ <div id="stories-tab" class="tab-content">
362
+ <div class="app-screen neon-border-green mx-auto relative" style="height: 300px;">
363
+ <div class="app-notch"></div>
364
+ <div class="absolute inset-0 bg-gradient-to-b from-green-900 to-black p-4 flex flex-col">
365
+ <div class="flex-1 bg-gray-800 rounded-xl neon-border-yellow p-4 mb-3 overflow-hidden">
366
+ <div class="story-result bg-gray-900 rounded-lg p-3 h-full" id="storyResult">
367
+ <p class="text-sm neon-text-blue">Enter your crazy adventure below and we'll turn it into art!</p>
368
+ </div>
369
+ </div>
370
+ <div class="flex space-x-2">
371
+ <input type="text" id="storyInput" class="flex-1 bg-gray-700 rounded-full px-4 py-2 text-sm neon-border-blue" placeholder="Describe your skibidi moment...">
372
+ <button id="generateStory" class="bg-pink-600 hover:bg-pink-700 rounded-full px-4 text-sm neon-border-pink">
373
+ <i class="fas fa-magic"></i>
374
+ </button>
375
+ </div>
376
+ </div>
377
+ </div>
378
+ <div class="mt-4 bg-gray-900 rounded-xl p-4 neon-border-yellow">
379
+ <h3 class="text-lg font-bold neon-text-green mb-2">Previous Stories</h3>
380
+ <div class="space-y-2 max-h-40 overflow-y-auto" id="previousStories">
381
+ <!-- Previous stories will appear here -->
382
+ </div>
383
+ </div>
384
+ </div>
385
+ </div>
386
+ </main>
387
+
388
+ <!-- App Footer -->
389
+ <footer class="bg-black neon-border-green p-3">
390
+ <div class="flex justify-center space-x-6">
391
+ <button class="text-xl neon-text-pink hover:neon-text-yellow" id="emergencyBtn">
392
+ <i class="fas fa-bell"></i>
393
+ </button>
394
+ <button class="text-xl neon-text-blue hover:neon-text-pink" id="cameraBtn">
395
+ <i class="fas fa-camera"></i>
396
+ </button>
397
+ <button class="text-xl neon-text-yellow hover:neon-text-green" id="musicBtn">
398
+ <i class="fas fa-music"></i>
399
+ </button>
400
+ </div>
401
+ </footer>
402
+ </div>
403
+
404
+ <!-- Login Screen -->
405
+ <div class="login-container min-h-screen flex items-center justify-center bg-black">
406
+ <div class="text-center p-6 max-w-md">
407
+ <div class="inline-block mb-6 neon-border-yellow rounded-full p-2 skibidi-bounce">
408
+ <div class="rounded-full bg-black p-4 neon-border-pink">
409
+ <span class="text-4xl">🚐</span>
410
+ </div>
411
+ </div>
412
+ <h1 class="text-5xl font-bold title-font neon-text-pink mb-4">
413
+ Boom<span class="neon-text-yellow">Buddy</span>
414
+ </h1>
415
+ <p class="text-xl neon-text-blue mb-8">
416
+ The <span class="neon-text-green">Skibidi Odyssey</span> of Piglet & Henley
417
+ </p>
418
+
419
+ <div class="bg-gray-900 p-6 rounded-2xl neon-border-blue mb-6">
420
+ <div class="mb-4">
421
+ <label class="block text-left text-sm neon-text-pink mb-1">Who are you?</label>
422
+ <select id="userSelect" class="w-full bg-gray-800 rounded-full px-4 py-2 neon-border-yellow">
423
+ <option value="">Select your identity</option>
424
+ <option value="piglet">Piglet 🐷</option>
425
+ <option value="henley">Henley 👦</option>
426
+ </select>
427
+ </div>
428
+ <div class="mb-4">
429
+ <label class="block text-left text-sm neon-text-blue mb-1">Secret Code</label>
430
+ <input type="password" id="passwordInput" class="w-full bg-gray-800 rounded-full px-4 py-2 neon-border-pink" placeholder="Enter skibidi code">
431
+ </div>
432
+ <button id="loginBtn" class="w-full px-6 py-3 bg-pink-600 hover:bg-pink-700 rounded-full font-bold neon-border-pink skibidi-pulse">
433
+ Enter Skibidi Mode
434
+ </button>
435
+ </div>
436
+
437
+ <p class="text-sm neon-text-purple">
438
+ * Private app - not available to normies *
439
+ </p>
440
+ </div>
441
+ </div>
442
+
443
+ <!-- Floating elements -->
444
+ <div class="fixed bottom-6 right-6 text-5xl neon-text-yellow skibidi-spin">
445
+ <span class="inline-block">🤪</span>
446
+ </div>
447
+
448
+ <div class="fixed top-1/4 left-6 text-3xl neon-text-pink skibidi-bounce">
449
+ <span class="inline-block">🐷</span>
450
+ </div>
451
+
452
+ <div class="fixed bottom-1/3 left-10 text-2xl neon-text-blue skibidi-flicker">
453
+ <span class="inline-block">👦</span>
454
+ </div>
455
+
456
+ <script>
457
+ // App State
458
+ const appState = {
459
+ currentUser: null,
460
+ sprayCount: 0,
461
+ totalSprays: 0,
462
+ lastSprayTime: 0,
463
+ achievements: {
464
+ sneakySpray: 0,
465
+ doubleSpray: 0,
466
+ nasalAssassin: 0
467
+ },
468
+ stories: [],
469
+ locations: [
470
+ "Main Stage",
471
+ "Skibidi Toilets",
472
+ "Dance Temple",
473
+ "Food Court",
474
+ "Chill Zone",
475
+ "Secret Rave Spot"
476
+ ],
477
+ currentLocation: null,
478
+ destination: "Boom Festival"
479
+ };
480
+
481
+ // DOM Elements
482
+ const loginContainer = document.querySelector('.login-container');
483
+ const appContainer = document.querySelector('.app-container');
484
+ const userSelect = document.getElementById('userSelect');
485
+ const passwordInput = document.getElementById('passwordInput');
486
+ const loginBtn = document.getElementById('loginBtn');
487
+ const logoutBtn = document.getElementById('logoutBtn');
488
+ const tabBtns = document.querySelectorAll('.tab-btn');
489
+ const tabContents = document.querySelectorAll('.tab-content');
490
+ const sprayButton = document.getElementById('sprayButton');
491
+ const sprayCount = document.getElementById('sprayCount');
492
+ const totalSprays = document.getElementById('totalSprays');
493
+ const sprayFill = document.getElementById('sprayFill');
494
+ const sprayMessage = document.getElementById('sprayMessage');
495
+ const sprayLevel = document.getElementById('sprayLevel');
496
+ const sneakySpray = document.getElementById('sneakySpray');
497
+ const doubleSpray = document.getElementById('doubleSpray');
498
+ const nasalAssassin = document.getElementById('nasalAssassin');
499
+ const storyInput = document.getElementById('storyInput');
500
+ const generateStory = document.getElementById('generateStory');
501
+ const storyResult = document.getElementById('storyResult');
502
+ const previousStories = document.getElementById('previousStories');
503
+ const currentLocationDisplay = document.getElementById('currentLocation');
504
+ const navigationText = document.getElementById('navigationText');
505
+ const refreshLocation = document.getElementById('refreshLocation');
506
+ const map = document.getElementById('map');
507
+ const emergencyBtn = document.getElementById('emergencyBtn');
508
+ const cameraBtn = document.getElementById('cameraBtn');
509
+ const musicBtn = document.getElementById('musicBtn');
510
+
511
+ // Initialize the app
512
+ function initApp() {
513
+ // Check if user is already logged in (from localStorage)
514
+ const savedUser = localStorage.getItem('boomBuddyUser');
515
+ if (savedUser) {
516
+ try {
517
+ const userData = JSON.parse(savedUser);
518
+ appState.currentUser = userData.user;
519
+ appState.totalSprays = userData.totalSprays || 0;
520
+ appState.achievements = userData.achievements || {
521
+ sneakySpray: 0,
522
+ doubleSpray: 0,
523
+ nasalAssassin: 0
524
+ };
525
+ appState.stories = userData.stories || [];
526
+
527
+ loginContainer.classList.add('hidden');
528
+ appContainer.classList.remove('hidden');
529
+ updateUI();
530
+ } catch (e) {
531
+ localStorage.removeItem('boomBuddyUser');
532
+ }
533
+ }
534
+ }
535
+
536
+ // Login function
537
+ function login() {
538
+ const user = userSelect.value;
539
+ const password = passwordInput.value;
540
+
541
+ if (!user) {
542
+ alert("Oi! Select who you are first!");
543
+ return;
544
+ }
545
+
546
+ // Very secure authentication 😉
547
+ if (password !== "skibidi") {
548
+ alert("Wrong skibidi code! Try 'skibidi'");
549
+ return;
550
+ }
551
+
552
+ appState.currentUser = user;
553
+
554
+ // Save to localStorage
555
+ localStorage.setItem('boomBuddyUser', JSON.stringify({
556
+ user: appState.currentUser,
557
+ totalSprays: appState.totalSprays,
558
+ achievements: appState.achievements,
559
+ stories: appState.stories
560
+ }));
561
+
562
+ loginContainer.classList.add('hidden');
563
+ appContainer.classList.remove('hidden');
564
+
565
+ // Initialize app features
566
+ updateUI();
567
+ generateRandomLocation();
568
+ renderMap();
569
+ }
570
+
571
+ // Logout function
572
+ function logout() {
573
+ if (confirm("Are you sure you want to exit Skibidi mode?")) {
574
+ localStorage.removeItem('boomBuddyUser');
575
+ appContainer.classList.add('hidden');
576
+ loginContainer.classList.remove('hidden');
577
+ userSelect.value = "";
578
+ passwordInput.value = "";
579
+ appState.currentUser = null;
580
+ }
581
+ }
582
+
583
+ // Update UI based on app state
584
+ function updateUI() {
585
+ // Update spray counter
586
+ sprayCount.textContent = appState.sprayCount;
587
+ totalSprays.textContent = appState.totalSprays;
588
+
589
+ // Update achievements
590
+ sneakySpray.textContent = appState.achievements.sneakySpray;
591
+ doubleSpray.textContent = appState.achievements.doubleSpray;
592
+ nasalAssassin.textContent = appState.achievements.nasalAssassin;
593
+
594
+ // Update spray meter
595
+ const sprayPercentage = Math.min(100, (appState.sprayCount / 5) * 100);
596
+ sprayFill.style.width = `${sprayPercentage}%`;
597
+
598
+ // Update spray level
599
+ if (appState.totalSprays >= 20) {
600
+ sprayLevel.textContent = "Level: Nasal Overlord";
601
+ } else if (appState.totalSprays >= 10) {
602
+ sprayLevel.textContent = "Level: Spray Assassin";
603
+ } else if (appState.totalSprays >= 5) {
604
+ sprayLevel.textContent = "Level: Spray Novice";
605
+ } else {
606
+ sprayLevel.textContent = "Level: Spray Rookie";
607
+ }
608
+
609
+ // Update previous stories
610
+ previousStories.innerHTML = "";
611
+ appState.stories.slice().reverse().forEach((story, index) => {
612
+ if (index < 5) { // Only show last 5 stories
613
+ const storyEl = document.createElement('div');
614
+ storyEl.className = 'bg-gray-800 p-2 rounded mb-1 text-sm neon-border-purple';
615
+ storyEl.textContent = `${story.input.substring(0, 30)}... → ${story.type}`;
616
+ storyEl.title = `${story.input} → ${story.result.substring(0, 100)}...`;
617
+ previousStories.appendChild(storyEl);
618
+ }
619
+ });
620
+
621
+ // Update location display
622
+ if (appState.currentLocation) {
623
+ currentLocationDisplay.textContent = appState.currentLocation;
624
+ navigationText.textContent = getRandomNavigationPhrase();
625
+ }
626
+ }
627
+
628
+ // Handle spray action
629
+ function handleSpray() {
630
+ const now = Date.now();
631
+
632
+ // Increment counters
633
+ appState.sprayCount++;
634
+ appState.totalSprays++;
635
+
636
+ // Check for achievements
637
+ // Sneaky spray (after 10 seconds of inactivity)
638
+ if (now - appState.lastSprayTime > 10000) {
639
+ appState.achievements.sneakySpray++;
640
+ sprayMessage.textContent = `"${appState.currentUser === 'piglet' ? 'Henley' : 'Piglet'} didn't see that coming!"`;
641
+ }
642
+
643
+ // Double spray (within 2 seconds)
644
+ if (now - appState.lastSprayTime < 2000) {
645
+ appState.achievements.doubleSpray++;
646
+ sprayMessage.textContent = `"DOUBLE TAP! ${appState.currentUser === 'piglet' ? 'Henley' : 'Piglet'} is gonna lose it!"`;
647
+ }
648
+
649
+ // Nasal assassin (5 sprays in a row)
650
+ if (appState.sprayCount >= 5) {
651
+ appState.achievements.nasalAssassin++;
652
+ sprayMessage.textContent = `"NASAL ASSASSIN! ${appState.currentUser === 'piglet' ? 'Henley' : 'Piglet'} is drowning in JPG!"`;
653
+ appState.sprayCount = 0; // Reset counter
654
+ }
655
+
656
+ appState.lastSprayTime = now;
657
+
658
+ // Animate spray button
659
+ sprayButton.classList.add('animate__animated', 'animate__rubberBand');
660
+ setTimeout(() => {
661
+ sprayButton.classList.remove('animate__animated', 'animate__rubberBand');
662
+ }, 1000);
663
+
664
+ // Save state
665
+ saveAppState();
666
+ updateUI();
667
+ }
668
+
669
+ // Generate a story
670
+ function generateStory() {
671
+ const input = storyInput.value.trim();
672
+ if (!input) {
673
+ alert("Oi! Write something skibidi first!");
674
+ return;
675
+ }
676
+
677
+ // Randomly select a story type
678
+ const types = ['poem', 'comic', 'meme', 'song', 'shakespeare'];
679
+ const type = types[Math.floor(Math.random() * types.length)];
680
+
681
+ let result = "";
682
+
683
+ switch (type) {
684
+ case 'poem':
685
+ result = `The Ballad of ${appState.currentUser === 'piglet' ? 'Piglet' : 'Henley'}\n\n` +
686
+ `Roses are red,\nViolets are blue,\n${input}\nAnd so are you!`;
687
+ break;
688
+ case 'comic':
689
+ result = `COMIC STRIP: "${input.toUpperCase()}"\n\n` +
690
+ `[Frame 1]: ${appState.currentUser === 'piglet' ? 'Piglet' : 'Henley'} looking confused\n` +
691
+ `[Frame 2]: ${input}\n` +
692
+ `[Frame 3]: Both laughing hysterically`;
693
+ break;
694
+ case 'meme':
695
+ result = `MEME: ${appState.currentUser === 'piglet' ? 'Henley' : 'Piglet'} when ${input}\n\n` +
696
+ `[Top text]: WHEN ${input.toUpperCase()}\n` +
697
+ `[Bottom text]: SKIBIDI MODE ACTIVATED`;
698
+ break;
699
+ case 'song':
700
+ result = `🎵 ${input.toUpperCase()} 🎵\n\n` +
701
+ `(Verse 1)\n${input}\n${input}\n` +
702
+ `(Chorus)\nSkibidi bop bop yes yes\n${input}\n` +
703
+ `(Verse 2)\n${appState.currentUser === 'piglet' ? 'Henley' : 'Piglet'} joins in\n${input}`;
704
+ break;
705
+ case 'shakespeare':
706
+ result = `Act V, Scene II\n\n` +
707
+ `${appState.currentUser === 'piglet' ? 'PIGLET' : 'HENLEY'}\n` +
708
+ `"${shakespearify(input)}"\n\n` +
709
+ `[Exeunt, pursued by a bear]`;
710
+ break;
711
+ }
712
+
713
+ // Add to stories
714
+ appState.stories.push({
715
+ input,
716
+ type,
717
+ result,
718
+ timestamp: new Date().toISOString()
719
+ });
720
+
721
+ // Display result
722
+ storyResult.innerHTML = `<p class="neon-text-${type === 'poem' ? 'pink' : type === 'comic' ? 'blue' : type === 'meme' ? 'yellow' : 'green'}">${result.replace(/\n/g, '<br>')}</p>`;
723
+ storyInput.value = "";
724
+
725
+ // Save state
726
+ saveAppState();
727
+ updateUI();
728
+ }
729
+
730
+ // Helper to Shakespeare-ify text
731
+ function shakespearify(text) {
732
+ const replacements = [
733
+ ['I', 'Thy humble servant'],
734
+ ['you', 'thee'],
735
+ ['your', 'thine'],
736
+ ['cool', 'most wondrous'],
737
+ ['awesome', 'of most excellent virtue'],
738
+ ['hi', 'hark'],
739
+ ['hello', 'good morrow'],
740
+ ['dude', 'good sir'],
741
+ ['bro', 'dear brother'],
742
+ ['farted', 'did let forth a most foul wind'],
743
+ ['sprayed', 'did unleash the perfume of the gods'],
744
+ ['lol', 'verily, tis most humorous'],
745
+ ['funny', 'causing great mirth'],
746
+ ['hungry', 'in dire need of sustenance'],
747
+ ['tired', 'weary from life\'s toils'],
748
+ ['drunk', 'in cups'],
749
+ ['party', 'merrymaking'],
750
+ ['dance', 'caper about'],
751
+ ['music', 'sweet melodies'],
752
+ ['food', 'victuals'],
753
+ ['sleep', 'slumber'],
754
+ ['bathroom', 'privy'],
755
+ ['toilet', 'chamber pot'],
756
+ ['love', 'adore'],
757
+ ['hate', 'despise'],
758
+ ['friend', 'trusty companion'],
759
+ ['enemy', 'villainous knave'],
760
+ ['good', 'excellent'],
761
+ ['bad', 'most foul'],
762
+ ['happy', 'merry'],
763
+ ['sad', 'woeful'],
764
+ ['angry', 'full of wrath'],
765
+ ['crazy', 'mad'],
766
+ ['stupid', 'foolish'],
767
+ ['smart', 'wise'],
768
+ ['beautiful', 'fair'],
769
+ ['ugly', 'hideous'],
770
+ ['old', 'aged'],
771
+ ['new', 'fresh'],
772
+ ['big', 'large'],
773
+ ['small', 'tiny'],
774
+ ['fast', 'swift'],
775
+ ['slow', 'sluggish'],
776
+ ['hot', 'burning'],
777
+ ['cold', 'chilling'],
778
+ ['wet', 'damp'],
779
+ ['dry', 'parched'],
780
+ ['clean', 'spotless'],
781
+ ['dirty', 'filthy'],
782
+ ['rich', 'wealthy'],
783
+ ['poor', 'destitute'],
784
+ ['strong', 'mighty'],
785
+ ['weak', 'feeble'],
786
+ ['tall', 'lofty'],
787
+ ['short', 'diminutive'],
788
+ ['fat', 'portly'],
789
+ ['skinny', 'gaunt'],
790
+ ['nice', 'kind'],
791
+ ['mean', 'cruel'],
792
+ ['fun', 'merry'],
793
+ ['boring', 'tedious'],
794
+ ['exciting', 'thrilling'],
795
+ ['scary', 'frightful'],
796
+ ['silly', 'foolish'],
797
+ ['serious', 'grave'],
798
+ ['weird', 'strange'],
799
+ ['normal', 'ordinary'],
800
+ ['special', 'unique'],
801
+ ['common', 'mundane'],
802
+ ['rare', 'scarce'],
803
+ ['important', 'vital'],
804
+ ['unimportant', 'trivial'],
805
+ ['difficult', 'arduous'],
806
+ ['easy', 'simple'],
807
+ ['hard', 'tough'],
808
+ ['soft', 'gentle'],
809
+ ['loud', 'boisterous'],
810
+ ['quiet', 'silent'],
811
+ ['bright', 'radiant'],
812
+ ['dark', 'gloomy'],
813
+ ['colorful', 'vibrant'],
814
+ ['dull', 'drab'],
815
+ ['shiny', 'gleaming'],
816
+ ['matte', 'flat'],
817
+ ['smooth', 'even'],
818
+ ['rough', 'coarse'],
819
+ ['sharp', 'keen'],
820
+ ['blunt', 'dull'],
821
+ ['sweet', 'sugary'],
822
+ ['sour', 'tart'],
823
+ ['bitter', 'acrid'],
824
+ ['salty', 'briny'],
825
+ ['spicy', 'piquant'],
826
+ ['mild', 'bland'],
827
+ ['tasty', 'delicious'],
828
+ ['disgusting', 'revolting'],
829
+ ['smelly', 'malodorous'],
830
+ ['fragrant', 'aromatic'],
831
+ ['fresh', 'crisp'],
832
+ ['stale', 'musty'],
833
+ ['new', 'novel'],
834
+ ['old', 'ancient'],
835
+ ['young', 'youthful'],
836
+ ['modern', 'contemporary'],
837
+ ['ancient', 'archaic'],
838
+ ['future', 'forthcoming'],
839
+ ['past', 'bygone'],
840
+ ['present', 'current'],
841
+ ['now', 'at this very moment'],
842
+ ['then', 'at that time'],
843
+ ['soon', 'ere long'],
844
+ ['later', 'anon'],
845
+ ['never', 'not ever'],
846
+ ['always', 'forevermore'],
847
+ ['sometimes', 'on occasion'],
848
+ ['often', 'frequently'],
849
+ ['rarely', 'seldom'],
850
+ ['every', 'each and every'],
851
+ ['any', 'whichever'],
852
+ ['some', 'a few'],
853
+ ['many', 'numerous'],
854
+ ['few', 'scarce'],
855
+ ['all', 'every last'],
856
+ ['none', 'naught'],
857
+ ['more', 'additional'],
858
+ ['less', 'fewer'],
859
+ ['most', 'the majority'],
860
+ ['least', 'the minority'],
861
+ ['better', 'superior'],
862
+ ['worse', 'inferior'],
863
+ ['best', 'supreme'],
864
+ ['worst', 'most terrible'],
865
+ ['same', 'identical'],
866
+ ['different', 'distinct'],
867
+ ['similar', 'alike'],
868
+ ['opposite', 'contrary'],
869
+ ['true', 'veritable'],
870
+ ['false', 'untrue'],
871
+ ['real', 'genuine'],
872
+ ['fake', 'counterfeit'],
873
+ ['right', 'correct'],
874
+ ['wrong', 'incorrect'],
875
+ ['correct', 'accurate'],
876
+ ['incorrect', 'erroneous'],
877
+ ['exact', 'precise'],
878
+ ['approximate', 'rough'],
879
+ ['certain', 'definite'],
880
+ ['uncertain', 'doubtful'],
881
+ ['sure', 'confident'],
882
+ ['unsure', 'hesitant'],
883
+ ['clear', 'transparent'],
884
+ ['unclear', 'obscure'],
885
+ ['obvious', 'evident'],
886
+ ['subtle', 'delicate'],
887
+ ['simple', 'elementary'],
888
+ ['complex', 'complicated'],
889
+ ['easy', 'effortless'],
890
+ ['hard', 'difficult'],
891
+ ['possible', 'feasible'],
892
+ ['impossible', 'unattainable'],
893
+ ['likely', 'probable'],
894
+ ['unlikely', 'improbable'],
895
+ ['able', 'capable'],
896
+ ['unable', 'incapable'],
897
+ ['willing', 'ready'],
898
+ ['unwilling', 'reluctant'],
899
+ ['ready', 'prepared'],
900
+ ['unready', 'unprepared'],
901
+ ['happy', 'content'],
902
+ ['unhappy', 'discontent'],
903
+ ['pleased', 'satisfied'],
904
+ ['displeased', 'dissatisfied'],
905
+ ['excited', 'enthusiastic'],
906
+ ['bored', 'uninterested'],
907
+ ['interested', 'intrigued'],
908
+ ['disinterested', 'indifferent'],
909
+ ['surprised', 'astonished'],
910
+ ['unsurprised', 'expectant'],
911
+ ['shocked', 'stunned'],
912
+ ['unshocked', 'unfazed'],
913
+ ['amazed', 'awestruck'],
914
+ ['unamazed', 'unimpressed'],
915
+ ['impressed', 'admiring'],
916
+ ['unimpressed', 'unmoved'],
917
+ ['proud', 'dignified'],
918
+ ['ashamed', 'humiliated'],
919
+ ['confident', 'self-assured'],
920
+ ['insecure', 'self-conscious'],
921
+ ['brave', 'courageous'],
922
+ ['cowardly', 'timid'],
923
+ ['strong', 'resilient'],
924
+ ['weak', 'vulnerable'],
925
+ ['independent', 'self-reliant'],
926
+ ['dependent', 'reliant'],
927
+ ['free', 'unrestricted'],
928
+ ['trapped', 'confined'],
929
+ ['safe', 'secure'],
930
+ ['unsafe', 'dangerous'],
931
+ ['healthy', 'fit'],
932
+ ['unhealthy', 'ill'],
933
+ ['sick', 'ailing'],
934
+ ['well', 'healthy'],
935
+ ['injured', 'wounded'],
936
+ ['healed', 'recovered'],
937
+ ['dead', 'deceased'],
938
+ ['alive', 'living'],
939
+ ['awake', 'alert'],
940
+ ['asleep', 'slumbering'],
941
+ ['tired', 'weary'],
942
+ ['rested', 'refreshed'],
943
+ ['busy', 'occupied'],
944
+ ['free', 'available'],
945
+ ['calm', 'peaceful'],
946
+ ['anxious', 'nervous'],
947
+ ['relaxed', 'at ease'],
948
+ ['stressed', 'tense'],
949
+ ['patient', 'tolerant'],
950
+ ['impatient', 'restless'],
951
+ ['kind', 'compassionate'],
952
+ ['unkind', 'cruel'],
953
+ ['nice', 'pleasant'],
954
+ ['mean', 'nasty'],
955
+ ['friendly', 'amiable'],
956
+ ['unfriendly', 'hostile'],
957
+ ['generous', 'giving'],
958
+ ['selfish', 'greedy'],
959
+ ['honest', 'truthful'],
960
+ ['dishonest', 'deceitful'],
961
+ ['trustworthy', 'reliable'],
962
+ ['untrustworthy', 'unreliable'],
963
+ ['loyal', 'faithful'],
964
+ ['disloyal', 'treacherous'],
965
+ ['responsible', 'accountable'],
966
+ ['irresponsible', 'careless'],
967
+ ['mature', 'grown-up'],
968
+ ['immature', 'childish'],
969
+ ['polite', 'courteous'],
970
+ ['rude', 'impolite'],
971
+ ['respectful', 'considerate'],
972
+ ['disrespectful', 'insolent'],
973
+ ['grateful', 'thankful'],
974
+ ['ungrateful', 'unappreciative'],
975
+ ['humble', 'modest'],
976
+ ['arrogant', 'conceited'],
977
+ ['optimistic', 'hopeful'],
978
+ ['pessimistic', 'doubtful'],
979
+ ['realistic', 'practical'],
980
+ ['unrealistic', 'impractical'],
981
+ ['romantic', 'amorous'],
982
+ ['unromantic', 'unaffectionate'],
983
+ ['sensitive', 'perceptive'],
984
+ ['insensitive', 'obtuse'],
985
+ ['emotional', 'passionate'],
986
+ ['unemotional', 'stoic'],
987
+ ['logical', 'rational'],
988
+ ['illogical', 'irrational'],
989
+ ['intelligent', 'smart'],
990
+ ['unintelligent', 'stupid'],
991
+ ['wise', 'sage'],
992
+ ['foolish', 'unwise'],
993
+ ['educated', 'learned'],
994
+ ['uneducated', 'ignorant'],
995
+ ['experienced', 'seasoned'],
996
+ ['inexperienced', 'naive'],
997
+ ['skilled', 'talented'],
998
+ ['unskilled', 'incompetent'],
999
+ ['creative', 'imaginative'],
1000
+ ['uncreative', 'uninspired'],
1001
+ ['artistic', 'expressive'],
1002
+ ['unartistic', 'dull'],
1003
+ ['musical', 'melodic'],
1004
+ ['unmusical', 'tone-deaf'],
1005
+ ['athletic', 'fit'],
1006
+ ['unathletic', 'clumsy'],
1007
+ ['coordinated', 'graceful'],
1008
+ ['uncoordinated', 'awkward'],
1009
+ ['attractive', 'handsome'],
1010
+ ['unattractive', 'ugly'],
1011
+ ['beautiful', 'gorgeous'],
1012
+ ['plain', 'ordinary'],
1013
+ ['stylish', 'fashionable'],
1014
+ ['unstylish', 'frumpy'],
1015
+ ['clean', 'hygienic'],
1016
+ ['dirty', 'unclean'],
1017
+ ['neat', 'tidy'],
1018
+ ['messy', 'disorganized'],
1019
+ ['organized', 'systematic'],
1020
+ ['disorganized', 'chaotic'],
1021
+ ['efficient', 'productive'],
1022
+ ['inefficient', 'wasteful'],
1023
+ ['effective', 'successful'],
1024
+ ['ineffective', 'unsuccessful'],
1025
+ ['fast', 'quick'],
1026
+ ['slow', 'sluggish'],
1027
+ ['early', 'premature'],
1028
+ ['late', 'delayed'],
1029
+ ['on time', 'punctual'],
1030
+ ['delayed', 'postponed'],
1031
+ ['sudden', 'abrupt'],
1032
+ ['gradual', 'progressive'],
1033
+ ['immediate', 'instant'],
1034
+ ['eventual', 'ultimate'],
1035
+ ['temporary', 'transient'],
1036
+ ['permanent', 'lasting'],
1037
+ ['constant', 'steady'],
1038
+ ['variable', 'changing'],
1039
+ ['regular', 'routine'],
1040
+ ['irregular', 'sporadic'],
1041
+ ['frequent', 'common'],
1042
+ ['infrequent', 'rare'],
1043
+ ['usual', 'typical'],
1044
+ ['unusual', 'atypical'],
1045
+ ['normal', 'standard'],
1046
+ ['abnormal', 'deviant'],
1047
+ ['ordinary', 'mundane'],
1048
+ ['extraordinary', 'remarkable'],
1049
+ ['special', 'exceptional'],
1050
+ ['generic', 'commonplace'],
1051
+ ['unique', 'one-of-a-kind'],
1052
+ ['identical', 'same'],
1053
+ ['different', 'distinct'],
1054
+ ['similar', 'alike'],
1055
+ ['diverse', 'varied'],
1056
+ ['uniform', 'consistent'],
1057
+ ['mixed', 'assorted'],
1058
+ ['pure', 'unadulterated'],
1059
+ ['impure', 'contaminated'],
1060
+ ['natural', 'organic'],
1061
+ ['artificial', 'synthetic'],
1062
+ ['real', 'genuine'],
1063
+ ['fake', 'counterfeit'],
1064
+ ['authentic', 'legitimate'],
1065
+ ['inauthentic', 'phony'],
1066
+ ['original', 'innovative'],
1067
+ ['derivative', 'unoriginal'],
1068
+ ['traditional', 'conventional'],
1069
+ ['modern', 'contemporary'],
1070
+ ['old-fashioned', 'outdated'],
1071
+ ['newfangled', 'novel'],
1072
+ ['current', 'up-to-date'],
1073
+ ['obsolete', 'archaic'],
1074
+ ['timeless', 'eternal'],
1075
+ ['dated', 'passé'],
1076
+ ['futuristic', 'ahead of its time'],
1077
+ ['retro', 'nostalgic'],
1078
+ ['classic', 'time-honored'],
1079
+ ['trendy', 'fashionable'],
1080
+ ['outdated', 'old hat'],
1081
+ ['innovative', 'groundbreaking'],
1082
+ ['conservative', 'traditional'],
1083
+ ['progressive', 'forward-thinking'],
1084
+ ['radical', 'extreme'],
1085
+ ['moderate', 'middle-of-the-road'],
1086
+ ['extreme', 'excessive'],
1087
+ ['balanced', 'even-handed'],
1088
+ ['unbalanced', 'lopsided'],
1089
+ ['fair', 'just'],
1090
+ ['unfair', 'biased'],
1091
+ ['equal', 'equivalent'],
1092
+ ['unequal', 'disproportionate'],
1093
+ ['democratic', 'egalitarian'],
1094
+ ['authoritarian', 'dictatorial'],
1095
+ ['free', 'liberated'],
1096
+ ['oppressed', 'subjugated'],
1097
+ ['independent', 'self-governing'],
1098
+ ['dependent', 'subordinate'],
1099
+ ['sovereign', 'autonomous'],
1100
+ ['colonial', 'dependent'],
1101
+ ['patriotic', 'nationalistic'],
1102
+ ['treasonous', 'seditionous'],
1103
+ ['loyal', 'faithful'],
1104
+ ['disloyal', 'treacherous'],
1105
+ ['faithful', 'devoted'],
1106
+ ['unfaithful', 'adulterous'],
1107
+ ['trustworthy', 'dependable'],
1108
+ ['untrustworthy', 'deceitful'],
1109
+ ['honest', 'truthful'],
1110
+ ['dishonest', 'deceptive'],
1111
+ ['sincere', 'genuine'],
1112
+ ['insincere', 'hypocritical'],
1113
+ ['transparent', 'open'],
1114
+ ['secretive', 'clandestine'],
1115
+ ['outspoken', 'vocal'],
1116
+ ['reserved', 'reticent'],
1117
+ ['bold', 'daring'],
1118
+ ['timid', 'shy'],
1119
+ ['confident', 'self-assured'],
1120
+ ['insecure', 'self-doubting'],
1121
+ ['assertive', 'forceful'],
1122
+ ['passive', 'submissive'],
1123
+ ['aggressive', 'hostile'],
1124
+ ['peaceful', 'nonviolent'],
1125
+ ['violent', 'aggressive'],
1126
+ ['calm', 'serene'],
1127
+ ['anxious', 'nervous'],
1128
+ ['relaxed', 'at ease'],
1129
+ ['stressed', 'tense'],
1130
+ ['patient', 'tolerant'],
1131
+ ['impatient', 'restless'],
1132
+ ['understanding', 'compassionate'],
1133
+ ['unsympathetic', 'callous'],
1134
+ ['empathetic', 'caring'],
1135
+ ['indifferent', 'apathetic'],
1136
+ ['kind', 'benevolent'],
1137
+ ['cruel', 'mean'],
1138
+ ['gentle', 'tender'],
1139
+ ['rough', 'harsh'],
1140
+ ['loving', 'affectionate'],
1141
+ ['hateful', 'spiteful'],
1142
+ ['friendly', 'amiable'],
1143
+ ['unfriendly', 'hostile'],
1144
+ ['sociable', 'gregarious'],
1145
+ ['antisocial', 'reclusive'],
1146
+ ['outgoing', 'extroverted'],
1147
+ ['introverted', 'shy'],
1148
+ ['fun', 'enjoyable'],
1149
+ ['boring', 'tedious'],
1150
+ ['exciting', 'thrilling'],
1151
+ ['dull', 'uninteresting'],
1152
+ ['interesting', 'engaging'],
1153
+ ['uninteresting', 'mundane'],
1154
+ ['entertaining', 'amusing'],
1155
+ ['tedious', 'monotonous'],
1156
+ ['humorous', 'funny'],
1157
+ ['serious', 'grave'],
1158
+ ['playful', 'frolicsome'],
1159
+ ['solemn', 'somber'],
1160
+ ['cheerful', 'happy'],
1161
+ ['gloomy', 'morose'],
1162
+ ['optimistic', 'hopeful'],
1163
+ ['pessimistic', 'doubtful'],
1164
+ ['realistic', 'practical'],
1165
+ ['unrealistic', 'impractical'],
1166
+ ['romantic', 'amorous'],
1167
+ ['unromantic', 'unaffectionate'],
1168
+ ['sentimental', 'nostalgic'],
1169
+ ['unsentimental', 'pragmatic'],
1170
+ ['spiritual', 'devout'],
1171
+ ['secular', 'worldly'],
1172
+ ['religious', 'pious'],
1173
+ ['irreligious', 'atheistic'],
1174
+ ['moral', 'ethical'],
1175
+ ['immoral', 'unethical'],
1176
+ ['virtuous', 'righteous'],
1177
+ ['sinful', 'wicked'],
1178
+ ['pure', 'innocent'],
1179
+ ['impure', 'corrupt'],
1180
+ ['chaste', 'celibate'],
1181
+ ['promiscuous', 'licentious'],
1182
+ ['modest', 'humble'],
1183
+ ['immodest', 'brazen'],
1184
+ ['decent', 'proper'],
1185
+ ['indecent', 'obscene'],
1186
+ ['polite', 'courteous'],
1187
+ ['rude', 'impolite'],
1188
+ ['respectful', 'considerate'],
1189
+ ['disrespectful', 'insolent'],
1190
+ ['grateful', 'thankful'],
1191
+ ['ungrateful', 'unappreciative'],
1192
+ ['humble', 'modest'],
1193
+ ['arrogant', 'conceited'],
1194
+ ['proud', 'dignified'],
1195
+ ['ashamed', 'humiliated'],
1196
+ ['confident', 'self-assured'],
1197
+ ['insecure', 'self-conscious'],
1198
+ ['brave', 'courageous'],
1199
+ ['cowardly', 'timid'],
1200
+ ['strong', 'resilient'],
1201
+ ['weak', 'vulnerable'],
1202
+ ['independent', 'self-reliant'],
1203
+ ['dependent', 'reliant'],
1204
+ ['free', 'unrestricted'],
1205
+ ['trapped', 'confined'],
1206
+ ['safe', 'secure'],
1207
+ ['unsafe', 'dangerous'],
1208
+ ['healthy', 'fit'],
1209
+ ['unhealthy', 'ill'],
1210
+ ['sick', 'ailing'],
1211
+ ['well', 'healthy'],
1212
+ ['injured', 'wounded'],
1213
+ ['healed', 'recovered'],
1214
+ ['dead', 'deceased'],
1215
+ ['alive', 'living'],
1216
+ ['awake', 'alert'],
1217
+ ['asleep', 'slumbering'],
1218
+ ['tired', 'weary'],
1219
+ ['rested', 'refreshed'],
1220
+ ['busy', 'occupied'],
1221
+ ['free', 'available'],
1222
+ ['calm', 'peaceful'],
1223
+ ['anxious', 'nervous'],
1224
+ ['relaxed', 'at ease'],
1225
+ ['stressed', 'tense'],
1226
+ ['patient', 'tolerant'],
1227
+ ['impatient', 'restless'],
1228
+ ['kind', 'compassionate'],
1229
+ ['unkind', 'cruel'],
1230
+ ['nice', 'pleasant'],
1231
+ ['mean', 'nasty'],
1232
+ ['friendly', 'amiable'],
1233
+ ['unfriendly', 'hostile'],
1234
+ ['generous', 'giving'],
1235
+ ['selfish', 'greedy'],
1236
+ ['honest', 'truthful'],
1237
+ ['dishonest', 'deceitful'],
1238
+ ['trustworthy', 'reliable'],
1239
+ ['untrustworthy', 'unreliable'],
1240
+ ['loyal', 'faithful'],
1241
+ ['disloyal', 'treacherous'],
1242
+ ['responsible', 'accountable'],
1243
+ ['irresponsible', 'careless'],
1244
+ ['mature', 'grown-up'],
1245
+ ['immature', 'childish'],
1246
+ ['polite', 'courteous'],
1247
+ ['rude', 'impolite'],
1248
+ ['respectful', 'considerate'],
1249
+ ['disrespectful', 'insolent'],
1250
+ ['grateful', 'thankful'],
1251
+ ['ungrateful', 'unappreciative'],
1252
+ ['humble', 'modest'],
1253
+ ['arrogant', 'conceited'],
1254
+ ['optimistic', 'hopeful'],
1255
+ ['pessimistic', 'doubtful'],
1256
+ ['realistic', 'practical'],
1257
+ ['unrealistic', 'impractical'],
1258
+ ['romantic', 'amorous'],
1259
+ ['unromantic', 'unaffectionate'],
1260
+ ['sensitive', 'perceptive'],
1261
+ ['insensitive', 'obtuse'],
1262
+ ['emotional', 'passionate'],
1263
+ ['unemotional', 'stoic'],
1264
+ ['logical', 'rational'],
1265
+ ['illogical', 'irrational'],
1266
+ ['intelligent', 'smart'],
1267
+ ['unintelligent', 'stupid'],
1268
+ ['wise', 'sage'],
1269
+ ['foolish', 'unwise'],
1270
+ ['educated', 'learned'],
1271
+ ['uneducated', 'ignorant'],
1272
+ ['experienced', 'seasoned'],
1273
+ ['inexperienced', 'naive'],
1274
+ ['skilled', 'talented'],
1275
+ ['unskilled', 'incompetent'],
1276
+ ['creative', 'imaginative'],
1277
+ ['uncreative', 'uninspired'],
1278
+ ['artistic', 'expressive'],
1279
+ ['unartistic', 'dull'],
1280
+ ['musical', 'melodic'],
1281
+ ['unmusical', 'tone-deaf'],
1282
+ ['athletic', 'fit'],
1283
+ ['unathletic', 'clumsy'],
1284
+ ['coordinated', 'graceful'],
1285
+ ['uncoordinated', 'awkward'],
1286
+ ['attractive', 'handsome'],
1287
+ ['unattractive', 'ugly'],
1288
+ ['beautiful', 'gorgeous'],
1289
+ ['plain', 'ordinary'],
1290
+ ['stylish', 'fashionable'],
1291
+ ['unstylish', 'frumpy'],
1292
+ ['clean', 'hygienic'],
1293
+ ['dirty', 'unclean'],
1294
+ ['neat', 'tidy'],
1295
+ ['messy', 'disorganized'],
1296
+ ['organized', 'systematic'],
1297
+ ['disorganized', 'chaotic'],
1298
+ ['efficient', 'productive'],
1299
+ ['inefficient', 'wasteful'],
1300
+ ['effective', 'successful'],
1301
+ ['ineffective', 'unsuccessful'],
1302
+ ['fast', 'quick'],
1303
+ ['slow', 'sluggish'],
1304
+ ['early', 'premature'],
1305
+ ['late', 'delayed'],
1306
+ ['on time', 'punctual'],
1307
+ ['delayed', 'postponed'],
1308
+ ['sudden', 'abrupt'],
1309
+ ['gradual', 'progressive'],
1310
+ ['immediate', 'instant'],
1311
+ ['eventual', 'ultimate'],
1312
+ ['temporary', 'transient'],
1313
+ ['permanent', 'lasting'],
1314
+ ['constant', 'steady'],
1315
+ ['variable', 'changing'],
1316
+ ['regular', 'routine'],
1317
+ ['irregular', 'sporadic'],
1318
+ ['frequent', 'common'],
1319
+ ['infrequent', 'rare'],
1320
+ ['usual', 'typical'],
1321
+ ['unusual', 'atypical'],
1322
+ ['normal', 'standard'],
1323
+ ['abnormal', 'deviant'],
1324
+ ['ordinary', 'mundane'],
1325
+ ['extraordinary', 'remarkable'],
1326
+ ['special', 'exceptional'],
1327
+ ['generic', 'commonplace'],
1328
+ ['unique', 'one-of-a-kind'],
1329
+ ['identical', 'same'],
1330
+ ['different', 'distinct'],
1331
+ ['similar', 'alike'],
1332
+ ['diverse', 'varied'],
1333
+ ['uniform', 'consistent'],
1334
+ ['mixed', 'assorted'],
1335
+ ['pure', 'unadulterated'],
1336
+ ['impure', 'contaminated'],
1337
+ ['natural', 'organic'],
1338
+ ['artificial', 'synthetic'],
1339
+ ['real', 'genuine'],
1340
+ ['fake', 'counterfeit'],
1341
+ ['authentic', 'legitimate'],
1342
+ ['inauthentic', 'phony'],
1343
+ ['original', 'innovative'],
1344
+ ['derivative', 'unoriginal'],
1345
+ ['traditional', 'conventional'],
1346
+ ['modern', 'contemporary'],
1347
+ ['old-fashioned', 'outdated'],
1348
+ ['newfangled', 'novel'],
1349
+ ['current', 'up-to-date'],
1350
+ ['obsolete', 'archaic'],
1351
+ ['timeless', 'eternal'],
1352
+ ['dated', 'passé'],
1353
+ ['futuristic', 'ahead of its time'],
1354
+ ['retro', 'nostalgic'],
1355
+ ['classic', 'time-honored'],
1356
+ ['trendy', 'fashionable'],
1357
+ ['outdated', 'old hat'],
1358
+ ['innovative', 'groundbreaking'],
1359
+ ['conservative', 'traditional'],
1360
+ ['progressive', 'forward-thinking'],
1361
+ ['radical', 'extreme'],
1362
+ ['moderate', 'middle-of-the-road'],
1363
+ ['extreme', 'excessive'],
1364
+ ['balanced', 'even-handed'],
1365
+ ['unbalanced', 'lopsided'],
1366
+ ['fair', 'just'],
1367
+ ['unfair', 'biased'],
1368
+ ['equal', 'equivalent'],
1369
+ ['unequal', 'disproportionate'],
1370
+ ['democratic', 'egalitarian'],
1371
+ ['authoritarian', 'dictatorial'],
1372
+ ['free', 'liberated'],
1373
+ ['oppressed', 'subjugated'],
1374
+ ['independent', 'self-governing'],
1375
+ ['dependent', 'subordinate'],
1376
+ ['sovereign', 'autonomous'],
1377
+ ['colonial', 'dependent'],
1378
+ ['patriotic', 'nationalistic'],
1379
+ ['treasonous', 'seditionous'],
1380
+ ['loyal', 'faithful'],
1381
+ ['disloyal', 'treacherous'],
1382
+ ['faithful', 'devoted'],
1383
+ ['unfaithful', 'adulterous'],
1384
+ ['trustworthy', 'dependable'],
1385
+ ['untrustworthy', 'deceitful'],
1386
+ ['honest', 'truthful'],
1387
+ ['dishonest', 'deceptive'],
1388
+ ['sincere', 'genuine'],
1389
+ ['insincere', 'hypocritical'],
1390
+ ['transparent', 'open'],
1391
+ ['secretive', 'clandestine'],
1392
+ ['outspoken', 'vocal'],
1393
+ ['reserved', 'reticent'],
1394
+ ['bold', 'daring'],
1395
+ ['timid', 'shy'],
1396
+ ['confident', 'self-assured'],
1397
+ ['insecure', 'self-doubting'],
1398
+ ['assertive', 'forceful'],
1399
+ ['passive', 'submissive'],
1400
+ ['aggressive', 'hostile'],
1401
+ ['peaceful', 'nonviolent'],
1402
+ ['violent', 'aggressive'],
1403
+ ['calm', 'serene'],
1404
+ ['anxious', 'nervous'],
1405
+ ['relaxed', 'at ease'],
1406
+ ['stressed', 'tense'],
1407
+ ['patient', 'tolerant'],
1408
+ ['impatient', 'restless'],
1409
+ ['understanding', 'compassionate'],
1410
+ ['unsympathetic', 'callous'],
1411
+ ['empathetic', 'caring'],
1412
+ ['indifferent', 'apathetic'],
1413
+ ['kind', 'benevolent'],
1414
+ ['cruel', 'mean'],
1415
+ ['gentle', 'tender'],
1416
+ ['rough', 'harsh'],
1417
+ ['loving', 'affectionate'],
1418
+ ['hateful', 'spiteful'],
1419
+ ['friendly', 'amiable'],
1420
+ ['unfriendly', 'hostile'],
1421
+ ['sociable', 'gregarious'],
1422
+ ['antisocial', 'reclusive'],
1423
+ ['outgoing', 'extroverted'],
1424
+ ['introverted', 'shy'],
1425
+ ['fun', 'enjoyable'],
1426
+ ['boring', 'tedious'],
1427
+ ['exciting', 'thrilling'],
1428
+ ['dull', 'uninteresting'],
1429
+ ['interesting', 'engaging'],
1430
+ ['uninteresting', 'mundane'],
1431
+ ['entertaining', 'amusing'],
1432
+ ['tedious', 'monotonous'],
1433
+ ['humorous', 'funny'],
1434
+ ['serious', 'grave'],
1435
+ ['playful', 'frolicsome'],
1436
+ ['solemn', 'somber'],
1437
+ ['cheerful', 'happy'],
1438
+ ['gloomy', 'morose'],
1439
+ ['optimistic', 'hopeful'],
1440
+ ['pessimistic', 'doubtful'],
1441
+ ['realistic', 'practical'],
1442
+ ['unrealistic', 'impractical'],
1443
+ ['romantic', 'amorous'],
1444
+ ['unromantic', 'unaffectionate'],
1445
+ ['sentimental', 'nostalgic'],
1446
+ ['unsentimental', 'pragmatic'],
1447
+ ['spiritual', 'devout'],
1448
+ ['secular', 'worldly'],
1449
+ ['religious', 'pious'],
1450
+ ['irreligious', 'atheistic'],
1451
+ ['moral', 'ethical'],
1452
+ ['immoral', 'unethical'],
1453
+ ['virtuous', 'righteous'],
1454
+ ['sinful', 'wicked'],
1455
+ ['pure', 'innocent'],
1456
+ ['impure', 'corrupt'],
1457
+ ['chaste', 'celibate'],
1458
+ ['promiscuous', 'licentious'],
1459
+ ['modest', 'humble'],
1460
+ ['immodest', 'brazen'],
1461
+ ['decent', 'proper'],
1462
+ ['indecent', 'obscene'],
1463
+ ['polite', 'courteous'],
1464
+ ['rude', 'impolite'],
1465
+ ['respectful', 'considerate'],
1466
+ ['disrespectful', 'insolent'],
1467
+ ['grateful', 'thankful'],
1468
+ ['ungrateful', 'unappreciative'],
1469
+ ['humble', 'modest'],
1470
+ ['arrogant', 'conceited'],
1471
+ ['proud', 'dignified'],
1472
+ ['ashamed', 'humiliated'],
1473
+ ['confident', 'self-assured'],
1474
+ ['insecure', 'self-conscious'],
1475
+ ['brave', 'courageous'],
1476
+ ['cowardly', 'timid'],
1477
+ ['strong', 'resilient'],
1478
+ ['weak', 'vulnerable'],
1479
+ ['independent', 'self-reliant'],
1480
+ ['dependent', 'reliant'],
1481
+ ['free', 'unrestricted'],
1482
+ ['trapped', 'confined'],
1483
+ ['safe', 'secure'],
1484
+ ['unsafe', 'dangerous'],
1485
+ ['healthy', 'fit'],
1486
+ ['unhealthy', 'ill'],
1487
+ ['sick', 'ailing'],
1488
+ ['well', 'healthy'],
1489
+ ['injured', 'wounded'],
1490
+ ['healed', 'recovered'],
1491
+ ['dead', 'deceased'],
1492
+ ['alive', 'living'],
1493
+ ['awake', 'alert'],
1494
+ ['asleep', 'slumbering'],
1495
+ ['tired', 'weary'],
1496
+ ['rested', 'refreshed'],
1497
+ ['busy', 'occupied'],
1498
+ ['free', 'available'],
1499
+ ['calm', 'peaceful'],
1500
+ ['anxious', 'nervous'],
1501
+ ['relaxed', 'at ease'],
1502
+ ['stressed', 'tense'],
1503
+ ['patient', 'tolerant'],
1504
+ ['impatient', 'restless'],
1505
+ ['kind', 'compassionate'],
1506
+ ['unkind', 'cruel'],
1507
+ ['nice', 'pleasant'],
1508
+ ['mean', 'nasty'],
1509
+ ['friendly', 'amiable'],
1510
+ ['unfriendly', 'hostile'],
1511
+ ['generous', 'giving'],
1512
+ ['selfish', 'greedy'],
1513
+ ['honest', 'truthful'],
1514
+ ['dishonest', 'deceitful'],
1515
+ ['trustworthy', 'reliable'],
1516
+ ['untrustworthy', 'unreliable'],
1517
+ ['loyal', 'faithful'],
1518
+ ['disloyal', 'treacherous'],
1519
+ ['responsible', 'accountable'],
1520
+ ['irresponsible', 'careless'],
1521
+ ['mature', 'grown-up'],
1522
+ ['immature', 'childish'],
1523
+ ['polite', 'courteous'],
1524
+ ['rude', 'impolite'],
1525
+ ['respectful', 'considerate'],
1526
+ ['disrespectful', 'insolent'],
1527
+ ['grateful', 'thankful'],
1528
+ ['ungrateful', 'unappreciative'],
1529
+ ['humble', 'modest'],
1530
+ ['arrogant', 'conceited'],
1531
+ ['optimistic', 'hopeful'],
1532
+ ['pessimistic', 'doubtful'],
1533
+ ['realistic', 'practical'],
1534
+ ['unrealistic', 'impractical'],
1535
+ ['romantic', 'amorous'],
1536
+ ['unromantic', 'unaffectionate'],
1537
+ ['sensitive', 'perceptive'],
1538
+ ['insensitive', 'obtuse'],
1539
+ ['emotional', 'passionate'],
1540
+ ['unemotional', 'stoic'],
1541
+ ['logical', 'rational'],
1542
+ ['illogical', 'irrational'],
1543
+ ['intelligent', 'smart'],
1544
+ ['unintelligent', 'stupid'],
1545
+ ['wise', 'sage'],
1546
+ ['foolish', 'unwise'],
1547
+ ['educated', 'learned'],
1548
+ ['uneducated', 'ignorant'],
1549
+ ['experienced', 'seasoned'],
1550
+ ['inexperienced', 'naive'],
1551
+ ['skilled', 'talented'],
1552
+ ['unskilled', 'incompetent'],
1553
+ ['creative', 'imaginative'],
1554
+ ['uncreative', 'uninspired'],
1555
+ ['artistic', 'expressive'],
1556
+ ['unartistic', 'dull'],
1557
+ ['musical', 'melodic'],
1558
+ ['unmusical', 'tone-deaf'],
1559
+ ['athletic', 'fit'],
1560
+ ['unathletic', 'clumsy'],
1561
+ ['coordinated', 'graceful'],
1562
+ ['uncoordinated', 'awkward'],
1563
+ ['attractive', 'handsome'],
1564
+ ['unattractive', 'ugly'],
1565
+ ['beautiful', 'gorgeous'],
1566
+ ['plain', 'ordinary'],
1567
+ ['stylish', 'fashionable'],
1568
+ ['unstylish', 'frumpy'],
1569
+ ['clean', 'hygienic'],
1570
+ ['dirty', 'unclean'],
1571
+ ['neat', 'tidy'],
1572
+ ['messy', 'disorganized'],
1573
+ ['organized', 'systematic'],
1574
+ ['disorganized', 'chaotic'],
1575
+ ['efficient', 'productive'],
1576
+ ['inefficient', 'wasteful'],
1577
+ ['effective', 'successful'],
1578
+ ['ineffective', 'unsuccessful'],
1579
+ ['fast', 'quick'],
1580
+ ['slow', 'sluggish'],
1581
+ ['early', 'premature'],
1582
+ ['late', 'delayed'],
1583
+ ['on time', 'punctual'],
1584
+ ['delayed', 'postponed'],
1585
+ ['sudden', 'abrupt'],
1586
+ ['gradual', 'progressive'],
1587
+ ['immediate', 'instant'],
1588
+ ['eventual', 'ultimate'],
1589
+ ['temporary', 'transient'],
1590
+ ['permanent', 'lasting'],
1591
+ ['constant', 'steady'],
1592
+ ['variable', 'changing'],
1593
+ ['regular', 'routine'],
1594
+ ['irregular', 'sporadic'],
1595
+ ['frequent', 'common'],
1596
+ ['infrequent', 'rare'],
1597
+ ['usual', 'typical'],
1598
+ ['unusual', 'atypical'],
1599
+ ['normal', 'standard'],
1600
+ ['abnormal', 'deviant'],
1601
+ ['ordinary', 'mundane'],
1602
+ ['extraordinary', 'remarkable'],
1603
+ ['special', 'exceptional'],
1604
+ ['generic', 'commonplace'],
1605
+ ['unique', 'one-of-a-kind'],
1606
+ ['identical', 'same'],
1607
+ ['different', 'distinct'],
1608
+ ['similar', 'alike'],
1609
+ ['diverse', 'varied'],
1610
+ ['uniform', 'consistent'],
1611
+ ['mixed', 'assorted'],
1612
+ ['pure', 'unadulterated'],
1613
+ ['impure', 'contaminated'],
1614
+ ['natural', 'organic'],
1615
+ ['artificial', 'synthetic'],
1616
+ ['real', 'genuine'],
1617
+ ['fake', 'counterfeit'],
1618
+ ['authentic', 'legitimate'],
1619
+ ['inauthentic', 'phony'],
1620
+ ['original', 'innovative'],
1621
+ ['derivative', 'unoriginal'],
1622
+ ['traditional', 'conventional'],
1623
+ ['modern', 'contemporary'],
1624
+ ['old-fashioned', 'outdated'],
1625
+ ['newfangled', 'novel'],
1626
+ ['current', 'up-to-date'],
1627
+ ['obsolete', 'archaic'],
1628
+ ['timeless', 'eternal'],
1629
+ ['dated', 'passé'],
1630
+ ['futuristic', 'ahead of its time'],
1631
+ ['retro', 'nostalgic'],
1632
+ ['classic', 'time-honored'],
1633
+ ['trendy', 'fashionable'],
1634
+ ['outdated', 'old hat'],
1635
+ ['innovative', 'groundbreaking'],
1636
+ ['conservative', 'traditional'],
1637
+ ['progressive', 'forward-thinking'],
1638
+ ['radical', 'extreme'],
1639
+ ['moderate', 'middle-of-the-road'],
1640
+ ['extreme', 'excessive'],
1641
+ ['balanced', 'even-handed'],
1642
+ ['unbalanced', 'lopsided'],
1643
+ ['fair', 'just'],
1644
+ ['unfair', 'biased'],
1645
+ ['equal', 'equivalent'],
1646
+ ['unequal', 'disproportionate'],
1647
+ ['democratic', 'egalitarian'],
1648
+ ['authoritarian', 'dictatorial'],
1649
+ ['free', 'liberated'],
1650
+ ['oppressed', 'subjugated'],
1651
+ ['independent', 'self-governing'],
1652
+ ['dependent', 'subordinate'],
1653
+ ['sovereign', 'autonomous'],
1654
+ ['colonial', 'dependent'],
1655
+ ['patriotic', 'nationalistic'],
1656
+ ['treasonous', 'seditionous'],
1657
+ ['loyal', 'faithful'],
1658
+ ['disloyal', 'treacherous'],
1659
+ ['faithful', 'devoted'],
1660
+ ['unfaithful', 'adulterous'],
1661
+ ['trustworthy', 'dependable'],
1662
+ ['untrustworthy', 'deceitful'],
1663
+ ['honest', 'truthful'],
1664
+ ['dishonest', 'deceptive'],
1665
+ ['sincere', 'genuine'],
1666
+ ['insincere', 'hypocritical'],
1667
+ ['transparent', 'open'],
1668
+ ['secretive', 'clandestine'],
1669
+ ['outspoken', 'vocal'],
1670
+ ['reserved', 'reticent'],
1671
+ ['bold', 'daring'],
1672
+ ['timid', 'shy'],
1673
+ ['confident', 'self-assured'],
1674
+ ['insecure', 'self-doubting'],
1675
+ ['assertive', 'forceful'],
1676
+ ['passive', 'submissive'],
1677
+ ['aggressive', 'hostile'],
1678
+ ['peaceful', 'nonviolent'],
1679
+ ['violent', 'aggressive'],
1680
+ ['calm', 'serene'],
1681
+ ['anxious', 'nervous'],
1682
+ ['relaxed', 'at ease'],
1683
+ ['stressed', 'tense'],
1684
+ ['patient', 'tolerant'],
1685
+ ['impatient', 'restless'],
1686
+ ['understanding', 'compassionate'],
1687
+ ['unsympathetic', 'callous'],
1688
+ ['empathetic', 'caring'],
1689
+ ['indifferent', 'apathetic'],
1690
+ ['kind', 'benevolent'],
1691
+ ['cruel', 'mean'],
1692
+ ['gentle', 'tender'],
1693
+ ['rough', 'harsh'],
1694
+ ['loving', 'affectionate'],
1695
+ ['hateful', 'spiteful'],
1696
+ ['friendly', 'amiable'],
1697
+ ['unfriendly', 'hostile'],
1698
+ ['sociable', 'gregarious'],
1699
+ ['antisocial', 'reclusive'],
1700
+ ['outgoing', 'extroverted'],
1701
+ ['introverted', 'shy'],
1702
+ ['fun', 'enjoyable'],
1703
+ ['boring', 'tedious'],
1704
+ ['exciting', 'thrilling'],
1705
+ ['dull', 'uninteresting'],
1706
+ ['interesting', 'engaging'],
1707
+ ['uninteresting', 'mundane'],
1708
+ ['entertaining', 'amusing'],
1709
+ ['tedious', 'monotonous'],
1710
+ ['humorous', 'funny'],
1711
+ ['serious', 'grave'],
1712
+ ['playful', 'frolicsome'],
1713
+ ['solemn', 'somber'],
1714
+ ['cheerful', 'happy'],
1715
+ ['gloomy', 'morose'],
1716
+ ['optimistic', 'hopeful'],
1717
+ ['pessimistic', 'doubtful'],
1718
+ ['realistic', 'practical'],
1719
+ ['unrealistic', 'impractical'],
1720
+ ['romantic', 'amorous'],
1721
+ ['unrom
1722
+ </html>
prompts.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ Actually make it useable and working app