@gonzih/debate-coach 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +250 -0
- package/SKILL.md +91 -0
- package/dist/claude.d.ts +26 -0
- package/dist/claude.d.ts.map +1 -0
- package/dist/claude.js +285 -0
- package/dist/claude.js.map +1 -0
- package/dist/database.d.ts +19 -0
- package/dist/database.d.ts.map +1 -0
- package/dist/database.js +157 -0
- package/dist/database.js.map +1 -0
- package/dist/fallacies.d.ts +11 -0
- package/dist/fallacies.d.ts.map +1 -0
- package/dist/fallacies.js +207 -0
- package/dist/fallacies.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +571 -0
- package/dist/index.js.map +1 -0
- package/dist/session.d.ts +22 -0
- package/dist/session.d.ts.map +1 -0
- package/dist/session.js +104 -0
- package/dist/session.js.map +1 -0
- package/dist/topics.d.ts +8 -0
- package/dist/topics.d.ts.map +1 -0
- package/dist/topics.js +463 -0
- package/dist/topics.js.map +1 -0
- package/dist/types.d.ts +83 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/llms.txt +104 -0
- package/package.json +50 -0
package/dist/session.js
ADDED
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { randomUUID } from "crypto";
|
|
2
|
+
// In-memory session store
|
|
3
|
+
const sessions = new Map();
|
|
4
|
+
export function createSession(params) {
|
|
5
|
+
const id = randomUUID();
|
|
6
|
+
const proPosition = params.position ?? "FOR the proposition";
|
|
7
|
+
const conPosition = "AGAINST the proposition";
|
|
8
|
+
const session = {
|
|
9
|
+
id,
|
|
10
|
+
profileId: params.profileId,
|
|
11
|
+
topic: params.topic,
|
|
12
|
+
proposition: params.proposition,
|
|
13
|
+
startedAt: new Date().toISOString(),
|
|
14
|
+
phase: "PRO_ARGUMENTS",
|
|
15
|
+
proPosition,
|
|
16
|
+
conPosition,
|
|
17
|
+
currentPosition: proPosition,
|
|
18
|
+
proArguments: [],
|
|
19
|
+
conArguments: [],
|
|
20
|
+
};
|
|
21
|
+
sessions.set(id, session);
|
|
22
|
+
return session;
|
|
23
|
+
}
|
|
24
|
+
export function getSession(sessionId) {
|
|
25
|
+
return sessions.get(sessionId);
|
|
26
|
+
}
|
|
27
|
+
export function addArgument(sessionId, argument) {
|
|
28
|
+
const session = requireSession(sessionId);
|
|
29
|
+
if (session.phase === "PRO_ARGUMENTS" ||
|
|
30
|
+
session.phase === "STEELMAN_READY") {
|
|
31
|
+
session.proArguments.push(argument);
|
|
32
|
+
// After 3+ arguments, mark steelman as ready
|
|
33
|
+
if (session.proArguments.length >= 3) {
|
|
34
|
+
session.phase = "STEELMAN_READY";
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
else if (session.phase === "CON_ARGUMENTS" ||
|
|
38
|
+
session.phase === "SYNTHESIS_READY") {
|
|
39
|
+
session.conArguments.push(argument);
|
|
40
|
+
if (session.conArguments.length >= 3) {
|
|
41
|
+
session.phase = "SYNTHESIS_READY";
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
sessions.set(sessionId, session);
|
|
45
|
+
return session;
|
|
46
|
+
}
|
|
47
|
+
export function setSteeleman(sessionId, steelman, keyCounterArguments) {
|
|
48
|
+
const session = requireSession(sessionId);
|
|
49
|
+
session.steelman = steelman;
|
|
50
|
+
session.keyCounterArguments = keyCounterArguments;
|
|
51
|
+
session.phase = "FLIP_READY";
|
|
52
|
+
sessions.set(sessionId, session);
|
|
53
|
+
return session;
|
|
54
|
+
}
|
|
55
|
+
export function flipSides(sessionId) {
|
|
56
|
+
const session = requireSession(sessionId);
|
|
57
|
+
if (session.phase !== "FLIP_READY") {
|
|
58
|
+
throw new Error(`Cannot flip sides in phase: ${session.phase}. First call get_steelman.`);
|
|
59
|
+
}
|
|
60
|
+
session.phase = "CON_ARGUMENTS";
|
|
61
|
+
session.currentPosition = session.conPosition;
|
|
62
|
+
sessions.set(sessionId, session);
|
|
63
|
+
return session;
|
|
64
|
+
}
|
|
65
|
+
export function setSynthesis(sessionId, synthesis) {
|
|
66
|
+
const session = requireSession(sessionId);
|
|
67
|
+
session.synthesis = synthesis;
|
|
68
|
+
session.phase = "COMPLETED";
|
|
69
|
+
sessions.set(sessionId, session);
|
|
70
|
+
return session;
|
|
71
|
+
}
|
|
72
|
+
export function completeSession(sessionId) {
|
|
73
|
+
const session = requireSession(sessionId);
|
|
74
|
+
session.phase = "COMPLETED";
|
|
75
|
+
sessions.set(sessionId, session);
|
|
76
|
+
return session;
|
|
77
|
+
}
|
|
78
|
+
export function deleteSession(sessionId) {
|
|
79
|
+
sessions.delete(sessionId);
|
|
80
|
+
}
|
|
81
|
+
function requireSession(sessionId) {
|
|
82
|
+
const session = sessions.get(sessionId);
|
|
83
|
+
if (!session) {
|
|
84
|
+
throw new Error(`Session ${sessionId} not found. Start a new debate with start_debate.`);
|
|
85
|
+
}
|
|
86
|
+
return session;
|
|
87
|
+
}
|
|
88
|
+
export function getSessionStats(session) {
|
|
89
|
+
const proArgs = session.proArguments;
|
|
90
|
+
const conArgs = session.conArguments;
|
|
91
|
+
const avgScore = (args) => args.length === 0
|
|
92
|
+
? 0
|
|
93
|
+
: args.reduce((sum, a) => sum + a.score.total, 0) / args.length;
|
|
94
|
+
const allArgs = [...proArgs, ...conArgs];
|
|
95
|
+
const fallaciesTotal = allArgs.reduce((sum, a) => sum + a.fallacies.length, 0);
|
|
96
|
+
return {
|
|
97
|
+
proScore: Math.round(avgScore(proArgs) * 10) / 10,
|
|
98
|
+
conScore: Math.round(avgScore(conArgs) * 10) / 10,
|
|
99
|
+
fallaciesCaught: fallaciesTotal,
|
|
100
|
+
fallaciesTotal,
|
|
101
|
+
didFlip: conArgs.length > 0,
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
|
package/dist/topics.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Topic } from "./types.js";
|
|
2
|
+
export declare const TOPICS: Topic[];
|
|
3
|
+
export declare function getTopicsByCategory(category?: string): Topic[];
|
|
4
|
+
export declare function getTopicsByAgeGroup(ageGroup?: string): Topic[];
|
|
5
|
+
export declare function filterTopics(category?: string, ageGroup?: string): Topic[];
|
|
6
|
+
export declare const CATEGORIES: string[];
|
|
7
|
+
export declare const AGE_GROUPS: string[];
|
|
8
|
+
//# sourceMappingURL=topics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"topics.d.ts","sourceRoot":"","sources":["../src/topics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,eAAO,MAAM,MAAM,EAAE,KAAK,EAgczB,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE,CAG9D;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE,CAG9D;AAED,wBAAgB,YAAY,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,EAAE,CAK1E;AAED,eAAO,MAAM,UAAU,UAA4C,CAAC;AACpE,eAAO,MAAM,UAAU,UAA4C,CAAC"}
|
package/dist/topics.js
ADDED
|
@@ -0,0 +1,463 @@
|
|
|
1
|
+
export const TOPICS = [
|
|
2
|
+
// Social/Ethical
|
|
3
|
+
{
|
|
4
|
+
id: "social-media-age-limit",
|
|
5
|
+
title: "Social media age limits",
|
|
6
|
+
proposition: "Social media platforms should be banned for users under 18",
|
|
7
|
+
category: "social",
|
|
8
|
+
ageGroup: "teens",
|
|
9
|
+
difficulty: "easy",
|
|
10
|
+
tags: ["technology", "youth", "mental health", "regulation"],
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
id: "ai-in-schools",
|
|
14
|
+
title: "AI in education",
|
|
15
|
+
proposition: "AI tools like ChatGPT should be permitted and integrated into school curricula",
|
|
16
|
+
category: "social",
|
|
17
|
+
ageGroup: "teens",
|
|
18
|
+
difficulty: "medium",
|
|
19
|
+
tags: ["AI", "education", "technology"],
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
id: "mandatory-voting",
|
|
23
|
+
title: "Mandatory voting",
|
|
24
|
+
proposition: "Voting should be compulsory for all eligible citizens",
|
|
25
|
+
category: "social",
|
|
26
|
+
ageGroup: "general",
|
|
27
|
+
difficulty: "medium",
|
|
28
|
+
tags: ["democracy", "civic duty", "rights"],
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
id: "universal-basic-income",
|
|
32
|
+
title: "Universal Basic Income",
|
|
33
|
+
proposition: "Every citizen should receive a guaranteed monthly income from the government regardless of employment status",
|
|
34
|
+
category: "social",
|
|
35
|
+
ageGroup: "general",
|
|
36
|
+
difficulty: "hard",
|
|
37
|
+
tags: ["economics", "welfare", "automation"],
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
id: "four-day-work-week",
|
|
41
|
+
title: "Four-day work week",
|
|
42
|
+
proposition: "The standard work week should be reduced to four days without a reduction in pay",
|
|
43
|
+
category: "social",
|
|
44
|
+
ageGroup: "general",
|
|
45
|
+
difficulty: "easy",
|
|
46
|
+
tags: ["work", "economics", "wellbeing"],
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
id: "smartphone-ban-schools",
|
|
50
|
+
title: "Smartphones in schools",
|
|
51
|
+
proposition: "Smartphones should be banned in schools during school hours",
|
|
52
|
+
category: "social",
|
|
53
|
+
ageGroup: "teens",
|
|
54
|
+
difficulty: "easy",
|
|
55
|
+
tags: ["technology", "education", "youth"],
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
id: "drug-decriminalization",
|
|
59
|
+
title: "Drug decriminalization",
|
|
60
|
+
proposition: "Personal drug use should be decriminalized and treated as a public health issue rather than a criminal one",
|
|
61
|
+
category: "social",
|
|
62
|
+
ageGroup: "general",
|
|
63
|
+
difficulty: "hard",
|
|
64
|
+
tags: ["drugs", "criminal justice", "public health"],
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
id: "affirmative-action",
|
|
68
|
+
title: "Affirmative action",
|
|
69
|
+
proposition: "Universities should use race as a factor in admissions decisions to promote diversity",
|
|
70
|
+
category: "social",
|
|
71
|
+
ageGroup: "general",
|
|
72
|
+
difficulty: "hard",
|
|
73
|
+
tags: ["education", "race", "equity"],
|
|
74
|
+
},
|
|
75
|
+
// Science/Environment
|
|
76
|
+
{
|
|
77
|
+
id: "nuclear-energy",
|
|
78
|
+
title: "Nuclear energy",
|
|
79
|
+
proposition: "Nuclear power should be a central part of the strategy to combat climate change",
|
|
80
|
+
category: "science",
|
|
81
|
+
ageGroup: "general",
|
|
82
|
+
difficulty: "medium",
|
|
83
|
+
tags: ["energy", "climate", "environment"],
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
id: "lab-grown-meat",
|
|
87
|
+
title: "Lab-grown meat",
|
|
88
|
+
proposition: "Governments should actively subsidize and promote lab-grown meat as a climate solution",
|
|
89
|
+
category: "science",
|
|
90
|
+
ageGroup: "general",
|
|
91
|
+
difficulty: "medium",
|
|
92
|
+
tags: ["food", "environment", "technology"],
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
id: "geoengineering",
|
|
96
|
+
title: "Geoengineering",
|
|
97
|
+
proposition: "Scientists should be permitted to conduct geoengineering experiments to combat climate change",
|
|
98
|
+
category: "science",
|
|
99
|
+
ageGroup: "general",
|
|
100
|
+
difficulty: "hard",
|
|
101
|
+
tags: ["climate", "science", "technology"],
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
id: "gmos",
|
|
105
|
+
title: "Genetically modified organisms",
|
|
106
|
+
proposition: "GMO foods should be embraced and promoted as a solution to global food security",
|
|
107
|
+
category: "science",
|
|
108
|
+
ageGroup: "general",
|
|
109
|
+
difficulty: "medium",
|
|
110
|
+
tags: ["food", "science", "agriculture"],
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
id: "animal-testing",
|
|
114
|
+
title: "Animal testing",
|
|
115
|
+
proposition: "Animal testing for medical research should be banned in favor of alternative methods",
|
|
116
|
+
category: "science",
|
|
117
|
+
ageGroup: "general",
|
|
118
|
+
difficulty: "medium",
|
|
119
|
+
tags: ["animals", "ethics", "medicine"],
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
id: "space-exploration",
|
|
123
|
+
title: "Space exploration funding",
|
|
124
|
+
proposition: "Governments should invest more in space exploration rather than focusing solely on Earth's problems",
|
|
125
|
+
category: "science",
|
|
126
|
+
ageGroup: "general",
|
|
127
|
+
difficulty: "easy",
|
|
128
|
+
tags: ["space", "science", "economics"],
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
id: "carbon-tax",
|
|
132
|
+
title: "Carbon tax",
|
|
133
|
+
proposition: "A national carbon tax is the most effective policy tool to reduce greenhouse gas emissions",
|
|
134
|
+
category: "science",
|
|
135
|
+
ageGroup: "general",
|
|
136
|
+
difficulty: "hard",
|
|
137
|
+
tags: ["climate", "economics", "policy"],
|
|
138
|
+
},
|
|
139
|
+
// Politics/Policy
|
|
140
|
+
{
|
|
141
|
+
id: "school-uniforms",
|
|
142
|
+
title: "School uniforms",
|
|
143
|
+
proposition: "All public schools should require students to wear uniforms",
|
|
144
|
+
category: "policy",
|
|
145
|
+
ageGroup: "teens",
|
|
146
|
+
difficulty: "easy",
|
|
147
|
+
tags: ["education", "identity", "equality"],
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
id: "standardized-testing",
|
|
151
|
+
title: "Standardized testing",
|
|
152
|
+
proposition: "Standardized testing should be abolished as a measure of student and school performance",
|
|
153
|
+
category: "policy",
|
|
154
|
+
ageGroup: "teens",
|
|
155
|
+
difficulty: "medium",
|
|
156
|
+
tags: ["education", "assessment", "equity"],
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
id: "prison-reform",
|
|
160
|
+
title: "Prison reform",
|
|
161
|
+
proposition: "The primary goal of the prison system should be rehabilitation rather than punishment",
|
|
162
|
+
category: "policy",
|
|
163
|
+
ageGroup: "general",
|
|
164
|
+
difficulty: "medium",
|
|
165
|
+
tags: ["criminal justice", "rehabilitation", "society"],
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
id: "gun-control",
|
|
169
|
+
title: "Gun control",
|
|
170
|
+
proposition: "The government should impose strict regulations on the sale and ownership of firearms",
|
|
171
|
+
category: "policy",
|
|
172
|
+
ageGroup: "general",
|
|
173
|
+
difficulty: "hard",
|
|
174
|
+
tags: ["guns", "rights", "safety"],
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
id: "voting-age",
|
|
178
|
+
title: "Voting age",
|
|
179
|
+
proposition: "The voting age should be lowered to 16",
|
|
180
|
+
category: "policy",
|
|
181
|
+
ageGroup: "teens",
|
|
182
|
+
difficulty: "easy",
|
|
183
|
+
tags: ["democracy", "youth", "civic engagement"],
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
id: "death-penalty",
|
|
187
|
+
title: "Death penalty",
|
|
188
|
+
proposition: "Capital punishment should be abolished in all countries",
|
|
189
|
+
category: "policy",
|
|
190
|
+
ageGroup: "general",
|
|
191
|
+
difficulty: "medium",
|
|
192
|
+
tags: ["criminal justice", "ethics", "human rights"],
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
id: "immigration-policy",
|
|
196
|
+
title: "Open borders",
|
|
197
|
+
proposition: "Countries should move toward open borders and allow free movement of people",
|
|
198
|
+
category: "policy",
|
|
199
|
+
ageGroup: "general",
|
|
200
|
+
difficulty: "hard",
|
|
201
|
+
tags: ["immigration", "economics", "human rights"],
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
id: "free-college",
|
|
205
|
+
title: "Free higher education",
|
|
206
|
+
proposition: "University education should be free for all citizens",
|
|
207
|
+
category: "policy",
|
|
208
|
+
ageGroup: "general",
|
|
209
|
+
difficulty: "medium",
|
|
210
|
+
tags: ["education", "economics", "equality"],
|
|
211
|
+
},
|
|
212
|
+
// Philosophy/Values
|
|
213
|
+
{
|
|
214
|
+
id: "ai-consciousness",
|
|
215
|
+
title: "AI consciousness",
|
|
216
|
+
proposition: "Sufficiently advanced AI systems should be granted legal rights and moral consideration",
|
|
217
|
+
category: "philosophy",
|
|
218
|
+
ageGroup: "general",
|
|
219
|
+
difficulty: "hard",
|
|
220
|
+
tags: ["AI", "ethics", "consciousness"],
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
id: "trolley-problem",
|
|
224
|
+
title: "Trolley problem variant",
|
|
225
|
+
proposition: "It is morally permissible to harm one person to save five others",
|
|
226
|
+
category: "philosophy",
|
|
227
|
+
ageGroup: "general",
|
|
228
|
+
difficulty: "hard",
|
|
229
|
+
tags: ["ethics", "utilitarianism", "philosophy"],
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
id: "free-speech-limits",
|
|
233
|
+
title: "Free speech limits",
|
|
234
|
+
proposition: "Hate speech should be legally prohibited even if it restricts free expression",
|
|
235
|
+
category: "philosophy",
|
|
236
|
+
ageGroup: "general",
|
|
237
|
+
difficulty: "hard",
|
|
238
|
+
tags: ["free speech", "hate speech", "rights"],
|
|
239
|
+
},
|
|
240
|
+
{
|
|
241
|
+
id: "euthanasia",
|
|
242
|
+
title: "Euthanasia",
|
|
243
|
+
proposition: "Physician-assisted dying should be legal for terminally ill patients who request it",
|
|
244
|
+
category: "philosophy",
|
|
245
|
+
ageGroup: "general",
|
|
246
|
+
difficulty: "hard",
|
|
247
|
+
tags: ["death", "autonomy", "medicine"],
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
id: "vegetarianism",
|
|
251
|
+
title: "Meat consumption ethics",
|
|
252
|
+
proposition: "Eating meat is ethically indefensible given our current knowledge about animal suffering",
|
|
253
|
+
category: "philosophy",
|
|
254
|
+
ageGroup: "general",
|
|
255
|
+
difficulty: "medium",
|
|
256
|
+
tags: ["animals", "ethics", "food"],
|
|
257
|
+
},
|
|
258
|
+
{
|
|
259
|
+
id: "privacy-vs-security",
|
|
260
|
+
title: "Privacy vs. national security",
|
|
261
|
+
proposition: "Governments should be permitted to conduct mass surveillance to prevent terrorism",
|
|
262
|
+
category: "philosophy",
|
|
263
|
+
ageGroup: "general",
|
|
264
|
+
difficulty: "hard",
|
|
265
|
+
tags: ["privacy", "security", "rights"],
|
|
266
|
+
},
|
|
267
|
+
// Technology
|
|
268
|
+
{
|
|
269
|
+
id: "self-driving-cars",
|
|
270
|
+
title: "Self-driving cars",
|
|
271
|
+
proposition: "Self-driving cars should be permitted on public roads before they are proven safer than human drivers",
|
|
272
|
+
category: "technology",
|
|
273
|
+
ageGroup: "general",
|
|
274
|
+
difficulty: "medium",
|
|
275
|
+
tags: ["technology", "safety", "innovation"],
|
|
276
|
+
},
|
|
277
|
+
{
|
|
278
|
+
id: "data-privacy",
|
|
279
|
+
title: "Data privacy vs. convenience",
|
|
280
|
+
proposition: "Users should accept reduced privacy in exchange for more personalized and convenient digital services",
|
|
281
|
+
category: "technology",
|
|
282
|
+
ageGroup: "general",
|
|
283
|
+
difficulty: "medium",
|
|
284
|
+
tags: ["privacy", "technology", "data"],
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
id: "video-game-violence",
|
|
288
|
+
title: "Video game violence",
|
|
289
|
+
proposition: "Violent video games contribute to real-world violent behavior in players",
|
|
290
|
+
category: "technology",
|
|
291
|
+
ageGroup: "teens",
|
|
292
|
+
difficulty: "easy",
|
|
293
|
+
tags: ["games", "violence", "youth"],
|
|
294
|
+
},
|
|
295
|
+
{
|
|
296
|
+
id: "social-media-algorithms",
|
|
297
|
+
title: "Social media algorithms",
|
|
298
|
+
proposition: "Social media companies should be legally required to use chronological feeds instead of algorithmic ones",
|
|
299
|
+
category: "technology",
|
|
300
|
+
ageGroup: "general",
|
|
301
|
+
difficulty: "medium",
|
|
302
|
+
tags: ["social media", "algorithms", "regulation"],
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
id: "cryptocurrency",
|
|
306
|
+
title: "Cryptocurrency",
|
|
307
|
+
proposition: "Governments should ban or heavily regulate cryptocurrencies",
|
|
308
|
+
category: "technology",
|
|
309
|
+
ageGroup: "general",
|
|
310
|
+
difficulty: "hard",
|
|
311
|
+
tags: ["crypto", "economics", "regulation"],
|
|
312
|
+
},
|
|
313
|
+
{
|
|
314
|
+
id: "ai-art",
|
|
315
|
+
title: "AI-generated art",
|
|
316
|
+
proposition: "AI-generated artwork should be eligible for copyright protection",
|
|
317
|
+
category: "technology",
|
|
318
|
+
ageGroup: "general",
|
|
319
|
+
difficulty: "medium",
|
|
320
|
+
tags: ["AI", "art", "copyright"],
|
|
321
|
+
},
|
|
322
|
+
{
|
|
323
|
+
id: "remote-work",
|
|
324
|
+
title: "Remote work",
|
|
325
|
+
proposition: "Companies should offer permanent remote work options to all employees who can perform their jobs remotely",
|
|
326
|
+
category: "technology",
|
|
327
|
+
ageGroup: "general",
|
|
328
|
+
difficulty: "easy",
|
|
329
|
+
tags: ["work", "technology", "productivity"],
|
|
330
|
+
},
|
|
331
|
+
// Historical/Counterfactual
|
|
332
|
+
{
|
|
333
|
+
id: "colonialism-reparations",
|
|
334
|
+
title: "Colonial reparations",
|
|
335
|
+
proposition: "Former colonial powers should pay reparations to the countries they colonized",
|
|
336
|
+
category: "historical",
|
|
337
|
+
ageGroup: "general",
|
|
338
|
+
difficulty: "hard",
|
|
339
|
+
tags: ["history", "justice", "economics"],
|
|
340
|
+
},
|
|
341
|
+
{
|
|
342
|
+
id: "hiroshima",
|
|
343
|
+
title: "Hiroshima bombing",
|
|
344
|
+
proposition: "The United States was morally justified in dropping atomic bombs on Hiroshima and Nagasaki",
|
|
345
|
+
category: "historical",
|
|
346
|
+
ageGroup: "general",
|
|
347
|
+
difficulty: "hard",
|
|
348
|
+
tags: ["history", "war", "ethics"],
|
|
349
|
+
},
|
|
350
|
+
{
|
|
351
|
+
id: "statues-removal",
|
|
352
|
+
title: "Historical statues",
|
|
353
|
+
proposition: "Statues of historical figures who held views we now consider immoral should be removed from public spaces",
|
|
354
|
+
category: "historical",
|
|
355
|
+
ageGroup: "general",
|
|
356
|
+
difficulty: "medium",
|
|
357
|
+
tags: ["history", "culture", "values"],
|
|
358
|
+
},
|
|
359
|
+
{
|
|
360
|
+
id: "columbus",
|
|
361
|
+
title: "Columbus Day",
|
|
362
|
+
proposition: "Columbus Day should be replaced by Indigenous Peoples Day in all countries that celebrate it",
|
|
363
|
+
category: "historical",
|
|
364
|
+
ageGroup: "general",
|
|
365
|
+
difficulty: "easy",
|
|
366
|
+
tags: ["history", "culture", "Indigenous"],
|
|
367
|
+
},
|
|
368
|
+
{
|
|
369
|
+
id: "vietnam-war",
|
|
370
|
+
title: "Vietnam War",
|
|
371
|
+
proposition: "US involvement in the Vietnam War was morally and strategically unjustified",
|
|
372
|
+
category: "historical",
|
|
373
|
+
ageGroup: "general",
|
|
374
|
+
difficulty: "medium",
|
|
375
|
+
tags: ["history", "war", "US politics"],
|
|
376
|
+
},
|
|
377
|
+
// Economics
|
|
378
|
+
{
|
|
379
|
+
id: "minimum-wage",
|
|
380
|
+
title: "Minimum wage increase",
|
|
381
|
+
proposition: "The minimum wage should be significantly raised and indexed to inflation",
|
|
382
|
+
category: "economics",
|
|
383
|
+
ageGroup: "general",
|
|
384
|
+
difficulty: "medium",
|
|
385
|
+
tags: ["economics", "wages", "inequality"],
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
id: "wealth-tax",
|
|
389
|
+
title: "Wealth tax",
|
|
390
|
+
proposition: "Billionaires should be taxed heavily enough to prevent the concentration of extreme wealth",
|
|
391
|
+
category: "economics",
|
|
392
|
+
ageGroup: "general",
|
|
393
|
+
difficulty: "medium",
|
|
394
|
+
tags: ["economics", "inequality", "taxation"],
|
|
395
|
+
},
|
|
396
|
+
{
|
|
397
|
+
id: "free-trade",
|
|
398
|
+
title: "Free trade vs. protectionism",
|
|
399
|
+
proposition: "Countries should pursue free trade agreements rather than protecting domestic industries",
|
|
400
|
+
category: "economics",
|
|
401
|
+
ageGroup: "general",
|
|
402
|
+
difficulty: "hard",
|
|
403
|
+
tags: ["economics", "trade", "globalization"],
|
|
404
|
+
},
|
|
405
|
+
{
|
|
406
|
+
id: "rent-control",
|
|
407
|
+
title: "Rent control",
|
|
408
|
+
proposition: "Rent control policies effectively make housing more affordable for low-income residents",
|
|
409
|
+
category: "economics",
|
|
410
|
+
ageGroup: "general",
|
|
411
|
+
difficulty: "hard",
|
|
412
|
+
tags: ["housing", "economics", "policy"],
|
|
413
|
+
},
|
|
414
|
+
// Health
|
|
415
|
+
{
|
|
416
|
+
id: "vaccine-mandate",
|
|
417
|
+
title: "Vaccine mandates",
|
|
418
|
+
proposition: "Governments should mandate COVID-19 and other vaccines for all citizens without medical exemptions",
|
|
419
|
+
category: "health",
|
|
420
|
+
ageGroup: "general",
|
|
421
|
+
difficulty: "hard",
|
|
422
|
+
tags: ["health", "rights", "public health"],
|
|
423
|
+
},
|
|
424
|
+
{
|
|
425
|
+
id: "junk-food-tax",
|
|
426
|
+
title: "Junk food taxes",
|
|
427
|
+
proposition: "Governments should impose significant taxes on unhealthy foods to combat obesity",
|
|
428
|
+
category: "health",
|
|
429
|
+
ageGroup: "general",
|
|
430
|
+
difficulty: "medium",
|
|
431
|
+
tags: ["health", "policy", "economics"],
|
|
432
|
+
},
|
|
433
|
+
{
|
|
434
|
+
id: "mental-health-schools",
|
|
435
|
+
title: "Mental health education",
|
|
436
|
+
proposition: "Mental health education should be a mandatory subject in all schools from primary level",
|
|
437
|
+
category: "health",
|
|
438
|
+
ageGroup: "teens",
|
|
439
|
+
difficulty: "easy",
|
|
440
|
+
tags: ["mental health", "education", "youth"],
|
|
441
|
+
},
|
|
442
|
+
];
|
|
443
|
+
export function getTopicsByCategory(category) {
|
|
444
|
+
if (!category)
|
|
445
|
+
return TOPICS;
|
|
446
|
+
return TOPICS.filter(t => t.category === category);
|
|
447
|
+
}
|
|
448
|
+
export function getTopicsByAgeGroup(ageGroup) {
|
|
449
|
+
if (!ageGroup)
|
|
450
|
+
return TOPICS;
|
|
451
|
+
return TOPICS.filter(t => t.ageGroup === ageGroup || t.ageGroup === "general");
|
|
452
|
+
}
|
|
453
|
+
export function filterTopics(category, ageGroup) {
|
|
454
|
+
let topics = TOPICS;
|
|
455
|
+
if (category)
|
|
456
|
+
topics = topics.filter(t => t.category === category);
|
|
457
|
+
if (ageGroup)
|
|
458
|
+
topics = topics.filter(t => t.ageGroup === ageGroup || t.ageGroup === "general");
|
|
459
|
+
return topics;
|
|
460
|
+
}
|
|
461
|
+
export const CATEGORIES = [...new Set(TOPICS.map(t => t.category))];
|
|
462
|
+
export const AGE_GROUPS = [...new Set(TOPICS.map(t => t.ageGroup))];
|
|
463
|
+
//# sourceMappingURL=topics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"topics.js","sourceRoot":"","sources":["../src/topics.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,MAAM,GAAY;IAC7B,iBAAiB;IACjB;QACE,EAAE,EAAE,wBAAwB;QAC5B,KAAK,EAAE,yBAAyB;QAChC,WAAW,EAAE,4DAA4D;QACzE,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,OAAO;QACjB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,YAAY,EAAE,OAAO,EAAE,eAAe,EAAE,YAAY,CAAC;KAC7D;IACD;QACE,EAAE,EAAE,eAAe;QACnB,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,gFAAgF;QAC7F,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,OAAO;QACjB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,YAAY,CAAC;KACxC;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,uDAAuD;QACpE,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,CAAC;KAC5C;IACD;QACE,EAAE,EAAE,wBAAwB;QAC5B,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,8GAA8G;QAC3H,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,YAAY,CAAC;KAC7C;IACD;QACE,EAAE,EAAE,oBAAoB;QACxB,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE,kFAAkF;QAC/F,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,CAAC;KACzC;IACD;QACE,EAAE,EAAE,wBAAwB;QAC5B,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,6DAA6D;QAC1E,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,OAAO;QACjB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,OAAO,CAAC;KAC3C;IACD;QACE,EAAE,EAAE,wBAAwB;QAC5B,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,4GAA4G;QACzH,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,OAAO,EAAE,kBAAkB,EAAE,eAAe,CAAC;KACrD;IACD;QACE,EAAE,EAAE,oBAAoB;QACxB,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE,uFAAuF;QACpG,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC;KACtC;IAED,sBAAsB;IACtB;QACE,EAAE,EAAE,gBAAgB;QACpB,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,iFAAiF;QAC9F,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC;KAC3C;IACD;QACE,EAAE,EAAE,gBAAgB;QACpB,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,wFAAwF;QACrG,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,YAAY,CAAC;KAC5C;IACD;QACE,EAAE,EAAE,gBAAgB;QACpB,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,+FAA+F;QAC5G,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC;KAC3C;IACD;QACE,EAAE,EAAE,MAAM;QACV,KAAK,EAAE,gCAAgC;QACvC,WAAW,EAAE,iFAAiF;QAC9F,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC;KACzC;IACD;QACE,EAAE,EAAE,gBAAgB;QACpB,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,sFAAsF;QACnG,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,CAAC;KACxC;IACD;QACE,EAAE,EAAE,mBAAmB;QACvB,KAAK,EAAE,2BAA2B;QAClC,WAAW,EAAE,qGAAqG;QAClH,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC;KACxC;IACD;QACE,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,4FAA4F;QACzG,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC;KACzC;IAED,kBAAkB;IAClB;QACE,EAAE,EAAE,iBAAiB;QACrB,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,6DAA6D;QAC1E,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,OAAO;QACjB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,UAAU,CAAC;KAC5C;IACD;QACE,EAAE,EAAE,sBAAsB;QAC1B,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,yFAAyF;QACtG,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,OAAO;QACjB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,CAAC;KAC5C;IACD;QACE,EAAE,EAAE,eAAe;QACnB,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,uFAAuF;QACpG,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,SAAS,CAAC;KACxD;IACD;QACE,EAAE,EAAE,aAAa;QACjB,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,uFAAuF;QACpG,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC;KACnC;IACD;QACE,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,wCAAwC;QACrD,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,OAAO;QACjB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,kBAAkB,CAAC;KACjD;IACD;QACE,EAAE,EAAE,eAAe;QACnB,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,yDAAyD;QACtE,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,kBAAkB,EAAE,QAAQ,EAAE,cAAc,CAAC;KACrD;IACD;QACE,EAAE,EAAE,oBAAoB;QACxB,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,6EAA6E;QAC1F,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,aAAa,EAAE,WAAW,EAAE,cAAc,CAAC;KACnD;IACD;QACE,EAAE,EAAE,cAAc;QAClB,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE,sDAAsD;QACnE,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,CAAC;KAC7C;IAED,oBAAoB;IACpB;QACE,EAAE,EAAE,kBAAkB;QACtB,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,yFAAyF;QACtG,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,CAAC;KACxC;IACD;QACE,EAAE,EAAE,iBAAiB;QACrB,KAAK,EAAE,yBAAyB;QAChC,WAAW,EAAE,kEAAkE;QAC/E,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,QAAQ,EAAE,gBAAgB,EAAE,YAAY,CAAC;KACjD;IACD;QACE,EAAE,EAAE,oBAAoB;QACxB,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE,+EAA+E;QAC5F,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,aAAa,EAAE,aAAa,EAAE,QAAQ,CAAC;KAC/C;IACD;QACE,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,qFAAqF;QAClG,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC;KACxC;IACD;QACE,EAAE,EAAE,eAAe;QACnB,KAAK,EAAE,yBAAyB;QAChC,WAAW,EAAE,0FAA0F;QACvG,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC;KACpC;IACD;QACE,EAAE,EAAE,qBAAqB;QACzB,KAAK,EAAE,+BAA+B;QACtC,WAAW,EAAE,mFAAmF;QAChG,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC;KACxC;IAED,aAAa;IACb;QACE,EAAE,EAAE,mBAAmB;QACvB,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,uGAAuG;QACpH,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,YAAY,CAAC;KAC7C;IACD;QACE,EAAE,EAAE,cAAc;QAClB,KAAK,EAAE,8BAA8B;QACrC,WAAW,EAAE,uGAAuG;QACpH,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,MAAM,CAAC;KACxC;IACD;QACE,EAAE,EAAE,qBAAqB;QACzB,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,0EAA0E;QACvF,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,OAAO;QACjB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC;KACrC;IACD;QACE,EAAE,EAAE,yBAAyB;QAC7B,KAAK,EAAE,yBAAyB;QAChC,WAAW,EAAE,0GAA0G;QACvH,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,cAAc,EAAE,YAAY,EAAE,YAAY,CAAC;KACnD;IACD;QACE,EAAE,EAAE,gBAAgB;QACpB,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,6DAA6D;QAC1E,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,YAAY,CAAC;KAC5C;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,kEAAkE;QAC/E,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC;KACjC;IACD;QACE,EAAE,EAAE,aAAa;QACjB,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,2GAA2G;QACxH,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,cAAc,CAAC;KAC7C;IAED,4BAA4B;IAC5B;QACE,EAAE,EAAE,yBAAyB;QAC7B,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EAAE,+EAA+E;QAC5F,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC;KAC1C;IACD;QACE,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,4FAA4F;QACzG,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC;KACnC;IACD;QACE,EAAE,EAAE,iBAAiB;QACrB,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE,2GAA2G;QACxH,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC;KACvC;IACD;QACE,EAAE,EAAE,UAAU;QACd,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,8FAA8F;QAC3G,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC;KAC3C;IACD;QACE,EAAE,EAAE,aAAa;QACjB,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,6EAA6E;QAC1F,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,aAAa,CAAC;KACxC;IAED,YAAY;IACZ;QACE,EAAE,EAAE,cAAc;QAClB,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE,0EAA0E;QACvF,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,YAAY,CAAC;KAC3C;IACD;QACE,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,4FAA4F;QACzG,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,UAAU,CAAC;KAC9C;IACD;QACE,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,8BAA8B;QACrC,WAAW,EAAE,0FAA0F;QACvG,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,eAAe,CAAC;KAC9C;IACD;QACE,EAAE,EAAE,cAAc;QAClB,KAAK,EAAE,cAAc;QACrB,WAAW,EAAE,yFAAyF;QACtG,QAAQ,EAAE,WAAW;QACrB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC;KACzC;IAED,SAAS;IACT;QACE,EAAE,EAAE,iBAAiB;QACrB,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,oGAAoG;QACjH,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC;KAC5C;IACD;QACE,EAAE,EAAE,eAAe;QACnB,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,kFAAkF;QAC/F,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,SAAS;QACnB,UAAU,EAAE,QAAQ;QACpB,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC;KACxC;IACD;QACE,EAAE,EAAE,uBAAuB;QAC3B,KAAK,EAAE,yBAAyB;QAChC,WAAW,EAAE,yFAAyF;QACtG,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,OAAO;QACjB,UAAU,EAAE,MAAM;QAClB,IAAI,EAAE,CAAC,eAAe,EAAE,WAAW,EAAE,OAAO,CAAC;KAC9C;CACF,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,QAAiB;IACnD,IAAI,CAAC,QAAQ;QAAE,OAAO,MAAM,CAAC;IAC7B,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAiB;IACnD,IAAI,CAAC,QAAQ;QAAE,OAAO,MAAM,CAAC;IAC7B,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC;AACjF,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,QAAiB,EAAE,QAAiB;IAC/D,IAAI,MAAM,GAAG,MAAM,CAAC;IACpB,IAAI,QAAQ;QAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;IACnE,IAAI,QAAQ;QAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC;IAC/F,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;AACpE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC"}
|