Choose a mode, then settle in for a focused study session.
-
-
- >
);
}
diff --git a/src/generated/prisma/browser.ts b/src/generated/prisma/browser.ts
index bbd13c9..cffdc48 100644
--- a/src/generated/prisma/browser.ts
+++ b/src/generated/prisma/browser.ts
@@ -72,6 +72,11 @@ export type AuthSecurity = Prisma.AuthSecurityModel
*
*/
export type Setting = Prisma.SettingModel
+/**
+ * Model StudyActivity
+ *
+ */
+export type StudyActivity = Prisma.StudyActivityModel
/**
* Model MaterialGroup
*
diff --git a/src/generated/prisma/client.ts b/src/generated/prisma/client.ts
index c502699..27a7cbd 100644
--- a/src/generated/prisma/client.ts
+++ b/src/generated/prisma/client.ts
@@ -96,6 +96,11 @@ export type AuthSecurity = Prisma.AuthSecurityModel
*
*/
export type Setting = Prisma.SettingModel
+/**
+ * Model StudyActivity
+ *
+ */
+export type StudyActivity = Prisma.StudyActivityModel
/**
* Model MaterialGroup
*
diff --git a/src/generated/prisma/internal/class.ts b/src/generated/prisma/internal/class.ts
index 43381b9..de318cc 100644
--- a/src/generated/prisma/internal/class.ts
+++ b/src/generated/prisma/internal/class.ts
@@ -20,7 +20,7 @@ const config: runtime.GetPrismaClientConfig = {
"clientVersion": "7.8.0",
"engineVersion": "3c6e192761c0362d496ed980de936e2f3cebcd3a",
"activeProvider": "sqlite",
- "inlineSchema": "datasource db {\n provider = \"sqlite\"\n}\n\ngenerator client {\n provider = \"prisma-client\"\n output = \"../src/generated/prisma\"\n}\n\nmodel Class {\n id String @id @default(uuid())\n slug String @unique\n name String\n sortOrder Int @default(0)\n createdAt DateTime @default(now())\n\n decks Deck[]\n quizSets QuizSet[]\n materialGroups MaterialGroup[]\n}\n\nmodel Deck {\n id String @id @default(uuid())\n classId String\n name String\n description String?\n sortOrder Int @default(0)\n createdAt DateTime @default(now())\n\n class Class @relation(fields: [classId], references: [id], onDelete: Cascade)\n groupId String?\n group MaterialGroup? @relation(fields: [groupId], references: [id], onDelete: SetNull)\n cards Flashcard[]\n shareLink ShareLink?\n progress StudyProgress[]\n}\n\nmodel Flashcard {\n id String @id @default(uuid())\n deckId String\n front String\n back String\n sortOrder Int @default(0)\n\n deck Deck @relation(fields: [deckId], references: [id], onDelete: Cascade)\n}\n\nmodel QuizSet {\n id String @id @default(uuid())\n classId String\n name String\n description String?\n sortOrder Int @default(0)\n createdAt DateTime @default(now())\n\n class Class @relation(fields: [classId], references: [id], onDelete: Cascade)\n groupId String?\n group MaterialGroup? @relation(fields: [groupId], references: [id], onDelete: SetNull)\n questions Question[]\n attempts QuizAttempt[]\n shareLink ShareLink?\n progress StudyProgress[]\n}\n\nmodel Question {\n id String @id @default(uuid())\n quizSetId String\n type String // \"MULTIPLE_CHOICE\" | \"SATA\"\n prompt String\n rationale String\n category String\n sortOrder Int @default(0)\n\n quizSet QuizSet @relation(fields: [quizSetId], references: [id], onDelete: Cascade)\n options AnswerOption[]\n}\n\nmodel AnswerOption {\n id String @id @default(uuid())\n questionId String\n text String\n isCorrect Boolean @default(false)\n sortOrder Int @default(0)\n\n question Question @relation(fields: [questionId], references: [id], onDelete: Cascade)\n}\n\nmodel StudyProgress {\n id String @id @default(uuid())\n contentType String // \"DECK\" | \"QUIZ\"\n deckId String?\n quizSetId String?\n mode String // \"SEQUENTIAL\" | \"SHUFFLED\"\n currentIndex Int @default(0)\n orderJson String // JSON array of card/question ids\n answersJson String? // in-progress quiz answers\n cardResultsJson String? // per-card grades for decks\n updatedAt DateTime @updatedAt\n\n deck Deck? @relation(fields: [deckId], references: [id], onDelete: Cascade)\n quizSet QuizSet? @relation(fields: [quizSetId], references: [id], onDelete: Cascade)\n\n @@unique([deckId, mode])\n @@unique([quizSetId, mode])\n}\n\nmodel QuizAttempt {\n id String @id @default(uuid())\n quizSetId String\n score Float\n maxScore Int\n answersJson String\n isPartialRetake Boolean @default(false)\n completedAt DateTime @default(now())\n\n quizSet QuizSet @relation(fields: [quizSetId], references: [id], onDelete: Cascade)\n}\n\nmodel ShareLink {\n id String @id @default(uuid())\n targetType String // \"DECK\" | \"QUIZ\" | \"GROUP\"\n deckId String? @unique\n quizSetId String? @unique\n groupId String? @unique\n createdAt DateTime @default(now())\n\n deck Deck? @relation(fields: [deckId], references: [id], onDelete: Cascade)\n quizSet QuizSet? @relation(fields: [quizSetId], references: [id], onDelete: Cascade)\n group MaterialGroup? @relation(fields: [groupId], references: [id], onDelete: Cascade)\n}\n\nmodel AuthSecurity {\n id Int @id @default(1)\n failedAttempts Int @default(0)\n lockedUntil DateTime?\n lastAttemptAt DateTime?\n}\n\nmodel Setting {\n key String @id\n value String\n}\n\nmodel MaterialGroup {\n id String @id @default(uuid())\n classId String\n name String\n type String // \"DECK\" | \"QUIZ\"\n sortOrder Int @default(0)\n createdAt DateTime @default(now())\n\n class Class @relation(fields: [classId], references: [id], onDelete: Cascade)\n decks Deck[]\n quizSets QuizSet[]\n shareLink ShareLink?\n}\n",
+ "inlineSchema": "datasource db {\n provider = \"sqlite\"\n}\n\ngenerator client {\n provider = \"prisma-client\"\n output = \"../src/generated/prisma\"\n}\n\nmodel Class {\n id String @id @default(uuid())\n slug String @unique\n name String\n sortOrder Int @default(0)\n createdAt DateTime @default(now())\n\n decks Deck[]\n quizSets QuizSet[]\n materialGroups MaterialGroup[]\n}\n\nmodel Deck {\n id String @id @default(uuid())\n classId String\n name String\n description String?\n sortOrder Int @default(0)\n createdAt DateTime @default(now())\n\n class Class @relation(fields: [classId], references: [id], onDelete: Cascade)\n groupId String?\n group MaterialGroup? @relation(fields: [groupId], references: [id], onDelete: SetNull)\n cards Flashcard[]\n shareLink ShareLink?\n progress StudyProgress[]\n}\n\nmodel Flashcard {\n id String @id @default(uuid())\n deckId String\n front String\n back String\n sortOrder Int @default(0)\n\n deck Deck @relation(fields: [deckId], references: [id], onDelete: Cascade)\n}\n\nmodel QuizSet {\n id String @id @default(uuid())\n classId String\n name String\n description String?\n sortOrder Int @default(0)\n createdAt DateTime @default(now())\n\n class Class @relation(fields: [classId], references: [id], onDelete: Cascade)\n groupId String?\n group MaterialGroup? @relation(fields: [groupId], references: [id], onDelete: SetNull)\n questions Question[]\n attempts QuizAttempt[]\n shareLink ShareLink?\n progress StudyProgress[]\n}\n\nmodel Question {\n id String @id @default(uuid())\n quizSetId String\n type String // \"MULTIPLE_CHOICE\" | \"SATA\"\n prompt String\n rationale String\n category String\n sortOrder Int @default(0)\n\n quizSet QuizSet @relation(fields: [quizSetId], references: [id], onDelete: Cascade)\n options AnswerOption[]\n}\n\nmodel AnswerOption {\n id String @id @default(uuid())\n questionId String\n text String\n isCorrect Boolean @default(false)\n sortOrder Int @default(0)\n\n question Question @relation(fields: [questionId], references: [id], onDelete: Cascade)\n}\n\nmodel StudyProgress {\n id String @id @default(uuid())\n contentType String // \"DECK\" | \"QUIZ\"\n deckId String?\n quizSetId String?\n mode String // \"SEQUENTIAL\" | \"SHUFFLED\"\n currentIndex Int @default(0)\n orderJson String // JSON array of card/question ids\n answersJson String? // in-progress quiz answers\n cardResultsJson String? // per-card grades for decks\n updatedAt DateTime @updatedAt\n\n deck Deck? @relation(fields: [deckId], references: [id], onDelete: Cascade)\n quizSet QuizSet? @relation(fields: [quizSetId], references: [id], onDelete: Cascade)\n\n @@unique([deckId, mode])\n @@unique([quizSetId, mode])\n}\n\nmodel QuizAttempt {\n id String @id @default(uuid())\n quizSetId String\n score Float\n maxScore Int\n answersJson String\n isPartialRetake Boolean @default(false)\n completedAt DateTime @default(now())\n\n quizSet QuizSet @relation(fields: [quizSetId], references: [id], onDelete: Cascade)\n}\n\nmodel ShareLink {\n id String @id @default(uuid())\n targetType String // \"DECK\" | \"QUIZ\" | \"GROUP\"\n deckId String? @unique\n quizSetId String? @unique\n groupId String? @unique\n createdAt DateTime @default(now())\n\n deck Deck? @relation(fields: [deckId], references: [id], onDelete: Cascade)\n quizSet QuizSet? @relation(fields: [quizSetId], references: [id], onDelete: Cascade)\n group MaterialGroup? @relation(fields: [groupId], references: [id], onDelete: Cascade)\n}\n\nmodel AuthSecurity {\n id Int @id @default(1)\n failedAttempts Int @default(0)\n lockedUntil DateTime?\n lastAttemptAt DateTime?\n}\n\nmodel Setting {\n key String @id\n value String\n}\n\nmodel StudyActivity {\n id String @id @default(uuid())\n type String // \"FLASHCARD\" | \"QUIZ_QUESTION\"\n occurredAt DateTime @default(now())\n\n @@index([occurredAt])\n}\n\nmodel MaterialGroup {\n id String @id @default(uuid())\n classId String\n name String\n type String // \"DECK\" | \"QUIZ\"\n sortOrder Int @default(0)\n createdAt DateTime @default(now())\n\n class Class @relation(fields: [classId], references: [id], onDelete: Cascade)\n decks Deck[]\n quizSets QuizSet[]\n shareLink ShareLink?\n}\n",
"runtimeDataModel": {
"models": {},
"enums": {},
@@ -32,10 +32,10 @@ const config: runtime.GetPrismaClientConfig = {
}
}
-config.runtimeDataModel = JSON.parse("{\"models\":{\"Class\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"slug\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"decks\",\"kind\":\"object\",\"type\":\"Deck\",\"relationName\":\"ClassToDeck\"},{\"name\":\"quizSets\",\"kind\":\"object\",\"type\":\"QuizSet\",\"relationName\":\"ClassToQuizSet\"},{\"name\":\"materialGroups\",\"kind\":\"object\",\"type\":\"MaterialGroup\",\"relationName\":\"ClassToMaterialGroup\"}],\"dbName\":null},\"Deck\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"classId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"class\",\"kind\":\"object\",\"type\":\"Class\",\"relationName\":\"ClassToDeck\"},{\"name\":\"groupId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"group\",\"kind\":\"object\",\"type\":\"MaterialGroup\",\"relationName\":\"DeckToMaterialGroup\"},{\"name\":\"cards\",\"kind\":\"object\",\"type\":\"Flashcard\",\"relationName\":\"DeckToFlashcard\"},{\"name\":\"shareLink\",\"kind\":\"object\",\"type\":\"ShareLink\",\"relationName\":\"DeckToShareLink\"},{\"name\":\"progress\",\"kind\":\"object\",\"type\":\"StudyProgress\",\"relationName\":\"DeckToStudyProgress\"}],\"dbName\":null},\"Flashcard\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"deckId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"front\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"back\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"deck\",\"kind\":\"object\",\"type\":\"Deck\",\"relationName\":\"DeckToFlashcard\"}],\"dbName\":null},\"QuizSet\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"classId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"class\",\"kind\":\"object\",\"type\":\"Class\",\"relationName\":\"ClassToQuizSet\"},{\"name\":\"groupId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"group\",\"kind\":\"object\",\"type\":\"MaterialGroup\",\"relationName\":\"MaterialGroupToQuizSet\"},{\"name\":\"questions\",\"kind\":\"object\",\"type\":\"Question\",\"relationName\":\"QuestionToQuizSet\"},{\"name\":\"attempts\",\"kind\":\"object\",\"type\":\"QuizAttempt\",\"relationName\":\"QuizAttemptToQuizSet\"},{\"name\":\"shareLink\",\"kind\":\"object\",\"type\":\"ShareLink\",\"relationName\":\"QuizSetToShareLink\"},{\"name\":\"progress\",\"kind\":\"object\",\"type\":\"StudyProgress\",\"relationName\":\"QuizSetToStudyProgress\"}],\"dbName\":null},\"Question\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quizSetId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"type\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"prompt\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"rationale\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"category\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"quizSet\",\"kind\":\"object\",\"type\":\"QuizSet\",\"relationName\":\"QuestionToQuizSet\"},{\"name\":\"options\",\"kind\":\"object\",\"type\":\"AnswerOption\",\"relationName\":\"AnswerOptionToQuestion\"}],\"dbName\":null},\"AnswerOption\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"questionId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"text\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"isCorrect\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"question\",\"kind\":\"object\",\"type\":\"Question\",\"relationName\":\"AnswerOptionToQuestion\"}],\"dbName\":null},\"StudyProgress\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"contentType\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"deckId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quizSetId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"mode\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"currentIndex\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"orderJson\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"answersJson\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"cardResultsJson\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deck\",\"kind\":\"object\",\"type\":\"Deck\",\"relationName\":\"DeckToStudyProgress\"},{\"name\":\"quizSet\",\"kind\":\"object\",\"type\":\"QuizSet\",\"relationName\":\"QuizSetToStudyProgress\"}],\"dbName\":null},\"QuizAttempt\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quizSetId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"score\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"maxScore\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"answersJson\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"isPartialRetake\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"completedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"quizSet\",\"kind\":\"object\",\"type\":\"QuizSet\",\"relationName\":\"QuizAttemptToQuizSet\"}],\"dbName\":null},\"ShareLink\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"targetType\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"deckId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quizSetId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"groupId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deck\",\"kind\":\"object\",\"type\":\"Deck\",\"relationName\":\"DeckToShareLink\"},{\"name\":\"quizSet\",\"kind\":\"object\",\"type\":\"QuizSet\",\"relationName\":\"QuizSetToShareLink\"},{\"name\":\"group\",\"kind\":\"object\",\"type\":\"MaterialGroup\",\"relationName\":\"MaterialGroupToShareLink\"}],\"dbName\":null},\"AuthSecurity\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"failedAttempts\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"lockedUntil\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"lastAttemptAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Setting\":{\"fields\":[{\"name\":\"key\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"value\",\"kind\":\"scalar\",\"type\":\"String\"}],\"dbName\":null},\"MaterialGroup\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"classId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"type\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"class\",\"kind\":\"object\",\"type\":\"Class\",\"relationName\":\"ClassToMaterialGroup\"},{\"name\":\"decks\",\"kind\":\"object\",\"type\":\"Deck\",\"relationName\":\"DeckToMaterialGroup\"},{\"name\":\"quizSets\",\"kind\":\"object\",\"type\":\"QuizSet\",\"relationName\":\"MaterialGroupToQuizSet\"},{\"name\":\"shareLink\",\"kind\":\"object\",\"type\":\"ShareLink\",\"relationName\":\"MaterialGroupToShareLink\"}],\"dbName\":null}},\"enums\":{},\"types\":{}}")
+config.runtimeDataModel = JSON.parse("{\"models\":{\"Class\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"slug\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"decks\",\"kind\":\"object\",\"type\":\"Deck\",\"relationName\":\"ClassToDeck\"},{\"name\":\"quizSets\",\"kind\":\"object\",\"type\":\"QuizSet\",\"relationName\":\"ClassToQuizSet\"},{\"name\":\"materialGroups\",\"kind\":\"object\",\"type\":\"MaterialGroup\",\"relationName\":\"ClassToMaterialGroup\"}],\"dbName\":null},\"Deck\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"classId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"class\",\"kind\":\"object\",\"type\":\"Class\",\"relationName\":\"ClassToDeck\"},{\"name\":\"groupId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"group\",\"kind\":\"object\",\"type\":\"MaterialGroup\",\"relationName\":\"DeckToMaterialGroup\"},{\"name\":\"cards\",\"kind\":\"object\",\"type\":\"Flashcard\",\"relationName\":\"DeckToFlashcard\"},{\"name\":\"shareLink\",\"kind\":\"object\",\"type\":\"ShareLink\",\"relationName\":\"DeckToShareLink\"},{\"name\":\"progress\",\"kind\":\"object\",\"type\":\"StudyProgress\",\"relationName\":\"DeckToStudyProgress\"}],\"dbName\":null},\"Flashcard\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"deckId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"front\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"back\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"deck\",\"kind\":\"object\",\"type\":\"Deck\",\"relationName\":\"DeckToFlashcard\"}],\"dbName\":null},\"QuizSet\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"classId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"class\",\"kind\":\"object\",\"type\":\"Class\",\"relationName\":\"ClassToQuizSet\"},{\"name\":\"groupId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"group\",\"kind\":\"object\",\"type\":\"MaterialGroup\",\"relationName\":\"MaterialGroupToQuizSet\"},{\"name\":\"questions\",\"kind\":\"object\",\"type\":\"Question\",\"relationName\":\"QuestionToQuizSet\"},{\"name\":\"attempts\",\"kind\":\"object\",\"type\":\"QuizAttempt\",\"relationName\":\"QuizAttemptToQuizSet\"},{\"name\":\"shareLink\",\"kind\":\"object\",\"type\":\"ShareLink\",\"relationName\":\"QuizSetToShareLink\"},{\"name\":\"progress\",\"kind\":\"object\",\"type\":\"StudyProgress\",\"relationName\":\"QuizSetToStudyProgress\"}],\"dbName\":null},\"Question\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quizSetId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"type\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"prompt\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"rationale\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"category\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"quizSet\",\"kind\":\"object\",\"type\":\"QuizSet\",\"relationName\":\"QuestionToQuizSet\"},{\"name\":\"options\",\"kind\":\"object\",\"type\":\"AnswerOption\",\"relationName\":\"AnswerOptionToQuestion\"}],\"dbName\":null},\"AnswerOption\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"questionId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"text\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"isCorrect\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"question\",\"kind\":\"object\",\"type\":\"Question\",\"relationName\":\"AnswerOptionToQuestion\"}],\"dbName\":null},\"StudyProgress\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"contentType\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"deckId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quizSetId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"mode\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"currentIndex\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"orderJson\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"answersJson\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"cardResultsJson\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"updatedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deck\",\"kind\":\"object\",\"type\":\"Deck\",\"relationName\":\"DeckToStudyProgress\"},{\"name\":\"quizSet\",\"kind\":\"object\",\"type\":\"QuizSet\",\"relationName\":\"QuizSetToStudyProgress\"}],\"dbName\":null},\"QuizAttempt\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quizSetId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"score\",\"kind\":\"scalar\",\"type\":\"Float\"},{\"name\":\"maxScore\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"answersJson\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"isPartialRetake\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"completedAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"quizSet\",\"kind\":\"object\",\"type\":\"QuizSet\",\"relationName\":\"QuizAttemptToQuizSet\"}],\"dbName\":null},\"ShareLink\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"targetType\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"deckId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quizSetId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"groupId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deck\",\"kind\":\"object\",\"type\":\"Deck\",\"relationName\":\"DeckToShareLink\"},{\"name\":\"quizSet\",\"kind\":\"object\",\"type\":\"QuizSet\",\"relationName\":\"QuizSetToShareLink\"},{\"name\":\"group\",\"kind\":\"object\",\"type\":\"MaterialGroup\",\"relationName\":\"MaterialGroupToShareLink\"}],\"dbName\":null},\"AuthSecurity\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"failedAttempts\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"lockedUntil\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"lastAttemptAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"Setting\":{\"fields\":[{\"name\":\"key\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"value\",\"kind\":\"scalar\",\"type\":\"String\"}],\"dbName\":null},\"StudyActivity\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"type\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"occurredAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":null},\"MaterialGroup\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"classId\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"type\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sortOrder\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"class\",\"kind\":\"object\",\"type\":\"Class\",\"relationName\":\"ClassToMaterialGroup\"},{\"name\":\"decks\",\"kind\":\"object\",\"type\":\"Deck\",\"relationName\":\"DeckToMaterialGroup\"},{\"name\":\"quizSets\",\"kind\":\"object\",\"type\":\"QuizSet\",\"relationName\":\"MaterialGroupToQuizSet\"},{\"name\":\"shareLink\",\"kind\":\"object\",\"type\":\"ShareLink\",\"relationName\":\"MaterialGroupToShareLink\"}],\"dbName\":null}},\"enums\":{},\"types\":{}}")
config.parameterizationSchema = {
- strings: JSON.parse("[\"where\",\"orderBy\",\"cursor\",\"class\",\"decks\",\"group\",\"quizSet\",\"question\",\"options\",\"_count\",\"questions\",\"attempts\",\"deck\",\"shareLink\",\"progress\",\"quizSets\",\"cards\",\"materialGroups\",\"Class.findUnique\",\"Class.findUniqueOrThrow\",\"Class.findFirst\",\"Class.findFirstOrThrow\",\"Class.findMany\",\"data\",\"Class.createOne\",\"Class.createMany\",\"Class.createManyAndReturn\",\"Class.updateOne\",\"Class.updateMany\",\"Class.updateManyAndReturn\",\"create\",\"update\",\"Class.upsertOne\",\"Class.deleteOne\",\"Class.deleteMany\",\"having\",\"_avg\",\"_sum\",\"_min\",\"_max\",\"Class.groupBy\",\"Class.aggregate\",\"Deck.findUnique\",\"Deck.findUniqueOrThrow\",\"Deck.findFirst\",\"Deck.findFirstOrThrow\",\"Deck.findMany\",\"Deck.createOne\",\"Deck.createMany\",\"Deck.createManyAndReturn\",\"Deck.updateOne\",\"Deck.updateMany\",\"Deck.updateManyAndReturn\",\"Deck.upsertOne\",\"Deck.deleteOne\",\"Deck.deleteMany\",\"Deck.groupBy\",\"Deck.aggregate\",\"Flashcard.findUnique\",\"Flashcard.findUniqueOrThrow\",\"Flashcard.findFirst\",\"Flashcard.findFirstOrThrow\",\"Flashcard.findMany\",\"Flashcard.createOne\",\"Flashcard.createMany\",\"Flashcard.createManyAndReturn\",\"Flashcard.updateOne\",\"Flashcard.updateMany\",\"Flashcard.updateManyAndReturn\",\"Flashcard.upsertOne\",\"Flashcard.deleteOne\",\"Flashcard.deleteMany\",\"Flashcard.groupBy\",\"Flashcard.aggregate\",\"QuizSet.findUnique\",\"QuizSet.findUniqueOrThrow\",\"QuizSet.findFirst\",\"QuizSet.findFirstOrThrow\",\"QuizSet.findMany\",\"QuizSet.createOne\",\"QuizSet.createMany\",\"QuizSet.createManyAndReturn\",\"QuizSet.updateOne\",\"QuizSet.updateMany\",\"QuizSet.updateManyAndReturn\",\"QuizSet.upsertOne\",\"QuizSet.deleteOne\",\"QuizSet.deleteMany\",\"QuizSet.groupBy\",\"QuizSet.aggregate\",\"Question.findUnique\",\"Question.findUniqueOrThrow\",\"Question.findFirst\",\"Question.findFirstOrThrow\",\"Question.findMany\",\"Question.createOne\",\"Question.createMany\",\"Question.createManyAndReturn\",\"Question.updateOne\",\"Question.updateMany\",\"Question.updateManyAndReturn\",\"Question.upsertOne\",\"Question.deleteOne\",\"Question.deleteMany\",\"Question.groupBy\",\"Question.aggregate\",\"AnswerOption.findUnique\",\"AnswerOption.findUniqueOrThrow\",\"AnswerOption.findFirst\",\"AnswerOption.findFirstOrThrow\",\"AnswerOption.findMany\",\"AnswerOption.createOne\",\"AnswerOption.createMany\",\"AnswerOption.createManyAndReturn\",\"AnswerOption.updateOne\",\"AnswerOption.updateMany\",\"AnswerOption.updateManyAndReturn\",\"AnswerOption.upsertOne\",\"AnswerOption.deleteOne\",\"AnswerOption.deleteMany\",\"AnswerOption.groupBy\",\"AnswerOption.aggregate\",\"StudyProgress.findUnique\",\"StudyProgress.findUniqueOrThrow\",\"StudyProgress.findFirst\",\"StudyProgress.findFirstOrThrow\",\"StudyProgress.findMany\",\"StudyProgress.createOne\",\"StudyProgress.createMany\",\"StudyProgress.createManyAndReturn\",\"StudyProgress.updateOne\",\"StudyProgress.updateMany\",\"StudyProgress.updateManyAndReturn\",\"StudyProgress.upsertOne\",\"StudyProgress.deleteOne\",\"StudyProgress.deleteMany\",\"StudyProgress.groupBy\",\"StudyProgress.aggregate\",\"QuizAttempt.findUnique\",\"QuizAttempt.findUniqueOrThrow\",\"QuizAttempt.findFirst\",\"QuizAttempt.findFirstOrThrow\",\"QuizAttempt.findMany\",\"QuizAttempt.createOne\",\"QuizAttempt.createMany\",\"QuizAttempt.createManyAndReturn\",\"QuizAttempt.updateOne\",\"QuizAttempt.updateMany\",\"QuizAttempt.updateManyAndReturn\",\"QuizAttempt.upsertOne\",\"QuizAttempt.deleteOne\",\"QuizAttempt.deleteMany\",\"QuizAttempt.groupBy\",\"QuizAttempt.aggregate\",\"ShareLink.findUnique\",\"ShareLink.findUniqueOrThrow\",\"ShareLink.findFirst\",\"ShareLink.findFirstOrThrow\",\"ShareLink.findMany\",\"ShareLink.createOne\",\"ShareLink.createMany\",\"ShareLink.createManyAndReturn\",\"ShareLink.updateOne\",\"ShareLink.updateMany\",\"ShareLink.updateManyAndReturn\",\"ShareLink.upsertOne\",\"ShareLink.deleteOne\",\"ShareLink.deleteMany\",\"ShareLink.groupBy\",\"ShareLink.aggregate\",\"AuthSecurity.findUnique\",\"AuthSecurity.findUniqueOrThrow\",\"AuthSecurity.findFirst\",\"AuthSecurity.findFirstOrThrow\",\"AuthSecurity.findMany\",\"AuthSecurity.createOne\",\"AuthSecurity.createMany\",\"AuthSecurity.createManyAndReturn\",\"AuthSecurity.updateOne\",\"AuthSecurity.updateMany\",\"AuthSecurity.updateManyAndReturn\",\"AuthSecurity.upsertOne\",\"AuthSecurity.deleteOne\",\"AuthSecurity.deleteMany\",\"AuthSecurity.groupBy\",\"AuthSecurity.aggregate\",\"Setting.findUnique\",\"Setting.findUniqueOrThrow\",\"Setting.findFirst\",\"Setting.findFirstOrThrow\",\"Setting.findMany\",\"Setting.createOne\",\"Setting.createMany\",\"Setting.createManyAndReturn\",\"Setting.updateOne\",\"Setting.updateMany\",\"Setting.updateManyAndReturn\",\"Setting.upsertOne\",\"Setting.deleteOne\",\"Setting.deleteMany\",\"Setting.groupBy\",\"Setting.aggregate\",\"MaterialGroup.findUnique\",\"MaterialGroup.findUniqueOrThrow\",\"MaterialGroup.findFirst\",\"MaterialGroup.findFirstOrThrow\",\"MaterialGroup.findMany\",\"MaterialGroup.createOne\",\"MaterialGroup.createMany\",\"MaterialGroup.createManyAndReturn\",\"MaterialGroup.updateOne\",\"MaterialGroup.updateMany\",\"MaterialGroup.updateManyAndReturn\",\"MaterialGroup.upsertOne\",\"MaterialGroup.deleteOne\",\"MaterialGroup.deleteMany\",\"MaterialGroup.groupBy\",\"MaterialGroup.aggregate\",\"AND\",\"OR\",\"NOT\",\"id\",\"classId\",\"name\",\"type\",\"sortOrder\",\"createdAt\",\"equals\",\"in\",\"notIn\",\"lt\",\"lte\",\"gt\",\"gte\",\"not\",\"contains\",\"startsWith\",\"endsWith\",\"key\",\"value\",\"failedAttempts\",\"lockedUntil\",\"lastAttemptAt\",\"targetType\",\"deckId\",\"quizSetId\",\"groupId\",\"score\",\"maxScore\",\"answersJson\",\"isPartialRetake\",\"completedAt\",\"contentType\",\"mode\",\"currentIndex\",\"orderJson\",\"cardResultsJson\",\"updatedAt\",\"questionId\",\"text\",\"isCorrect\",\"prompt\",\"rationale\",\"category\",\"description\",\"front\",\"back\",\"slug\",\"every\",\"some\",\"none\",\"deckId_mode\",\"quizSetId_mode\",\"is\",\"isNot\",\"connectOrCreate\",\"upsert\",\"disconnect\",\"delete\",\"connect\",\"createMany\",\"set\",\"updateMany\",\"deleteMany\",\"increment\",\"decrement\",\"multiply\",\"divide\"]"),
- graph: "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_QEBAOgCACH-AQIA7wIAIf8BAQDoAgAhgAIBAJMDACGBAkAA9gIAIQYGAADNBAAgDAAAzAQAIPQBAADCBAAg9QEAAMIEACD5AQAAwgQAIIACAADCBAAgEQYAAPgCACAMAAD3AgAg2gEAAJIDADDbAQAAIQAQ3AEAAJIDADDdAQEAAAAB9AEBAJMDACH1AQEAkwMAIfkBAQCTAwAh_AEBAOgCACH9AQEA6AIAIf4BAgDvAgAh_wEBAOgCACGAAgEAkwMAIYECQAD2AgAhjwIAAJADACCQAgAAkQMAIAMAAAAhACABAAAiADACAAAjACABAAAAAwAgAQAAAAoAIAEAAAAPACABAAAAGAAgAQAAACEAIAEAAAAcACABAAAAAwAgAQAAAAoAIAkMAACPAwAg2gEAAI4DADDbAQAALQAQ3AEAAI4DADDdAQEA6AIAIeEBAgDvAgAh9AEBAOgCACGJAgEA6AIAIYoCAQDoAgAhAQwAAMwEACAJDAAAjwMAINoBAACOAwAw2wEAAC0AENwBAACOAwAw3QEBAAAAAeEBAgDvAgAh9AEBAOgCACGJAgEA6AIAIYoCAQDoAgAhAwAAAC0AIAEAAC4AMAIAAC8AIAEAAAAcACADAAAAIQAgAQAAIgAwAgAAIwAgAQAAAC0AIAEAAAAhACADAAAACgAgAQAACwAwAgAADAAgBAMAAKoFACAEAACnBQAgDQAAqwUAIA8AAKgFACANAwAAjAMAIAQAAIgDACANAACNAwAgDwAAiQMAINoBAACLAwAw2wEAAAcAENwBAACLAwAw3QEBAAAAAd4BAQDoAgAh3wEBAOgCACHgAQEA6AIAIeEBAgDvAgAh4gFAAPYCACEDAAAABwAgAQAANgAwAgAANwAgAQAAAAMAIAEAAAAKACABAAAABwAgAQAAAAEAIAsEAACIAwAgDwAAiQMAIBEAAIoDACDaAQAAhwMAMNsBAAA9ABDcAQAAhwMAMN0BAQDoAgAh3wEBAOgCACHhAQIA7wIAIeIBQAD2AgAhiwIBAOgCACEDBAAApwUAIA8AAKgFACARAACpBQAgAwAAAD0AIAEAAD4AMAIAAAEAIAMAAAA9ACABAAA-ADACAAABACADAAAAPQAgAQAAPgAwAgAAAQAgCAQAAKQFACAPAAClBQAgEQAApgUAIN0BAQAAAAHfAQEAAAAB4QECAAAAAeIBQAAAAAGLAgEAAAABARcAAEIAIAXdAQEAAAAB3wEBAAAAAeEBAgAAAAHiAUAAAAABiwIBAAAAAQEXAABEADABFwAARAAwCAQAAIMFACAPAACEBQAgEQAAhQUAIN0BAQCnAwAh3wEBAKcDACHhAQIAqAMAIeIBQACpAwAhiwIBAKcDACECAAAAAQAgFwAARwAgBd0BAQCnAwAh3wEBAKcDACHhAQIAqAMAIeIBQACpAwAhiwIBAKcDACECAAAAPQAgFwAASQAgAgAAAD0AIBcAAEkAIAMAAAABACAeAABCACAfAABHACABAAAAAQAgAQAAAD0AIAUJAAD-BAAgJAAA_wQAICUAAIIFACAmAACBBQAgJwAAgAUAIAjaAQAAhgMAMNsBAABQABDcAQAAhgMAMN0BAQDcAgAh3wEBANwCACHhAQIA3QIAIeIBQADeAgAhiwIBANwCACEDAAAAPQAgAQAATwAwIwAAUAAgAwAAAD0AIAEAAD4AMAIAAAEAIAEAAAAFACABAAAABQAgAwAAAAMAIAEAAAQAMAIAAAUAIAMAAAADACABAAAEADACAAAFACADAAAAAwAgAQAABAAwAgAABQAgDAMAALcEACAFAAD9BAAgDQAAuQQAIA4AALoEACAQAAC4BAAg3QEBAAAAAd4BAQAAAAHfAQEAAAAB4QECAAAAAeIBQAAAAAH2AQEAAAABiAIBAAAAAQEXAABYACAH3QEBAAAAAd4BAQAAAAHfAQEAAAAB4QECAAAAAeIBQAAAAAH2AQEAAAABiAIBAAAAAQEXAABaADABFwAAWgAwAQAAAAcAIAwDAACWBAAgBQAA_AQAIA0AAJgEACAOAACZBAAgEAAAlwQAIN0BAQCnAwAh3gEBAKcDACHfAQEApwMAIeEBAgCoAwAh4gFAAKkDACH2AQEAtQMAIYgCAQC1AwAhAgAAAAUAIBcAAF4AIAfdAQEApwMAId4BAQCnAwAh3wEBAKcDACHhAQIAqAMAIeIBQACpAwAh9gEBALUDACGIAgEAtQMAIQIAAAADACAXAABgACACAAAAAwAgFwAAYAAgAQAAAAcAIAMAAAAFACAeAABYACAfAABeACABAAAABQAgAQAAAAMAIAcJAAD3BAAgJAAA-AQAICUAAPsEACAmAAD6BAAgJwAA-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-QEBAAAAAfwBAQAAAAH9AQEAAAAB_gECAAAAAf8BAQAAAAGAAgEAAAABgQJAAAAAAQEXAADKAQAgCt0BAQAAAAH0AQEAAAAB9QEBAAAAAfkBAQAAAAH8AQEAAAAB_QEBAAAAAf4BAgAAAAH_AQEAAAABgAIBAAAAAYECQAAAAAEBFwAAzAEAMAEXAADMAQAwAQAAAAMAIAEAAAAKACAMBgAAogQAIAwAANMDACDdAQEApwMAIfQBAQC1AwAh9QEBALUDACH5AQEAtQMAIfwBAQCnAwAh_QEBAKcDACH-AQIAqAMAIf8BAQCnAwAhgAIBALUDACGBAkAAqQMAIQIAAAAjACAXAADRAQAgCt0BAQCnAwAh9AEBALUDACH1AQEAtQMAIfkBAQC1AwAh_AEBAKcDACH9AQEApwMAIf4BAgCoAwAh_wEBAKcDACGAAgEAtQMAIYECQACpAwAhAgAAACEAIBcAANMBACACAAAAIQAgFwAA0wEAIAEAAAADACABAAAACgAgAwAAACMAIB4AAMoBACAfAADRAQAgAQAAACMAIAEAAAAhACAJCQAA1gQAICQAANcEACAlAADaBAAgJgAA2QQAICcAANgEACD0AQAAwgQAIPUBAADCBAAg-QEAAMIEACCAAgAAwgQAIA3aAQAAgAMAMNsBAADcAQAQ3AEAAIADADDdAQEA3AIAIfQBAQDyAgAh9QEBAPICACH5AQEA8gIAIfwBAQDcAgAh_QEBANwCACH-AQIA3QIAIf8BAQDcAgAhgAIBAPICACGBAkAA3gIAIQMAAAAhACABAADbAQAwIwAA3AEAIAMAAAAhACABAAAiADACAAAjACABAAAAGgAgAQAAABoAIAMAAAAYACABAAAZADACAAAaACADAAAAGAAgAQAAGQAwAgAAGgAgAwAAABgAIAEAABkAMAIAABoAIAgGAADVBAAg3QEBAAAAAfUBAQAAAAH3AQgAAAAB-AECAAAAAfkBAQAAAAH6ASAAAAAB-wFAAAAAAQEXAADkAQAgB90BAQAAAAH1AQEAAAAB9wEIAAAAAfgBAgAAAAH5AQEAAAAB-gEgAAAAAfsBQAAAAAEBFwAA5gEAMAEXAADmAQAwCAYAANQEACDdAQEApwMAIfUBAQCnAwAh9wEIAOcDACH4AQIAqAMAIfkBAQCnAwAh-gEgAOgDACH7AUAAqQMAIQIAAAAaACAXAADpAQAgB90BAQCnAwAh9QEBAKcDACH3AQgA5wMAIfgBAgCoAwAh-QEBAKcDACH6ASAA6AMAIfsBQACpAwAhAgAAABgAIBcAAOsBACACAAAAGAAgFwAA6wEAIAMAAAAaACAeAADkAQAgHwAA6QEAIAEAAAAaACABAAAAGAAgBQkAAM8EACAkAADQBAAgJQAA0wQAICYAANIEACAnAADRBAAgCtoBAAD6AgAw2wEAAPIBABDcAQAA-gIAMN0BAQDcAgAh9QEBANwCACH3AQgA-wIAIfgBAgDdAgAh-QEBANwCACH6ASAA_AIAIfsBQADeAgAhAwAAABgAIAEAAPEBADAjAADyAQAgAwAAABgAIAEAABkAMAIAABoAIAwFAAD5AgAgBgAA-AIAIAwAAPcCACDaAQAA9QIAMNsBAAAcABDcAQAA9QIAMN0BAQAAAAHiAUAA9gIAIfMBAQDoAgAh9AEBAAAAAfUBAQAAAAH2AQEAAAABAQAAAPUBACABAAAA9QEAIAYFAADOBAAgBgAAzQQAIAwAAMwEACD0AQAAwgQAIPUBAADCBAAg9gEAAMIEACADAAAAHAAgAQAA-AEAMAIAAPUBACADAAAAHAAgAQAA-AEAMAIAAPUBACADAAAAHAAgAQAA-AEAMAIAAPUBACAJBQAA3AMAIAYAALcDACAMAAC2AwAg3QEBAAAAAeIBQAAAAAHzAQEAAAAB9AEBAAAAAfUBAQAAAAH2AQEAAAABARcAAPwBACAG3QEBAAAAAeIBQAAAAAHzAQEAAAAB9AEBAAAAAfUBAQAAAAH2AQEAAAABARcAAP4BADABFwAA_gEAMAEAAAADACABAAAACgAgAQAAAAcAIAkFAADbAwAgBgAAtAMAIAwAALMDACDdAQEApwMAIeIBQACpAwAh8wEBAKcDACH0AQEAtQMAIfUBAQC1AwAh9gEBALUDACECAAAA9QEAIBcAAIQCACAG3QEBAKcDACHiAUAAqQMAIfMBAQCnAwAh9AEBALUDACH1AQEAtQMAIfYBAQC1AwAhAgAAABwAIBcAAIYCACACAAAAHAAgFwAAhgIAIAEAAAADACABAAAACgAgAQAAAAcAIAMAAAD1AQAgHgAA_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-gIAMN0BAQDcAgAh9QEBANwCACH3AQgA-wIAIfgBAgDdAgAh-QEBANwCACH6ASAA_AIAIfsBQADeAgAhDQkAAOACACAkAADjAgAgJQAA4wIAICYAAOMCACAnAADjAgAg4wEIAAAAAeQBCAAAAATlAQgAAAAE5gEIAAAAAecBCAAAAAHoAQgAAAAB6QEIAAAAAeoBCAD_AgAhBQkAAOACACAmAAD-AgAgJwAA_gIAIOMBIAAAAAHqASAA_QIAIQUJAADgAgAgJgAA_gIAICcAAP4CACDjASAAAAAB6gEgAP0CACEC4wEgAAAAAeoBIAD-AgAhDQkAAOACACAkAADjAgAgJQAA4wIAICYAAOMCACAnAADjAgAg4wEIAAAAAeQBCAAAAATlAQgAAAAE5gEIAAAAAecBCAAAAAHoAQgAAAAB6QEIAAAAAeoBCAD_AgAhDdoBAACAAwAw2wEAANwBABDcAQAAgAMAMN0BAQDcAgAh9AEBAPICACH1AQEA8gIAIfkBAQDyAgAh_AEBANwCACH9AQEA3AIAIf4BAgDdAgAh_wEBANwCACGAAgEA8gIAIYECQADeAgAhCNoBAACBAwAw2wEAAMIBABDcAQAAgQMAMN0BAQDcAgAh4QECAN0CACGCAgEA3AIAIYMCAQDcAgAhhAIgAPwCACEK2gEAAIIDADDbAQAArAEAENwBAACCAwAw3QEBANwCACHgAQEA3AIAIeEBAgDdAgAh9QEBANwCACGFAgEA3AIAIYYCAQDcAgAhhwIBANwCACEK2gEAAIMDADDbAQAAlgEAENwBAACDAwAw3QEBANwCACHeAQEA3AIAId8BAQDcAgAh4QECAN0CACHiAUAA3gIAIfYBAQDyAgAhiAIBAPICACEI2gEAAIQDADDbAQAAfgAQ3AEAAIQDADDdAQEA3AIAIeEBAgDdAgAh9AEBANwCACGJAgEA3AIAIYoCAQDcAgAhCtoBAACFAwAw2wEAAGgAENwBAACFAwAw3QEBANwCACHeAQEA3AIAId8BAQDcAgAh4QECAN0CACHiAUAA3gIAIfYBAQDyAgAhiAIBAPICACEI2gEAAIYDADDbAQAAUAAQ3AEAAIYDADDdAQEA3AIAId8BAQDcAgAh4QECAN0CACHiAUAA3gIAIYsCAQDcAgAhCwQAAIgDACAPAACJAwAgEQAAigMAINoBAACHAwAw2wEAAD0AENwBAACHAwAw3QEBAOgCACHfAQEA6AIAIeEBAgDvAgAh4gFAAPYCACGLAgEA6AIAIQOMAgAAAwAgjQIAAAMAII4CAAADACADjAIAAAoAII0CAAAKACCOAgAACgAgA4wCAAAHACCNAgAABwAgjgIAAAcAIA0DAACMAwAgBAAAiAMAIA0AAI0DACAPAACJAwAg2gEAAIsDADDbAQAABwAQ3AEAAIsDADDdAQEA6AIAId4BAQDoAgAh3wEBAOgCACHgAQEA6AIAIeEBAgDvAgAh4gFAAPYCACENBAAAiAMAIA8AAIkDACARAACKAwAg2gEAAIcDADDbAQAAPQAQ3AEAAIcDADDdAQEA6AIAId8BAQDoAgAh4QECAO8CACHiAUAA9gIAIYsCAQDoAgAhkQIAAD0AIJICAAA9ACAOBQAA-QIAIAYAAPgCACAMAAD3AgAg2gEAAPUCADDbAQAAHAAQ3AEAAPUCADDdAQEA6AIAIeIBQAD2AgAh8wEBAOgCACH0AQEAkwMAIfUBAQCTAwAh9gEBAJMDACGRAgAAHAAgkgIAABwAIAkMAACPAwAg2gEAAI4DADDbAQAALQAQ3AEAAI4DADDdAQEA6AIAIeEBAgDvAgAh9AEBAOgCACGJAgEA6AIAIYoCAQDoAgAhEQMAAIwDACAFAAD5AgAgDQAAjQMAIA4AAJ8DACAQAAChAwAg2gEAAKADADDbAQAAAwAQ3AEAAKADADDdAQEA6AIAId4BAQDoAgAh3wEBAOgCACHhAQIA7wIAIeIBQAD2AgAh9gEBAJMDACGIAgEAkwMAIZECAAADACCSAgAAAwAgAvQBAQAAAAH9AQEAAAABAvUBAQAAAAH9AQEAAAABDwYAAPgCACAMAAD3AgAg2gEAAJIDADDbAQAAIQAQ3AEAAJIDADDdAQEA6AIAIfQBAQCTAwAh9QEBAJMDACH5AQEAkwMAIfwBAQDoAgAh_QEBAOgCACH-AQIA7wIAIf8BAQDoAgAhgAIBAJMDACGBAkAA9gIAIQvjAQEAAAAB5AEBAAAABeUBAQAAAAXmAQEAAAAB5wEBAAAAAegBAQAAAAHpAQEAAAAB6gEBAPQCACHrAQEAAAAB7AEBAAAAAe0BAQAAAAELBgAAlwMAINoBAACUAwAw2wEAABgAENwBAACUAwAw3QEBAOgCACH1AQEA6AIAIfcBCACVAwAh-AECAO8CACH5AQEA6AIAIfoBIACWAwAh-wFAAPYCACEI4wEIAAAAAeQBCAAAAATlAQgAAAAE5gEIAAAAAecBCAAAAAHoAQgAAAAB6QEIAAAAAeoBCADjAgAhAuMBIAAAAAHqASAA_gIAIRIDAACMAwAgBQAA-QIAIAoAAJ0DACALAACeAwAgDQAAjQMAIA4AAJ8DACDaAQAAnAMAMNsBAAAKABDcAQAAnAMAMN0BAQDoAgAh3gEBAOgCACHfAQEA6AIAIeEBAgDvAgAh4gFAAPYCACH2AQEAkwMAIYgCAQCTAwAhkQIAAAoAIJICAAAKACAJBwAAmQMAINoBAACYAwAw2wEAABMAENwBAACYAwAw3QEBAOgCACHhAQIA7wIAIYICAQDoAgAhgwIBAOgCACGEAiAAlgMAIQ4GAACXAwAgCAAAmwMAINoBAACaAwAw2wEAAA8AENwBAACaAwAw3QEBAOgCACHgAQEA6AIAIeEBAgDvAgAh9QEBAOgCACGFAgEA6AIAIYYCAQDoAgAhhwIBAOgCACGRAgAADwAgkgIAAA8AIAwGAACXAwAgCAAAmwMAINoBAACaAwAw2wEAAA8AENwBAACaAwAw3QEBAOgCACHgAQEA6AIAIeEBAgDvAgAh9QEBAOgCACGFAgEA6AIAIYYCAQDoAgAhhwIBAOgCACEDjAIAABMAII0CAAATACCOAgAAEwAgEAMAAIwDACAFAAD5AgAgCgAAnQMAIAsAAJ4DACANAACNAwAgDgAAnwMAINoBAACcAwAw2wEAAAoAENwBAACcAwAw3QEBAOgCACHeAQEA6AIAId8BAQDoAgAh4QECAO8CACHiAUAA9gIAIfYBAQCTAwAhiAIBAJMDACEDjAIAAA8AII0CAAAPACCOAgAADwAgA4wCAAAYACCNAgAAGAAgjgIAABgAIAOMAgAAIQAgjQIAACEAII4CAAAhACAPAwAAjAMAIAUAAPkCACANAACNAwAgDgAAnwMAIBAAAKEDACDaAQAAoAMAMNsBAAADABDcAQAAoAMAMN0BAQDoAgAh3gEBAOgCACHfAQEA6AIAIeEBAgDvAgAh4gFAAPYCACH2AQEAkwMAIYgCAQCTAwAhA4wCAAAtACCNAgAALQAgjgIAAC0AIAAAAAAAAZkCAQAAAAEFmQICAAAAAZwCAgAAAAGdAgIAAAABngICAAAAAZ8CAgAAAAEBmQJAAAAAAQUeAADTBQAgHwAAgQYAIJMCAADUBQAglAIAAIAGACCXAgAAAQAgCx4AAIsEADAfAACQBAAwkwIAAIwEADCUAgAAjQQAMJUCAACPBAAwlgIAAI8EADCXAgAAjwQAMJgCAACOBAAgmQIAAI8EADCaAgAAkQQAMJsCAACSBAAwCx4AALgDADAfAAC9AwAwkwIAALkDADCUAgAAugMAMJUCAAC8AwAwlgIAALwDADCXAgAAvAMAMJgCAAC7AwAgmQIAALwDADCaAgAAvgMAMJsCAAC_AwAwBx4AAK4DACAfAACxAwAgkwIAAK8DACCUAgAAsAMAIJUCAAAcACCWAgAAHAAglwIAAPUBACAHBgAAtwMAIAwAALYDACDdAQEAAAAB4gFAAAAAAfMBAQAAAAH0AQEAAAAB9QEBAAAAAQIAAAD1AQAgHgAArgMAIAMAAAAcACAeAACuAwAgHwAAsgMAIAkAAAAcACAGAAC0AwAgDAAAswMAIBcAALIDACDdAQEApwMAIeIBQACpAwAh8wEBAKcDACH0AQEAtQMAIfUBAQC1AwAhBwYAALQDACAMAACzAwAg3QEBAKcDACHiAUAAqQMAIfMBAQCnAwAh9AEBALUDACH1AQEAtQMAIQceAAD4BQAgHwAA_gUAIJMCAAD5BQAglAIAAP0FACCVAgAAAwAglgIAAAMAIJcCAAAFACAHHgAA9gUAIB8AAPsFACCTAgAA9wUAIJQCAAD6BQAglQIAAAoAIJYCAAAKACCXAgAADAAgAZkCAQAAAAEDHgAA-AUAIJMCAAD5BQAglwIAAAUAIAMeAAD2BQAgkwIAAPcFACCXAgAADAAgCwMAAIYEACAKAACHBAAgCwAAiAQAIA0AAIkEACAOAACKBAAg3QEBAAAAAd4BAQAAAAHfAQEAAAAB4QECAAAAAeIBQAAAAAGIAgEAAAABAgAAAAwAIB4AAIUEACADAAAADAAgHgAAhQQAIB8AAMIDACABFwAA9QUAMBADAACMAwAgBQAA-QIAIAoAAJ0DACALAACeAwAgDQAAjQMAIA4AAJ8DACDaAQAAnAMAMNsBAAAKABDcAQAAnAMAMN0BAQAAAAHeAQEA6AIAId8BAQDoAgAh4QECAO8CACHiAUAA9gIAIfYBAQCTAwAhiAIBAJMDACECAAAADAAgFwAAwgMAIAIAAADAAwAgFwAAwQMAIAraAQAAvwMAMNsBAADAAwAQ3AEAAL8DADDdAQEA6AIAId4BAQDoAgAh3wEBAOgCACHhAQIA7wIAIeIBQAD2AgAh9gEBAJMDACGIAgEAkwMAIQraAQAAvwMAMNsBAADAAwAQ3AEAAL8DADDdAQEA6AIAId4BAQDoAgAh3wEBAOgCACHhAQIA7wIAIeIBQAD2AgAh9gEBAJMDACGIAgEAkwMAIQbdAQEApwMAId4BAQCnAwAh3wEBAKcDACHhAQIAqAMAIeIBQACpAwAhiAIBALUDACELAwAAwwMAIAoAAMQDACALAADFAwAgDQAAxgMAIA4AAMcDACDdAQEApwMAId4BAQCnAwAh3wEBAKcDACHhAQIAqAMAIeIBQACpAwAhiAIBALUDACEFHgAA4gUAIB8AAPMFACCTAgAA4wUAIJQCAADyBQAglwIAAAEAIAseAADrAwAwHwAA8AMAMJMCAADsAwAwlAIAAO0DADCVAgAA7wMAMJYCAADvAwAwlwIAAO8DADCYAgAA7gMAIJkCAADvAwAwmgIAAPEDADCbAgAA8gMAMAseAADdAwAwHwAA4gMAMJMCAADeAwAwlAIAAN8DADCVAgAA4QMAMJYCAADhAwAwlwIAAOEDADCYAgAA4AMAIJkCAADhAwAwmgIAAOMDADCbAgAA5AMAMAceAADWAwAgHwAA2QMAIJMCAADXAwAglAIAANgDACCVAgAAHAAglgIAABwAIJcCAAD1AQAgCx4AAMgDADAfAADNAwAwkwIAAMkDADCUAgAAygMAMJUCAADMAwAwlgIAAMwDADCXAgAAzAMAMJgCAADLAwAgmQIAAMwDADCaAgAAzgMAMJsCAADPAwAwCgwAANUDACDdAQEAAAAB9AEBAAAAAfkBAQAAAAH8AQEAAAAB_QEBAAAAAf4BAgAAAAH_AQEAAAABgAIBAAAAAYECQAAAAAECAAAAIwAgHgAA1AMAIAMAAAAjACAeAADUAwAgHwAA0gMAIAEXAADxBQAwEQYAAPgCACAMAAD3AgAg2gEAAJIDADDbAQAAIQAQ3AEAAJIDADDdAQEAAAAB9AEBAJMDACH1AQEAkwMAIfkBAQCTAwAh_AEBAOgCACH9AQEA6AIAIf4BAgDvAgAh_wEBAOgCACGAAgEAkwMAIYECQAD2AgAhjwIAAJADACCQAgAAkQMAIAIAAAAjACAXAADSAwAgAgAAANADACAXAADRAwAgDdoBAADPAwAw2wEAANADABDcAQAAzwMAMN0BAQDoAgAh9AEBAJMDACH1AQEAkwMAIfkBAQCTAwAh_AEBAOgCACH9AQEA6AIAIf4BAgDvAgAh_wEBAOgCACGAAgEAkwMAIYECQAD2AgAhDdoBAADPAwAw2wEAANADABDcAQAAzwMAMN0BAQDoAgAh9AEBAJMDACH1AQEAkwMAIfkBAQCTAwAh_AEBAOgCACH9AQEA6AIAIf4BAgDvAgAh_wEBAOgCACGAAgEAkwMAIYECQAD2AgAhCd0BAQCnAwAh9AEBALUDACH5AQEAtQMAIfwBAQCnAwAh_QEBAKcDACH-AQIAqAMAIf8BAQCnAwAhgAIBALUDACGBAkAAqQMAIQoMAADTAwAg3QEBAKcDACH0AQEAtQMAIfkBAQC1AwAh_AEBAKcDACH9AQEApwMAIf4BAgCoAwAh_wEBAKcDACGAAgEAtQMAIYECQACpAwAhBx4AAOwFACAfAADvBQAgkwIAAO0FACCUAgAA7gUAIJUCAAADACCWAgAAAwAglwIAAAUAIAoMAADVAwAg3QEBAAAAAfQBAQAAAAH5AQEAAAAB_AEBAAAAAf0BAQAAAAH-AQIAAAAB_wEBAAAAAYACAQAAAAGBAkAAAAABAx4AAOwFACCTAgAA7QUAIJcCAAAFACAHBQAA3AMAIAwAALYDACDdAQEAAAAB4gFAAAAAAfMBAQAAAAH0AQEAAAAB9gEBAAAAAQIAAAD1AQAgHgAA1gMAIAMAAAAcACAeAADWAwAgHwAA2gMAIAkAAAAcACAFAADbAwAgDAAAswMAIBcAANoDACDdAQEApwMAIeIBQACpAwAh8wEBAKcDACH0AQEAtQMAIfYBAQC1AwAhBwUAANsDACAMAACzAwAg3QEBAKcDACHiAUAAqQMAIfMBAQCnAwAh9AEBALUDACH2AQEAtQMAIQceAADnBQAgHwAA6gUAIJMCAADoBQAglAIAAOkFACCVAgAABwAglgIAAAcAIJcCAAA3ACADHgAA5wUAIJMCAADoBQAglwIAADcAIAbdAQEAAAAB9wEIAAAAAfgBAgAAAAH5AQEAAAAB-gEgAAAAAfsBQAAAAAECAAAAGgAgHgAA6gMAIAMAAAAaACAeAADqAwAgHwAA6QMAIAEXAADmBQAwCwYAAJcDACDaAQAAlAMAMNsBAAAYABDcAQAAlAMAMN0BAQAAAAH1AQEA6AIAIfcBCACVAwAh-AECAO8CACH5AQEA6AIAIfoBIACWAwAh-wFAAPYCACECAAAAGgAgFwAA6QMAIAIAAADlAwAgFwAA5gMAIAraAQAA5AMAMNsBAADlAwAQ3AEAAOQDADDdAQEA6AIAIfUBAQDoAgAh9wEIAJUDACH4AQIA7wIAIfkBAQDoAgAh-gEgAJYDACH7AUAA9gIAIQraAQAA5AMAMNsBAADlAwAQ3AEAAOQDADDdAQEA6AIAIfUBAQDoAgAh9wEIAJUDACH4AQIA7wIAIfkBAQDoAgAh-gEgAJYDACH7AUAA9gIAIQbdAQEApwMAIfcBCADnAwAh-AECAKgDACH5AQEApwMAIfoBIADoAwAh-wFAAKkDACEFmQIIAAAAAZwCCAAAAAGdAggAAAABngIIAAAAAZ8CCAAAAAEBmQIgAAAAAQbdAQEApwMAIfcBCADnAwAh-AECAKgDACH5AQEApwMAIfoBIADoAwAh-wFAAKkDACEG3QEBAAAAAfcBCAAAAAH4AQIAAAAB-QEBAAAAAfoBIAAAAAH7AUAAAAABBwgAAIQEACDdAQEAAAAB4AEBAAAAAeEBAgAAAAGFAgEAAAABhgIBAAAAAYcCAQAAAAECAAAAEQAgHgAAgwQAIAMAAAARACAeAACDBAAgHwAA9QMAIAEXAADlBQAwDAYAAJcDACAIAACbAwAg2gEAAJoDADDbAQAADwAQ3AEAAJoDADDdAQEAAAAB4AEBAOgCACHhAQIA7wIAIfUBAQDoAgAhhQIBAOgCACGGAgEA6AIAIYcCAQDoAgAhAgAAABEAIBcAAPUDACACAAAA8wMAIBcAAPQDACAK2gEAAPIDADDbAQAA8wMAENwBAADyAwAw3QEBAOgCACHgAQEA6AIAIeEBAgDvAgAh9QEBAOgCACGFAgEA6AIAIYYCAQDoAgAhhwIBAOgCACEK2gEAAPIDADDbAQAA8wMAENwBAADyAwAw3QEBAOgCACHgAQEA6AIAIeEBAgDvAgAh9QEBAOgCACGFAgEA6AIAIYYCAQDoAgAhhwIBAOgCACEG3QEBAKcDACHgAQEApwMAIeEBAgCoAwAhhQIBAKcDACGGAgEApwMAIYcCAQCnAwAhBwgAAPYDACDdAQEApwMAIeABAQCnAwAh4QECAKgDACGFAgEApwMAIYYCAQCnAwAhhwIBAKcDACELHgAA9wMAMB8AAPwDADCTAgAA-AMAMJQCAAD5AwAwlQIAAPsDADCWAgAA-wMAMJcCAAD7AwAwmAIAAPoDACCZAgAA-wMAMJoCAAD9AwAwmwIAAP4DADAE3QEBAAAAAeEBAgAAAAGDAgEAAAABhAIgAAAAAQIAAAAVACAeAACCBAAgAwAAABUAIB4AAIIEACAfAACBBAAgARcAAOQFADAJBwAAmQMAINoBAACYAwAw2wEAABMAENwBAACYAwAw3QEBAAAAAeEBAgDvAgAhggIBAOgCACGDAgEA6AIAIYQCIACWAwAhAgAAABUAIBcAAIEEACACAAAA_wMAIBcAAIAEACAI2gEAAP4DADDbAQAA_wMAENwBAAD-AwAw3QEBAOgCACHhAQIA7wIAIYICAQDoAgAhgwIBAOgCACGEAiAAlgMAIQjaAQAA_gMAMNsBAAD_AwAQ3AEAAP4DADDdAQEA6AIAIeEBAgDvAgAhggIBAOgCACGDAgEA6AIAIYQCIACWAwAhBN0BAQCnAwAh4QECAKgDACGDAgEApwMAIYQCIADoAwAhBN0BAQCnAwAh4QECAKgDACGDAgEApwMAIYQCIADoAwAhBN0BAQAAAAHhAQIAAAABgwIBAAAAAYQCIAAAAAEHCAAAhAQAIN0BAQAAAAHgAQEAAAAB4QECAAAAAYUCAQAAAAGGAgEAAAABhwIBAAAAAQQeAAD3AwAwkwIAAPgDADCXAgAA-wMAMJgCAAD6AwAgCwMAAIYEACAKAACHBAAgCwAAiAQAIA0AAIkEACAOAACKBAAg3QEBAAAAAd4BAQAAAAHfAQEAAAAB4QECAAAAAeIBQAAAAAGIAgEAAAABAx4AAOIFACCTAgAA4wUAIJcCAAABACAEHgAA6wMAMJMCAADsAwAwlwIAAO8DADCYAgAA7gMAIAQeAADdAwAwkwIAAN4DADCXAgAA4QMAMJgCAADgAwAgAx4AANYDACCTAgAA1wMAIJcCAAD1AQAgBB4AAMgDADCTAgAAyQMAMJcCAADMAwAwmAIAAMsDACAKAwAAtwQAIA0AALkEACAOAAC6BAAgEAAAuAQAIN0BAQAAAAHeAQEAAAAB3wEBAAAAAeEBAgAAAAHiAUAAAAABiAIBAAAAAQIAAAAFACAeAAC2BAAgAwAAAAUAIB4AALYEACAfAACVBAAgARcAAOEFADAPAwAAjAMAIAUAAPkCACANAACNAwAgDgAAnwMAIBAAAKEDACDaAQAAoAMAMNsBAAADABDcAQAAoAMAMN0BAQAAAAHeAQEA6AIAId8BAQDoAgAh4QECAO8CACHiAUAA9gIAIfYBAQCTAwAhiAIBAJMDACECAAAABQAgFwAAlQQAIAIAAACTBAAgFwAAlAQAIAraAQAAkgQAMNsBAACTBAAQ3AEAAJIEADDdAQEA6AIAId4BAQDoAgAh3wEBAOgCACHhAQIA7wIAIeIBQAD2AgAh9gEBAJMDACGIAgEAkwMAIQraAQAAkgQAMNsBAACTBAAQ3AEAAJIEADDdAQEA6AIAId4BAQDoAgAh3wEBAOgCACHhAQIA7wIAIeIBQAD2AgAh9gEBAJMDACGIAgEAkwMAIQbdAQEApwMAId4BAQCnAwAh3wEBAKcDACHhAQIAqAMAIeIBQACpAwAhiAIBALUDACEKAwAAlgQAIA0AAJgEACAOAACZBAAgEAAAlwQAIN0BAQCnAwAh3gEBAKcDACHfAQEApwMAIeEBAgCoAwAh4gFAAKkDACGIAgEAtQMAIQUeAADVBQAgHwAA3wUAIJMCAADWBQAglAIAAN4FACCXAgAAAQAgCx4AAKoEADAfAACvBAAwkwIAAKsEADCUAgAArAQAMJUCAACuBAAwlgIAAK4EADCXAgAArgQAMJgCAACtBAAgmQIAAK4EADCaAgAAsAQAMJsCAACxBAAwBx4AAKUEACAfAACoBAAgkwIAAKYEACCUAgAApwQAIJUCAAAcACCWAgAAHAAglwIAAPUBACALHgAAmgQAMB8AAJ4EADCTAgAAmwQAMJQCAACcBAAwlQIAAMwDADCWAgAAzAMAMJcCAADMAwAwmAIAAJ0EACCZAgAAzAMAMJoCAACfBAAwmwIAAM8DADAKBgAApAQAIN0BAQAAAAH1AQEAAAAB-QEBAAAAAfwBAQAAAAH9AQEAAAAB_gECAAAAAf8BAQAAAAGAAgEAAAABgQJAAAAAAQIAAAAjACAeAACjBAAgAwAAACMAIB4AAKMEACAfAAChBAAgARcAAN0FADACAAAAIwAgFwAAoQQAIAIAAADQAwAgFwAAoAQAIAndAQEApwMAIfUBAQC1AwAh-QEBALUDACH8AQEApwMAIf0BAQCnAwAh_gECAKgDACH_AQEApwMAIYACAQC1AwAhgQJAAKkDACEKBgAAogQAIN0BAQCnAwAh9QEBALUDACH5AQEAtQMAIfwBAQCnAwAh_QEBAKcDACH-AQIAqAMAIf8BAQCnAwAhgAIBALUDACGBAkAAqQMAIQceAADYBQAgHwAA2wUAIJMCAADZBQAglAIAANoFACCVAgAACgAglgIAAAoAIJcCAAAMACAKBgAApAQAIN0BAQAAAAH1AQEAAAAB-QEBAAAAAfwBAQAAAAH9AQEAAAAB_gECAAAAAf8BAQAAAAGAAgEAAAABgQJAAAAAAQMeAADYBQAgkwIAANkFACCXAgAADAAgBwUAANwDACAGAAC3AwAg3QEBAAAAAeIBQAAAAAHzAQEAAAAB9QEBAAAAAfYBAQAAAAECAAAA9QEAIB4AAKUEACADAAAAHAAgHgAApQQAIB8AAKkEACAJAAAAHAAgBQAA2wMAIAYAALQDACAXAACpBAAg3QEBAKcDACHiAUAAqQMAIfMBAQCnAwAh9QEBALUDACH2AQEAtQMAIQcFAADbAwAgBgAAtAMAIN0BAQCnAwAh4gFAAKkDACHzAQEApwMAIfUBAQC1AwAh9gEBALUDACEE3QEBAAAAAeEBAgAAAAGJAgEAAAABigIBAAAAAQIAAAAvACAeAAC1BAAgAwAAAC8AIB4AALUEACAfAAC0BAAgARcAANcFADAJDAAAjwMAINoBAACOAwAw2wEAAC0AENwBAACOAwAw3QEBAAAAAeEBAgDvAgAh9AEBAOgCACGJAgEA6AIAIYoCAQDoAgAhAgAAAC8AIBcAALQEACACAAAAsgQAIBcAALMEACAI2gEAALEEADDbAQAAsgQAENwBAACxBAAw3QEBAOgCACHhAQIA7wIAIfQBAQDoAgAhiQIBAOgCACGKAgEA6AIAIQjaAQAAsQQAMNsBAACyBAAQ3AEAALEEADDdAQEA6AIAIeEBAgDvAgAh9AEBAOgCACGJAgEA6AIAIYoCAQDoAgAhBN0BAQCnAwAh4QECAKgDACGJAgEApwMAIYoCAQCnAwAhBN0BAQCnAwAh4QECAKgDACGJAgEApwMAIYoCAQCnAwAhBN0BAQAAAAHhAQIAAAABiQIBAAAAAYoCAQAAAAEKAwAAtwQAIA0AALkEACAOAAC6BAAgEAAAuAQAIN0BAQAAAAHeAQEAAAAB3wEBAAAAAeEBAgAAAAHiAUAAAAABiAIBAAAAAQMeAADVBQAgkwIAANYFACCXAgAAAQAgBB4AAKoEADCTAgAAqwQAMJcCAACuBAAwmAIAAK0EACADHgAApQQAIJMCAACmBAAglwIAAPUBACAEHgAAmgQAMJMCAACbBAAwlwIAAMwDADCYAgAAnQQAIAMeAADTBQAgkwIAANQFACCXAgAAAQAgBB4AAIsEADCTAgAAjAQAMJcCAACPBAAwmAIAAI4EACAEHgAAuAMAMJMCAAC5AwAwlwIAALwDADCYAgAAuwMAIAMeAACuAwAgkwIAAK8DACCXAgAA9QEAIAAAAAAAAAAAAAGZAkAAAAABAAAABwMAAKoFACAFAADOBAAgDQAAqwUAIA4AALAFACAQAACxBQAg9gEAAMIEACCIAgAAwgQAIAgDAACqBQAgBQAAzgQAIAoAAK4FACALAACvBQAgDQAAqwUAIA4AALAFACD2AQAAwgQAIIgCAADCBAAgBAMAAKoFACAEAACnBQAgDQAAqwUAIA8AAKgFACAAAAAAAAUeAADOBQAgHwAA0QUAIJMCAADPBQAglAIAANAFACCXAgAADAAgAx4AAM4FACCTAgAAzwUAIJcCAAAMACAAAAAAAAAAAAAABR4AAMkFACAfAADMBQAgkwIAAMoFACCUAgAAywUAIJcCAAARACADHgAAyQUAIJMCAADKBQAglwIAABEAIAAAAAAABR4AAMQFACAfAADHBQAgkwIAAMUFACCUAgAAxgUAIJcCAAAMACADHgAAxAUAIJMCAADFBQAglwIAAAwAIAAAAAAABx4AAL8FACAfAADCBQAgkwIAAMAFACCUAgAAwQUAIJUCAAAHACCWAgAABwAglwIAADcAIAMeAAC_BQAgkwIAAMAFACCXAgAANwAgAAAAAAAFHgAAugUAIB8AAL0FACCTAgAAuwUAIJQCAAC8BQAglwIAAAUAIAMeAAC6BQAgkwIAALsFACCXAgAABQAgAAAAAAAHHgAAtQUAIB8AALgFACCTAgAAtgUAIJQCAAC3BQAglQIAAAcAIJYCAAAHACCXAgAANwAgAx4AALUFACCTAgAAtgUAIJcCAAA3ACAAAAAAAAseAACbBQAwHwAAnwUAMJMCAACcBQAwlAIAAJ0FADCVAgAAjwQAMJYCAACPBAAwlwIAAI8EADCYAgAAngUAIJkCAACPBAAwmgIAAKAFADCbAgAAkgQAMAseAACSBQAwHwAAlgUAMJMCAACTBQAwlAIAAJQFADCVAgAAvAMAMJYCAAC8AwAwlwIAALwDADCYAgAAlQUAIJkCAAC8AwAwmgIAAJcFADCbAgAAvwMAMAseAACGBQAwHwAAiwUAMJMCAACHBQAwlAIAAIgFADCVAgAAigUAMJYCAACKBQAwlwIAAIoFADCYAgAAiQUAIJkCAACKBQAwmgIAAIwFADCbAgAAjQUAMAgEAAC8BAAgDQAAvgQAIA8AAL0EACDdAQEAAAAB3wEBAAAAAeABAQAAAAHhAQIAAAAB4gFAAAAAAQIAAAA3ACAeAACRBQAgAwAAADcAIB4AAJEFACAfAACQBQAgARcAALQFADANAwAAjAMAIAQAAIgDACANAACNAwAgDwAAiQMAINoBAACLAwAw2wEAAAcAENwBAACLAwAw3QEBAAAAAd4BAQDoAgAh3wEBAOgCACHgAQEA6AIAIeEBAgDvAgAh4gFAAPYCACECAAAANwAgFwAAkAUAIAIAAACOBQAgFwAAjwUAIAnaAQAAjQUAMNsBAACOBQAQ3AEAAI0FADDdAQEA6AIAId4BAQDoAgAh3wEBAOgCACHgAQEA6AIAIeEBAgDvAgAh4gFAAPYCACEJ2gEAAI0FADDbAQAAjgUAENwBAACNBQAw3QEBAOgCACHeAQEA6AIAId8BAQDoAgAh4AEBAOgCACHhAQIA7wIAIeIBQAD2AgAhBd0BAQCnAwAh3wEBAKcDACHgAQEApwMAIeEBAgCoAwAh4gFAAKkDACEIBAAAqwMAIA0AAK0DACAPAACsAwAg3QEBAKcDACHfAQEApwMAIeABAQCnAwAh4QECAKgDACHiAUAAqQMAIQgEAAC8BAAgDQAAvgQAIA8AAL0EACDdAQEAAAAB3wEBAAAAAeABAQAAAAHhAQIAAAAB4gFAAAAAAQsFAADvBAAgCgAAhwQAIAsAAIgEACANAACJBAAgDgAAigQAIN0BAQAAAAHfAQEAAAAB4QECAAAAAeIBQAAAAAH2AQEAAAABiAIBAAAAAQIAAAAMACAeAACaBQAgAwAAAAwAIB4AAJoFACAfAACZBQAgARcAALMFADACAAAADAAgFwAAmQUAIAIAAADAAwAgFwAAmAUAIAbdAQEApwMAId8BAQCnAwAh4QECAKgDACHiAUAAqQMAIfYBAQC1AwAhiAIBALUDACELBQAA7gQAIAoAAMQDACALAADFAwAgDQAAxgMAIA4AAMcDACDdAQEApwMAId8BAQCnAwAh4QECAKgDACHiAUAAqQMAIfYBAQC1AwAhiAIBALUDACELBQAA7wQAIAoAAIcEACALAACIBAAgDQAAiQQAIA4AAIoEACDdAQEAAAAB3wEBAAAAAeEBAgAAAAHiAUAAAAAB9gEBAAAAAYgCAQAAAAEKBQAA_QQAIA0AALkEACAOAAC6BAAgEAAAuAQAIN0BAQAAAAHfAQEAAAAB4QECAAAAAeIBQAAAAAH2AQEAAAABiAIBAAAAAQIAAAAFACAeAACjBQAgAwAAAAUAIB4AAKMFACAfAACiBQAgARcAALIFADACAAAABQAgFwAAogUAIAIAAACTBAAgFwAAoQUAIAbdAQEApwMAId8BAQCnAwAh4QECAKgDACHiAUAAqQMAIfYBAQC1AwAhiAIBALUDACEKBQAA_AQAIA0AAJgEACAOAACZBAAgEAAAlwQAIN0BAQCnAwAh3wEBAKcDACHhAQIAqAMAIeIBQACpAwAh9gEBALUDACGIAgEAtQMAIQoFAAD9BAAgDQAAuQQAIA4AALoEACAQAAC4BAAg3QEBAAAAAd8BAQAAAAHhAQIAAAAB4gFAAAAAAfYBAQAAAAGIAgEAAAABBB4AAJsFADCTAgAAnAUAMJcCAACPBAAwmAIAAJ4FACAEHgAAkgUAMJMCAACTBQAwlwIAALwDADCYAgAAlQUAIAQeAACGBQAwkwIAAIcFADCXAgAAigUAMJgCAACJBQAgAAAAAwQAAKcFACAPAACoBQAgEQAAqQUAIAYFAADOBAAgBgAAzQQAIAwAAMwEACD0AQAAwgQAIPUBAADCBAAg9gEAAMIEACACBgAAzQQAIAgAAK0FACAAAAAAAAbdAQEAAAAB3wEBAAAAAeEBAgAAAAHiAUAAAAAB9gEBAAAAAYgCAQAAAAEG3QEBAAAAAd8BAQAAAAHhAQIAAAAB4gFAAAAAAfYBAQAAAAGIAgEAAAABBd0BAQAAAAHfAQEAAAAB4AEBAAAAAeEBAgAAAAHiAUAAAAABCQMAALsEACANAAC-BAAgDwAAvQQAIN0BAQAAAAHeAQEAAAAB3wEBAAAAAeABAQAAAAHhAQIAAAAB4gFAAAAAAQIAAAA3ACAeAAC1BQAgAwAAAAcAIB4AALUFACAfAAC5BQAgCwAAAAcAIAMAAKoDACANAACtAwAgDwAArAMAIBcAALkFACDdAQEApwMAId4BAQCnAwAh3wEBAKcDACHgAQEApwMAIeEBAgCoAwAh4gFAAKkDACEJAwAAqgMAIA0AAK0DACAPAACsAwAg3QEBAKcDACHeAQEApwMAId8BAQCnAwAh4AEBAKcDACHhAQIAqAMAIeIBQACpAwAhCwMAALcEACAFAAD9BAAgDQAAuQQAIA4AALoEACDdAQEAAAAB3gEBAAAAAd8BAQAAAAHhAQIAAAAB4gFAAAAAAfYBAQAAAAGIAgEAAAABAgAAAAUAIB4AALoFACADAAAAAwAgHgAAugUAIB8AAL4FACANAAAAAwAgAwAAlgQAIAUAAPwEACANAACYBAAgDgAAmQQAIBcAAL4FACDdAQEApwMAId4BAQCnAwAh3wEBAKcDACHhAQIAqAMAIeIBQACpAwAh9gEBALUDACGIAgEAtQMAIQsDAACWBAAgBQAA_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_AEBAAAAAf0BAQAAAAH-AQIAAAAB_wEBAAAAAYACAQAAAAGBAkAAAAABAwAAAD0AIB4AANUFACAfAADgBQAgCQAAAD0AIA8AAIQFACARAACFBQAgFwAA4AUAIN0BAQCnAwAh3wEBAKcDACHhAQIAqAMAIeIBQACpAwAhiwIBAKcDACEHDwAAhAUAIBEAAIUFACDdAQEApwMAId8BAQCnAwAh4QECAKgDACHiAUAAqQMAIYsCAQCnAwAhBt0BAQAAAAHeAQEAAAAB3wEBAAAAAeEBAgAAAAHiAUAAAAABiAIBAAAAAQcEAACkBQAgEQAApgUAIN0BAQAAAAHfAQEAAAAB4QECAAAAAeIBQAAAAAGLAgEAAAABAgAAAAEAIB4AAOIFACAE3QEBAAAAAeEBAgAAAAGDAgEAAAABhAIgAAAAAQbdAQEAAAAB4AEBAAAAAeEBAgAAAAGFAgEAAAABhgIBAAAAAYcCAQAAAAEG3QEBAAAAAfcBCAAAAAH4AQIAAAAB-QEBAAAAAfoBIAAAAAH7AUAAAAABCQMAALsEACAEAAC8BAAgDwAAvQQAIN0BAQAAAAHeAQEAAAAB3wEBAAAAAeABAQAAAAHhAQIAAAAB4gFAAAAAAQIAAAA3ACAeAADnBQAgAwAAAAcAIB4AAOcFACAfAADrBQAgCwAAAAcAIAMAAKoDACAEAACrAwAgDwAArAMAIBcAAOsFACDdAQEApwMAId4BAQCnAwAh3wEBAKcDACHgAQEApwMAIeEBAgCoAwAh4gFAAKkDACEJAwAAqgMAIAQAAKsDACAPAACsAwAg3QEBAKcDACHeAQEApwMAId8BAQCnAwAh4AEBAKcDACHhAQIAqAMAIeIBQACpAwAhCwMAALcEACAFAAD9BAAgDQAAuQQAIBAAALgEACDdAQEAAAAB3gEBAAAAAd8BAQAAAAHhAQIAAAAB4gFAAAAAAfYBAQAAAAGIAgEAAAABAgAAAAUAIB4AAOwFACADAAAAAwAgHgAA7AUAIB8AAPAFACANAAAAAwAgAwAAlgQAIAUAAPwEACANAACYBAAgEAAAlwQAIBcAAPAFACDdAQEApwMAId4BAQCnAwAh3wEBAKcDACHhAQIAqAMAIeIBQACpAwAh9gEBALUDACGIAgEAtQMAIQsDAACWBAAgBQAA_AQAIA0AAJgEACAQAACXBAAg3QEBAKcDACHeAQEApwMAId8BAQCnAwAh4QECAKgDACHiAUAAqQMAIfYBAQC1AwAhiAIBALUDACEJ3QEBAAAAAfQBAQAAAAH5AQEAAAAB_AEBAAAAAf0BAQAAAAH-AQIAAAAB_wEBAAAAAYACAQAAAAGBAkAAAAABAwAAAD0AIB4AAOIFACAfAAD0BQAgCQAAAD0AIAQAAIMFACARAACFBQAgFwAA9AUAIN0BAQCnAwAh3wEBAKcDACHhAQIAqAMAIeIBQACpAwAhiwIBAKcDACEHBAAAgwUAIBEAAIUFACDdAQEApwMAId8BAQCnAwAh4QECAKgDACHiAUAAqQMAIYsCAQCnAwAhBt0BAQAAAAHeAQEAAAAB3wEBAAAAAeEBAgAAAAHiAUAAAAABiAIBAAAAAQwDAACGBAAgBQAA7wQAIAoAAIcEACALAACIBAAgDgAAigQAIN0BAQAAAAHeAQEAAAAB3wEBAAAAAeEBAgAAAAHiAUAAAAAB9gEBAAAAAYgCAQAAAAECAAAADAAgHgAA9gUAIAsDAAC3BAAgBQAA_QQAIA4AALoEACAQAAC4BAAg3QEBAAAAAd4BAQAAAAHfAQEAAAAB4QECAAAAAeIBQAAAAAH2AQEAAAABiAIBAAAAAQIAAAAFACAeAAD4BQAgAwAAAAoAIB4AAPYFACAfAAD8BQAgDgAAAAoAIAMAAMMDACAFAADuBAAgCgAAxAMAIAsAAMUDACAOAADHAwAgFwAA_AUAIN0BAQCnAwAh3gEBAKcDACHfAQEApwMAIeEBAgCoAwAh4gFAAKkDACH2AQEAtQMAIYgCAQC1AwAhDAMAAMMDACAFAADuBAAgCgAAxAMAIAsAAMUDACAOAADHAwAg3QEBAKcDACHeAQEApwMAId8BAQCnAwAh4QECAKgDACHiAUAAqQMAIfYBAQC1AwAhiAIBALUDACEDAAAAAwAgHgAA-AUAIB8AAP8FACANAAAAAwAgAwAAlgQAIAUAAPwEACAOAACZBAAgEAAAlwQAIBcAAP8FACDdAQEApwMAId4BAQCnAwAh3wEBAKcDACHhAQIAqAMAIeIBQACpAwAh9gEBALUDACGIAgEAtQMAIQsDAACWBAAgBQAA_AQAIA4AAJkEACAQAACXBAAg3QEBAKcDACHeAQEApwMAId8BAQCnAwAh4QECAKgDACHiAUAAqQMAIfYBAQC1AwAhiAIBALUDACEDAAAAPQAgHgAA0wUAIB8AAIIGACAJAAAAPQAgBAAAgwUAIA8AAIQFACAXAACCBgAg3QEBAKcDACHfAQEApwMAIeEBAgCoAwAh4gFAAKkDACGLAgEApwMAIQcEAACDBQAgDwAAhAUAIN0BAQCnAwAh3wEBAKcDACHhAQIAqAMAIeIBQACpAwAhiwIBAKcDACEEBAYCCQAPDzUEETgDBgMAAQUIAwkADg0xCQ4yChAwDQUDAAEECQIJAAwNKgkPDQQHAwABBQ4DCQALChIFCxsIDR0JDiQKAwYABAgWBgkABwEHAAUBCBcAAQYABAMFIAMGHwQMHgICBiYEDCUCAwonAAsoAA4pAAIEKwAPLAABDAACAg40ABAzAAMEOQAPOgAROwAAAAAFCQAUJAAVJQAWJgAXJwAYAAAAAAAFCQAUJAAVJQAWJgAXJwAYAgMAAQVdAwIDAAEFYwMFCQAdJAAeJQAfJgAgJwAhAAAAAAAFCQAdJAAeJQAfJgAgJwAhAQwAAgEMAAIFCQAmJAAnJQAoJgApJwAqAAAAAAAFCQAmJAAnJQAoJgApJwAqAgMAAQWLAQMCAwABBZEBAwUJAC8kADAlADEmADInADMAAAAAAAUJAC8kADAlADEmADInADMBBgAEAQYABAUJADgkADklADomADsnADwAAAAAAAUJADgkADklADomADsnADwBBwAFAQcABQUJAEEkAEIlAEMmAEQnAEUAAAAAAAUJAEEkAEIlAEMmAEQnAEUCBtABBAzPAQICBtcBBAzWAQIFCQBKJABLJQBMJgBNJwBOAAAAAAAFCQBKJABLJQBMJgBNJwBOAQYABAEGAAQFCQBTJABUJQBVJgBWJwBXAAAAAAAFCQBTJABUJQBVJgBWJwBXAwWDAgMGggIEDIECAgMFiwIDBooCBAyJAgIDCQBcJgBdJwBeAAAAAwkAXCYAXScAXgAAAAUJAGQkAGUlAGYmAGcnAGgAAAAAAAUJAGQkAGUlAGYmAGcnAGgAAAADCQBuJgBvJwBwAAAAAwkAbiYAbycAcAEDAAEBAwABBQkAdSQAdiUAdyYAeCcAeQAAAAAABQkAdSQAdiUAdyYAeCcAeRICARM8ARQ_ARVAARZBARhDARlFEBpGERtIARxKEB1LEiBMASFNASJOEChREylSGSpTAitUAixVAi1WAi5XAi9ZAjBbEDFcGjJfAjNhEDRiGzVkAjZlAjdmEDhpHDlqIjprDTtsDTxtDT1uDT5vDT9xDUBzEEF0I0J2DUN4EER5JEV6DUZ7DUd8EEh_JUmAAStKgQEES4IBBEyDAQRNhAEEToUBBE-HAQRQiQEQUYoBLFKNAQRTjwEQVJABLVWSAQRWkwEEV5QBEFiXAS5ZmAE0WpkBBVuaAQVcmwEFXZwBBV6dAQVfnwEFYKEBEGGiATVipAEFY6YBEGSnATZlqAEFZqkBBWeqARBorQE3aa4BPWqvAQZrsAEGbLEBBm2yAQZuswEGb7UBBnC3ARBxuAE-croBBnO8ARB0vQE_db4BBna_AQZ3wAEQeMMBQHnEAUZ6xQEKe8YBCnzHAQp9yAEKfskBCn_LAQqAAc0BEIEBzgFHggHSAQqDAdQBEIQB1QFIhQHYAQqGAdkBCocB2gEQiAHdAUmJAd4BT4oB3wEIiwHgAQiMAeEBCI0B4gEIjgHjAQiPAeUBCJAB5wEQkQHoAVCSAeoBCJMB7AEQlAHtAVGVAe4BCJYB7wEIlwHwARCYAfMBUpkB9AFYmgH2AQmbAfcBCZwB-QEJnQH6AQmeAfsBCZ8B_QEJoAH_ARChAYACWaIBhQIJowGHAhCkAYgCWqUBjAIJpgGNAgmnAY4CEKgBkQJbqQGSAl-qAZQCYKsBlQJgrAGYAmCtAZkCYK4BmgJgrwGcAmCwAZ4CELEBnwJhsgGhAmCzAaMCELQBpAJitQGlAmC2AaYCYLcBpwIQuAGqAmO5AasCaboBrQJquwGuAmq8AbECar0BsgJqvgGzAmq_AbUCasABtwIQwQG4AmvCAboCasMBvAIQxAG9AmzFAb4CasYBvwJqxwHAAhDIAcMCbckBxAJxygHFAgPLAcYCA8wBxwIDzQHIAgPOAckCA88BywID0AHNAhDRAc4CctIB0AID0wHSAhDUAdMCc9UB1AID1gHVAgPXAdYCENgB2QJ02QHaAno"
+ strings: JSON.parse("[\"where\",\"orderBy\",\"cursor\",\"class\",\"decks\",\"group\",\"quizSet\",\"question\",\"options\",\"_count\",\"questions\",\"attempts\",\"deck\",\"shareLink\",\"progress\",\"quizSets\",\"cards\",\"materialGroups\",\"Class.findUnique\",\"Class.findUniqueOrThrow\",\"Class.findFirst\",\"Class.findFirstOrThrow\",\"Class.findMany\",\"data\",\"Class.createOne\",\"Class.createMany\",\"Class.createManyAndReturn\",\"Class.updateOne\",\"Class.updateMany\",\"Class.updateManyAndReturn\",\"create\",\"update\",\"Class.upsertOne\",\"Class.deleteOne\",\"Class.deleteMany\",\"having\",\"_avg\",\"_sum\",\"_min\",\"_max\",\"Class.groupBy\",\"Class.aggregate\",\"Deck.findUnique\",\"Deck.findUniqueOrThrow\",\"Deck.findFirst\",\"Deck.findFirstOrThrow\",\"Deck.findMany\",\"Deck.createOne\",\"Deck.createMany\",\"Deck.createManyAndReturn\",\"Deck.updateOne\",\"Deck.updateMany\",\"Deck.updateManyAndReturn\",\"Deck.upsertOne\",\"Deck.deleteOne\",\"Deck.deleteMany\",\"Deck.groupBy\",\"Deck.aggregate\",\"Flashcard.findUnique\",\"Flashcard.findUniqueOrThrow\",\"Flashcard.findFirst\",\"Flashcard.findFirstOrThrow\",\"Flashcard.findMany\",\"Flashcard.createOne\",\"Flashcard.createMany\",\"Flashcard.createManyAndReturn\",\"Flashcard.updateOne\",\"Flashcard.updateMany\",\"Flashcard.updateManyAndReturn\",\"Flashcard.upsertOne\",\"Flashcard.deleteOne\",\"Flashcard.deleteMany\",\"Flashcard.groupBy\",\"Flashcard.aggregate\",\"QuizSet.findUnique\",\"QuizSet.findUniqueOrThrow\",\"QuizSet.findFirst\",\"QuizSet.findFirstOrThrow\",\"QuizSet.findMany\",\"QuizSet.createOne\",\"QuizSet.createMany\",\"QuizSet.createManyAndReturn\",\"QuizSet.updateOne\",\"QuizSet.updateMany\",\"QuizSet.updateManyAndReturn\",\"QuizSet.upsertOne\",\"QuizSet.deleteOne\",\"QuizSet.deleteMany\",\"QuizSet.groupBy\",\"QuizSet.aggregate\",\"Question.findUnique\",\"Question.findUniqueOrThrow\",\"Question.findFirst\",\"Question.findFirstOrThrow\",\"Question.findMany\",\"Question.createOne\",\"Question.createMany\",\"Question.createManyAndReturn\",\"Question.updateOne\",\"Question.updateMany\",\"Question.updateManyAndReturn\",\"Question.upsertOne\",\"Question.deleteOne\",\"Question.deleteMany\",\"Question.groupBy\",\"Question.aggregate\",\"AnswerOption.findUnique\",\"AnswerOption.findUniqueOrThrow\",\"AnswerOption.findFirst\",\"AnswerOption.findFirstOrThrow\",\"AnswerOption.findMany\",\"AnswerOption.createOne\",\"AnswerOption.createMany\",\"AnswerOption.createManyAndReturn\",\"AnswerOption.updateOne\",\"AnswerOption.updateMany\",\"AnswerOption.updateManyAndReturn\",\"AnswerOption.upsertOne\",\"AnswerOption.deleteOne\",\"AnswerOption.deleteMany\",\"AnswerOption.groupBy\",\"AnswerOption.aggregate\",\"StudyProgress.findUnique\",\"StudyProgress.findUniqueOrThrow\",\"StudyProgress.findFirst\",\"StudyProgress.findFirstOrThrow\",\"StudyProgress.findMany\",\"StudyProgress.createOne\",\"StudyProgress.createMany\",\"StudyProgress.createManyAndReturn\",\"StudyProgress.updateOne\",\"StudyProgress.updateMany\",\"StudyProgress.updateManyAndReturn\",\"StudyProgress.upsertOne\",\"StudyProgress.deleteOne\",\"StudyProgress.deleteMany\",\"StudyProgress.groupBy\",\"StudyProgress.aggregate\",\"QuizAttempt.findUnique\",\"QuizAttempt.findUniqueOrThrow\",\"QuizAttempt.findFirst\",\"QuizAttempt.findFirstOrThrow\",\"QuizAttempt.findMany\",\"QuizAttempt.createOne\",\"QuizAttempt.createMany\",\"QuizAttempt.createManyAndReturn\",\"QuizAttempt.updateOne\",\"QuizAttempt.updateMany\",\"QuizAttempt.updateManyAndReturn\",\"QuizAttempt.upsertOne\",\"QuizAttempt.deleteOne\",\"QuizAttempt.deleteMany\",\"QuizAttempt.groupBy\",\"QuizAttempt.aggregate\",\"ShareLink.findUnique\",\"ShareLink.findUniqueOrThrow\",\"ShareLink.findFirst\",\"ShareLink.findFirstOrThrow\",\"ShareLink.findMany\",\"ShareLink.createOne\",\"ShareLink.createMany\",\"ShareLink.createManyAndReturn\",\"ShareLink.updateOne\",\"ShareLink.updateMany\",\"ShareLink.updateManyAndReturn\",\"ShareLink.upsertOne\",\"ShareLink.deleteOne\",\"ShareLink.deleteMany\",\"ShareLink.groupBy\",\"ShareLink.aggregate\",\"AuthSecurity.findUnique\",\"AuthSecurity.findUniqueOrThrow\",\"AuthSecurity.findFirst\",\"AuthSecurity.findFirstOrThrow\",\"AuthSecurity.findMany\",\"AuthSecurity.createOne\",\"AuthSecurity.createMany\",\"AuthSecurity.createManyAndReturn\",\"AuthSecurity.updateOne\",\"AuthSecurity.updateMany\",\"AuthSecurity.updateManyAndReturn\",\"AuthSecurity.upsertOne\",\"AuthSecurity.deleteOne\",\"AuthSecurity.deleteMany\",\"AuthSecurity.groupBy\",\"AuthSecurity.aggregate\",\"Setting.findUnique\",\"Setting.findUniqueOrThrow\",\"Setting.findFirst\",\"Setting.findFirstOrThrow\",\"Setting.findMany\",\"Setting.createOne\",\"Setting.createMany\",\"Setting.createManyAndReturn\",\"Setting.updateOne\",\"Setting.updateMany\",\"Setting.updateManyAndReturn\",\"Setting.upsertOne\",\"Setting.deleteOne\",\"Setting.deleteMany\",\"Setting.groupBy\",\"Setting.aggregate\",\"StudyActivity.findUnique\",\"StudyActivity.findUniqueOrThrow\",\"StudyActivity.findFirst\",\"StudyActivity.findFirstOrThrow\",\"StudyActivity.findMany\",\"StudyActivity.createOne\",\"StudyActivity.createMany\",\"StudyActivity.createManyAndReturn\",\"StudyActivity.updateOne\",\"StudyActivity.updateMany\",\"StudyActivity.updateManyAndReturn\",\"StudyActivity.upsertOne\",\"StudyActivity.deleteOne\",\"StudyActivity.deleteMany\",\"StudyActivity.groupBy\",\"StudyActivity.aggregate\",\"MaterialGroup.findUnique\",\"MaterialGroup.findUniqueOrThrow\",\"MaterialGroup.findFirst\",\"MaterialGroup.findFirstOrThrow\",\"MaterialGroup.findMany\",\"MaterialGroup.createOne\",\"MaterialGroup.createMany\",\"MaterialGroup.createManyAndReturn\",\"MaterialGroup.updateOne\",\"MaterialGroup.updateMany\",\"MaterialGroup.updateManyAndReturn\",\"MaterialGroup.upsertOne\",\"MaterialGroup.deleteOne\",\"MaterialGroup.deleteMany\",\"MaterialGroup.groupBy\",\"MaterialGroup.aggregate\",\"AND\",\"OR\",\"NOT\",\"id\",\"classId\",\"name\",\"type\",\"sortOrder\",\"createdAt\",\"equals\",\"in\",\"notIn\",\"lt\",\"lte\",\"gt\",\"gte\",\"not\",\"contains\",\"startsWith\",\"endsWith\",\"occurredAt\",\"key\",\"value\",\"failedAttempts\",\"lockedUntil\",\"lastAttemptAt\",\"targetType\",\"deckId\",\"quizSetId\",\"groupId\",\"score\",\"maxScore\",\"answersJson\",\"isPartialRetake\",\"completedAt\",\"contentType\",\"mode\",\"currentIndex\",\"orderJson\",\"cardResultsJson\",\"updatedAt\",\"questionId\",\"text\",\"isCorrect\",\"prompt\",\"rationale\",\"category\",\"description\",\"front\",\"back\",\"slug\",\"every\",\"some\",\"none\",\"deckId_mode\",\"quizSetId_mode\",\"is\",\"isNot\",\"connectOrCreate\",\"upsert\",\"disconnect\",\"delete\",\"connect\",\"createMany\",\"set\",\"updateMany\",\"deleteMany\",\"increment\",\"decrement\",\"multiply\",\"divide\"]"),
+ graph: "oAaCAdABCwQAAKMDACAPAACkAwAgEQAApQMAIOoBAACiAwAw6wEAAD0AEOwBAACiAwAw7QEBAAAAAe8BAQCBAwAh8QECAIsDACHyAUAAggMAIZwCAQAAAAEBAAAAAQAgDwMAAKcDACAFAACUAwAgDQAAqAMAIA4AALoDACAQAAC8AwAg6gEAALsDADDrAQAAAwAQ7AEAALsDADDtAQEAgQMAIe4BAQCBAwAh7wEBAIEDACHxAQIAiwMAIfIBQACCAwAhhwIBAK4DACGZAgEArgMAIQcDAADIBQAgBQAA7AQAIA0AAMkFACAOAADOBQAgEAAAzwUAIIcCAADgBAAgmQIAAOAEACAPAwAApwMAIAUAAJQDACANAACoAwAgDgAAugMAIBAAALwDACDqAQAAuwMAMOsBAAADABDsAQAAuwMAMO0BAQAAAAHuAQEAgQMAIe8BAQCBAwAh8QECAIsDACHyAUAAggMAIYcCAQCuAwAhmQIBAK4DACEDAAAAAwAgAQAABAAwAgAABQAgDQMAAKcDACAEAACjAwAgDQAAqAMAIA8AAKQDACDqAQAApgMAMOsBAAAHABDsAQAApgMAMO0BAQCBAwAh7gEBAIEDACHvAQEAgQMAIfABAQCBAwAh8QECAIsDACHyAUAAggMAIQEAAAAHACADAAAAAwAgAQAABAAwAgAABQAgEAMAAKcDACAFAACUAwAgCgAAuAMAIAsAALkDACANAACoAwAgDgAAugMAIOoBAAC3AwAw6wEAAAoAEOwBAAC3AwAw7QEBAIEDACHuAQEAgQMAIe8BAQCBAwAh8QECAIsDACHyAUAAggMAIYcCAQCuAwAhmQIBAK4DACEIAwAAyAUAIAUAAOwEACAKAADMBQAgCwAAzQUAIA0AAMkFACAOAADOBQAghwIAAOAEACCZAgAA4AQAIBADAACnAwAgBQAAlAMAIAoAALgDACALAAC5AwAgDQAAqAMAIA4AALoDACDqAQAAtwMAMOsBAAAKABDsAQAAtwMAMO0BAQAAAAHuAQEAgQMAIe8BAQCBAwAh8QECAIsDACHyAUAAggMAIYcCAQCuAwAhmQIBAK4DACEDAAAACgAgAQAACwAwAgAADAAgAQAAAAcAIAwGAACyAwAgCAAAtgMAIOoBAAC1AwAw6wEAAA8AEOwBAAC1AwAw7QEBAIEDACHwAQEAgQMAIfEBAgCLAwAhhgIBAIEDACGWAgEAgQMAIZcCAQCBAwAhmAIBAIEDACECBgAA6wQAIAgAAMsFACAMBgAAsgMAIAgAALYDACDqAQAAtQMAMOsBAAAPABDsAQAAtQMAMO0BAQAAAAHwAQEAgQMAIfEBAgCLAwAhhgIBAIEDACGWAgEAgQMAIZcCAQCBAwAhmAIBAIEDACEDAAAADwAgAQAAEAAwAgAAEQAgCQcAALQDACDqAQAAswMAMOsBAAATABDsAQAAswMAMO0BAQCBAwAh8QECAIsDACGTAgEAgQMAIZQCAQCBAwAhlQIgALEDACEBBwAAygUAIAkHAAC0AwAg6gEAALMDADDrAQAAEwAQ7AEAALMDADDtAQEAAAAB8QECAIsDACGTAgEAgQMAIZQCAQCBAwAhlQIgALEDACEDAAAAEwAgAQAAFAAwAgAAFQAgAQAAABMAIAsGAACyAwAg6gEAAK8DADDrAQAAGAAQ7AEAAK8DADDtAQEAgQMAIYYCAQCBAwAhiAIIALADACGJAgIAiwMAIYoCAQCBAwAhiwIgALEDACGMAkAAggMAIQEGAADrBAAgCwYAALIDACDqAQAArwMAMOsBAAAYABDsAQAArwMAMO0BAQAAAAGGAgEAgQMAIYgCCACwAwAhiQICAIsDACGKAgEAgQMAIYsCIACxAwAhjAJAAIIDACEDAAAAGAAgAQAAGQAwAgAAGgAgDAUAAJQDACAGAACTAwAgDAAAkgMAIOoBAACRAwAw6wEAABwAEOwBAACRAwAw7QEBAIEDACHyAUAAggMAIYQCAQCBAwAhhQIBAK4DACGGAgEArgMAIYcCAQCuAwAhAQAAABwAIAEAAAADACABAAAACgAgAQAAAAcAIA8GAACTAwAgDAAAkgMAIOoBAACtAwAw6wEAACEAEOwBAACtAwAw7QEBAIEDACGFAgEArgMAIYYCAQCuAwAhigIBAK4DACGNAgEAgQMAIY4CAQCBAwAhjwICAIsDACGQAgEAgQMAIZECAQCuAwAhkgJAAIIDACEGBgAA6wQAIAwAAOoEACCFAgAA4AQAIIYCAADgBAAgigIAAOAEACCRAgAA4AQAIBEGAACTAwAgDAAAkgMAIOoBAACtAwAw6wEAACEAEOwBAACtAwAw7QEBAAAAAYUCAQCuAwAhhgIBAK4DACGKAgEArgMAIY0CAQCBAwAhjgIBAIEDACGPAgIAiwMAIZACAQCBAwAhkQIBAK4DACGSAkAAggMAIaACAACrAwAgoQIAAKwDACADAAAAIQAgAQAAIgAwAgAAIwAgAQAAAAMAIAEAAAAKACABAAAADwAgAQAAABgAIAEAAAAhACABAAAAHAAgAQAAAAMAIAEAAAAKACAJDAAAqgMAIOoBAACpAwAw6wEAAC0AEOwBAACpAwAw7QEBAIEDACHxAQIAiwMAIYUCAQCBAwAhmgIBAIEDACGbAgEAgQMAIQEMAADqBAAgCQwAAKoDACDqAQAAqQMAMOsBAAAtABDsAQAAqQMAMO0BAQAAAAHxAQIAiwMAIYUCAQCBAwAhmgIBAIEDACGbAgEAgQMAIQMAAAAtACABAAAuADACAAAvACABAAAAHAAgAwAAACEAIAEAACIAMAIAACMAIAEAAAAtACABAAAAIQAgAwAAAAoAIAEAAAsAMAIAAAwAIAQDAADIBQAgBAAAxQUAIA0AAMkFACAPAADGBQAgDQMAAKcDACAEAACjAwAgDQAAqAMAIA8AAKQDACDqAQAApgMAMOsBAAAHABDsAQAApgMAMO0BAQAAAAHuAQEAgQMAIe8BAQCBAwAh8AEBAIEDACHxAQIAiwMAIfIBQACCAwAhAwAAAAcAIAEAADYAMAIAADcAIAEAAAADACABAAAACgAgAQAAAAcAIAEAAAABACALBAAAowMAIA8AAKQDACARAAClAwAg6gEAAKIDADDrAQAAPQAQ7AEAAKIDADDtAQEAgQMAIe8BAQCBAwAh8QECAIsDACHyAUAAggMAIZwCAQCBAwAhAwQAAMUFACAPAADGBQAgEQAAxwUAIAMAAAA9ACABAAA-ADACAAABACADAAAAPQAgAQAAPgAwAgAAAQAgAwAAAD0AIAEAAD4AMAIAAAEAIAgEAADCBQAgDwAAwwUAIBEAAMQFACDtAQEAAAAB7wEBAAAAAfEBAgAAAAHyAUAAAAABnAIBAAAAAQEXAABCACAF7QEBAAAAAe8BAQAAAAHxAQIAAAAB8gFAAAAAAZwCAQAAAAEBFwAARAAwARcAAEQAMAgEAAChBQAgDwAAogUAIBEAAKMFACDtAQEAwgMAIe8BAQDCAwAh8QECAMMDACHyAUAAxAMAIZwCAQDCAwAhAgAAAAEAIBcAAEcAIAXtAQEAwgMAIe8BAQDCAwAh8QECAMMDACHyAUAAxAMAIZwCAQDCAwAhAgAAAD0AIBcAAEkAIAIAAAA9ACAXAABJACADAAAAAQAgHgAAQgAgHwAARwAgAQAAAAEAIAEAAAA9ACAFCQAAnAUAICQAAJ0FACAlAACgBQAgJgAAnwUAICcAAJ4FACAI6gEAAKEDADDrAQAAUAAQ7AEAAKEDADDtAQEA9QIAIe8BAQD1AgAh8QECAPYCACHyAUAA9wIAIZwCAQD1AgAhAwAAAD0AIAEAAE8AMCMAAFAAIAMAAAA9ACABAAA-ADACAAABACABAAAABQAgAQAAAAUAIAMAAAADACABAAAEADACAAAFACADAAAAAwAgAQAABAAwAgAABQAgAwAAAAMAIAEAAAQAMAIAAAUAIAwDAADSBAAgBQAAmwUAIA0AANQEACAOAADVBAAgEAAA0wQAIO0BAQAAAAHuAQEAAAAB7wEBAAAAAfEBAgAAAAHyAUAAAAABhwIBAAAAAZkCAQAAAAEBFwAAWAAgB-0BAQAAAAHuAQEAAAAB7wEBAAAAAfEBAgAAAAHyAUAAAAABhwIBAAAAAZkCAQAAAAEBFwAAWgAwARcAAFoAMAEAAAAHACAMAwAAsQQAIAUAAJoFACANAACzBAAgDgAAtAQAIBAAALIEACDtAQEAwgMAIe4BAQDCAwAh7wEBAMIDACHxAQIAwwMAIfIBQADEAwAhhwIBANADACGZAgEA0AMAIQIAAAAFACAXAABeACAH7QEBAMIDACHuAQEAwgMAIe8BAQDCAwAh8QECAMMDACHyAUAAxAMAIYcCAQDQAwAhmQIBANADACECAAAAAwAgFwAAYAAgAgAAAAMAIBcAAGAAIAEAAAAHACADAAAABQAgHgAAWAAgHwAAXgAgAQAAAAUAIAEAAAADACAHCQAAlQUAICQAAJYFACAlAACZBQAgJgAAmAUAICcAAJcFACCHAgAA4AQAIJkCAADgBAAgCuoBAACgAwAw6wEAAGgAEOwBAACgAwAw7QEBAPUCACHuAQEA9QIAIe8BAQD1AgAh8QECAPYCACHyAUAA9wIAIYcCAQCOAwAhmQIBAI4DACEDAAAAAwAgAQAAZwAwIwAAaAAgAwAAAAMAIAEAAAQAMAIAAAUAIAEAAAAvACABAAAALwAgAwAAAC0AIAEAAC4AMAIAAC8AIAMAAAAtACABAAAuADACAAAvACADAAAALQAgAQAALgAwAgAALwAgBgwAAJQFACDtAQEAAAAB8QECAAAAAYUCAQAAAAGaAgEAAAABmwIBAAAAAQEXAABwACAF7QEBAAAAAfEBAgAAAAGFAgEAAAABmgIBAAAAAZsCAQAAAAEBFwAAcgAwARcAAHIAMAYMAACTBQAg7QEBAMIDACHxAQIAwwMAIYUCAQDCAwAhmgIBAMIDACGbAgEAwgMAIQIAAAAvACAXAAB1ACAF7QEBAMIDACHxAQIAwwMAIYUCAQDCAwAhmgIBAMIDACGbAgEAwgMAIQIAAAAtACAXAAB3ACACAAAALQAgFwAAdwAgAwAAAC8AIB4AAHAAIB8AAHUAIAEAAAAvACABAAAALQAgBQkAAI4FACAkAACPBQAgJQAAkgUAICYAAJEFACAnAACQBQAgCOoBAACfAwAw6wEAAH4AEOwBAACfAwAw7QEBAPUCACHxAQIA9gIAIYUCAQD1AgAhmgIBAPUCACGbAgEA9QIAIQMAAAAtACABAAB9ADAjAAB-ACADAAAALQAgAQAALgAwAgAALwAgAQAAAAwAIAEAAAAMACADAAAACgAgAQAACwAwAgAADAAgAwAAAAoAIAEAAAsAMAIAAAwAIAMAAAAKACABAAALADACAAAMACANAwAAoQQAIAUAAI0FACAKAACiBAAgCwAAowQAIA0AAKQEACAOAAClBAAg7QEBAAAAAe4BAQAAAAHvAQEAAAAB8QECAAAAAfIBQAAAAAGHAgEAAAABmQIBAAAAAQEXAACGAQAgB-0BAQAAAAHuAQEAAAAB7wEBAAAAAfEBAgAAAAHyAUAAAAABhwIBAAAAAZkCAQAAAAEBFwAAiAEAMAEXAACIAQAwAQAAAAcAIA0DAADeAwAgBQAAjAUAIAoAAN8DACALAADgAwAgDQAA4QMAIA4AAOIDACDtAQEAwgMAIe4BAQDCAwAh7wEBAMIDACHxAQIAwwMAIfIBQADEAwAhhwIBANADACGZAgEA0AMAIQIAAAAMACAXAACMAQAgB-0BAQDCAwAh7gEBAMIDACHvAQEAwgMAIfEBAgDDAwAh8gFAAMQDACGHAgEA0AMAIZkCAQDQAwAhAgAAAAoAIBcAAI4BACACAAAACgAgFwAAjgEAIAEAAAAHACADAAAADAAgHgAAhgEAIB8AAIwBACABAAAADAAgAQAAAAoAIAcJAACHBQAgJAAAiAUAICUAAIsFACAmAACKBQAgJwAAiQUAIIcCAADgBAAgmQIAAOAEACAK6gEAAJ4DADDrAQAAlgEAEOwBAACeAwAw7QEBAPUCACHuAQEA9QIAIe8BAQD1AgAh8QECAPYCACHyAUAA9wIAIYcCAQCOAwAhmQIBAI4DACEDAAAACgAgAQAAlQEAMCMAAJYBACADAAAACgAgAQAACwAwAgAADAAgAQAAABEAIAEAAAARACADAAAADwAgAQAAEAAwAgAAEQAgAwAAAA8AIAEAABAAMAIAABEAIAMAAAAPACABAAAQADACAAARACAJBgAAhgUAIAgAAJ8EACDtAQEAAAAB8AEBAAAAAfEBAgAAAAGGAgEAAAABlgIBAAAAAZcCAQAAAAGYAgEAAAABARcAAJ4BACAH7QEBAAAAAfABAQAAAAHxAQIAAAABhgIBAAAAAZYCAQAAAAGXAgEAAAABmAIBAAAAAQEXAACgAQAwARcAAKABADAJBgAAhQUAIAgAAJEEACDtAQEAwgMAIfABAQDCAwAh8QECAMMDACGGAgEAwgMAIZYCAQDCAwAhlwIBAMIDACGYAgEAwgMAIQIAAAARACAXAACjAQAgB-0BAQDCAwAh8AEBAMIDACHxAQIAwwMAIYYCAQDCAwAhlgIBAMIDACGXAgEAwgMAIZgCAQDCAwAhAgAAAA8AIBcAAKUBACACAAAADwAgFwAApQEAIAMAAAARACAeAACeAQAgHwAAowEAIAEAAAARACABAAAADwAgBQkAAIAFACAkAACBBQAgJQAAhAUAICYAAIMFACAnAACCBQAgCuoBAACdAwAw6wEAAKwBABDsAQAAnQMAMO0BAQD1AgAh8AEBAPUCACHxAQIA9gIAIYYCAQD1AgAhlgIBAPUCACGXAgEA9QIAIZgCAQD1AgAhAwAAAA8AIAEAAKsBADAjAACsAQAgAwAAAA8AIAEAABAAMAIAABEAIAEAAAAVACABAAAAFQAgAwAAABMAIAEAABQAMAIAABUAIAMAAAATACABAAAUADACAAAVACADAAAAEwAgAQAAFAAwAgAAFQAgBgcAAP8EACDtAQEAAAAB8QECAAAAAZMCAQAAAAGUAgEAAAABlQIgAAAAAQEXAAC0AQAgBe0BAQAAAAHxAQIAAAABkwIBAAAAAZQCAQAAAAGVAiAAAAABARcAALYBADABFwAAtgEAMAYHAAD-BAAg7QEBAMIDACHxAQIAwwMAIZMCAQDCAwAhlAIBAMIDACGVAiAAgwQAIQIAAAAVACAXAAC5AQAgBe0BAQDCAwAh8QECAMMDACGTAgEAwgMAIZQCAQDCAwAhlQIgAIMEACECAAAAEwAgFwAAuwEAIAIAAAATACAXAAC7AQAgAwAAABUAIB4AALQBACAfAAC5AQAgAQAAABUAIAEAAAATACAFCQAA-QQAICQAAPoEACAlAAD9BAAgJgAA_AQAICcAAPsEACAI6gEAAJwDADDrAQAAwgEAEOwBAACcAwAw7QEBAPUCACHxAQIA9gIAIZMCAQD1AgAhlAIBAPUCACGVAiAAlwMAIQMAAAATACABAADBAQAwIwAAwgEAIAMAAAATACABAAAUADACAAAVACABAAAAIwAgAQAAACMAIAMAAAAhACABAAAiADACAAAjACADAAAAIQAgAQAAIgAwAgAAIwAgAwAAACEAIAEAACIAMAIAACMAIAwGAAC_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_AQEAAAABgAIBAIEDACEBAAAArAIAIAEAAACsAgAgBeoBAACEAwAw6wEAAK8CABDsAQAAhAMAMP8BAQCBAwAhgAIBAIEDACEAAwAAAK8CACABAACwAgAwAgAArAIAIAMAAACvAgAgAQAAsAIAMAIAAKwCACADAAAArwIAIAEAALACADACAACsAgAgAv8BAQAAAAGAAgEAAAABARcAALQCACAC_wEBAAAAAYACAQAAAAEBFwAAtgIAMAEXAAC2AgAwAv8BAQDCAwAhgAIBAMIDACECAAAArAIAIBcAALkCACAC_wEBAMIDACGAAgEAwgMAIQIAAACvAgAgFwAAuwIAIAIAAACvAgAgFwAAuwIAIAMAAACsAgAgHgAAtAIAIB8AALkCACABAAAArAIAIAEAAACvAgAgAwkAAN0EACAmAADfBAAgJwAA3gQAIAXqAQAAgwMAMOsBAADCAgAQ7AEAAIMDADD_AQEA9QIAIYACAQD1AgAhAwAAAK8CACABAADBAgAwIwAAwgIAIAMAAACvAgAgAQAAsAIAMAIAAKwCACAG6gEAAIADADDrAQAAyAIAEOwBAACAAwAw7QEBAAAAAfABAQCBAwAh_gFAAIIDACEBAAAAxQIAIAEAAADFAgAgBuoBAACAAwAw6wEAAMgCABDsAQAAgAMAMO0BAQCBAwAh8AEBAIEDACH-AUAAggMAIQADAAAAyAIAIAEAAMkCADACAADFAgAgAwAAAMgCACABAADJAgAwAgAAxQIAIAMAAADIAgAgAQAAyQIAMAIAAMUCACAD7QEBAAAAAfABAQAAAAH-AUAAAAABARcAAM0CACAD7QEBAAAAAfABAQAAAAH-AUAAAAABARcAAM8CADABFwAAzwIAMAPtAQEAwgMAIfABAQDCAwAh_gFAAMQDACECAAAAxQIAIBcAANICACAD7QEBAMIDACHwAQEAwgMAIf4BQADEAwAhAgAAAMgCACAXAADUAgAgAgAAAMgCACAXAADUAgAgAwAAAMUCACAeAADNAgAgHwAA0gIAIAEAAADFAgAgAQAAAMgCACADCQAA2gQAICYAANwEACAnAADbBAAgBuoBAAD_AgAw6wEAANsCABDsAQAA_wIAMO0BAQD1AgAh8AEBAPUCACH-AUAA9wIAIQMAAADIAgAgAQAA2gIAMCMAANsCACADAAAAyAIAIAEAAMkCADACAADFAgAgAQAAADcAIAEAAAA3ACADAAAABwAgAQAANgAwAgAANwAgAwAAAAcAIAEAADYAMAIAADcAIAMAAAAHACABAAA2ADACAAA3ACAKAwAA1gQAIAQAANcEACANAADZBAAgDwAA2AQAIO0BAQAAAAHuAQEAAAAB7wEBAAAAAfABAQAAAAHxAQIAAAAB8gFAAAAAAQEXAADjAgAgBu0BAQAAAAHuAQEAAAAB7wEBAAAAAfABAQAAAAHxAQIAAAAB8gFAAAAAAQEXAADlAgAwARcAAOUCADAKAwAAxQMAIAQAAMYDACANAADIAwAgDwAAxwMAIO0BAQDCAwAh7gEBAMIDACHvAQEAwgMAIfABAQDCAwAh8QECAMMDACHyAUAAxAMAIQIAAAA3ACAXAADoAgAgBu0BAQDCAwAh7gEBAMIDACHvAQEAwgMAIfABAQDCAwAh8QECAMMDACHyAUAAxAMAIQIAAAAHACAXAADqAgAgAgAAAAcAIBcAAOoCACADAAAANwAgHgAA4wIAIB8AAOgCACABAAAANwAgAQAAAAcAIAUJAAC9AwAgJAAAvgMAICUAAMEDACAmAADAAwAgJwAAvwMAIAnqAQAA9AIAMOsBAADxAgAQ7AEAAPQCADDtAQEA9QIAIe4BAQD1AgAh7wEBAPUCACHwAQEA9QIAIfEBAgD2AgAh8gFAAPcCACEDAAAABwAgAQAA8AIAMCMAAPECACADAAAABwAgAQAANgAwAgAANwAgCeoBAAD0AgAw6wEAAPECABDsAQAA9AIAMO0BAQD1AgAh7gEBAPUCACHvAQEA9QIAIfABAQD1AgAh8QECAPYCACHyAUAA9wIAIQ4JAAD5AgAgJgAA_gIAICcAAP4CACDzAQEAAAAB9AEBAAAABPUBAQAAAAT2AQEAAAAB9wEBAAAAAfgBAQAAAAH5AQEAAAAB-gEBAP0CACH7AQEAAAAB_AEBAAAAAf0BAQAAAAENCQAA-QIAICQAAPwCACAlAAD5AgAgJgAA-QIAICcAAPkCACDzAQIAAAAB9AECAAAABPUBAgAAAAT2AQIAAAAB9wECAAAAAfgBAgAAAAH5AQIAAAAB-gECAPsCACELCQAA-QIAICYAAPoCACAnAAD6AgAg8wFAAAAAAfQBQAAAAAT1AUAAAAAE9gFAAAAAAfcBQAAAAAH4AUAAAAAB-QFAAAAAAfoBQAD4AgAhCwkAAPkCACAmAAD6AgAgJwAA-gIAIPMBQAAAAAH0AUAAAAAE9QFAAAAABPYBQAAAAAH3AUAAAAAB-AFAAAAAAfkBQAAAAAH6AUAA-AIAIQjzAQIAAAAB9AECAAAABPUBAgAAAAT2AQIAAAAB9wECAAAAAfgBAgAAAAH5AQIAAAAB-gECAPkCACEI8wFAAAAAAfQBQAAAAAT1AUAAAAAE9gFAAAAAAfcBQAAAAAH4AUAAAAAB-QFAAAAAAfoBQAD6AgAhDQkAAPkCACAkAAD8AgAgJQAA-QIAICYAAPkCACAnAAD5AgAg8wECAAAAAfQBAgAAAAT1AQIAAAAE9gECAAAAAfcBAgAAAAH4AQIAAAAB-QECAAAAAfoBAgD7AgAhCPMBCAAAAAH0AQgAAAAE9QEIAAAABPYBCAAAAAH3AQgAAAAB-AEIAAAAAfkBCAAAAAH6AQgA_AIAIQ4JAAD5AgAgJgAA_gIAICcAAP4CACDzAQEAAAAB9AEBAAAABPUBAQAAAAT2AQEAAAAB9wEBAAAAAfgBAQAAAAH5AQEAAAAB-gEBAP0CACH7AQEAAAAB_AEBAAAAAf0BAQAAAAEL8wEBAAAAAfQBAQAAAAT1AQEAAAAE9gEBAAAAAfcBAQAAAAH4AQEAAAAB-QEBAAAAAfoBAQD-AgAh-wEBAAAAAfwBAQAAAAH9AQEAAAABBuoBAAD_AgAw6wEAANsCABDsAQAA_wIAMO0BAQD1AgAh8AEBAPUCACH-AUAA9wIAIQbqAQAAgAMAMOsBAADIAgAQ7AEAAIADADDtAQEAgQMAIfABAQCBAwAh_gFAAIIDACEL8wEBAAAAAfQBAQAAAAT1AQEAAAAE9gEBAAAAAfcBAQAAAAH4AQEAAAAB-QEBAAAAAfoBAQD-AgAh-wEBAAAAAfwBAQAAAAH9AQEAAAABCPMBQAAAAAH0AUAAAAAE9QFAAAAABPYBQAAAAAH3AUAAAAAB-AFAAAAAAfkBQAAAAAH6AUAA-gIAIQXqAQAAgwMAMOsBAADCAgAQ7AEAAIMDADD_AQEA9QIAIYACAQD1AgAhBeoBAACEAwAw6wEAAK8CABDsAQAAhAMAMP8BAQCBAwAhgAIBAIEDACEH6gEAAIUDADDrAQAAqQIAEOwBAACFAwAw7QECAPYCACGBAgIA9gIAIYICQACGAwAhgwJAAIYDACELCQAAiAMAICYAAIkDACAnAACJAwAg8wFAAAAAAfQBQAAAAAX1AUAAAAAF9gFAAAAAAfcBQAAAAAH4AUAAAAAB-QFAAAAAAfoBQACHAwAhCwkAAIgDACAmAACJAwAgJwAAiQMAIPMBQAAAAAH0AUAAAAAF9QFAAAAABfYBQAAAAAH3AUAAAAAB-AFAAAAAAfkBQAAAAAH6AUAAhwMAIQjzAQIAAAAB9AECAAAABfUBAgAAAAX2AQIAAAAB9wECAAAAAfgBAgAAAAH5AQIAAAAB-gECAIgDACEI8wFAAAAAAfQBQAAAAAX1AUAAAAAF9gFAAAAAAfcBQAAAAAH4AUAAAAAB-QFAAAAAAfoBQACJAwAhB-oBAACKAwAw6wEAAJYCABDsAQAAigMAMO0BAgCLAwAhgQICAIsDACGCAkAAjAMAIYMCQACMAwAhCPMBAgAAAAH0AQIAAAAE9QECAAAABPYBAgAAAAH3AQIAAAAB-AECAAAAAfkBAgAAAAH6AQIA-QIAIQjzAUAAAAAB9AFAAAAABfUBQAAAAAX2AUAAAAAB9wFAAAAAAfgBQAAAAAH5AUAAAAAB-gFAAIkDACEJ6gEAAI0DADDrAQAAkAIAEOwBAACNAwAw7QEBAPUCACHyAUAA9wIAIYQCAQD1AgAhhQIBAI4DACGGAgEAjgMAIYcCAQCOAwAhDgkAAIgDACAmAACQAwAgJwAAkAMAIPMBAQAAAAH0AQEAAAAF9QEBAAAABfYBAQAAAAH3AQEAAAAB-AEBAAAAAfkBAQAAAAH6AQEAjwMAIfsBAQAAAAH8AQEAAAAB_QEBAAAAAQ4JAACIAwAgJgAAkAMAICcAAJADACDzAQEAAAAB9AEBAAAABfUBAQAAAAX2AQEAAAAB9wEBAAAAAfgBAQAAAAH5AQEAAAAB-gEBAI8DACH7AQEAAAAB_AEBAAAAAf0BAQAAAAEL8wEBAAAAAfQBAQAAAAX1AQEAAAAF9gEBAAAAAfcBAQAAAAH4AQEAAAAB-QEBAAAAAfoBAQCQAwAh-wEBAAAAAfwBAQAAAAH9AQEAAAABDAUAAJQDACAGAACTAwAgDAAAkgMAIOoBAACRAwAw6wEAABwAEOwBAACRAwAw7QEBAIEDACHyAUAAggMAIYQCAQCBAwAhhQIBAK4DACGGAgEArgMAIYcCAQCuAwAhEQMAAKcDACAFAACUAwAgDQAAqAMAIA4AALoDACAQAAC8AwAg6gEAALsDADDrAQAAAwAQ7AEAALsDADDtAQEAgQMAIe4BAQCBAwAh7wEBAIEDACHxAQIAiwMAIfIBQACCAwAhhwIBAK4DACGZAgEArgMAIaICAAADACCjAgAAAwAgEgMAAKcDACAFAACUAwAgCgAAuAMAIAsAALkDACANAACoAwAgDgAAugMAIOoBAAC3AwAw6wEAAAoAEOwBAAC3AwAw7QEBAIEDACHuAQEAgQMAIe8BAQCBAwAh8QECAIsDACHyAUAAggMAIYcCAQCuAwAhmQIBAK4DACGiAgAACgAgowIAAAoAIA8DAACnAwAgBAAAowMAIA0AAKgDACAPAACkAwAg6gEAAKYDADDrAQAABwAQ7AEAAKYDADDtAQEAgQMAIe4BAQCBAwAh7wEBAIEDACHwAQEAgQMAIfEBAgCLAwAh8gFAAIIDACGiAgAABwAgowIAAAcAIArqAQAAlQMAMOsBAADyAQAQ7AEAAJUDADDtAQEA9QIAIYYCAQD1AgAhiAIIAJYDACGJAgIA9gIAIYoCAQD1AgAhiwIgAJcDACGMAkAA9wIAIQ0JAAD5AgAgJAAA_AIAICUAAPwCACAmAAD8AgAgJwAA_AIAIPMBCAAAAAH0AQgAAAAE9QEIAAAABPYBCAAAAAH3AQgAAAAB-AEIAAAAAfkBCAAAAAH6AQgAmgMAIQUJAAD5AgAgJgAAmQMAICcAAJkDACDzASAAAAAB-gEgAJgDACEFCQAA-QIAICYAAJkDACAnAACZAwAg8wEgAAAAAfoBIACYAwAhAvMBIAAAAAH6ASAAmQMAIQ0JAAD5AgAgJAAA_AIAICUAAPwCACAmAAD8AgAgJwAA_AIAIPMBCAAAAAH0AQgAAAAE9QEIAAAABPYBCAAAAAH3AQgAAAAB-AEIAAAAAfkBCAAAAAH6AQgAmgMAIQ3qAQAAmwMAMOsBAADcAQAQ7AEAAJsDADDtAQEA9QIAIYUCAQCOAwAhhgIBAI4DACGKAgEAjgMAIY0CAQD1AgAhjgIBAPUCACGPAgIA9gIAIZACAQD1AgAhkQIBAI4DACGSAkAA9wIAIQjqAQAAnAMAMOsBAADCAQAQ7AEAAJwDADDtAQEA9QIAIfEBAgD2AgAhkwIBAPUCACGUAgEA9QIAIZUCIACXAwAhCuoBAACdAwAw6wEAAKwBABDsAQAAnQMAMO0BAQD1AgAh8AEBAPUCACHxAQIA9gIAIYYCAQD1AgAhlgIBAPUCACGXAgEA9QIAIZgCAQD1AgAhCuoBAACeAwAw6wEAAJYBABDsAQAAngMAMO0BAQD1AgAh7gEBAPUCACHvAQEA9QIAIfEBAgD2AgAh8gFAAPcCACGHAgEAjgMAIZkCAQCOAwAhCOoBAACfAwAw6wEAAH4AEOwBAACfAwAw7QEBAPUCACHxAQIA9gIAIYUCAQD1AgAhmgIBAPUCACGbAgEA9QIAIQrqAQAAoAMAMOsBAABoABDsAQAAoAMAMO0BAQD1AgAh7gEBAPUCACHvAQEA9QIAIfEBAgD2AgAh8gFAAPcCACGHAgEAjgMAIZkCAQCOAwAhCOoBAAChAwAw6wEAAFAAEOwBAAChAwAw7QEBAPUCACHvAQEA9QIAIfEBAgD2AgAh8gFAAPcCACGcAgEA9QIAIQsEAACjAwAgDwAApAMAIBEAAKUDACDqAQAAogMAMOsBAAA9ABDsAQAAogMAMO0BAQCBAwAh7wEBAIEDACHxAQIAiwMAIfIBQACCAwAhnAIBAIEDACEDnQIAAAMAIJ4CAAADACCfAgAAAwAgA50CAAAKACCeAgAACgAgnwIAAAoAIAOdAgAABwAgngIAAAcAIJ8CAAAHACANAwAApwMAIAQAAKMDACANAACoAwAgDwAApAMAIOoBAACmAwAw6wEAAAcAEOwBAACmAwAw7QEBAIEDACHuAQEAgQMAIe8BAQCBAwAh8AEBAIEDACHxAQIAiwMAIfIBQACCAwAhDQQAAKMDACAPAACkAwAgEQAApQMAIOoBAACiAwAw6wEAAD0AEOwBAACiAwAw7QEBAIEDACHvAQEAgQMAIfEBAgCLAwAh8gFAAIIDACGcAgEAgQMAIaICAAA9ACCjAgAAPQAgDgUAAJQDACAGAACTAwAgDAAAkgMAIOoBAACRAwAw6wEAABwAEOwBAACRAwAw7QEBAIEDACHyAUAAggMAIYQCAQCBAwAhhQIBAK4DACGGAgEArgMAIYcCAQCuAwAhogIAABwAIKMCAAAcACAJDAAAqgMAIOoBAACpAwAw6wEAAC0AEOwBAACpAwAw7QEBAIEDACHxAQIAiwMAIYUCAQCBAwAhmgIBAIEDACGbAgEAgQMAIREDAACnAwAgBQAAlAMAIA0AAKgDACAOAAC6AwAgEAAAvAMAIOoBAAC7AwAw6wEAAAMAEOwBAAC7AwAw7QEBAIEDACHuAQEAgQMAIe8BAQCBAwAh8QECAIsDACHyAUAAggMAIYcCAQCuAwAhmQIBAK4DACGiAgAAAwAgowIAAAMAIAKFAgEAAAABjgIBAAAAAQKGAgEAAAABjgIBAAAAAQ8GAACTAwAgDAAAkgMAIOoBAACtAwAw6wEAACEAEOwBAACtAwAw7QEBAIEDACGFAgEArgMAIYYCAQCuAwAhigIBAK4DACGNAgEAgQMAIY4CAQCBAwAhjwICAIsDACGQAgEAgQMAIZECAQCuAwAhkgJAAIIDACEL8wEBAAAAAfQBAQAAAAX1AQEAAAAF9gEBAAAAAfcBAQAAAAH4AQEAAAAB-QEBAAAAAfoBAQCQAwAh-wEBAAAAAfwBAQAAAAH9AQEAAAABCwYAALIDACDqAQAArwMAMOsBAAAYABDsAQAArwMAMO0BAQCBAwAhhgIBAIEDACGIAggAsAMAIYkCAgCLAwAhigIBAIEDACGLAiAAsQMAIYwCQACCAwAhCPMBCAAAAAH0AQgAAAAE9QEIAAAABPYBCAAAAAH3AQgAAAAB-AEIAAAAAfkBCAAAAAH6AQgA_AIAIQLzASAAAAAB-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-AMAMB8AAP0DADCkAgAA-QMAMKUCAAD6AwAwpgIAAPwDADCnAgAA_AMAMKgCAAD8AwAwqQIAAPsDACCqAgAA_AMAMKsCAAD-AwAwrAIAAP8DADAHHgAA8QMAIB8AAPQDACCkAgAA8gMAIKUCAADzAwAgpgIAABwAIKcCAAAcACCoAgAA9QEAIAseAADjAwAwHwAA6AMAMKQCAADkAwAwpQIAAOUDADCmAgAA5wMAMKcCAADnAwAwqAIAAOcDADCpAgAA5gMAIKoCAADnAwAwqwIAAOkDADCsAgAA6gMAMAoMAADwAwAg7QEBAAAAAYUCAQAAAAGKAgEAAAABjQIBAAAAAY4CAQAAAAGPAgIAAAABkAIBAAAAAZECAQAAAAGSAkAAAAABAgAAACMAIB4AAO8DACADAAAAIwAgHgAA7wMAIB8AAO0DACABFwAAjwYAMBEGAACTAwAgDAAAkgMAIOoBAACtAwAw6wEAACEAEOwBAACtAwAw7QEBAAAAAYUCAQCuAwAhhgIBAK4DACGKAgEArgMAIY0CAQCBAwAhjgIBAIEDACGPAgIAiwMAIZACAQCBAwAhkQIBAK4DACGSAkAAggMAIaACAACrAwAgoQIAAKwDACACAAAAIwAgFwAA7QMAIAIAAADrAwAgFwAA7AMAIA3qAQAA6gMAMOsBAADrAwAQ7AEAAOoDADDtAQEAgQMAIYUCAQCuAwAhhgIBAK4DACGKAgEArgMAIY0CAQCBAwAhjgIBAIEDACGPAgIAiwMAIZACAQCBAwAhkQIBAK4DACGSAkAAggMAIQ3qAQAA6gMAMOsBAADrAwAQ7AEAAOoDADDtAQEAgQMAIYUCAQCuAwAhhgIBAK4DACGKAgEArgMAIY0CAQCBAwAhjgIBAIEDACGPAgIAiwMAIZACAQCBAwAhkQIBAK4DACGSAkAAggMAIQntAQEAwgMAIYUCAQDQAwAhigIBANADACGNAgEAwgMAIY4CAQDCAwAhjwICAMMDACGQAgEAwgMAIZECAQDQAwAhkgJAAMQDACEKDAAA7gMAIO0BAQDCAwAhhQIBANADACGKAgEA0AMAIY0CAQDCAwAhjgIBAMIDACGPAgIAwwMAIZACAQDCAwAhkQIBANADACGSAkAAxAMAIQceAACKBgAgHwAAjQYAIKQCAACLBgAgpQIAAIwGACCmAgAAAwAgpwIAAAMAIKgCAAAFACAKDAAA8AMAIO0BAQAAAAGFAgEAAAABigIBAAAAAY0CAQAAAAGOAgEAAAABjwICAAAAAZACAQAAAAGRAgEAAAABkgJAAAAAAQMeAACKBgAgpAIAAIsGACCoAgAABQAgBwUAAPcDACAMAADRAwAg7QEBAAAAAfIBQAAAAAGEAgEAAAABhQIBAAAAAYcCAQAAAAECAAAA9QEAIB4AAPEDACADAAAAHAAgHgAA8QMAIB8AAPUDACAJAAAAHAAgBQAA9gMAIAwAAM4DACAXAAD1AwAg7QEBAMIDACHyAUAAxAMAIYQCAQDCAwAhhQIBANADACGHAgEA0AMAIQcFAAD2AwAgDAAAzgMAIO0BAQDCAwAh8gFAAMQDACGEAgEAwgMAIYUCAQDQAwAhhwIBANADACEHHgAAhQYAIB8AAIgGACCkAgAAhgYAIKUCAACHBgAgpgIAAAcAIKcCAAAHACCoAgAANwAgAx4AAIUGACCkAgAAhgYAIKgCAAA3ACAG7QEBAAAAAYgCCAAAAAGJAgIAAAABigIBAAAAAYsCIAAAAAGMAkAAAAABAgAAABoAIB4AAIUEACADAAAAGgAgHgAAhQQAIB8AAIQEACABFwAAhAYAMAsGAACyAwAg6gEAAK8DADDrAQAAGAAQ7AEAAK8DADDtAQEAAAABhgIBAIEDACGIAggAsAMAIYkCAgCLAwAhigIBAIEDACGLAiAAsQMAIYwCQACCAwAhAgAAABoAIBcAAIQEACACAAAAgAQAIBcAAIEEACAK6gEAAP8DADDrAQAAgAQAEOwBAAD_AwAw7QEBAIEDACGGAgEAgQMAIYgCCACwAwAhiQICAIsDACGKAgEAgQMAIYsCIACxAwAhjAJAAIIDACEK6gEAAP8DADDrAQAAgAQAEOwBAAD_AwAw7QEBAIEDACGGAgEAgQMAIYgCCACwAwAhiQICAIsDACGKAgEAgQMAIYsCIACxAwAhjAJAAIIDACEG7QEBAMIDACGIAggAggQAIYkCAgDDAwAhigIBAMIDACGLAiAAgwQAIYwCQADEAwAhBaoCCAAAAAGtAggAAAABrgIIAAAAAa8CCAAAAAGwAggAAAABAaoCIAAAAAEG7QEBAMIDACGIAggAggQAIYkCAgDDAwAhigIBAMIDACGLAiAAgwQAIYwCQADEAwAhBu0BAQAAAAGIAggAAAABiQICAAAAAYoCAQAAAAGLAiAAAAABjAJAAAAAAQcIAACfBAAg7QEBAAAAAfABAQAAAAHxAQIAAAABlgIBAAAAAZcCAQAAAAGYAgEAAAABAgAAABEAIB4AAJ4EACADAAAAEQAgHgAAngQAIB8AAJAEACABFwAAgwYAMAwGAACyAwAgCAAAtgMAIOoBAAC1AwAw6wEAAA8AEOwBAAC1AwAw7QEBAAAAAfABAQCBAwAh8QECAIsDACGGAgEAgQMAIZYCAQCBAwAhlwIBAIEDACGYAgEAgQMAIQIAAAARACAXAACQBAAgAgAAAI4EACAXAACPBAAgCuoBAACNBAAw6wEAAI4EABDsAQAAjQQAMO0BAQCBAwAh8AEBAIEDACHxAQIAiwMAIYYCAQCBAwAhlgIBAIEDACGXAgEAgQMAIZgCAQCBAwAhCuoBAACNBAAw6wEAAI4EABDsAQAAjQQAMO0BAQCBAwAh8AEBAIEDACHxAQIAiwMAIYYCAQCBAwAhlgIBAIEDACGXAgEAgQMAIZgCAQCBAwAhBu0BAQDCAwAh8AEBAMIDACHxAQIAwwMAIZYCAQDCAwAhlwIBAMIDACGYAgEAwgMAIQcIAACRBAAg7QEBAMIDACHwAQEAwgMAIfEBAgDDAwAhlgIBAMIDACGXAgEAwgMAIZgCAQDCAwAhCx4AAJIEADAfAACXBAAwpAIAAJMEADClAgAAlAQAMKYCAACWBAAwpwIAAJYEADCoAgAAlgQAMKkCAACVBAAgqgIAAJYEADCrAgAAmAQAMKwCAACZBAAwBO0BAQAAAAHxAQIAAAABlAIBAAAAAZUCIAAAAAECAAAAFQAgHgAAnQQAIAMAAAAVACAeAACdBAAgHwAAnAQAIAEXAACCBgAwCQcAALQDACDqAQAAswMAMOsBAAATABDsAQAAswMAMO0BAQAAAAHxAQIAiwMAIZMCAQCBAwAhlAIBAIEDACGVAiAAsQMAIQIAAAAVACAXAACcBAAgAgAAAJoEACAXAACbBAAgCOoBAACZBAAw6wEAAJoEABDsAQAAmQQAMO0BAQCBAwAh8QECAIsDACGTAgEAgQMAIZQCAQCBAwAhlQIgALEDACEI6gEAAJkEADDrAQAAmgQAEOwBAACZBAAw7QEBAIEDACHxAQIAiwMAIZMCAQCBAwAhlAIBAIEDACGVAiAAsQMAIQTtAQEAwgMAIfEBAgDDAwAhlAIBAMIDACGVAiAAgwQAIQTtAQEAwgMAIfEBAgDDAwAhlAIBAMIDACGVAiAAgwQAIQTtAQEAAAAB8QECAAAAAZQCAQAAAAGVAiAAAAABBwgAAJ8EACDtAQEAAAAB8AEBAAAAAfEBAgAAAAGWAgEAAAABlwIBAAAAAZgCAQAAAAEEHgAAkgQAMKQCAACTBAAwqAIAAJYEADCpAgAAlQQAIAsDAAChBAAgCgAAogQAIAsAAKMEACANAACkBAAgDgAApQQAIO0BAQAAAAHuAQEAAAAB7wEBAAAAAfEBAgAAAAHyAUAAAAABmQIBAAAAAQMeAACABgAgpAIAAIEGACCoAgAAAQAgBB4AAIYEADCkAgAAhwQAMKgCAACKBAAwqQIAAIkEACAEHgAA-AMAMKQCAAD5AwAwqAIAAPwDADCpAgAA-wMAIAMeAADxAwAgpAIAAPIDACCoAgAA9QEAIAQeAADjAwAwpAIAAOQDADCoAgAA5wMAMKkCAADmAwAgCgMAANIEACANAADUBAAgDgAA1QQAIBAAANMEACDtAQEAAAAB7gEBAAAAAe8BAQAAAAHxAQIAAAAB8gFAAAAAAZkCAQAAAAECAAAABQAgHgAA0QQAIAMAAAAFACAeAADRBAAgHwAAsAQAIAEXAAD_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_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-JQB_JgCAAScAgQESAgETPAEUPwEVQAEWQQEYQwEZRRAaRhEbSAEcShAdSxIgTAEhTQEiThAoURMpUhkqUwIrVAIsVQItVgIuVwIvWQIwWxAxXBoyXwIzYRA0Yhs1ZAI2ZQI3ZhA4aRw5aiI6aw07bA08bQ09bg0-bw0_cQ1AcxBBdCNCdg1DeBBEeSRFeg1Gew1HfBBIfyVJgAErSoEBBEuCAQRMgwEETYQBBE6FAQRPhwEEUIkBEFGKASxSjQEEU48BEFSQAS1VkgEEVpMBBFeUARBYlwEuWZgBNFqZAQVbmgEFXJsBBV2cAQVenQEFX58BBWChARBhogE1YqQBBWOmARBkpwE2ZagBBWapAQVnqgEQaK0BN2muAT1qrwEGa7ABBmyxAQZtsgEGbrMBBm-1AQZwtwEQcbgBPnK6AQZzvAEQdL0BP3W-AQZ2vwEGd8ABEHjDAUB5xAFGesUBCnvGAQp8xwEKfcgBCn7JAQp_ywEKgAHNARCBAc4BR4IB0gEKgwHUARCEAdUBSIUB2AEKhgHZAQqHAdoBEIgB3QFJiQHeAU-KAd8BCIsB4AEIjAHhAQiNAeIBCI4B4wEIjwHlAQiQAecBEJEB6AFQkgHqAQiTAewBEJQB7QFRlQHuAQiWAe8BCJcB8AEQmAHzAVKZAfQBWJoB9gEJmwH3AQmcAfkBCZ0B-gEJngH7AQmfAf0BCaAB_wEQoQGAAlmiAYUCCaMBhwIQpAGIAlqlAYwCCaYBjQIJpwGOAhCoAZECW6kBkgJfqgGUAmCrAZUCYKwBmAJgrQGZAmCuAZoCYK8BnAJgsAGeAhCxAZ8CYbIBoQJgswGjAhC0AaQCYrUBpQJgtgGmAmC3AacCELgBqgJjuQGrAmm6Aa0CarsBrgJqvAGxAmq9AbICar4BswJqvwG1AmrAAbcCEMEBuAJrwgG6AmrDAbwCEMQBvQJsxQG-AmrGAb8CascBwAIQyAHDAm3JAcQCccoBxgJyywHHAnLMAcoCcs0BywJyzgHMAnLPAc4CctAB0AIQ0QHRAnPSAdMCctMB1QIQ1AHWAnTVAdcCctYB2AJy1wHZAhDYAdwCddkB3QJ52gHeAgPbAd8CA9wB4AID3QHhAgPeAeICA98B5AID4AHmAhDhAecCeuIB6QID4wHrAhDkAewCe-UB7QID5gHuAgPnAe8CEOgB8gJ86QHzAoIB"
}
async function decodeBase64AsWasm(wasmBase64: string): Promise
{
@@ -298,6 +298,16 @@ export interface PrismaClient<
*/
get setting(): Prisma.SettingDelegate;
+ /**
+ * `prisma.studyActivity`: Exposes CRUD operations for the **StudyActivity** model.
+ * Example usage:
+ * ```ts
+ * // Fetch zero or more StudyActivities
+ * const studyActivities = await prisma.studyActivity.findMany()
+ * ```
+ */
+ get studyActivity(): Prisma.StudyActivityDelegate;
+
/**
* `prisma.materialGroup`: Exposes CRUD operations for the **MaterialGroup** model.
* Example usage:
diff --git a/src/generated/prisma/internal/prismaNamespace.ts b/src/generated/prisma/internal/prismaNamespace.ts
index e12ee22..7f2be5f 100644
--- a/src/generated/prisma/internal/prismaNamespace.ts
+++ b/src/generated/prisma/internal/prismaNamespace.ts
@@ -395,6 +395,7 @@ export const ModelName = {
ShareLink: 'ShareLink',
AuthSecurity: 'AuthSecurity',
Setting: 'Setting',
+ StudyActivity: 'StudyActivity',
MaterialGroup: 'MaterialGroup'
} as const
@@ -411,7 +412,7 @@ export type TypeMap
+ fields: Prisma.StudyActivityFieldRefs
+ operations: {
+ findUnique: {
+ args: Prisma.StudyActivityFindUniqueArgs
+ result: runtime.Types.Utils.PayloadToResult | null
+ }
+ findUniqueOrThrow: {
+ args: Prisma.StudyActivityFindUniqueOrThrowArgs
+ result: runtime.Types.Utils.PayloadToResult
+ }
+ findFirst: {
+ args: Prisma.StudyActivityFindFirstArgs
+ result: runtime.Types.Utils.PayloadToResult | null
+ }
+ findFirstOrThrow: {
+ args: Prisma.StudyActivityFindFirstOrThrowArgs
+ result: runtime.Types.Utils.PayloadToResult
+ }
+ findMany: {
+ args: Prisma.StudyActivityFindManyArgs
+ result: runtime.Types.Utils.PayloadToResult[]
+ }
+ create: {
+ args: Prisma.StudyActivityCreateArgs
+ result: runtime.Types.Utils.PayloadToResult
+ }
+ createMany: {
+ args: Prisma.StudyActivityCreateManyArgs
+ result: BatchPayload
+ }
+ createManyAndReturn: {
+ args: Prisma.StudyActivityCreateManyAndReturnArgs
+ result: runtime.Types.Utils.PayloadToResult[]
+ }
+ delete: {
+ args: Prisma.StudyActivityDeleteArgs
+ result: runtime.Types.Utils.PayloadToResult
+ }
+ update: {
+ args: Prisma.StudyActivityUpdateArgs
+ result: runtime.Types.Utils.PayloadToResult
+ }
+ deleteMany: {
+ args: Prisma.StudyActivityDeleteManyArgs
+ result: BatchPayload
+ }
+ updateMany: {
+ args: Prisma.StudyActivityUpdateManyArgs
+ result: BatchPayload
+ }
+ updateManyAndReturn: {
+ args: Prisma.StudyActivityUpdateManyAndReturnArgs
+ result: runtime.Types.Utils.PayloadToResult[]
+ }
+ upsert: {
+ args: Prisma.StudyActivityUpsertArgs
+ result: runtime.Types.Utils.PayloadToResult
+ }
+ aggregate: {
+ args: Prisma.StudyActivityAggregateArgs
+ result: runtime.Types.Utils.Optional
+ }
+ groupBy: {
+ args: Prisma.StudyActivityGroupByArgs
+ result: runtime.Types.Utils.Optional[]
+ }
+ count: {
+ args: Prisma.StudyActivityCountArgs
+ result: runtime.Types.Utils.Optional | number
+ }
+ }
+ }
MaterialGroup: {
payload: Prisma.$MaterialGroupPayload
fields: Prisma.MaterialGroupFieldRefs
@@ -1470,6 +1545,15 @@ export const SettingScalarFieldEnum = {
export type SettingScalarFieldEnum = (typeof SettingScalarFieldEnum)[keyof typeof SettingScalarFieldEnum]
+export const StudyActivityScalarFieldEnum = {
+ id: 'id',
+ type: 'type',
+ occurredAt: 'occurredAt'
+} as const
+
+export type StudyActivityScalarFieldEnum = (typeof StudyActivityScalarFieldEnum)[keyof typeof StudyActivityScalarFieldEnum]
+
+
export const MaterialGroupScalarFieldEnum = {
id: 'id',
classId: 'classId',
@@ -1659,6 +1743,7 @@ export type GlobalOmitConfig = {
shareLink?: Prisma.ShareLinkOmit
authSecurity?: Prisma.AuthSecurityOmit
setting?: Prisma.SettingOmit
+ studyActivity?: Prisma.StudyActivityOmit
materialGroup?: Prisma.MaterialGroupOmit
}
diff --git a/src/generated/prisma/internal/prismaNamespaceBrowser.ts b/src/generated/prisma/internal/prismaNamespaceBrowser.ts
index 90ca7f0..7b45804 100644
--- a/src/generated/prisma/internal/prismaNamespaceBrowser.ts
+++ b/src/generated/prisma/internal/prismaNamespaceBrowser.ts
@@ -62,6 +62,7 @@ export const ModelName = {
ShareLink: 'ShareLink',
AuthSecurity: 'AuthSecurity',
Setting: 'Setting',
+ StudyActivity: 'StudyActivity',
MaterialGroup: 'MaterialGroup'
} as const
@@ -209,6 +210,15 @@ export const SettingScalarFieldEnum = {
export type SettingScalarFieldEnum = (typeof SettingScalarFieldEnum)[keyof typeof SettingScalarFieldEnum]
+export const StudyActivityScalarFieldEnum = {
+ id: 'id',
+ type: 'type',
+ occurredAt: 'occurredAt'
+} as const
+
+export type StudyActivityScalarFieldEnum = (typeof StudyActivityScalarFieldEnum)[keyof typeof StudyActivityScalarFieldEnum]
+
+
export const MaterialGroupScalarFieldEnum = {
id: 'id',
classId: 'classId',
diff --git a/src/generated/prisma/models.ts b/src/generated/prisma/models.ts
index 145eb9e..b7bcb19 100644
--- a/src/generated/prisma/models.ts
+++ b/src/generated/prisma/models.ts
@@ -19,5 +19,6 @@ export type * from './models/QuizAttempt'
export type * from './models/ShareLink'
export type * from './models/AuthSecurity'
export type * from './models/Setting'
+export type * from './models/StudyActivity'
export type * from './models/MaterialGroup'
export type * from './commonInputTypes'
\ No newline at end of file
diff --git a/src/generated/prisma/models/StudyActivity.ts b/src/generated/prisma/models/StudyActivity.ts
new file mode 100644
index 0000000..316fa78
--- /dev/null
+++ b/src/generated/prisma/models/StudyActivity.ts
@@ -0,0 +1,1091 @@
+
+/* !!! This is code generated by Prisma. Do not edit directly. !!! */
+/* eslint-disable */
+// biome-ignore-all lint: generated file
+// @ts-nocheck
+/*
+ * This file exports the `StudyActivity` model and its related types.
+ *
+ * 🟢 You can import this file directly.
+ */
+import type * as runtime from "@prisma/client/runtime/client"
+import type * as $Enums from "../enums"
+import type * as Prisma from "../internal/prismaNamespace"
+
+/**
+ * Model StudyActivity
+ *
+ */
+export type StudyActivityModel = runtime.Types.Result.DefaultSelection
+
+export type AggregateStudyActivity = {
+ _count: StudyActivityCountAggregateOutputType | null
+ _min: StudyActivityMinAggregateOutputType | null
+ _max: StudyActivityMaxAggregateOutputType | null
+}
+
+export type StudyActivityMinAggregateOutputType = {
+ id: string | null
+ type: string | null
+ occurredAt: Date | null
+}
+
+export type StudyActivityMaxAggregateOutputType = {
+ id: string | null
+ type: string | null
+ occurredAt: Date | null
+}
+
+export type StudyActivityCountAggregateOutputType = {
+ id: number
+ type: number
+ occurredAt: number
+ _all: number
+}
+
+
+export type StudyActivityMinAggregateInputType = {
+ id?: true
+ type?: true
+ occurredAt?: true
+}
+
+export type StudyActivityMaxAggregateInputType = {
+ id?: true
+ type?: true
+ occurredAt?: true
+}
+
+export type StudyActivityCountAggregateInputType = {
+ id?: true
+ type?: true
+ occurredAt?: true
+ _all?: true
+}
+
+export type StudyActivityAggregateArgs = {
+ /**
+ * Filter which StudyActivity to aggregate.
+ */
+ where?: Prisma.StudyActivityWhereInput
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
+ *
+ * Determine the order of StudyActivities to fetch.
+ */
+ orderBy?: Prisma.StudyActivityOrderByWithRelationInput | Prisma.StudyActivityOrderByWithRelationInput[]
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
+ *
+ * Sets the start position
+ */
+ cursor?: Prisma.StudyActivityWhereUniqueInput
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
+ *
+ * Take `±n` StudyActivities from the position of the cursor.
+ */
+ take?: number
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
+ *
+ * Skip the first `n` StudyActivities.
+ */
+ skip?: number
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
+ *
+ * Count returned StudyActivities
+ **/
+ _count?: true | StudyActivityCountAggregateInputType
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
+ *
+ * Select which fields to find the minimum value
+ **/
+ _min?: StudyActivityMinAggregateInputType
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs}
+ *
+ * Select which fields to find the maximum value
+ **/
+ _max?: StudyActivityMaxAggregateInputType
+}
+
+export type GetStudyActivityAggregateType = {
+ [P in keyof T & keyof AggregateStudyActivity]: P extends '_count' | 'count'
+ ? T[P] extends true
+ ? number
+ : Prisma.GetScalarType
+ : Prisma.GetScalarType
+}
+
+
+
+
+export type StudyActivityGroupByArgs = {
+ where?: Prisma.StudyActivityWhereInput
+ orderBy?: Prisma.StudyActivityOrderByWithAggregationInput | Prisma.StudyActivityOrderByWithAggregationInput[]
+ by: Prisma.StudyActivityScalarFieldEnum[] | Prisma.StudyActivityScalarFieldEnum
+ having?: Prisma.StudyActivityScalarWhereWithAggregatesInput
+ take?: number
+ skip?: number
+ _count?: StudyActivityCountAggregateInputType | true
+ _min?: StudyActivityMinAggregateInputType
+ _max?: StudyActivityMaxAggregateInputType
+}
+
+export type StudyActivityGroupByOutputType = {
+ id: string
+ type: string
+ occurredAt: Date
+ _count: StudyActivityCountAggregateOutputType | null
+ _min: StudyActivityMinAggregateOutputType | null
+ _max: StudyActivityMaxAggregateOutputType | null
+}
+
+export type GetStudyActivityGroupByPayload = Prisma.PrismaPromise<
+ Array<
+ Prisma.PickEnumerable &
+ {
+ [P in ((keyof T) & (keyof StudyActivityGroupByOutputType))]: P extends '_count'
+ ? T[P] extends boolean
+ ? number
+ : Prisma.GetScalarType
+ : Prisma.GetScalarType
+ }
+ >
+ >
+
+
+
+export type StudyActivityWhereInput = {
+ AND?: Prisma.StudyActivityWhereInput | Prisma.StudyActivityWhereInput[]
+ OR?: Prisma.StudyActivityWhereInput[]
+ NOT?: Prisma.StudyActivityWhereInput | Prisma.StudyActivityWhereInput[]
+ id?: Prisma.StringFilter<"StudyActivity"> | string
+ type?: Prisma.StringFilter<"StudyActivity"> | string
+ occurredAt?: Prisma.DateTimeFilter<"StudyActivity"> | Date | string
+}
+
+export type StudyActivityOrderByWithRelationInput = {
+ id?: Prisma.SortOrder
+ type?: Prisma.SortOrder
+ occurredAt?: Prisma.SortOrder
+}
+
+export type StudyActivityWhereUniqueInput = Prisma.AtLeast<{
+ id?: string
+ AND?: Prisma.StudyActivityWhereInput | Prisma.StudyActivityWhereInput[]
+ OR?: Prisma.StudyActivityWhereInput[]
+ NOT?: Prisma.StudyActivityWhereInput | Prisma.StudyActivityWhereInput[]
+ type?: Prisma.StringFilter<"StudyActivity"> | string
+ occurredAt?: Prisma.DateTimeFilter<"StudyActivity"> | Date | string
+}, "id">
+
+export type StudyActivityOrderByWithAggregationInput = {
+ id?: Prisma.SortOrder
+ type?: Prisma.SortOrder
+ occurredAt?: Prisma.SortOrder
+ _count?: Prisma.StudyActivityCountOrderByAggregateInput
+ _max?: Prisma.StudyActivityMaxOrderByAggregateInput
+ _min?: Prisma.StudyActivityMinOrderByAggregateInput
+}
+
+export type StudyActivityScalarWhereWithAggregatesInput = {
+ AND?: Prisma.StudyActivityScalarWhereWithAggregatesInput | Prisma.StudyActivityScalarWhereWithAggregatesInput[]
+ OR?: Prisma.StudyActivityScalarWhereWithAggregatesInput[]
+ NOT?: Prisma.StudyActivityScalarWhereWithAggregatesInput | Prisma.StudyActivityScalarWhereWithAggregatesInput[]
+ id?: Prisma.StringWithAggregatesFilter<"StudyActivity"> | string
+ type?: Prisma.StringWithAggregatesFilter<"StudyActivity"> | string
+ occurredAt?: Prisma.DateTimeWithAggregatesFilter<"StudyActivity"> | Date | string
+}
+
+export type StudyActivityCreateInput = {
+ id?: string
+ type: string
+ occurredAt?: Date | string
+}
+
+export type StudyActivityUncheckedCreateInput = {
+ id?: string
+ type: string
+ occurredAt?: Date | string
+}
+
+export type StudyActivityUpdateInput = {
+ id?: Prisma.StringFieldUpdateOperationsInput | string
+ type?: Prisma.StringFieldUpdateOperationsInput | string
+ occurredAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
+}
+
+export type StudyActivityUncheckedUpdateInput = {
+ id?: Prisma.StringFieldUpdateOperationsInput | string
+ type?: Prisma.StringFieldUpdateOperationsInput | string
+ occurredAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
+}
+
+export type StudyActivityCreateManyInput = {
+ id?: string
+ type: string
+ occurredAt?: Date | string
+}
+
+export type StudyActivityUpdateManyMutationInput = {
+ id?: Prisma.StringFieldUpdateOperationsInput | string
+ type?: Prisma.StringFieldUpdateOperationsInput | string
+ occurredAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
+}
+
+export type StudyActivityUncheckedUpdateManyInput = {
+ id?: Prisma.StringFieldUpdateOperationsInput | string
+ type?: Prisma.StringFieldUpdateOperationsInput | string
+ occurredAt?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string
+}
+
+export type StudyActivityCountOrderByAggregateInput = {
+ id?: Prisma.SortOrder
+ type?: Prisma.SortOrder
+ occurredAt?: Prisma.SortOrder
+}
+
+export type StudyActivityMaxOrderByAggregateInput = {
+ id?: Prisma.SortOrder
+ type?: Prisma.SortOrder
+ occurredAt?: Prisma.SortOrder
+}
+
+export type StudyActivityMinOrderByAggregateInput = {
+ id?: Prisma.SortOrder
+ type?: Prisma.SortOrder
+ occurredAt?: Prisma.SortOrder
+}
+
+
+
+export type StudyActivitySelect = runtime.Types.Extensions.GetSelect<{
+ id?: boolean
+ type?: boolean
+ occurredAt?: boolean
+}, ExtArgs["result"]["studyActivity"]>
+
+export type StudyActivitySelectCreateManyAndReturn = runtime.Types.Extensions.GetSelect<{
+ id?: boolean
+ type?: boolean
+ occurredAt?: boolean
+}, ExtArgs["result"]["studyActivity"]>
+
+export type StudyActivitySelectUpdateManyAndReturn = runtime.Types.Extensions.GetSelect<{
+ id?: boolean
+ type?: boolean
+ occurredAt?: boolean
+}, ExtArgs["result"]["studyActivity"]>
+
+export type StudyActivitySelectScalar = {
+ id?: boolean
+ type?: boolean
+ occurredAt?: boolean
+}
+
+export type StudyActivityOmit = runtime.Types.Extensions.GetOmit<"id" | "type" | "occurredAt", ExtArgs["result"]["studyActivity"]>
+
+export type $StudyActivityPayload = {
+ name: "StudyActivity"
+ objects: {}
+ scalars: runtime.Types.Extensions.GetPayloadResult<{
+ id: string
+ type: string
+ occurredAt: Date
+ }, ExtArgs["result"]["studyActivity"]>
+ composites: {}
+}
+
+export type StudyActivityGetPayload = runtime.Types.Result.GetResult
+
+export type StudyActivityCountArgs =
+ Omit & {
+ select?: StudyActivityCountAggregateInputType | true
+ }
+
+export interface StudyActivityDelegate {
+ [K: symbol]: { types: Prisma.TypeMap['model']['StudyActivity'], meta: { name: 'StudyActivity' } }
+ /**
+ * Find zero or one StudyActivity that matches the filter.
+ * @param {StudyActivityFindUniqueArgs} args - Arguments to find a StudyActivity
+ * @example
+ * // Get one StudyActivity
+ * const studyActivity = await prisma.studyActivity.findUnique({
+ * where: {
+ * // ... provide filter here
+ * }
+ * })
+ */
+ findUnique(args: Prisma.SelectSubset>): Prisma.Prisma__StudyActivityClient, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
+
+ /**
+ * Find one StudyActivity that matches the filter or throw an error with `error.code='P2025'`
+ * if no matches were found.
+ * @param {StudyActivityFindUniqueOrThrowArgs} args - Arguments to find a StudyActivity
+ * @example
+ * // Get one StudyActivity
+ * const studyActivity = await prisma.studyActivity.findUniqueOrThrow({
+ * where: {
+ * // ... provide filter here
+ * }
+ * })
+ */
+ findUniqueOrThrow(args: Prisma.SelectSubset>): Prisma.Prisma__StudyActivityClient, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
+
+ /**
+ * Find the first StudyActivity that matches the filter.
+ * Note, that providing `undefined` is treated as the value not being there.
+ * Read more here: https://pris.ly/d/null-undefined
+ * @param {StudyActivityFindFirstArgs} args - Arguments to find a StudyActivity
+ * @example
+ * // Get one StudyActivity
+ * const studyActivity = await prisma.studyActivity.findFirst({
+ * where: {
+ * // ... provide filter here
+ * }
+ * })
+ */
+ findFirst(args?: Prisma.SelectSubset>): Prisma.Prisma__StudyActivityClient, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions>
+
+ /**
+ * Find the first StudyActivity that matches the filter or
+ * throw `PrismaKnownClientError` with `P2025` code if no matches were found.
+ * Note, that providing `undefined` is treated as the value not being there.
+ * Read more here: https://pris.ly/d/null-undefined
+ * @param {StudyActivityFindFirstOrThrowArgs} args - Arguments to find a StudyActivity
+ * @example
+ * // Get one StudyActivity
+ * const studyActivity = await prisma.studyActivity.findFirstOrThrow({
+ * where: {
+ * // ... provide filter here
+ * }
+ * })
+ */
+ findFirstOrThrow(args?: Prisma.SelectSubset>): Prisma.Prisma__StudyActivityClient, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
+
+ /**
+ * Find zero or more StudyActivities that matches the filter.
+ * Note, that providing `undefined` is treated as the value not being there.
+ * Read more here: https://pris.ly/d/null-undefined
+ * @param {StudyActivityFindManyArgs} args - Arguments to filter and select certain fields only.
+ * @example
+ * // Get all StudyActivities
+ * const studyActivities = await prisma.studyActivity.findMany()
+ *
+ * // Get first 10 StudyActivities
+ * const studyActivities = await prisma.studyActivity.findMany({ take: 10 })
+ *
+ * // Only select the `id`
+ * const studyActivityWithIdOnly = await prisma.studyActivity.findMany({ select: { id: true } })
+ *
+ */
+ findMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions>>
+
+ /**
+ * Create a StudyActivity.
+ * @param {StudyActivityCreateArgs} args - Arguments to create a StudyActivity.
+ * @example
+ * // Create one StudyActivity
+ * const StudyActivity = await prisma.studyActivity.create({
+ * data: {
+ * // ... data to create a StudyActivity
+ * }
+ * })
+ *
+ */
+ create(args: Prisma.SelectSubset>): Prisma.Prisma__StudyActivityClient, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
+
+ /**
+ * Create many StudyActivities.
+ * @param {StudyActivityCreateManyArgs} args - Arguments to create many StudyActivities.
+ * @example
+ * // Create many StudyActivities
+ * const studyActivity = await prisma.studyActivity.createMany({
+ * data: [
+ * // ... provide data here
+ * ]
+ * })
+ *
+ */
+ createMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise
+
+ /**
+ * Create many StudyActivities and returns the data saved in the database.
+ * @param {StudyActivityCreateManyAndReturnArgs} args - Arguments to create many StudyActivities.
+ * @example
+ * // Create many StudyActivities
+ * const studyActivity = await prisma.studyActivity.createManyAndReturn({
+ * data: [
+ * // ... provide data here
+ * ]
+ * })
+ *
+ * // Create many StudyActivities and only return the `id`
+ * const studyActivityWithIdOnly = await prisma.studyActivity.createManyAndReturn({
+ * select: { id: true },
+ * data: [
+ * // ... provide data here
+ * ]
+ * })
+ * Note, that providing `undefined` is treated as the value not being there.
+ * Read more here: https://pris.ly/d/null-undefined
+ *
+ */
+ createManyAndReturn(args?: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "createManyAndReturn", GlobalOmitOptions>>
+
+ /**
+ * Delete a StudyActivity.
+ * @param {StudyActivityDeleteArgs} args - Arguments to delete one StudyActivity.
+ * @example
+ * // Delete one StudyActivity
+ * const StudyActivity = await prisma.studyActivity.delete({
+ * where: {
+ * // ... filter to delete one StudyActivity
+ * }
+ * })
+ *
+ */
+ delete(args: Prisma.SelectSubset>): Prisma.Prisma__StudyActivityClient, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
+
+ /**
+ * Update one StudyActivity.
+ * @param {StudyActivityUpdateArgs} args - Arguments to update one StudyActivity.
+ * @example
+ * // Update one StudyActivity
+ * const studyActivity = await prisma.studyActivity.update({
+ * where: {
+ * // ... provide filter here
+ * },
+ * data: {
+ * // ... provide data here
+ * }
+ * })
+ *
+ */
+ update(args: Prisma.SelectSubset>): Prisma.Prisma__StudyActivityClient, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
+
+ /**
+ * Delete zero or more StudyActivities.
+ * @param {StudyActivityDeleteManyArgs} args - Arguments to filter StudyActivities to delete.
+ * @example
+ * // Delete a few StudyActivities
+ * const { count } = await prisma.studyActivity.deleteMany({
+ * where: {
+ * // ... provide filter here
+ * }
+ * })
+ *
+ */
+ deleteMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise
+
+ /**
+ * Update zero or more StudyActivities.
+ * Note, that providing `undefined` is treated as the value not being there.
+ * Read more here: https://pris.ly/d/null-undefined
+ * @param {StudyActivityUpdateManyArgs} args - Arguments to update one or more rows.
+ * @example
+ * // Update many StudyActivities
+ * const studyActivity = await prisma.studyActivity.updateMany({
+ * where: {
+ * // ... provide filter here
+ * },
+ * data: {
+ * // ... provide data here
+ * }
+ * })
+ *
+ */
+ updateMany(args: Prisma.SelectSubset>): Prisma.PrismaPromise
+
+ /**
+ * Update zero or more StudyActivities and returns the data updated in the database.
+ * @param {StudyActivityUpdateManyAndReturnArgs} args - Arguments to update many StudyActivities.
+ * @example
+ * // Update many StudyActivities
+ * const studyActivity = await prisma.studyActivity.updateManyAndReturn({
+ * where: {
+ * // ... provide filter here
+ * },
+ * data: [
+ * // ... provide data here
+ * ]
+ * })
+ *
+ * // Update zero or more StudyActivities and only return the `id`
+ * const studyActivityWithIdOnly = await prisma.studyActivity.updateManyAndReturn({
+ * select: { id: true },
+ * where: {
+ * // ... provide filter here
+ * },
+ * data: [
+ * // ... provide data here
+ * ]
+ * })
+ * Note, that providing `undefined` is treated as the value not being there.
+ * Read more here: https://pris.ly/d/null-undefined
+ *
+ */
+ updateManyAndReturn(args: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "updateManyAndReturn", GlobalOmitOptions>>
+
+ /**
+ * Create or update one StudyActivity.
+ * @param {StudyActivityUpsertArgs} args - Arguments to update or create a StudyActivity.
+ * @example
+ * // Update or create a StudyActivity
+ * const studyActivity = await prisma.studyActivity.upsert({
+ * create: {
+ * // ... data to create a StudyActivity
+ * },
+ * update: {
+ * // ... in case it already exists, update
+ * },
+ * where: {
+ * // ... the filter for the StudyActivity we want to update
+ * }
+ * })
+ */
+ upsert(args: Prisma.SelectSubset>): Prisma.Prisma__StudyActivityClient, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions>
+
+
+ /**
+ * Count the number of StudyActivities.
+ * Note, that providing `undefined` is treated as the value not being there.
+ * Read more here: https://pris.ly/d/null-undefined
+ * @param {StudyActivityCountArgs} args - Arguments to filter StudyActivities to count.
+ * @example
+ * // Count the number of StudyActivities
+ * const count = await prisma.studyActivity.count({
+ * where: {
+ * // ... the filter for the StudyActivities we want to count
+ * }
+ * })
+ **/
+ count(
+ args?: Prisma.Subset,
+ ): Prisma.PrismaPromise<
+ T extends runtime.Types.Utils.Record<'select', any>
+ ? T['select'] extends true
+ ? number
+ : Prisma.GetScalarType
+ : number
+ >
+
+ /**
+ * Allows you to perform aggregations operations on a StudyActivity.
+ * Note, that providing `undefined` is treated as the value not being there.
+ * Read more here: https://pris.ly/d/null-undefined
+ * @param {StudyActivityAggregateArgs} args - Select which aggregations you would like to apply and on what fields.
+ * @example
+ * // Ordered by age ascending
+ * // Where email contains prisma.io
+ * // Limited to the 10 users
+ * const aggregations = await prisma.user.aggregate({
+ * _avg: {
+ * age: true,
+ * },
+ * where: {
+ * email: {
+ * contains: "prisma.io",
+ * },
+ * },
+ * orderBy: {
+ * age: "asc",
+ * },
+ * take: 10,
+ * })
+ **/
+ aggregate(args: Prisma.Subset): Prisma.PrismaPromise>
+
+ /**
+ * Group by StudyActivity.
+ * Note, that providing `undefined` is treated as the value not being there.
+ * Read more here: https://pris.ly/d/null-undefined
+ * @param {StudyActivityGroupByArgs} args - Group by arguments.
+ * @example
+ * // Group by city, order by createdAt, get count
+ * const result = await prisma.user.groupBy({
+ * by: ['city', 'createdAt'],
+ * orderBy: {
+ * createdAt: true
+ * },
+ * _count: {
+ * _all: true
+ * },
+ * })
+ *
+ **/
+ groupBy<
+ T extends StudyActivityGroupByArgs,
+ HasSelectOrTake extends Prisma.Or<
+ Prisma.Extends<'skip', Prisma.Keys>,
+ Prisma.Extends<'take', Prisma.Keys>
+ >,
+ OrderByArg extends Prisma.True extends HasSelectOrTake
+ ? { orderBy: StudyActivityGroupByArgs['orderBy'] }
+ : { orderBy?: StudyActivityGroupByArgs['orderBy'] },
+ OrderFields extends Prisma.ExcludeUnderscoreKeys>>,
+ ByFields extends Prisma.MaybeTupleToUnion,
+ ByValid extends Prisma.Has,
+ HavingFields extends Prisma.GetHavingFields,
+ HavingValid extends Prisma.Has,
+ ByEmpty extends T['by'] extends never[] ? Prisma.True : Prisma.False,
+ InputErrors extends ByEmpty extends Prisma.True
+ ? `Error: "by" must not be empty.`
+ : HavingValid extends Prisma.False
+ ? {
+ [P in HavingFields]: P extends ByFields
+ ? never
+ : P extends string
+ ? `Error: Field "${P}" used in "having" needs to be provided in "by".`
+ : [
+ Error,
+ 'Field ',
+ P,
+ ` in "having" needs to be provided in "by"`,
+ ]
+ }[HavingFields]
+ : 'take' extends Prisma.Keys
+ ? 'orderBy' extends Prisma.Keys
+ ? ByValid extends Prisma.True
+ ? {}
+ : {
+ [P in OrderFields]: P extends ByFields
+ ? never
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
+ }[OrderFields]
+ : 'Error: If you provide "take", you also need to provide "orderBy"'
+ : 'skip' extends Prisma.Keys
+ ? 'orderBy' extends Prisma.Keys
+ ? ByValid extends Prisma.True
+ ? {}
+ : {
+ [P in OrderFields]: P extends ByFields
+ ? never
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
+ }[OrderFields]
+ : 'Error: If you provide "skip", you also need to provide "orderBy"'
+ : ByValid extends Prisma.True
+ ? {}
+ : {
+ [P in OrderFields]: P extends ByFields
+ ? never
+ : `Error: Field "${P}" in "orderBy" needs to be provided in "by"`
+ }[OrderFields]
+ >(args: Prisma.SubsetIntersection & InputErrors): {} extends InputErrors ? GetStudyActivityGroupByPayload : Prisma.PrismaPromise
+/**
+ * Fields of the StudyActivity model
+ */
+readonly fields: StudyActivityFieldRefs;
+}
+
+/**
+ * The delegate class that acts as a "Promise-like" for StudyActivity.
+ * Why is this prefixed with `Prisma__`?
+ * Because we want to prevent naming conflicts as mentioned in
+ * https://github.com/prisma/prisma-client-js/issues/707
+ */
+export interface Prisma__StudyActivityClient extends Prisma.PrismaPromise {
+ readonly [Symbol.toStringTag]: "PrismaPromise"
+ /**
+ * Attaches callbacks for the resolution and/or rejection of the Promise.
+ * @param onfulfilled The callback to execute when the Promise is resolved.
+ * @param onrejected The callback to execute when the Promise is rejected.
+ * @returns A Promise for the completion of which ever callback is executed.
+ */
+ then(onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null): runtime.Types.Utils.JsPromise
+ /**
+ * Attaches a callback for only the rejection of the Promise.
+ * @param onrejected The callback to execute when the Promise is rejected.
+ * @returns A Promise for the completion of the callback.
+ */
+ catch(onrejected?: ((reason: any) => TResult | PromiseLike) | undefined | null): runtime.Types.Utils.JsPromise
+ /**
+ * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
+ * resolved value cannot be modified from the callback.
+ * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
+ * @returns A Promise for the completion of the callback.
+ */
+ finally(onfinally?: (() => void) | undefined | null): runtime.Types.Utils.JsPromise
+}
+
+
+
+
+/**
+ * Fields of the StudyActivity model
+ */
+export interface StudyActivityFieldRefs {
+ readonly id: Prisma.FieldRef<"StudyActivity", 'String'>
+ readonly type: Prisma.FieldRef<"StudyActivity", 'String'>
+ readonly occurredAt: Prisma.FieldRef<"StudyActivity", 'DateTime'>
+}
+
+
+// Custom InputTypes
+/**
+ * StudyActivity findUnique
+ */
+export type StudyActivityFindUniqueArgs = {
+ /**
+ * Select specific fields to fetch from the StudyActivity
+ */
+ select?: Prisma.StudyActivitySelect | null
+ /**
+ * Omit specific fields from the StudyActivity
+ */
+ omit?: Prisma.StudyActivityOmit | null
+ /**
+ * Filter, which StudyActivity to fetch.
+ */
+ where: Prisma.StudyActivityWhereUniqueInput
+}
+
+/**
+ * StudyActivity findUniqueOrThrow
+ */
+export type StudyActivityFindUniqueOrThrowArgs = {
+ /**
+ * Select specific fields to fetch from the StudyActivity
+ */
+ select?: Prisma.StudyActivitySelect | null
+ /**
+ * Omit specific fields from the StudyActivity
+ */
+ omit?: Prisma.StudyActivityOmit | null
+ /**
+ * Filter, which StudyActivity to fetch.
+ */
+ where: Prisma.StudyActivityWhereUniqueInput
+}
+
+/**
+ * StudyActivity findFirst
+ */
+export type StudyActivityFindFirstArgs = {
+ /**
+ * Select specific fields to fetch from the StudyActivity
+ */
+ select?: Prisma.StudyActivitySelect | null
+ /**
+ * Omit specific fields from the StudyActivity
+ */
+ omit?: Prisma.StudyActivityOmit | null
+ /**
+ * Filter, which StudyActivity to fetch.
+ */
+ where?: Prisma.StudyActivityWhereInput
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
+ *
+ * Determine the order of StudyActivities to fetch.
+ */
+ orderBy?: Prisma.StudyActivityOrderByWithRelationInput | Prisma.StudyActivityOrderByWithRelationInput[]
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
+ *
+ * Sets the position for searching for StudyActivities.
+ */
+ cursor?: Prisma.StudyActivityWhereUniqueInput
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
+ *
+ * Take `±n` StudyActivities from the position of the cursor.
+ */
+ take?: number
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
+ *
+ * Skip the first `n` StudyActivities.
+ */
+ skip?: number
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
+ *
+ * Filter by unique combinations of StudyActivities.
+ */
+ distinct?: Prisma.StudyActivityScalarFieldEnum | Prisma.StudyActivityScalarFieldEnum[]
+}
+
+/**
+ * StudyActivity findFirstOrThrow
+ */
+export type StudyActivityFindFirstOrThrowArgs = {
+ /**
+ * Select specific fields to fetch from the StudyActivity
+ */
+ select?: Prisma.StudyActivitySelect | null
+ /**
+ * Omit specific fields from the StudyActivity
+ */
+ omit?: Prisma.StudyActivityOmit | null
+ /**
+ * Filter, which StudyActivity to fetch.
+ */
+ where?: Prisma.StudyActivityWhereInput
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
+ *
+ * Determine the order of StudyActivities to fetch.
+ */
+ orderBy?: Prisma.StudyActivityOrderByWithRelationInput | Prisma.StudyActivityOrderByWithRelationInput[]
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
+ *
+ * Sets the position for searching for StudyActivities.
+ */
+ cursor?: Prisma.StudyActivityWhereUniqueInput
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
+ *
+ * Take `±n` StudyActivities from the position of the cursor.
+ */
+ take?: number
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
+ *
+ * Skip the first `n` StudyActivities.
+ */
+ skip?: number
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
+ *
+ * Filter by unique combinations of StudyActivities.
+ */
+ distinct?: Prisma.StudyActivityScalarFieldEnum | Prisma.StudyActivityScalarFieldEnum[]
+}
+
+/**
+ * StudyActivity findMany
+ */
+export type StudyActivityFindManyArgs = {
+ /**
+ * Select specific fields to fetch from the StudyActivity
+ */
+ select?: Prisma.StudyActivitySelect | null
+ /**
+ * Omit specific fields from the StudyActivity
+ */
+ omit?: Prisma.StudyActivityOmit | null
+ /**
+ * Filter, which StudyActivities to fetch.
+ */
+ where?: Prisma.StudyActivityWhereInput
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs}
+ *
+ * Determine the order of StudyActivities to fetch.
+ */
+ orderBy?: Prisma.StudyActivityOrderByWithRelationInput | Prisma.StudyActivityOrderByWithRelationInput[]
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs}
+ *
+ * Sets the position for listing StudyActivities.
+ */
+ cursor?: Prisma.StudyActivityWhereUniqueInput
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
+ *
+ * Take `±n` StudyActivities from the position of the cursor.
+ */
+ take?: number
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs}
+ *
+ * Skip the first `n` StudyActivities.
+ */
+ skip?: number
+ /**
+ * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs}
+ *
+ * Filter by unique combinations of StudyActivities.
+ */
+ distinct?: Prisma.StudyActivityScalarFieldEnum | Prisma.StudyActivityScalarFieldEnum[]
+}
+
+/**
+ * StudyActivity create
+ */
+export type StudyActivityCreateArgs = {
+ /**
+ * Select specific fields to fetch from the StudyActivity
+ */
+ select?: Prisma.StudyActivitySelect | null
+ /**
+ * Omit specific fields from the StudyActivity
+ */
+ omit?: Prisma.StudyActivityOmit | null
+ /**
+ * The data needed to create a StudyActivity.
+ */
+ data: Prisma.XOR
+}
+
+/**
+ * StudyActivity createMany
+ */
+export type StudyActivityCreateManyArgs = {
+ /**
+ * The data used to create many StudyActivities.
+ */
+ data: Prisma.StudyActivityCreateManyInput | Prisma.StudyActivityCreateManyInput[]
+}
+
+/**
+ * StudyActivity createManyAndReturn
+ */
+export type StudyActivityCreateManyAndReturnArgs = {
+ /**
+ * Select specific fields to fetch from the StudyActivity
+ */
+ select?: Prisma.StudyActivitySelectCreateManyAndReturn | null
+ /**
+ * Omit specific fields from the StudyActivity
+ */
+ omit?: Prisma.StudyActivityOmit | null
+ /**
+ * The data used to create many StudyActivities.
+ */
+ data: Prisma.StudyActivityCreateManyInput | Prisma.StudyActivityCreateManyInput[]
+}
+
+/**
+ * StudyActivity update
+ */
+export type StudyActivityUpdateArgs = {
+ /**
+ * Select specific fields to fetch from the StudyActivity
+ */
+ select?: Prisma.StudyActivitySelect | null
+ /**
+ * Omit specific fields from the StudyActivity
+ */
+ omit?: Prisma.StudyActivityOmit | null
+ /**
+ * The data needed to update a StudyActivity.
+ */
+ data: Prisma.XOR
+ /**
+ * Choose, which StudyActivity to update.
+ */
+ where: Prisma.StudyActivityWhereUniqueInput
+}
+
+/**
+ * StudyActivity updateMany
+ */
+export type StudyActivityUpdateManyArgs = {
+ /**
+ * The data used to update StudyActivities.
+ */
+ data: Prisma.XOR
+ /**
+ * Filter which StudyActivities to update
+ */
+ where?: Prisma.StudyActivityWhereInput
+ /**
+ * Limit how many StudyActivities to update.
+ */
+ limit?: number
+}
+
+/**
+ * StudyActivity updateManyAndReturn
+ */
+export type StudyActivityUpdateManyAndReturnArgs = {
+ /**
+ * Select specific fields to fetch from the StudyActivity
+ */
+ select?: Prisma.StudyActivitySelectUpdateManyAndReturn | null
+ /**
+ * Omit specific fields from the StudyActivity
+ */
+ omit?: Prisma.StudyActivityOmit | null
+ /**
+ * The data used to update StudyActivities.
+ */
+ data: Prisma.XOR
+ /**
+ * Filter which StudyActivities to update
+ */
+ where?: Prisma.StudyActivityWhereInput
+ /**
+ * Limit how many StudyActivities to update.
+ */
+ limit?: number
+}
+
+/**
+ * StudyActivity upsert
+ */
+export type StudyActivityUpsertArgs = {
+ /**
+ * Select specific fields to fetch from the StudyActivity
+ */
+ select?: Prisma.StudyActivitySelect | null
+ /**
+ * Omit specific fields from the StudyActivity
+ */
+ omit?: Prisma.StudyActivityOmit | null
+ /**
+ * The filter to search for the StudyActivity to update in case it exists.
+ */
+ where: Prisma.StudyActivityWhereUniqueInput
+ /**
+ * In case the StudyActivity found by the `where` argument doesn't exist, create a new StudyActivity with this data.
+ */
+ create: Prisma.XOR
+ /**
+ * In case the StudyActivity was found with the provided `where` argument, update it with this data.
+ */
+ update: Prisma.XOR
+}
+
+/**
+ * StudyActivity delete
+ */
+export type StudyActivityDeleteArgs = {
+ /**
+ * Select specific fields to fetch from the StudyActivity
+ */
+ select?: Prisma.StudyActivitySelect | null
+ /**
+ * Omit specific fields from the StudyActivity
+ */
+ omit?: Prisma.StudyActivityOmit | null
+ /**
+ * Filter which StudyActivity to delete.
+ */
+ where: Prisma.StudyActivityWhereUniqueInput
+}
+
+/**
+ * StudyActivity deleteMany
+ */
+export type StudyActivityDeleteManyArgs = {
+ /**
+ * Filter which StudyActivities to delete
+ */
+ where?: Prisma.StudyActivityWhereInput
+ /**
+ * Limit how many StudyActivities to delete.
+ */
+ limit?: number
+}
+
+/**
+ * StudyActivity without action
+ */
+export type StudyActivityDefaultArgs = {
+ /**
+ * Select specific fields to fetch from the StudyActivity
+ */
+ select?: Prisma.StudyActivitySelect | null
+ /**
+ * Omit specific fields from the StudyActivity
+ */
+ omit?: Prisma.StudyActivityOmit | null
+}
diff --git a/src/lib/activityClient.ts b/src/lib/activityClient.ts
new file mode 100644
index 0000000..6eaaafd
--- /dev/null
+++ b/src/lib/activityClient.ts
@@ -0,0 +1,9 @@
+import type { StudyActivityType } from "@/lib/validation/activitySchemas";
+
+export function recordStudyActivity(type: StudyActivityType) {
+ return fetch("/api/activity", {
+ method: "POST",
+ headers: { "Content-Type": "application/json" },
+ body: JSON.stringify({ type }),
+ });
+}
diff --git a/src/lib/validation/activitySchemas.ts b/src/lib/validation/activitySchemas.ts
new file mode 100644
index 0000000..a71c764
--- /dev/null
+++ b/src/lib/validation/activitySchemas.ts
@@ -0,0 +1,7 @@
+import { z } from "zod";
+
+export const studyActivitySchema = z.object({
+ type: z.enum(["FLASHCARD", "QUIZ_QUESTION"]),
+});
+
+export type StudyActivityType = z.infer["type"];
diff --git a/src/services/activityService.ts b/src/services/activityService.ts
new file mode 100644
index 0000000..dea1574
--- /dev/null
+++ b/src/services/activityService.ts
@@ -0,0 +1,104 @@
+import { prisma } from "@/lib/db";
+import type { StudyActivityType } from "@/lib/validation/activitySchemas";
+
+const ARIZONA_OFFSET_MS = 7 * 60 * 60 * 1000;
+const WEEKS_TO_DISPLAY = 53;
+const DAYS_TO_DISPLAY = WEEKS_TO_DISPLAY * 7;
+const STREAK_THRESHOLD = 20;
+
+export interface DailyActivity {
+ date: string;
+ flashcards: number;
+ questions: number;
+ total: number;
+ level: 0 | 1 | 2 | 3 | 4;
+}
+
+export interface ActivitySummary {
+ days: DailyActivity[];
+ today: string;
+ activeDays: number;
+ flashcards: number;
+ questions: number;
+ currentStreak: number;
+}
+
+function toArizonaDateKey(date: Date): string {
+ return new Date(date.getTime() - ARIZONA_OFFSET_MS).toISOString().slice(0, 10);
+}
+
+function dateKeyToUtcDate(dateKey: string): Date {
+ return new Date(`${dateKey}T00:00:00.000Z`);
+}
+
+function addDays(dateKey: string, days: number): string {
+ const date = dateKeyToUtcDate(dateKey);
+ date.setUTCDate(date.getUTCDate() + days);
+ return date.toISOString().slice(0, 10);
+}
+
+function getLevel(total: number): 0 | 1 | 2 | 3 | 4 {
+ if (total === 0) return 0;
+ if (total < 20) return 1;
+ if (total < 50) return 2;
+ if (total < 100) return 3;
+ return 4;
+}
+
+function emptyDay(date: string): DailyActivity {
+ return { date, flashcards: 0, questions: 0, total: 0, level: 0 };
+}
+
+export async function recordActivity(type: StudyActivityType) {
+ return prisma.studyActivity.create({ data: { type } });
+}
+
+export async function getActivitySummary(now = new Date()): Promise {
+ const today = toArizonaDateKey(now);
+ const todayDate = dateKeyToUtcDate(today);
+ const dayOfWeek = todayDate.getUTCDay();
+ const startDate = addDays(today, -(dayOfWeek + (WEEKS_TO_DISPLAY - 1) * 7));
+ const endDate = addDays(startDate, DAYS_TO_DISPLAY - 1);
+
+ const activities = await prisma.studyActivity.findMany({
+ select: { type: true, occurredAt: true },
+ orderBy: { occurredAt: "asc" },
+ });
+ const totals = new Map();
+
+ for (const activity of activities) {
+ const date = toArizonaDateKey(activity.occurredAt);
+ const day = totals.get(date) ?? emptyDay(date);
+ if (activity.type === "FLASHCARD") day.flashcards += 1;
+ if (activity.type === "QUIZ_QUESTION") day.questions += 1;
+ day.total += 1;
+ day.level = getLevel(day.total);
+ totals.set(date, day);
+ }
+
+ const days = Array.from({ length: DAYS_TO_DISPLAY }, (_, index) => {
+ const date = addDays(startDate, index);
+ return totals.get(date) ?? emptyDay(date);
+ });
+ const visibleDays = days.filter((day) => day.date <= today && day.date <= endDate);
+ const flashcards = visibleDays.reduce((sum, day) => sum + day.flashcards, 0);
+ const questions = visibleDays.reduce((sum, day) => sum + day.questions, 0);
+
+ let streakDate = (totals.get(today)?.total ?? 0) >= STREAK_THRESHOLD
+ ? today
+ : addDays(today, -1);
+ let currentStreak = 0;
+ while ((totals.get(streakDate)?.total ?? 0) >= STREAK_THRESHOLD) {
+ currentStreak += 1;
+ streakDate = addDays(streakDate, -1);
+ }
+
+ return {
+ days,
+ today,
+ activeDays: visibleDays.filter((day) => day.total > 0).length,
+ flashcards,
+ questions,
+ currentStreak,
+ };
+}