From a486127adec9aae3b45c4ef0e2853abebb2374fc Mon Sep 17 00:00:00 2001 From: ahasani194 Date: Sun, 3 May 2026 16:23:17 +0330 Subject: [PATCH] feat: implement SalesInvoiceTspSwitchService and SalesInvoiceTspService for handling TSP provider interactions - Add SalesInvoiceTspSwitchService to manage TSP provider selection and sending invoices. - Introduce SalesInvoiceTspService for creating, sending, and retrieving sales invoices. - Implement NamaProviderSwitchAdapter for communication with the NAMA TSP provider API. - Define DTOs for request and response structures specific to the NAMA provider. - Enhance error handling and logging for TSP provider interactions. --- .vscode/settings.json | 1 + .../migration.sql | 20 + .../20260502162247_update_tsp/migration.sql | 72 + .../migration.sql | 14 + prisma/schema/admin/partners.prisma | 12 +- prisma/schema/consumer/consumers.prisma | 11 +- prisma/schema/good_service/sku.prisma | 2 +- prisma/schema/shared/enum.prisma | 29 +- prisma/schema/shared/guilds.prisma | 7 +- prisma/schema/shared/sales.prisma | 47 +- prisma/seed.ts | 10 +- src/common/constants/translates/enums.ts | 12 +- src/common/enums/enums.ts | 4 +- .../interceptors/fetch-request.interceptor.ts | 63 + src/common/interfaces/sale-invoice-payload.ts | 1 + src/common/utils/http-client.util.ts | 47 + src/common/utils/index.ts | 1 + src/generated/prisma/browser.ts | 9 +- src/generated/prisma/client.ts | 9 +- src/generated/prisma/commonInputTypes.ts | 369 ++-- src/generated/prisma/enums.ts | 40 +- src/generated/prisma/internal/class.ts | 26 +- .../prisma/internal/prismaNamespace.ts | 210 +-- .../prisma/internal/prismaNamespaceBrowser.ts | 46 +- src/generated/prisma/models.ts | 3 +- .../prisma/models/BusinessActivity.ts | 117 +- src/generated/prisma/models/Good.ts | 10 +- src/generated/prisma/models/Guild.ts | 40 +- src/generated/prisma/models/Partner.ts | 106 +- .../models/SaleInvoiceFiscalAttempts.ts | 1500 ----------------- .../prisma/models/SaleInvoiceFiscals.ts | 1388 --------------- .../prisma/models/SaleInvoiceTspAttempts.ts | 1500 +++++++++++++++++ src/generated/prisma/models/SalesInvoice.ts | 152 +- .../prisma/models/SalesInvoiceItem.ts | 149 +- .../prisma/models/StockKeepingUnits.ts | 18 +- .../admin/guilds/dto/create-guild.dto.ts | 13 +- src/modules/admin/partners/dto/partner.dto.ts | 8 +- .../admin/partners/partners.service.ts | 2 +- .../business-activities.service.ts | 3 + .../dto/create-business-activities.dto.ts | 8 +- .../sales-invoice-fiscal-switch.service.ts | 60 - .../fiscal/sales-invoice-fiscal.service.ts | 372 ---- .../switch/nama/nama-fiscal-switch.adapter.ts | 198 --- .../switch/nama/nama-fiscal-switch.dto.ts | 194 --- .../saleInvoices/saleInvoices.module.ts | 14 +- .../saleInvoices/saleInvoices.service.ts | 56 +- src/modules/enums/enums.controller.ts | 6 +- src/modules/enums/enums.service.ts | 30 +- .../dto/create-sales-invoice.dto.ts | 2 +- .../dto/sales-invoices-filter.dto.ts | 8 +- .../fiscal/sales-invoice-fiscal.controller.ts | 43 - .../fiscal/sales-invoice-fiscal.module.ts | 12 - .../fiscal/sales-invoice-fiscal.service.ts | 411 ----- .../dto/create-sales-invoice-item.dto.ts | 7 +- .../sales-invoices.controller.ts | 17 +- .../sales-invoices/sales-invoices.module.ts | 16 +- .../sales-invoices/sales-invoices.service.ts | 199 ++- .../dto/provider-switch.dto.ts} | 172 +- .../sales-invoice-tsp-switch.service.ts | 59 + .../tspProviders/sales-invoice-tsp.service.ts | 595 +++++++ .../switch/nama/nama-provider.adapter.ts | 340 ++++ .../switch/nama/nama-provider.dto.ts | 261 +++ 62 files changed, 4136 insertions(+), 5015 deletions(-) create mode 100644 prisma/migrations/20260502081538_add_guild_invoice_template/migration.sql create mode 100644 prisma/migrations/20260502162247_update_tsp/migration.sql create mode 100644 prisma/migrations/20260502164952_update_ba_sequence/migration.sql create mode 100644 src/common/interceptors/fetch-request.interceptor.ts create mode 100644 src/common/utils/http-client.util.ts delete mode 100644 src/generated/prisma/models/SaleInvoiceFiscalAttempts.ts delete mode 100644 src/generated/prisma/models/SaleInvoiceFiscals.ts create mode 100644 src/generated/prisma/models/SaleInvoiceTspAttempts.ts delete mode 100644 src/modules/consumer/saleInvoices/fiscal/sales-invoice-fiscal-switch.service.ts delete mode 100644 src/modules/consumer/saleInvoices/fiscal/sales-invoice-fiscal.service.ts delete mode 100644 src/modules/consumer/saleInvoices/fiscal/switch/nama/nama-fiscal-switch.adapter.ts delete mode 100644 src/modules/consumer/saleInvoices/fiscal/switch/nama/nama-fiscal-switch.dto.ts delete mode 100644 src/modules/pos/sales-invoices/fiscal/sales-invoice-fiscal.controller.ts delete mode 100644 src/modules/pos/sales-invoices/fiscal/sales-invoice-fiscal.module.ts delete mode 100644 src/modules/pos/sales-invoices/fiscal/sales-invoice-fiscal.service.ts rename src/modules/{consumer/saleInvoices/fiscal/dto/tax-switch.dto.ts => tspProviders/dto/provider-switch.dto.ts} (50%) create mode 100644 src/modules/tspProviders/sales-invoice-tsp-switch.service.ts create mode 100644 src/modules/tspProviders/sales-invoice-tsp.service.ts create mode 100644 src/modules/tspProviders/switch/nama/nama-provider.adapter.ts create mode 100644 src/modules/tspProviders/switch/nama/nama-provider.dto.ts diff --git a/.vscode/settings.json b/.vscode/settings.json index 3e7d43d..be9ce0e 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -18,6 +18,7 @@ "Cardex", "fkey", "iban", + "inno", "MAYKET" ] } diff --git a/prisma/migrations/20260502081538_add_guild_invoice_template/migration.sql b/prisma/migrations/20260502081538_add_guild_invoice_template/migration.sql new file mode 100644 index 0000000..7012981 --- /dev/null +++ b/prisma/migrations/20260502081538_add_guild_invoice_template/migration.sql @@ -0,0 +1,20 @@ +-- DropForeignKey +ALTER TABLE `admin_accounts` DROP FOREIGN KEY `admin_accounts_account_id_fkey`; + +-- DropForeignKey +ALTER TABLE `partner_accounts` DROP FOREIGN KEY `partner_accounts_account_id_fkey`; + +-- DropForeignKey +ALTER TABLE `provider_accounts` DROP FOREIGN KEY `provider_accounts_account_id_fkey`; + +-- AlterTable +ALTER TABLE `guilds` ADD COLUMN `invoice_template` ENUM('SALE', 'FX_SALE', 'GOLD_JEWELRY', 'CONTRACT', 'UTILITY', 'AIR_TICKET', 'EXPORT', 'BILL_OF_LADING', 'PETROCHEMICAL', 'COMMODITY_EXCHANGE', 'INSURANCE') NOT NULL DEFAULT 'GOLD_JEWELRY'; + +-- AddForeignKey +ALTER TABLE `admin_accounts` ADD CONSTRAINT `admin_accounts_account_id_fkey` FOREIGN KEY (`account_id`) REFERENCES `accounts`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE `partner_accounts` ADD CONSTRAINT `partner_accounts_account_id_fkey` FOREIGN KEY (`account_id`) REFERENCES `accounts`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE `provider_accounts` ADD CONSTRAINT `provider_accounts_account_id_fkey` FOREIGN KEY (`account_id`) REFERENCES `accounts`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; diff --git a/prisma/migrations/20260502162247_update_tsp/migration.sql b/prisma/migrations/20260502162247_update_tsp/migration.sql new file mode 100644 index 0000000..8875a8a --- /dev/null +++ b/prisma/migrations/20260502162247_update_tsp/migration.sql @@ -0,0 +1,72 @@ +/* + Warnings: + + - You are about to drop the column `fiscal_switch_type` on the `partners` table. All the data in the column will be lost. + - The values [CHECK] on the enum `sales_invoice_payments_payment_method` will be removed. If these variants are still used in the database, this will fail. + - You are about to drop the `sale_invoice_fiscal_attempts` table. If the table is not empty, all the data it contains will be lost. + - You are about to drop the `sale_invoice_fiscals` table. If the table is not empty, all the data it contains will be lost. + - Made the column `good_snapshot` on table `sales_invoice_items` required. This step will fail if there are existing NULL values in that column. + - Made the column `good_id` on table `sales_invoice_items` required. This step will fail if there are existing NULL values in that column. + +*/ +-- DropForeignKey +ALTER TABLE `sale_invoice_fiscal_attempts` DROP FOREIGN KEY `sale_invoice_fiscal_attempts_fiscal_id_fkey`; + +-- DropForeignKey +ALTER TABLE `sale_invoice_fiscals` DROP FOREIGN KEY `sale_invoice_fiscals_invoice_id_fkey`; + +-- DropForeignKey +ALTER TABLE `sales_invoice_items` DROP FOREIGN KEY `sales_invoice_items_good_id_fkey`; + +-- DropIndex +DROP INDEX `sales_invoice_items_good_id_fkey` ON `sales_invoice_items`; + +-- AlterTable +ALTER TABLE `business_activities` ADD COLUMN `invoice_number_sequence` VARCHAR(191) NOT NULL DEFAULT '1'; + +-- AlterTable +ALTER TABLE `partners` DROP COLUMN `fiscal_switch_type`, + ADD COLUMN `tsp_provider` ENUM('NAMA', 'SUN') NOT NULL DEFAULT 'NAMA'; + +-- AlterTable +ALTER TABLE `sales_invoice_items` MODIFY `good_snapshot` JSON NOT NULL, + MODIFY `good_id` VARCHAR(191) NOT NULL; + +-- AlterTable +ALTER TABLE `sales_invoice_payments` MODIFY `payment_method` ENUM('CHEQUE', 'SET_OFF', 'CASH', 'TERMINAL', 'PAYMENT_GATEWAY', 'CARD', 'BANK', 'OTHER') NOT NULL; + +-- DropTable +DROP TABLE `sale_invoice_fiscal_attempts`; + +-- DropTable +DROP TABLE `sale_invoice_fiscals`; + +-- CreateTable +CREATE TABLE `sale_invoice_tsp_attempts` ( + `id` VARCHAR(191) NOT NULL, + `attempt_no` INTEGER NOT NULL, + `status` ENUM('SUCCESS', 'FAILURE', 'NOT_SEND', 'QUEUED') NOT NULL, + `tax_id` VARCHAR(191) NULL, + `type` ENUM('MAIN', 'UPDATE', 'REVOKE', 'REMOVE') NOT NULL, + `request_payload` JSON NULL, + `response_payload` JSON NULL, + `error_message` TEXT NULL, + `sent_at` TIMESTAMP(0) NULL, + `received_at` TIMESTAMP(0) NULL, + `created_at` TIMESTAMP(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0), + `invoice_id` VARCHAR(191) NOT NULL, + + UNIQUE INDEX `sale_invoice_tsp_attempts_tax_id_key`(`tax_id`), + UNIQUE INDEX `sale_invoice_tsp_attempts_invoice_id_key`(`invoice_id`), + INDEX `sale_invoice_tsp_attempts_status_idx`(`status`), + INDEX `sale_invoice_tsp_attempts_tax_id_idx`(`tax_id`), + INDEX `sale_invoice_tsp_attempts_invoice_id_idx`(`invoice_id`), + UNIQUE INDEX `sale_invoice_tsp_attempts_invoice_id_attempt_no_key`(`invoice_id`, `attempt_no`), + PRIMARY KEY (`id`) +) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + +-- AddForeignKey +ALTER TABLE `sales_invoice_items` ADD CONSTRAINT `sales_invoice_items_good_id_fkey` FOREIGN KEY (`good_id`) REFERENCES `goods`(`id`) ON DELETE RESTRICT ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE `sale_invoice_tsp_attempts` ADD CONSTRAINT `sale_invoice_tsp_attempts_invoice_id_fkey` FOREIGN KEY (`invoice_id`) REFERENCES `sales_invoices`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; diff --git a/prisma/migrations/20260502164952_update_ba_sequence/migration.sql b/prisma/migrations/20260502164952_update_ba_sequence/migration.sql new file mode 100644 index 0000000..17128ee --- /dev/null +++ b/prisma/migrations/20260502164952_update_ba_sequence/migration.sql @@ -0,0 +1,14 @@ +/* + Warnings: + + - You are about to alter the column `invoice_number_sequence` on the `business_activities` table. The data in that column could be lost. The data in that column will be cast from `VarChar(191)` to `Decimal(20,0)`. + +*/ +-- AlterTable +ALTER TABLE `business_activities` MODIFY `invoice_number_sequence` DECIMAL(20, 0) NOT NULL DEFAULT 1; + +-- AlterTable +ALTER TABLE `guilds` ALTER COLUMN `invoice_template` DROP DEFAULT; + +-- AlterTable +ALTER TABLE `stock_keeping_units` ALTER COLUMN `type` DROP DEFAULT; diff --git a/prisma/schema/admin/partners.prisma b/prisma/schema/admin/partners.prisma index 1187490..bd48835 100644 --- a/prisma/schema/admin/partners.prisma +++ b/prisma/schema/admin/partners.prisma @@ -15,12 +15,12 @@ model PartnerAccount { } model Partner { - id String @id @default(ulid()) - name String - code String @unique() - status PartnerStatus @default(ACTIVE) - fiscal_switch_type PartnerFiscalSwitchType - logo_url String? + id String @id @default(ulid()) + name String + code String @unique() + status PartnerStatus @default(ACTIVE) + tsp_provider TspProviderType @default(NAMA) + logo_url String? created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @default(now()) @updatedAt @db.Timestamp(0) diff --git a/prisma/schema/consumer/consumers.prisma b/prisma/schema/consumer/consumers.prisma index 91f86a2..bf19724 100644 --- a/prisma/schema/consumer/consumers.prisma +++ b/prisma/schema/consumer/consumers.prisma @@ -74,11 +74,12 @@ model ConsumerLegal { } model BusinessActivity { - id String @id @default(ulid()) - economic_code String - name String - fiscal_id String - partner_token String + id String @id @default(ulid()) + economic_code String + name String + fiscal_id String + partner_token String + invoice_number_sequence Decimal @default(1) @db.Decimal(20, 0) created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt() @db.Timestamp(0) diff --git a/prisma/schema/good_service/sku.prisma b/prisma/schema/good_service/sku.prisma index 004ae8a..3469fd1 100644 --- a/prisma/schema/good_service/sku.prisma +++ b/prisma/schema/good_service/sku.prisma @@ -3,7 +3,7 @@ model StockKeepingUnits { code String @unique name String VAT Decimal @db.Decimal(5, 2) - type SKUGuildType @default(GOLD) + type SKUGuildType is_public Boolean @default(true) is_domestic Boolean @default(false) diff --git a/prisma/schema/shared/enum.prisma b/prisma/schema/shared/enum.prisma index 4d1c8ea..528f86d 100644 --- a/prisma/schema/shared/enum.prisma +++ b/prisma/schema/shared/enum.prisma @@ -1,10 +1,11 @@ enum PaymentMethodType { - TERMINAL - CASH + CHEQUE SET_OFF + CASH + TERMINAL + PAYMENT_GATEWAY CARD BANK - CHECK OTHER } @@ -156,26 +157,26 @@ enum ConsumerType { LEGAL } -enum PartnerFiscalSwitchType { +enum TspProviderType { NAMA SUN } -enum FiscalResponseStatus { +enum TspProviderResponseStatus { SUCCESS FAILURE NOT_SEND QUEUED } -enum FiscalRequestType { +enum TspProviderRequestType { MAIN UPDATE REVOKE REMOVE } -enum FiscalInvoiceCustomerType { +enum TspProviderCustomerType { Unknown Known } @@ -183,3 +184,17 @@ enum FiscalInvoiceCustomerType { enum SKUGuildType { GOLD } + +enum InvoiceTemplateType { + SALE + FX_SALE + GOLD_JEWELRY + CONTRACT + UTILITY + AIR_TICKET + EXPORT + BILL_OF_LADING + PETROCHEMICAL + COMMODITY_EXCHANGE + INSURANCE +} diff --git a/prisma/schema/shared/guilds.prisma b/prisma/schema/shared/guilds.prisma index a373e2e..e808c2f 100644 --- a/prisma/schema/shared/guilds.prisma +++ b/prisma/schema/shared/guilds.prisma @@ -1,7 +1,8 @@ model Guild { - id String @id @default(ulid()) - name String - code String? + id String @id @default(ulid()) + name String + invoice_template InvoiceTemplateType + code String? created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt() @db.Timestamp(0) diff --git a/prisma/schema/shared/sales.prisma b/prisma/schema/shared/sales.prisma index ca8331e..b9657cb 100644 --- a/prisma/schema/shared/sales.prisma +++ b/prisma/schema/shared/sales.prisma @@ -20,10 +20,9 @@ model SalesInvoice { pos_id String pos Pos @relation(fields: [pos_id], references: [id]) - fiscal SaleInvoiceFiscals? - - items SalesInvoiceItem[] - payments SalesInvoicePayment[] + items SalesInvoiceItem[] + payments SalesInvoicePayment[] + tsp_attempts SaleInvoiceTspAttempts[] @@unique([invoice_number, pos_id]) @@map("sales_invoices") @@ -43,13 +42,13 @@ model SalesInvoiceItem { notes String? @db.Text payload Json? - good_snapshot Json? + good_snapshot Json invoice_id String invoice SalesInvoice @relation(fields: [invoice_id], references: [id]) - good_id String? - good Good? @relation(fields: [good_id], references: [id]) + good_id String + good Good @relation(fields: [good_id], references: [id]) service_id String? service Service? @relation(fields: [service_id], references: [id]) @@ -58,30 +57,13 @@ model SalesInvoiceItem { @@map("sales_invoice_items") } -model SaleInvoiceFiscals { - id String @id @default(ulid()) - - retry_count Int @default(0) - last_attempt_at DateTime? @db.Timestamp(0) - - created_at DateTime @default(now()) @db.Timestamp(0) - updated_at DateTime @updatedAt() @db.Timestamp(0) - - invoice_id String @unique - invoice SalesInvoice @relation(fields: [invoice_id], references: [id], onDelete: Cascade) - - attempts SaleInvoiceFiscalAttempts[] - - @@map("sale_invoice_fiscals") -} - -model SaleInvoiceFiscalAttempts { +model SaleInvoiceTspAttempts { id String @id @default(ulid()) attempt_no Int - status FiscalResponseStatus - tax_id String? @unique @db.VarChar(191) - type FiscalRequestType + status TspProviderResponseStatus + tax_id String? @unique @db.VarChar(191) + type TspProviderRequestType request_payload Json? response_payload Json? @@ -91,13 +73,14 @@ model SaleInvoiceFiscalAttempts { received_at DateTime? @db.Timestamp(0) created_at DateTime @default(now()) @db.Timestamp(0) - fiscal_id String - fiscal SaleInvoiceFiscals @relation(fields: [fiscal_id], references: [id], onDelete: Cascade) + invoice_id String @unique + invoice SalesInvoice @relation(fields: [invoice_id], references: [id], onDelete: Cascade) - @@unique([fiscal_id, attempt_no]) + @@unique([invoice_id, attempt_no]) @@index([status]) @@index([tax_id]) - @@map("sale_invoice_fiscal_attempts") + @@index([invoice_id]) + @@map("sale_invoice_tsp_attempts") } model SalesInvoicePayment { diff --git a/prisma/seed.ts b/prisma/seed.ts index b02bb2f..a7220e9 100644 --- a/prisma/seed.ts +++ b/prisma/seed.ts @@ -1,10 +1,6 @@ import { PasswordUtil } from '@/common/utils/password.util' import { generateTrackingCode } from '@/common/utils/tracking-code-generator.util' -import { - ConsumerType, - GoodPricingModel, - PartnerFiscalSwitchType, -} from '@/generated/prisma/enums' +import { ConsumerType, GoodPricingModel, TspProviderType } from '@/generated/prisma/enums' import { GoodCreateManyInput } from '@/generated/prisma/models' import { prisma } from '../src/lib/prisma' @@ -135,10 +131,12 @@ async function main() { { name: 'طلا', code: 'Gold', + invoice_template: 'GOLD_JEWELRY', }, { name: 'میوه و تره‌بار', code: 'Fruit', + invoice_template: 'SALE', }, ], }) @@ -405,7 +403,7 @@ async function main() { name: 'تیس', code: 'TIS', status: 'ACTIVE', - fiscal_switch_type: PartnerFiscalSwitchType.NAMA, + tsp_provider: TspProviderType.NAMA, accounts: { create: { role: 'OWNER', diff --git a/src/common/constants/translates/enums.ts b/src/common/constants/translates/enums.ts index 751f15b..939f539 100644 --- a/src/common/constants/translates/enums.ts +++ b/src/common/constants/translates/enums.ts @@ -1,4 +1,4 @@ -import { FiscalResponseStatus } from '@/generated/prisma/enums' +import { TspProviderResponseStatus } from '@/generated/prisma/enums' export default { PaymentMethodType: { @@ -132,23 +132,23 @@ export default { CAFE_BAZAR: 'کافه بازار', MAYKET: 'مایکت', }, - PartnerFiscalSwitchType: { + TspProviderType: { NAMA: 'نما', SUN: 'سان', }, - FiscalResponseStatus: { + TspProviderResponseStatus: { SUCCESS: 'موفق', FAILURE: 'ناموفق', NOT_SEND: 'ارسال نشده', - [FiscalResponseStatus.QUEUED]: 'در صف ارسال', + [TspProviderResponseStatus.QUEUED]: 'در صف ارسال', }, - FiscalRequestType: { + TspProviderRequestType: { MAIN: 'اصلی', UPDATE: 'اصلاح', REVOKE: 'ابطال', REMOVE: 'حذف', }, - FiscalInvoiceCustomerType: { + TspProviderCustomerType: { Unknown: 'ناشناس', Known: 'شناسایی شده', }, diff --git a/src/common/enums/enums.ts b/src/common/enums/enums.ts index 20aee02..3bb5a6e 100644 --- a/src/common/enums/enums.ts +++ b/src/common/enums/enums.ts @@ -4,14 +4,14 @@ export enum GoldKarat { KARAT_24 = '24', } -export enum FiscalRequestType { +export enum TspProviderRequestType { MAIN = 'MAIN', UPDATE = 'UPDATE', REVOKE = 'REVOKE', REMOVE = 'REMOVE', } -export enum FiscalInvoiceCustomerType { +export enum TspProviderCustomerType { Unknown = 'Unknown', Known = 'Known', } diff --git a/src/common/interceptors/fetch-request.interceptor.ts b/src/common/interceptors/fetch-request.interceptor.ts new file mode 100644 index 0000000..e8756ff --- /dev/null +++ b/src/common/interceptors/fetch-request.interceptor.ts @@ -0,0 +1,63 @@ +export interface FetchRequestContext { + url: string + init: RequestInit +} + +export interface FetchRequestInterceptor { + onRequest?( + context: FetchRequestContext, + ): Promise | FetchRequestContext + onResponse?( + context: FetchRequestContext, + response: Response, + ): Promise | Response + onError?(context: FetchRequestContext, error: unknown): Promise | void +} + +function mergeHeaders( + currentHeaders: HeadersInit | undefined, + newHeaders: HeadersInit, +): Headers { + const mergedHeaders = new Headers(currentHeaders) + const incomingHeaders = new Headers(newHeaders) + + incomingHeaders.forEach((value, key) => { + mergedHeaders.set(key, value) + }) + + return mergedHeaders +} + +export function createHeaderRequestInterceptor( + headers: HeadersInit, +): FetchRequestInterceptor { + return { + onRequest(context) { + return { + ...context, + init: { + ...context.init, + headers: mergeHeaders(context.init.headers, headers), + }, + } + }, + } +} + +export function createEnsureSuccessResponseInterceptor(): FetchRequestInterceptor { + return { + async onResponse(_, response) { + if (response.ok) { + return response + } + + const errorBody = await response.text().catch(() => '') + const normalizedBody = errorBody + return Promise.reject({ + status: response.status, + statusText: response.statusText, + body: normalizedBody, + }) + }, + } +} diff --git a/src/common/interfaces/sale-invoice-payload.ts b/src/common/interfaces/sale-invoice-payload.ts index 00beab3..fab402f 100644 --- a/src/common/interfaces/sale-invoice-payload.ts +++ b/src/common/interfaces/sale-invoice-payload.ts @@ -4,6 +4,7 @@ export interface SaleInvoiceGoldTypePayload { karat: keyof typeof GoldKarat wages: number profit: number + commission: number } export interface SaleInvoiceStandardPayload {} diff --git a/src/common/utils/http-client.util.ts b/src/common/utils/http-client.util.ts new file mode 100644 index 0000000..3995418 --- /dev/null +++ b/src/common/utils/http-client.util.ts @@ -0,0 +1,47 @@ +import { + FetchRequestContext, + FetchRequestInterceptor, +} from '@/common/interceptors/fetch-request.interceptor' +import { Injectable } from '@nestjs/common' + +@Injectable() +export class HttpClientUtil { + async request( + url: string, + init: RequestInit = {}, + interceptors: FetchRequestInterceptor[] = [], + ): Promise { + let context: FetchRequestContext = { url, init } + + for (const interceptor of interceptors) { + if (!interceptor.onRequest) { + continue + } + + context = await interceptor.onRequest(context) + } + + try { + let response = await fetch(context.url, context.init) + + for (const interceptor of interceptors) { + if (!interceptor.onResponse) { + continue + } + response = await interceptor.onResponse(context, response) + console.log('response') + console.log(response) + } + + return response + } catch (error: any) { + for (const interceptor of interceptors) { + if (!interceptor.onError) { + continue + } + await interceptor.onError(context, error) + } + throw error + } + } +} diff --git a/src/common/utils/index.ts b/src/common/utils/index.ts index 415821c..c09280f 100644 --- a/src/common/utils/index.ts +++ b/src/common/utils/index.ts @@ -3,3 +3,4 @@ export * from './enum-translator.util' export * from './mappers/consumer_mappers.util' export * from './password.util' export * from './tracking-code-generator.util' +export * from './http-client.util' diff --git a/src/generated/prisma/browser.ts b/src/generated/prisma/browser.ts index f91144c..5ab76e5 100644 --- a/src/generated/prisma/browser.ts +++ b/src/generated/prisma/browser.ts @@ -223,15 +223,10 @@ export type SalesInvoice = Prisma.SalesInvoiceModel */ export type SalesInvoiceItem = Prisma.SalesInvoiceItemModel /** - * Model SaleInvoiceFiscals + * Model SaleInvoiceTspAttempts * */ -export type SaleInvoiceFiscals = Prisma.SaleInvoiceFiscalsModel -/** - * Model SaleInvoiceFiscalAttempts - * - */ -export type SaleInvoiceFiscalAttempts = Prisma.SaleInvoiceFiscalAttemptsModel +export type SaleInvoiceTspAttempts = Prisma.SaleInvoiceTspAttemptsModel /** * Model SalesInvoicePayment * diff --git a/src/generated/prisma/client.ts b/src/generated/prisma/client.ts index 9ffee0c..c226124 100644 --- a/src/generated/prisma/client.ts +++ b/src/generated/prisma/client.ts @@ -245,15 +245,10 @@ export type SalesInvoice = Prisma.SalesInvoiceModel */ export type SalesInvoiceItem = Prisma.SalesInvoiceItemModel /** - * Model SaleInvoiceFiscals + * Model SaleInvoiceTspAttempts * */ -export type SaleInvoiceFiscals = Prisma.SaleInvoiceFiscalsModel -/** - * Model SaleInvoiceFiscalAttempts - * - */ -export type SaleInvoiceFiscalAttempts = Prisma.SaleInvoiceFiscalAttemptsModel +export type SaleInvoiceTspAttempts = Prisma.SaleInvoiceTspAttemptsModel /** * Model SalesInvoicePayment * diff --git a/src/generated/prisma/commonInputTypes.ts b/src/generated/prisma/commonInputTypes.ts index e5b0256..c8da003 100644 --- a/src/generated/prisma/commonInputTypes.ts +++ b/src/generated/prisma/commonInputTypes.ts @@ -195,11 +195,11 @@ export type EnumPartnerStatusFilter<$PrismaModel = never> = { not?: Prisma.NestedEnumPartnerStatusFilter<$PrismaModel> | $Enums.PartnerStatus } -export type EnumPartnerFiscalSwitchTypeFilter<$PrismaModel = never> = { - equals?: $Enums.PartnerFiscalSwitchType | Prisma.EnumPartnerFiscalSwitchTypeFieldRefInput<$PrismaModel> - in?: $Enums.PartnerFiscalSwitchType[] - notIn?: $Enums.PartnerFiscalSwitchType[] - not?: Prisma.NestedEnumPartnerFiscalSwitchTypeFilter<$PrismaModel> | $Enums.PartnerFiscalSwitchType +export type EnumTspProviderTypeFilter<$PrismaModel = never> = { + equals?: $Enums.TspProviderType | Prisma.EnumTspProviderTypeFieldRefInput<$PrismaModel> + in?: $Enums.TspProviderType[] + notIn?: $Enums.TspProviderType[] + not?: Prisma.NestedEnumTspProviderTypeFilter<$PrismaModel> | $Enums.TspProviderType } export type EnumPartnerStatusWithAggregatesFilter<$PrismaModel = never> = { @@ -212,14 +212,14 @@ export type EnumPartnerStatusWithAggregatesFilter<$PrismaModel = never> = { _max?: Prisma.NestedEnumPartnerStatusFilter<$PrismaModel> } -export type EnumPartnerFiscalSwitchTypeWithAggregatesFilter<$PrismaModel = never> = { - equals?: $Enums.PartnerFiscalSwitchType | Prisma.EnumPartnerFiscalSwitchTypeFieldRefInput<$PrismaModel> - in?: $Enums.PartnerFiscalSwitchType[] - notIn?: $Enums.PartnerFiscalSwitchType[] - not?: Prisma.NestedEnumPartnerFiscalSwitchTypeWithAggregatesFilter<$PrismaModel> | $Enums.PartnerFiscalSwitchType +export type EnumTspProviderTypeWithAggregatesFilter<$PrismaModel = never> = { + equals?: $Enums.TspProviderType | Prisma.EnumTspProviderTypeFieldRefInput<$PrismaModel> + in?: $Enums.TspProviderType[] + notIn?: $Enums.TspProviderType[] + not?: Prisma.NestedEnumTspProviderTypeWithAggregatesFilter<$PrismaModel> | $Enums.TspProviderType _count?: Prisma.NestedIntFilter<$PrismaModel> - _min?: Prisma.NestedEnumPartnerFiscalSwitchTypeFilter<$PrismaModel> - _max?: Prisma.NestedEnumPartnerFiscalSwitchTypeFilter<$PrismaModel> + _min?: Prisma.NestedEnumTspProviderTypeFilter<$PrismaModel> + _max?: Prisma.NestedEnumTspProviderTypeFilter<$PrismaModel> } export type EnumPOSRoleFilter<$PrismaModel = never> = { @@ -456,6 +456,33 @@ export type EnumConsumerStatusWithAggregatesFilter<$PrismaModel = never> = { _max?: Prisma.NestedEnumConsumerStatusFilter<$PrismaModel> } +export type DecimalFilter<$PrismaModel = never> = { + equals?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + in?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] + notIn?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] + lt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + lte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + gt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + gte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + not?: Prisma.NestedDecimalFilter<$PrismaModel> | runtime.Decimal | runtime.DecimalJsLike | number | string +} + +export type DecimalWithAggregatesFilter<$PrismaModel = never> = { + equals?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + in?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] + notIn?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] + lt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + lte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + gt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + gte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + not?: Prisma.NestedDecimalWithAggregatesFilter<$PrismaModel> | runtime.Decimal | runtime.DecimalJsLike | number | string + _count?: Prisma.NestedIntFilter<$PrismaModel> + _avg?: Prisma.NestedDecimalFilter<$PrismaModel> + _sum?: Prisma.NestedDecimalFilter<$PrismaModel> + _min?: Prisma.NestedDecimalFilter<$PrismaModel> + _max?: Prisma.NestedDecimalFilter<$PrismaModel> +} + export type EnumPOSStatusFilter<$PrismaModel = never> = { equals?: $Enums.POSStatus | Prisma.EnumPOSStatusFieldRefInput<$PrismaModel> in?: $Enums.POSStatus[] @@ -559,17 +586,6 @@ export type DateTimeNullableWithAggregatesFilter<$PrismaModel = never> = { _max?: Prisma.NestedDateTimeNullableFilter<$PrismaModel> } -export type DecimalFilter<$PrismaModel = never> = { - equals?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - in?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] - notIn?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] - lt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - lte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - gt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - gte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - not?: Prisma.NestedDecimalFilter<$PrismaModel> | runtime.Decimal | runtime.DecimalJsLike | number | string -} - export type EnumSKUGuildTypeFilter<$PrismaModel = never> = { equals?: $Enums.SKUGuildType | Prisma.EnumSKUGuildTypeFieldRefInput<$PrismaModel> in?: $Enums.SKUGuildType[] @@ -577,22 +593,6 @@ export type EnumSKUGuildTypeFilter<$PrismaModel = never> = { not?: Prisma.NestedEnumSKUGuildTypeFilter<$PrismaModel> | $Enums.SKUGuildType } -export type DecimalWithAggregatesFilter<$PrismaModel = never> = { - equals?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - in?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] - notIn?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] - lt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - lte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - gt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - gte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - not?: Prisma.NestedDecimalWithAggregatesFilter<$PrismaModel> | runtime.Decimal | runtime.DecimalJsLike | number | string - _count?: Prisma.NestedIntFilter<$PrismaModel> - _avg?: Prisma.NestedDecimalFilter<$PrismaModel> - _sum?: Prisma.NestedDecimalFilter<$PrismaModel> - _min?: Prisma.NestedDecimalFilter<$PrismaModel> - _max?: Prisma.NestedDecimalFilter<$PrismaModel> -} - export type EnumSKUGuildTypeWithAggregatesFilter<$PrismaModel = never> = { equals?: $Enums.SKUGuildType | Prisma.EnumSKUGuildTypeFieldRefInput<$PrismaModel> in?: $Enums.SKUGuildType[] @@ -633,38 +633,106 @@ export type EnumCustomerTypeWithAggregatesFilter<$PrismaModel = never> = { _max?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> } -export type EnumFiscalResponseStatusFilter<$PrismaModel = never> = { - equals?: $Enums.FiscalResponseStatus | Prisma.EnumFiscalResponseStatusFieldRefInput<$PrismaModel> - in?: $Enums.FiscalResponseStatus[] - notIn?: $Enums.FiscalResponseStatus[] - not?: Prisma.NestedEnumFiscalResponseStatusFilter<$PrismaModel> | $Enums.FiscalResponseStatus +export type EnumInvoiceTemplateTypeFilter<$PrismaModel = never> = { + equals?: $Enums.InvoiceTemplateType | Prisma.EnumInvoiceTemplateTypeFieldRefInput<$PrismaModel> + in?: $Enums.InvoiceTemplateType[] + notIn?: $Enums.InvoiceTemplateType[] + not?: Prisma.NestedEnumInvoiceTemplateTypeFilter<$PrismaModel> | $Enums.InvoiceTemplateType } -export type EnumFiscalRequestTypeFilter<$PrismaModel = never> = { - equals?: $Enums.FiscalRequestType | Prisma.EnumFiscalRequestTypeFieldRefInput<$PrismaModel> - in?: $Enums.FiscalRequestType[] - notIn?: $Enums.FiscalRequestType[] - not?: Prisma.NestedEnumFiscalRequestTypeFilter<$PrismaModel> | $Enums.FiscalRequestType -} - -export type EnumFiscalResponseStatusWithAggregatesFilter<$PrismaModel = never> = { - equals?: $Enums.FiscalResponseStatus | Prisma.EnumFiscalResponseStatusFieldRefInput<$PrismaModel> - in?: $Enums.FiscalResponseStatus[] - notIn?: $Enums.FiscalResponseStatus[] - not?: Prisma.NestedEnumFiscalResponseStatusWithAggregatesFilter<$PrismaModel> | $Enums.FiscalResponseStatus +export type EnumInvoiceTemplateTypeWithAggregatesFilter<$PrismaModel = never> = { + equals?: $Enums.InvoiceTemplateType | Prisma.EnumInvoiceTemplateTypeFieldRefInput<$PrismaModel> + in?: $Enums.InvoiceTemplateType[] + notIn?: $Enums.InvoiceTemplateType[] + not?: Prisma.NestedEnumInvoiceTemplateTypeWithAggregatesFilter<$PrismaModel> | $Enums.InvoiceTemplateType _count?: Prisma.NestedIntFilter<$PrismaModel> - _min?: Prisma.NestedEnumFiscalResponseStatusFilter<$PrismaModel> - _max?: Prisma.NestedEnumFiscalResponseStatusFilter<$PrismaModel> + _min?: Prisma.NestedEnumInvoiceTemplateTypeFilter<$PrismaModel> + _max?: Prisma.NestedEnumInvoiceTemplateTypeFilter<$PrismaModel> } -export type EnumFiscalRequestTypeWithAggregatesFilter<$PrismaModel = never> = { - equals?: $Enums.FiscalRequestType | Prisma.EnumFiscalRequestTypeFieldRefInput<$PrismaModel> - in?: $Enums.FiscalRequestType[] - notIn?: $Enums.FiscalRequestType[] - not?: Prisma.NestedEnumFiscalRequestTypeWithAggregatesFilter<$PrismaModel> | $Enums.FiscalRequestType +export type JsonFilter<$PrismaModel = never> = +| Prisma.PatchUndefined< + Prisma.Either>, Exclude>, 'path'>>, + Required> + > +| Prisma.OptionalFlat>, 'path'>> + +export type JsonFilterBase<$PrismaModel = never> = { + equals?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | Prisma.JsonNullValueFilter + path?: string + mode?: Prisma.QueryMode | Prisma.EnumQueryModeFieldRefInput<$PrismaModel> + string_contains?: string | Prisma.StringFieldRefInput<$PrismaModel> + string_starts_with?: string | Prisma.StringFieldRefInput<$PrismaModel> + string_ends_with?: string | Prisma.StringFieldRefInput<$PrismaModel> + array_starts_with?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | null + array_ends_with?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | null + array_contains?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | null + lt?: runtime.InputJsonValue + lte?: runtime.InputJsonValue + gt?: runtime.InputJsonValue + gte?: runtime.InputJsonValue + not?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | Prisma.JsonNullValueFilter +} + +export type JsonWithAggregatesFilter<$PrismaModel = never> = +| Prisma.PatchUndefined< + Prisma.Either>, Exclude>, 'path'>>, + Required> + > +| Prisma.OptionalFlat>, 'path'>> + +export type JsonWithAggregatesFilterBase<$PrismaModel = never> = { + equals?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | Prisma.JsonNullValueFilter + path?: string + mode?: Prisma.QueryMode | Prisma.EnumQueryModeFieldRefInput<$PrismaModel> + string_contains?: string | Prisma.StringFieldRefInput<$PrismaModel> + string_starts_with?: string | Prisma.StringFieldRefInput<$PrismaModel> + string_ends_with?: string | Prisma.StringFieldRefInput<$PrismaModel> + array_starts_with?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | null + array_ends_with?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | null + array_contains?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | null + lt?: runtime.InputJsonValue + lte?: runtime.InputJsonValue + gt?: runtime.InputJsonValue + gte?: runtime.InputJsonValue + not?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | Prisma.JsonNullValueFilter _count?: Prisma.NestedIntFilter<$PrismaModel> - _min?: Prisma.NestedEnumFiscalRequestTypeFilter<$PrismaModel> - _max?: Prisma.NestedEnumFiscalRequestTypeFilter<$PrismaModel> + _min?: Prisma.NestedJsonFilter<$PrismaModel> + _max?: Prisma.NestedJsonFilter<$PrismaModel> +} + +export type EnumTspProviderResponseStatusFilter<$PrismaModel = never> = { + equals?: $Enums.TspProviderResponseStatus | Prisma.EnumTspProviderResponseStatusFieldRefInput<$PrismaModel> + in?: $Enums.TspProviderResponseStatus[] + notIn?: $Enums.TspProviderResponseStatus[] + not?: Prisma.NestedEnumTspProviderResponseStatusFilter<$PrismaModel> | $Enums.TspProviderResponseStatus +} + +export type EnumTspProviderRequestTypeFilter<$PrismaModel = never> = { + equals?: $Enums.TspProviderRequestType | Prisma.EnumTspProviderRequestTypeFieldRefInput<$PrismaModel> + in?: $Enums.TspProviderRequestType[] + notIn?: $Enums.TspProviderRequestType[] + not?: Prisma.NestedEnumTspProviderRequestTypeFilter<$PrismaModel> | $Enums.TspProviderRequestType +} + +export type EnumTspProviderResponseStatusWithAggregatesFilter<$PrismaModel = never> = { + equals?: $Enums.TspProviderResponseStatus | Prisma.EnumTspProviderResponseStatusFieldRefInput<$PrismaModel> + in?: $Enums.TspProviderResponseStatus[] + notIn?: $Enums.TspProviderResponseStatus[] + not?: Prisma.NestedEnumTspProviderResponseStatusWithAggregatesFilter<$PrismaModel> | $Enums.TspProviderResponseStatus + _count?: Prisma.NestedIntFilter<$PrismaModel> + _min?: Prisma.NestedEnumTspProviderResponseStatusFilter<$PrismaModel> + _max?: Prisma.NestedEnumTspProviderResponseStatusFilter<$PrismaModel> +} + +export type EnumTspProviderRequestTypeWithAggregatesFilter<$PrismaModel = never> = { + equals?: $Enums.TspProviderRequestType | Prisma.EnumTspProviderRequestTypeFieldRefInput<$PrismaModel> + in?: $Enums.TspProviderRequestType[] + notIn?: $Enums.TspProviderRequestType[] + not?: Prisma.NestedEnumTspProviderRequestTypeWithAggregatesFilter<$PrismaModel> | $Enums.TspProviderRequestType + _count?: Prisma.NestedIntFilter<$PrismaModel> + _min?: Prisma.NestedEnumTspProviderRequestTypeFilter<$PrismaModel> + _max?: Prisma.NestedEnumTspProviderRequestTypeFilter<$PrismaModel> } export type EnumPaymentMethodTypeFilter<$PrismaModel = never> = { @@ -882,11 +950,11 @@ export type NestedEnumPartnerStatusFilter<$PrismaModel = never> = { not?: Prisma.NestedEnumPartnerStatusFilter<$PrismaModel> | $Enums.PartnerStatus } -export type NestedEnumPartnerFiscalSwitchTypeFilter<$PrismaModel = never> = { - equals?: $Enums.PartnerFiscalSwitchType | Prisma.EnumPartnerFiscalSwitchTypeFieldRefInput<$PrismaModel> - in?: $Enums.PartnerFiscalSwitchType[] - notIn?: $Enums.PartnerFiscalSwitchType[] - not?: Prisma.NestedEnumPartnerFiscalSwitchTypeFilter<$PrismaModel> | $Enums.PartnerFiscalSwitchType +export type NestedEnumTspProviderTypeFilter<$PrismaModel = never> = { + equals?: $Enums.TspProviderType | Prisma.EnumTspProviderTypeFieldRefInput<$PrismaModel> + in?: $Enums.TspProviderType[] + notIn?: $Enums.TspProviderType[] + not?: Prisma.NestedEnumTspProviderTypeFilter<$PrismaModel> | $Enums.TspProviderType } export type NestedEnumPartnerStatusWithAggregatesFilter<$PrismaModel = never> = { @@ -899,14 +967,14 @@ export type NestedEnumPartnerStatusWithAggregatesFilter<$PrismaModel = never> = _max?: Prisma.NestedEnumPartnerStatusFilter<$PrismaModel> } -export type NestedEnumPartnerFiscalSwitchTypeWithAggregatesFilter<$PrismaModel = never> = { - equals?: $Enums.PartnerFiscalSwitchType | Prisma.EnumPartnerFiscalSwitchTypeFieldRefInput<$PrismaModel> - in?: $Enums.PartnerFiscalSwitchType[] - notIn?: $Enums.PartnerFiscalSwitchType[] - not?: Prisma.NestedEnumPartnerFiscalSwitchTypeWithAggregatesFilter<$PrismaModel> | $Enums.PartnerFiscalSwitchType +export type NestedEnumTspProviderTypeWithAggregatesFilter<$PrismaModel = never> = { + equals?: $Enums.TspProviderType | Prisma.EnumTspProviderTypeFieldRefInput<$PrismaModel> + in?: $Enums.TspProviderType[] + notIn?: $Enums.TspProviderType[] + not?: Prisma.NestedEnumTspProviderTypeWithAggregatesFilter<$PrismaModel> | $Enums.TspProviderType _count?: Prisma.NestedIntFilter<$PrismaModel> - _min?: Prisma.NestedEnumPartnerFiscalSwitchTypeFilter<$PrismaModel> - _max?: Prisma.NestedEnumPartnerFiscalSwitchTypeFilter<$PrismaModel> + _min?: Prisma.NestedEnumTspProviderTypeFilter<$PrismaModel> + _max?: Prisma.NestedEnumTspProviderTypeFilter<$PrismaModel> } export type NestedEnumPOSRoleFilter<$PrismaModel = never> = { @@ -1116,6 +1184,33 @@ export type NestedEnumConsumerStatusWithAggregatesFilter<$PrismaModel = never> = _max?: Prisma.NestedEnumConsumerStatusFilter<$PrismaModel> } +export type NestedDecimalFilter<$PrismaModel = never> = { + equals?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + in?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] + notIn?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] + lt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + lte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + gt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + gte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + not?: Prisma.NestedDecimalFilter<$PrismaModel> | runtime.Decimal | runtime.DecimalJsLike | number | string +} + +export type NestedDecimalWithAggregatesFilter<$PrismaModel = never> = { + equals?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + in?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] + notIn?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] + lt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + lte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + gt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + gte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> + not?: Prisma.NestedDecimalWithAggregatesFilter<$PrismaModel> | runtime.Decimal | runtime.DecimalJsLike | number | string + _count?: Prisma.NestedIntFilter<$PrismaModel> + _avg?: Prisma.NestedDecimalFilter<$PrismaModel> + _sum?: Prisma.NestedDecimalFilter<$PrismaModel> + _min?: Prisma.NestedDecimalFilter<$PrismaModel> + _max?: Prisma.NestedDecimalFilter<$PrismaModel> +} + export type NestedEnumPOSStatusFilter<$PrismaModel = never> = { equals?: $Enums.POSStatus | Prisma.EnumPOSStatusFieldRefInput<$PrismaModel> in?: $Enums.POSStatus[] @@ -1219,17 +1314,6 @@ export type NestedDateTimeNullableWithAggregatesFilter<$PrismaModel = never> = { _max?: Prisma.NestedDateTimeNullableFilter<$PrismaModel> } -export type NestedDecimalFilter<$PrismaModel = never> = { - equals?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - in?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] - notIn?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] - lt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - lte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - gt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - gte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - not?: Prisma.NestedDecimalFilter<$PrismaModel> | runtime.Decimal | runtime.DecimalJsLike | number | string -} - export type NestedEnumSKUGuildTypeFilter<$PrismaModel = never> = { equals?: $Enums.SKUGuildType | Prisma.EnumSKUGuildTypeFieldRefInput<$PrismaModel> in?: $Enums.SKUGuildType[] @@ -1237,22 +1321,6 @@ export type NestedEnumSKUGuildTypeFilter<$PrismaModel = never> = { not?: Prisma.NestedEnumSKUGuildTypeFilter<$PrismaModel> | $Enums.SKUGuildType } -export type NestedDecimalWithAggregatesFilter<$PrismaModel = never> = { - equals?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - in?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] - notIn?: runtime.Decimal[] | runtime.DecimalJsLike[] | number[] | string[] - lt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - lte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - gt?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - gte?: runtime.Decimal | runtime.DecimalJsLike | number | string | Prisma.DecimalFieldRefInput<$PrismaModel> - not?: Prisma.NestedDecimalWithAggregatesFilter<$PrismaModel> | runtime.Decimal | runtime.DecimalJsLike | number | string - _count?: Prisma.NestedIntFilter<$PrismaModel> - _avg?: Prisma.NestedDecimalFilter<$PrismaModel> - _sum?: Prisma.NestedDecimalFilter<$PrismaModel> - _min?: Prisma.NestedDecimalFilter<$PrismaModel> - _max?: Prisma.NestedDecimalFilter<$PrismaModel> -} - export type NestedEnumSKUGuildTypeWithAggregatesFilter<$PrismaModel = never> = { equals?: $Enums.SKUGuildType | Prisma.EnumSKUGuildTypeFieldRefInput<$PrismaModel> in?: $Enums.SKUGuildType[] @@ -1293,38 +1361,79 @@ export type NestedEnumCustomerTypeWithAggregatesFilter<$PrismaModel = never> = { _max?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> } -export type NestedEnumFiscalResponseStatusFilter<$PrismaModel = never> = { - equals?: $Enums.FiscalResponseStatus | Prisma.EnumFiscalResponseStatusFieldRefInput<$PrismaModel> - in?: $Enums.FiscalResponseStatus[] - notIn?: $Enums.FiscalResponseStatus[] - not?: Prisma.NestedEnumFiscalResponseStatusFilter<$PrismaModel> | $Enums.FiscalResponseStatus +export type NestedEnumInvoiceTemplateTypeFilter<$PrismaModel = never> = { + equals?: $Enums.InvoiceTemplateType | Prisma.EnumInvoiceTemplateTypeFieldRefInput<$PrismaModel> + in?: $Enums.InvoiceTemplateType[] + notIn?: $Enums.InvoiceTemplateType[] + not?: Prisma.NestedEnumInvoiceTemplateTypeFilter<$PrismaModel> | $Enums.InvoiceTemplateType } -export type NestedEnumFiscalRequestTypeFilter<$PrismaModel = never> = { - equals?: $Enums.FiscalRequestType | Prisma.EnumFiscalRequestTypeFieldRefInput<$PrismaModel> - in?: $Enums.FiscalRequestType[] - notIn?: $Enums.FiscalRequestType[] - not?: Prisma.NestedEnumFiscalRequestTypeFilter<$PrismaModel> | $Enums.FiscalRequestType -} - -export type NestedEnumFiscalResponseStatusWithAggregatesFilter<$PrismaModel = never> = { - equals?: $Enums.FiscalResponseStatus | Prisma.EnumFiscalResponseStatusFieldRefInput<$PrismaModel> - in?: $Enums.FiscalResponseStatus[] - notIn?: $Enums.FiscalResponseStatus[] - not?: Prisma.NestedEnumFiscalResponseStatusWithAggregatesFilter<$PrismaModel> | $Enums.FiscalResponseStatus +export type NestedEnumInvoiceTemplateTypeWithAggregatesFilter<$PrismaModel = never> = { + equals?: $Enums.InvoiceTemplateType | Prisma.EnumInvoiceTemplateTypeFieldRefInput<$PrismaModel> + in?: $Enums.InvoiceTemplateType[] + notIn?: $Enums.InvoiceTemplateType[] + not?: Prisma.NestedEnumInvoiceTemplateTypeWithAggregatesFilter<$PrismaModel> | $Enums.InvoiceTemplateType _count?: Prisma.NestedIntFilter<$PrismaModel> - _min?: Prisma.NestedEnumFiscalResponseStatusFilter<$PrismaModel> - _max?: Prisma.NestedEnumFiscalResponseStatusFilter<$PrismaModel> + _min?: Prisma.NestedEnumInvoiceTemplateTypeFilter<$PrismaModel> + _max?: Prisma.NestedEnumInvoiceTemplateTypeFilter<$PrismaModel> } -export type NestedEnumFiscalRequestTypeWithAggregatesFilter<$PrismaModel = never> = { - equals?: $Enums.FiscalRequestType | Prisma.EnumFiscalRequestTypeFieldRefInput<$PrismaModel> - in?: $Enums.FiscalRequestType[] - notIn?: $Enums.FiscalRequestType[] - not?: Prisma.NestedEnumFiscalRequestTypeWithAggregatesFilter<$PrismaModel> | $Enums.FiscalRequestType +export type NestedJsonFilter<$PrismaModel = never> = +| Prisma.PatchUndefined< + Prisma.Either>, Exclude>, 'path'>>, + Required> + > +| Prisma.OptionalFlat>, 'path'>> + +export type NestedJsonFilterBase<$PrismaModel = never> = { + equals?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | Prisma.JsonNullValueFilter + path?: string + mode?: Prisma.QueryMode | Prisma.EnumQueryModeFieldRefInput<$PrismaModel> + string_contains?: string | Prisma.StringFieldRefInput<$PrismaModel> + string_starts_with?: string | Prisma.StringFieldRefInput<$PrismaModel> + string_ends_with?: string | Prisma.StringFieldRefInput<$PrismaModel> + array_starts_with?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | null + array_ends_with?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | null + array_contains?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | null + lt?: runtime.InputJsonValue + lte?: runtime.InputJsonValue + gt?: runtime.InputJsonValue + gte?: runtime.InputJsonValue + not?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | Prisma.JsonNullValueFilter +} + +export type NestedEnumTspProviderResponseStatusFilter<$PrismaModel = never> = { + equals?: $Enums.TspProviderResponseStatus | Prisma.EnumTspProviderResponseStatusFieldRefInput<$PrismaModel> + in?: $Enums.TspProviderResponseStatus[] + notIn?: $Enums.TspProviderResponseStatus[] + not?: Prisma.NestedEnumTspProviderResponseStatusFilter<$PrismaModel> | $Enums.TspProviderResponseStatus +} + +export type NestedEnumTspProviderRequestTypeFilter<$PrismaModel = never> = { + equals?: $Enums.TspProviderRequestType | Prisma.EnumTspProviderRequestTypeFieldRefInput<$PrismaModel> + in?: $Enums.TspProviderRequestType[] + notIn?: $Enums.TspProviderRequestType[] + not?: Prisma.NestedEnumTspProviderRequestTypeFilter<$PrismaModel> | $Enums.TspProviderRequestType +} + +export type NestedEnumTspProviderResponseStatusWithAggregatesFilter<$PrismaModel = never> = { + equals?: $Enums.TspProviderResponseStatus | Prisma.EnumTspProviderResponseStatusFieldRefInput<$PrismaModel> + in?: $Enums.TspProviderResponseStatus[] + notIn?: $Enums.TspProviderResponseStatus[] + not?: Prisma.NestedEnumTspProviderResponseStatusWithAggregatesFilter<$PrismaModel> | $Enums.TspProviderResponseStatus _count?: Prisma.NestedIntFilter<$PrismaModel> - _min?: Prisma.NestedEnumFiscalRequestTypeFilter<$PrismaModel> - _max?: Prisma.NestedEnumFiscalRequestTypeFilter<$PrismaModel> + _min?: Prisma.NestedEnumTspProviderResponseStatusFilter<$PrismaModel> + _max?: Prisma.NestedEnumTspProviderResponseStatusFilter<$PrismaModel> +} + +export type NestedEnumTspProviderRequestTypeWithAggregatesFilter<$PrismaModel = never> = { + equals?: $Enums.TspProviderRequestType | Prisma.EnumTspProviderRequestTypeFieldRefInput<$PrismaModel> + in?: $Enums.TspProviderRequestType[] + notIn?: $Enums.TspProviderRequestType[] + not?: Prisma.NestedEnumTspProviderRequestTypeWithAggregatesFilter<$PrismaModel> | $Enums.TspProviderRequestType + _count?: Prisma.NestedIntFilter<$PrismaModel> + _min?: Prisma.NestedEnumTspProviderRequestTypeFilter<$PrismaModel> + _max?: Prisma.NestedEnumTspProviderRequestTypeFilter<$PrismaModel> } export type NestedEnumPaymentMethodTypeFilter<$PrismaModel = never> = { diff --git a/src/generated/prisma/enums.ts b/src/generated/prisma/enums.ts index 0b7aa41..c6567e4 100644 --- a/src/generated/prisma/enums.ts +++ b/src/generated/prisma/enums.ts @@ -10,12 +10,13 @@ */ export const PaymentMethodType = { - TERMINAL: 'TERMINAL', - CASH: 'CASH', + CHEQUE: 'CHEQUE', SET_OFF: 'SET_OFF', + CASH: 'CASH', + TERMINAL: 'TERMINAL', + PAYMENT_GATEWAY: 'PAYMENT_GATEWAY', CARD: 'CARD', BANK: 'BANK', - CHECK: 'CHECK', OTHER: 'OTHER' } as const @@ -248,40 +249,40 @@ export const ConsumerType = { export type ConsumerType = (typeof ConsumerType)[keyof typeof ConsumerType] -export const PartnerFiscalSwitchType = { +export const TspProviderType = { NAMA: 'NAMA', SUN: 'SUN' } as const -export type PartnerFiscalSwitchType = (typeof PartnerFiscalSwitchType)[keyof typeof PartnerFiscalSwitchType] +export type TspProviderType = (typeof TspProviderType)[keyof typeof TspProviderType] -export const FiscalResponseStatus = { +export const TspProviderResponseStatus = { SUCCESS: 'SUCCESS', FAILURE: 'FAILURE', NOT_SEND: 'NOT_SEND', QUEUED: 'QUEUED' } as const -export type FiscalResponseStatus = (typeof FiscalResponseStatus)[keyof typeof FiscalResponseStatus] +export type TspProviderResponseStatus = (typeof TspProviderResponseStatus)[keyof typeof TspProviderResponseStatus] -export const FiscalRequestType = { +export const TspProviderRequestType = { MAIN: 'MAIN', UPDATE: 'UPDATE', REVOKE: 'REVOKE', REMOVE: 'REMOVE' } as const -export type FiscalRequestType = (typeof FiscalRequestType)[keyof typeof FiscalRequestType] +export type TspProviderRequestType = (typeof TspProviderRequestType)[keyof typeof TspProviderRequestType] -export const FiscalInvoiceCustomerType = { +export const TspProviderCustomerType = { Unknown: 'Unknown', Known: 'Known' } as const -export type FiscalInvoiceCustomerType = (typeof FiscalInvoiceCustomerType)[keyof typeof FiscalInvoiceCustomerType] +export type TspProviderCustomerType = (typeof TspProviderCustomerType)[keyof typeof TspProviderCustomerType] export const SKUGuildType = { @@ -289,3 +290,20 @@ export const SKUGuildType = { } as const export type SKUGuildType = (typeof SKUGuildType)[keyof typeof SKUGuildType] + + +export const InvoiceTemplateType = { + SALE: 'SALE', + FX_SALE: 'FX_SALE', + GOLD_JEWELRY: 'GOLD_JEWELRY', + CONTRACT: 'CONTRACT', + UTILITY: 'UTILITY', + AIR_TICKET: 'AIR_TICKET', + EXPORT: 'EXPORT', + BILL_OF_LADING: 'BILL_OF_LADING', + PETROCHEMICAL: 'PETROCHEMICAL', + COMMODITY_EXCHANGE: 'COMMODITY_EXCHANGE', + INSURANCE: 'INSURANCE' +} as const + +export type InvoiceTemplateType = (typeof InvoiceTemplateType)[keyof typeof InvoiceTemplateType] diff --git a/src/generated/prisma/internal/class.ts b/src/generated/prisma/internal/class.ts index 7a744b2..02c0037 100644 --- a/src/generated/prisma/internal/class.ts +++ b/src/generated/prisma/internal/class.ts @@ -22,7 +22,7 @@ const config: runtime.GetPrismaClientConfig = { "clientVersion": "7.7.0", "engineVersion": "75cbdc1eb7150937890ad5465d861175c6624711", "activeProvider": "mysql", - "inlineSchema": "model AdminAccount {\n id String @id @default(ulid())\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n admin_id String\n admin Admin @relation(fields: [admin_id], references: [id])\n\n account_id String @unique\n account Account @relation(fields: [account_id], references: [id])\n\n @@map(\"admin_accounts\")\n}\n\nmodel Admin {\n id String @id @default(ulid())\n mobile_number String @unique()\n national_code String? @unique()\n first_name String\n last_name String\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n accounts AdminAccount[]\n\n @@map(\"admins\")\n}\n\n// model LegalProfile {\n// user_id String @id\n// company_name String\n// register_no String @unique()\n// representative_name String?\n// representative_national_id String?\n\n// // user User @relation(fields: [user_id], references: [id])\n\n// @@map(\"legal_profiles\")\n// }\n\n// model IndividualProfile {\n// user_id String @id\n// national_code String @unique()\n// first_name String\n// last_name String\n// birth_date DateTime?\n// mobile_number String\n// // user User @relation(fields: [user_id], references: [id])\n\n// @@map(\"individual_profiles\")\n// }\n\nmodel Account {\n id String @id @default(ulid())\n username String @unique()\n password String\n status AccountStatus\n type AccountType\n\n admin_account AdminAccount?\n provider_account ProviderAccount?\n partner_account PartnerAccount?\n consumer_account ConsumerAccount?\n\n // admin_account_id String? @unique\n // admin_account AdminAccount? @relation(fields: [admin_account_id], references: [id], onDelete: Cascade)\n\n // provider_account_id String? @unique\n // provider_account ProviderAccount? @relation(fields: [provider_account_id], references: [id], onDelete: Cascade)\n\n // partner_account_id String? @unique\n // partner_account PartnerAccount? @relation(fields: [partner_account_id], references: [id], onDelete: Cascade)\n\n // consumer_account_id String? @unique\n // consumer_account ConsumerAccount? @relation(fields: [consumer_account_id], references: [id], onDelete: Cascade)\n\n // tokens Token[]\n // refresh_tokens RefreshToken[]\n\n @@map(\"accounts\")\n}\n\n// model Token {\n// id String @id @d @uniqueefault(ulid())\n// token String @unique\n// type TokenType\n// created_at DateTime @default(now())\n// expires_at DateTime\n\n// account_id String\n// account Account @relation(fields: [account_id], references: [id])\n\n// @@unique([type, account_id])\n// @@map(\"tokens\")\n// }\n\n// model VerificationCode {\n// id String @id @default(ulid())\n// code String\n// is_used Boolean @default(false)\n// created_at DateTime @default(now())\n// expires_at DateTime\n\n// account_id String\n// account Account @relation(fields: [account_id], references: [id])\n\n// @@map(\"verification_codes\")\n// }\n\nmodel DeviceBrand {\n id String @id @default(ulid())\n name String\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n devices Device[]\n\n @@map(\"device_brands\")\n}\n\nmodel Device {\n id String @id @default(ulid())\n name String\n os_version String?\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n brand_id String\n\n brand DeviceBrand @relation(fields: [brand_id], references: [id])\n poses Pos[]\n\n @@map(\"devices\")\n}\n\nmodel LicenseChargeTransaction {\n id String @id @default(ulid())\n activation_expires_at DateTime\n tracking_code String @unique()\n purchased_count Int\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n partner_id String\n partner Partner @relation(fields: [partner_id], references: [id])\n\n licenses License[]\n\n @@map(\"license_charged_transactions\")\n}\n\nmodel License {\n id String @id @default(ulid())\n accounts_limit Int @default(2)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n charge_transaction_id String\n charge_transaction LicenseChargeTransaction @relation(fields: [charge_transaction_id], references: [id])\n\n activation LicenseActivation?\n\n @@map(\"licenses\")\n}\n\nmodel LicenseActivation {\n id String @id @unique() @default(ulid())\n starts_at DateTime\n expires_at DateTime\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n license_id String @unique\n license License @relation(fields: [license_id], references: [id])\n\n business_activity_id String @unique\n business_activity BusinessActivity @relation(fields: [business_activity_id], references: [id])\n\n license_renews LicenseRenew[]\n account_allocations LicenseAccountAllocation[]\n\n @@map(\"licenses_activated\")\n}\n\nmodel LicenseRenewChargeTransaction {\n id String @id @default(ulid())\n activation_expires_at DateTime\n tracking_code String @unique()\n purchased_count Int\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n partner_id String\n partner Partner @relation(fields: [partner_id], references: [id])\n\n license_renews LicenseRenew[]\n\n @@map(\"license_renew_charge_transaction\")\n}\n\nmodel LicenseRenew {\n id String @id @default(ulid())\n expires_at DateTime\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n charge_transaction_id String\n charge_transaction LicenseRenewChargeTransaction @relation(fields: [charge_transaction_id], references: [id])\n\n activation_id String?\n activation LicenseActivation? @relation(fields: [activation_id], references: [id])\n\n @@map(\"license_renew\")\n}\n\nmodel PartnerAccountQuotaChargeTransaction {\n id String @id @default(ulid())\n activation_expires_at DateTime\n tracking_code String @unique()\n purchased_count Int\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n partner_id String\n partner Partner @relation(fields: [partner_id], references: [id])\n\n credits PartnerAccountQuotaCredit[]\n\n @@map(\"partner_account_quota_charge_transaction\")\n}\n\nmodel PartnerAccountQuotaCredit {\n id String @id @default(ulid())\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n charge_transaction_id String?\n charge_transaction PartnerAccountQuotaChargeTransaction? @relation(fields: [charge_transaction_id], references: [id])\n\n allocation LicenseAccountAllocation?\n\n @@map(\"partner_account_quota_credit\")\n}\n\nmodel LicenseAccountAllocation {\n id String @id @default(ulid())\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n license_activation_id String?\n license_activation LicenseActivation? @relation(fields: [license_activation_id], references: [id])\n\n account_id String? @unique\n account ConsumerAccount? @relation(fields: [account_id], references: [id])\n\n credit_id String? @unique\n credit PartnerAccountQuotaCredit? @relation(fields: [credit_id], references: [id])\n\n @@map(\"license_account_allocation\")\n}\n\nmodel PartnerAccount {\n id String @id @default(ulid())\n role PartnerRole\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @default(now()) @updatedAt @db.Timestamp(0)\n\n partner_id String\n partner Partner @relation(fields: [partner_id], references: [id])\n\n account_id String @unique\n account Account @relation(fields: [account_id], references: [id])\n\n @@map(\"partner_accounts\")\n}\n\nmodel Partner {\n id String @id @default(ulid())\n name String\n code String @unique()\n status PartnerStatus @default(ACTIVE)\n fiscal_switch_type PartnerFiscalSwitchType\n logo_url String?\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @default(now()) @updatedAt @db.Timestamp(0)\n\n accounts PartnerAccount[]\n consumers_individual ConsumerIndividual[]\n consumers_legal ConsumerLegal[]\n license_charge_transactions LicenseChargeTransaction[]\n account_quota_charge_transactions PartnerAccountQuotaChargeTransaction[]\n license_renew_charge_transactions LicenseRenewChargeTransaction[]\n\n @@map(\"partners\")\n}\n\nmodel PermissionConsumer {\n id String @id @default(ulid())\n\n consumer_account_id String @unique\n consumer_account ConsumerAccount @relation(fields: [consumer_account_id], references: [id], onDelete: Cascade)\n\n pos_permissions PermissionPos[]\n complex_permissions PermissionComplex[]\n business_permissions PermissionBusiness[]\n\n @@map(\"permission_consumers\")\n}\n\nmodel PermissionPos {\n id String @id @default(ulid())\n role POSRole\n\n pos_id String\n permission_id String\n\n pos Pos @relation(fields: [pos_id], references: [id], onDelete: Cascade)\n permission PermissionConsumer @relation(fields: [permission_id], references: [id], onDelete: Cascade)\n\n @@unique([permission_id, pos_id])\n @@map(\"permission_poses\")\n}\n\nmodel PermissionComplex {\n id String @id @default(ulid())\n role ComplexRole\n\n complex_id String\n permission_id String\n\n complex Complex @relation(fields: [complex_id], references: [id], onDelete: Cascade)\n permission PermissionConsumer @relation(fields: [permission_id], references: [id], onDelete: Cascade)\n\n @@unique([permission_id, complex_id])\n @@map(\"permission_complexes\")\n}\n\nmodel PermissionBusiness {\n id String @id @default(ulid())\n role BusinessRole\n\n business_id String\n permission_id String\n\n business BusinessActivity @relation(fields: [business_id], references: [id], onDelete: Cascade)\n permission PermissionConsumer @relation(fields: [permission_id], references: [id], onDelete: Cascade)\n\n @@unique([permission_id, business_id])\n @@map(\"permission_business_activities\")\n}\n\nmodel ProviderAccount {\n id String @id @default(ulid())\n role ProviderRole\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n provider_id String\n provider Provider @relation(fields: [provider_id], references: [id])\n\n account_id String @unique\n account Account @relation(fields: [account_id], references: [id])\n\n @@map(\"provider_accounts\")\n}\n\nmodel Provider {\n id String @id @default(ulid())\n code String @unique()\n status PartnerStatus @default(ACTIVE)\n name String\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n\n accounts ProviderAccount[]\n pos_list Pos[]\n\n @@map(\"providers\")\n}\n\nmodel ConsumerDevices {\n uuid String @id @unique() @db.VarChar(255)\n app_version String @db.VarChar(20)\n build_number String @db.VarChar(20)\n platform String @db.VarChar(100)\n brand String @db.VarChar(100)\n model String @db.VarChar(100)\n device String @db.VarChar(100)\n publisher ApplicationPublisher\n os_version String @db.VarChar(20)\n sdk_version String @db.VarChar(20)\n release_number String @db.VarChar(20)\n user_agent String? @db.VarChar(100)\n browser_name String? @db.VarChar(100)\n fcm_token String? @db.VarChar(100)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n consumer_id String\n consumer Consumer @relation(fields: [consumer_id], references: [id])\n\n @@map(\"consumer_devices\")\n}\n\nmodel ApplicationReleasedInfo {\n id String @id @default(ulid())\n version String\n build_number String\n is_minimum_supported Boolean @default(false)\n release_type ApplicationReleaseType\n platform ApplicationPlatform\n notes Json?\n\n release_date DateTime @default(now()) @db.Timestamp(0)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n @@map(\"application_released_info\")\n}\n\nmodel ConsumerAccount {\n id String @id @default(ulid())\n role ConsumerRole\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n consumer_id String\n consumer Consumer @relation(fields: [consumer_id], references: [id])\n\n account_id String @unique()\n account Account @relation(fields: [account_id], references: [id])\n\n pos Pos?\n permission PermissionConsumer?\n account_allocation LicenseAccountAllocation?\n sales_invoices SalesInvoice[]\n\n @@map(\"consumer_accounts\")\n}\n\nmodel Consumer {\n id String @id @default(ulid())\n type ConsumerType\n status ConsumerStatus @default(ACTIVE)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n accounts ConsumerAccount[]\n business_activities BusinessActivity[]\n devices ConsumerDevices[]\n individual ConsumerIndividual?\n legal ConsumerLegal?\n\n @@map(\"consumers\")\n}\n\nmodel ConsumerIndividual {\n first_name String\n last_name String\n mobile_number String\n national_code String\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n partner_id String\n partner Partner @relation(fields: [partner_id], references: [id])\n\n consumer_id String @id\n consumer Consumer @relation(fields: [consumer_id], references: [id], onDelete: Cascade)\n\n @@unique([mobile_number, consumer_id])\n @@unique([partner_id, national_code])\n @@map(\"consumers_individual\")\n}\n\nmodel ConsumerLegal {\n name String\n registration_code String\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n partner_id String\n partner Partner @relation(fields: [partner_id], references: [id])\n\n consumer_id String @id\n consumer Consumer @relation(fields: [consumer_id], references: [id], onDelete: Cascade)\n\n @@unique([partner_id, registration_code])\n @@map(\"consumers_legal\")\n}\n\nmodel BusinessActivity {\n id String @id @default(ulid())\n economic_code String\n name String\n fiscal_id String\n partner_token String\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n guild_id String\n guild Guild @relation(fields: [guild_id], references: [id])\n\n consumer_id String\n consumer Consumer @relation(fields: [consumer_id], references: [id])\n\n license_activation LicenseActivation?\n complexes Complex[]\n permission_businesses PermissionBusiness[]\n goods Good[]\n customer_individuals CustomerIndividual[]\n customer_legals CustomerLegal[]\n\n @@unique([economic_code, consumer_id])\n @@map(\"business_activities\")\n}\n\nmodel Complex {\n id String @id @default(ulid())\n name String\n branch_code String\n address String?\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n business_activity_id String\n\n business_activity BusinessActivity @relation(fields: [business_activity_id], references: [id])\n\n pos_list Pos[]\n good_categories GoodCategory[]\n permission_complexes PermissionComplex[]\n\n @@map(\"complexes\")\n}\n\nmodel Pos {\n id String @id @default(ulid())\n name String\n model String?\n serial_number String? @unique()\n status POSStatus @default(ACTIVE)\n pos_type POSType\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n complex_id String\n complex Complex @relation(fields: [complex_id], references: [id])\n\n device_id String?\n device Device? @relation(fields: [device_id], references: [id])\n\n provider_id String?\n provider Provider? @relation(fields: [provider_id], references: [id])\n\n account_id String @unique\n account ConsumerAccount @relation(fields: [account_id], references: [id])\n\n permission_pos PermissionPos[]\n sales_invoices SalesInvoice[]\n\n @@map(\"poses\")\n}\n\nmodel Good {\n id String @id @default(ulid())\n name String @db.VarChar(255)\n is_default_guild_good Boolean @default(false)\n pricing_model GoodPricingModel\n description String? @db.Text\n local_sku String? @unique() @db.VarChar(100)\n barcode String? @unique() @db.VarChar(100)\n base_sale_price Decimal? @default(0.00) @db.Decimal(15, 0)\n image_url String? @db.VarChar(255)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n deleted_at DateTime? @db.Timestamp(0)\n\n sku_id String\n sku StockKeepingUnits @relation(fields: [sku_id], references: [id])\n\n measure_unit_id String\n measure_unit MeasureUnits @relation(fields: [measure_unit_id], references: [id])\n\n category_id String?\n category GoodCategory? @relation(fields: [category_id], references: [id])\n\n business_activity_id String?\n business_activity BusinessActivity? @relation(fields: [business_activity_id], references: [id])\n\n sales_invoice_items SalesInvoiceItem[]\n\n @@index([category_id])\n @@map(\"goods\")\n}\n\nmodel GoodCategory {\n id String @id @default(ulid())\n name String @db.VarChar(100)\n description String? @db.Text\n image_url String? @db.VarChar(255)\n complex_id String?\n is_default_guild_good Boolean @default(false)\n guild_id String?\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n deleted_at DateTime? @db.Timestamp(0)\n\n goods Good[]\n guild Guild? @relation(fields: [guild_id], references: [id])\n complex Complex? @relation(fields: [complex_id], references: [id])\n\n @@map(\"good_categories\")\n}\n\nmodel MeasureUnits {\n id String @id @default(ulid())\n code String @unique\n name String\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @default(now()) @updatedAt @db.Timestamp(0)\n\n goods Good[]\n\n @@map(\"measure_units\")\n}\n\nmodel StockKeepingUnits {\n id String @id @default(ulid())\n code String @unique\n name String\n VAT Decimal @db.Decimal(5, 2)\n type SKUGuildType @default(GOLD)\n is_public Boolean @default(true)\n is_domestic Boolean @default(false)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n goods Good[]\n\n @@index([code])\n @@map(\"stock_keeping_units\")\n}\n\nmodel TriggerLog {\n id Int @id @default(autoincrement())\n message String @db.Text\n createdAt DateTime @default(now()) @db.Timestamp(0)\n name String @db.Text\n\n @@map(\"trigger_logs\")\n}\n\n// generator client {\n// provider = \"prisma-client-js\"\n// // output = \"../../src/generated/prisma\"\n// // moduleFormat = \"cjs\"\n// previewFeatures = [\"views\"]\n// }\n\n// datasource db {\n// provider = \"mysql\"\n// }\n\ngenerator client {\n provider = \"prisma-client\"\n output = \"../../src/generated/prisma\"\n moduleFormat = \"cjs\"\n previewFeatures = [\"views\"]\n}\n\ndatasource db {\n provider = \"mysql\"\n}\n\nmodel Customer {\n id String @id @default(ulid())\n is_favorite Boolean? @default(false)\n type CustomerType\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n deleted_at DateTime? @db.Timestamp(0)\n\n individual CustomerIndividual?\n legal CustomerLegal?\n\n sales_invoices SalesInvoice[]\n\n @@map(\"customers\")\n}\n\nmodel CustomerIndividual {\n first_name String @db.VarChar(255)\n last_name String @db.VarChar(255)\n national_id String @db.Char(10)\n mobile_number String @db.Char(15)\n\n postal_code String @db.Char(10)\n economic_code String? @db.Char(10)\n\n customer_id String @id\n customer Customer @relation(fields: [customer_id], references: [id], onDelete: Cascade)\n\n business_activity_id String\n business_activity BusinessActivity @relation(fields: [business_activity_id], references: id)\n\n @@unique([business_activity_id, national_id])\n @@index([business_activity_id])\n @@map(\"customer_individuals\")\n}\n\nmodel CustomerLegal {\n name String @db.VarChar(255)\n economic_code String @db.Char(10)\n registration_number String? @db.Char(20)\n postal_code String @db.Char(10)\n\n customer_id String @id\n customer Customer @relation(fields: [customer_id], references: [id], onDelete: Cascade)\n\n business_activity_id String\n business_activity BusinessActivity @relation(fields: [business_activity_id], references: id)\n\n @@unique([business_activity_id, economic_code])\n @@index([business_activity_id])\n @@map(\"customer_legal\")\n}\n\nenum PaymentMethodType {\n TERMINAL\n CASH\n SET_OFF\n CARD\n BANK\n CHECK\n OTHER\n}\n\nenum UnitType {\n COUNT\n GRAM\n KILOGRAM\n MILLILITER\n LITER\n METER\n HOUR\n}\n\nenum GoodPricingModel {\n STANDARD\n GOLD\n}\n\nenum CustomerType {\n INDIVIDUAL\n LEGAL\n UNKNOWN\n}\n\nenum POSStatus {\n ACTIVE\n DISABLED\n}\n\nenum POSRole {\n MANAGER\n OPERATOR\n}\n\nenum ComplexRole {\n MANAGER\n OPERATOR\n}\n\nenum BusinessRole {\n MANAGER\n OPERATOR\n}\n\nenum LicenseType {\n BASIC\n PRO\n ENTERPRISE\n}\n\nenum LicenseStatus {\n ACTIVE\n EXPIRED\n SUSPENDED\n}\n\nenum POSType {\n PSP\n MOBILE\n WEB\n API\n}\n\nenum UserType {\n LEGAL\n INDIVIDUAL\n}\n\nenum AccountType {\n ADMIN\n PROVIDER\n PARTNER\n CONSUMER\n}\n\nenum UserStatus {\n ACTIVE\n INACTIVE\n}\n\nenum AccountRole {\n OWNER\n OPERATOR\n ACCOUNTANT\n}\n\nenum AccountStatus {\n ACTIVE\n SUSPENDED\n}\n\nenum PartnerRole {\n OWNER\n MANAGER\n OPERATOR\n}\n\nenum PartnerStatus {\n ACTIVE\n SUSPENDED\n}\n\nenum ProviderRole {\n OWNER\n MANAGER\n OPERATOR\n}\n\nenum ProviderStatus {\n ACTIVE\n SUSPENDED\n}\n\nenum ConsumerRole {\n OWNER\n MANAGER\n OPERATOR\n}\n\nenum ConsumerStatus {\n ACTIVE\n SUSPENDED\n}\n\nenum TokenType {\n ACCESS\n REFRESH\n}\n\nenum ApplicationPlatform {\n ANDROID\n IOS\n}\n\nenum ApplicationReleaseType {\n STABLE\n BETA\n ALPHA\n}\n\nenum ApplicationPublisher {\n DIRECT\n CAFE_BAZAR\n MAYKET\n}\n\nenum ConsumerType {\n INDIVIDUAL\n LEGAL\n}\n\nenum PartnerFiscalSwitchType {\n NAMA\n SUN\n}\n\nenum FiscalResponseStatus {\n SUCCESS\n FAILURE\n NOT_SEND\n QUEUED\n}\n\nenum FiscalRequestType {\n MAIN\n UPDATE\n REVOKE\n REMOVE\n}\n\nenum FiscalInvoiceCustomerType {\n Unknown\n Known\n}\n\nenum SKUGuildType {\n GOLD\n}\n\nmodel Guild {\n id String @id @default(ulid())\n name String\n code String?\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n business_activities BusinessActivity[]\n good_categories GoodCategory[]\n\n @@map(\"guilds\")\n}\n\nmodel SalesInvoice {\n id String @id @default(uuid())\n code String @unique @db.VarChar(100)\n total_amount Decimal @db.Decimal(15, 2)\n invoice_number Int @db.Int()\n invoice_date DateTime @default(now()) @db.Timestamp(0)\n\n notes String? @db.Text\n unknown_customer Json? @db.Json\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n\n customer_id String?\n customer Customer? @relation(fields: [customer_id], references: [id])\n\n consumer_account_id String\n consumer_account ConsumerAccount @relation(fields: [consumer_account_id], references: [id])\n\n pos_id String\n pos Pos @relation(fields: [pos_id], references: [id])\n\n fiscal SaleInvoiceFiscals?\n\n items SalesInvoiceItem[]\n payments SalesInvoicePayment[]\n\n @@unique([invoice_number, pos_id])\n @@map(\"sales_invoices\")\n}\n\nmodel SalesInvoiceItem {\n id String @id @default(ulid())\n quantity Decimal @db.Decimal(10, 0)\n measure_unit_text String @db.VarChar(50)\n measure_unit_code String @db.VarChar(50)\n sku_code String @db.VarChar(50)\n sku_vat Decimal @default(0.00) @db.Decimal(15, 2)\n unit_price Decimal @default(0.00) @db.Decimal(15, 2)\n total_amount Decimal @default(0.00) @db.Decimal(15, 2)\n created_at DateTime @default(now()) @db.Timestamp(0)\n discount Decimal @default(0.00) @db.Decimal(15, 2)\n notes String? @db.Text\n\n payload Json?\n good_snapshot Json?\n\n invoice_id String\n invoice SalesInvoice @relation(fields: [invoice_id], references: [id])\n\n good_id String?\n good Good? @relation(fields: [good_id], references: [id])\n\n service_id String?\n service Service? @relation(fields: [service_id], references: [id])\n\n @@index([invoice_id, good_id])\n @@map(\"sales_invoice_items\")\n}\n\nmodel SaleInvoiceFiscals {\n id String @id @default(ulid())\n\n retry_count Int @default(0)\n last_attempt_at DateTime? @db.Timestamp(0)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n invoice_id String @unique\n invoice SalesInvoice @relation(fields: [invoice_id], references: [id], onDelete: Cascade)\n\n attempts SaleInvoiceFiscalAttempts[]\n\n @@map(\"sale_invoice_fiscals\")\n}\n\nmodel SaleInvoiceFiscalAttempts {\n id String @id @default(ulid())\n\n attempt_no Int\n status FiscalResponseStatus\n tax_id String? @unique @db.VarChar(191)\n type FiscalRequestType\n\n request_payload Json?\n response_payload Json?\n error_message String? @db.Text\n\n sent_at DateTime? @db.Timestamp(0)\n received_at DateTime? @db.Timestamp(0)\n created_at DateTime @default(now()) @db.Timestamp(0)\n\n fiscal_id String\n fiscal SaleInvoiceFiscals @relation(fields: [fiscal_id], references: [id], onDelete: Cascade)\n\n @@unique([fiscal_id, attempt_no])\n @@index([status])\n @@index([tax_id])\n @@map(\"sale_invoice_fiscal_attempts\")\n}\n\nmodel SalesInvoicePayment {\n id String @id @default(ulid())\n amount Decimal @db.Decimal(15, 2)\n payment_method PaymentMethodType\n paid_at DateTime @db.Timestamp(0)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n\n invoice_id String\n invoice SalesInvoice @relation(fields: [invoice_id], references: [id])\n\n terminal_info SalesInvoicePaymentTerminalInfo?\n\n @@index([invoice_id])\n @@map(\"sales_invoice_payments\")\n}\n\nmodel SalesInvoicePaymentTerminalInfo {\n id String @id @default(ulid())\n terminal_id String\n stan String\n rrn String\n transaction_date_time DateTime\n customer_card_no String?\n description String?\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n\n payment_id String @unique\n payment SalesInvoicePayment @relation(fields: [payment_id], references: [id])\n\n @@unique([terminal_id, stan, rrn, payment_id])\n @@map(\"sales_invoice_payment_terminal_info\")\n}\n\nmodel Service {\n id String @id @default(ulid())\n name String @db.VarChar(255)\n description String? @db.Text\n sku String @unique() @db.VarChar(100)\n local_sku String? @unique() @db.VarChar(100)\n barcode String? @unique() @db.VarChar(100)\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n deleted_at DateTime? @db.Timestamp(0)\n category_id String?\n base_sale_price Decimal @default(0.00) @db.Decimal(15, 0)\n account_id String\n complex_id String\n\n category ServiceCategory? @relation(fields: [category_id], references: [id])\n sales_invoice_items SalesInvoiceItem[]\n\n @@index([category_id])\n @@map(\"services\")\n}\n\nmodel ServiceCategory {\n id String @id @default(ulid())\n name String @db.VarChar(100)\n description String? @db.Text\n image_url String? @db.VarChar(255)\n account_id String\n complex_id String\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n deleted_at DateTime? @db.Timestamp(0)\n\n services Service[]\n\n @@map(\"service_categories\")\n}\n", + "inlineSchema": "model AdminAccount {\n id String @id @default(ulid())\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n admin_id String\n admin Admin @relation(fields: [admin_id], references: [id])\n\n account_id String @unique\n account Account @relation(fields: [account_id], references: [id], onDelete: Cascade)\n\n @@map(\"admin_accounts\")\n}\n\nmodel Admin {\n id String @id @default(ulid())\n mobile_number String @unique()\n national_code String? @unique()\n first_name String\n last_name String\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n accounts AdminAccount[]\n\n @@map(\"admins\")\n}\n\n// model LegalProfile {\n// user_id String @id\n// company_name String\n// register_no String @unique()\n// representative_name String?\n// representative_national_id String?\n\n// // user User @relation(fields: [user_id], references: [id])\n\n// @@map(\"legal_profiles\")\n// }\n\n// model IndividualProfile {\n// user_id String @id\n// national_code String @unique()\n// first_name String\n// last_name String\n// birth_date DateTime?\n// mobile_number String\n// // user User @relation(fields: [user_id], references: [id])\n\n// @@map(\"individual_profiles\")\n// }\n\nmodel Account {\n id String @id @default(ulid())\n username String @unique()\n password String\n status AccountStatus\n type AccountType\n\n admin_account AdminAccount?\n provider_account ProviderAccount?\n partner_account PartnerAccount?\n consumer_account ConsumerAccount?\n\n // admin_account_id String? @unique\n // admin_account AdminAccount? @relation(fields: [admin_account_id], references: [id], onDelete: Cascade)\n\n // provider_account_id String? @unique\n // provider_account ProviderAccount? @relation(fields: [provider_account_id], references: [id], onDelete: Cascade)\n\n // partner_account_id String? @unique\n // partner_account PartnerAccount? @relation(fields: [partner_account_id], references: [id], onDelete: Cascade)\n\n // consumer_account_id String? @unique\n // consumer_account ConsumerAccount? @relation(fields: [consumer_account_id], references: [id], onDelete: Cascade)\n\n // tokens Token[]\n // refresh_tokens RefreshToken[]\n\n @@map(\"accounts\")\n}\n\n// model Token {\n// id String @id @d @uniqueefault(ulid())\n// token String @unique\n// type TokenType\n// created_at DateTime @default(now())\n// expires_at DateTime\n\n// account_id String\n// account Account @relation(fields: [account_id], references: [id])\n\n// @@unique([type, account_id])\n// @@map(\"tokens\")\n// }\n\n// model VerificationCode {\n// id String @id @default(ulid())\n// code String\n// is_used Boolean @default(false)\n// created_at DateTime @default(now())\n// expires_at DateTime\n\n// account_id String\n// account Account @relation(fields: [account_id], references: [id])\n\n// @@map(\"verification_codes\")\n// }\n\nmodel DeviceBrand {\n id String @id @default(ulid())\n name String\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n devices Device[]\n\n @@map(\"device_brands\")\n}\n\nmodel Device {\n id String @id @default(ulid())\n name String\n os_version String?\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n brand_id String\n\n brand DeviceBrand @relation(fields: [brand_id], references: [id])\n poses Pos[]\n\n @@map(\"devices\")\n}\n\nmodel LicenseChargeTransaction {\n id String @id @default(ulid())\n activation_expires_at DateTime\n tracking_code String @unique()\n purchased_count Int\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n partner_id String\n partner Partner @relation(fields: [partner_id], references: [id])\n\n licenses License[]\n\n @@map(\"license_charged_transactions\")\n}\n\nmodel License {\n id String @id @default(ulid())\n accounts_limit Int @default(2)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n charge_transaction_id String\n charge_transaction LicenseChargeTransaction @relation(fields: [charge_transaction_id], references: [id])\n\n activation LicenseActivation?\n\n @@map(\"licenses\")\n}\n\nmodel LicenseActivation {\n id String @id @unique() @default(ulid())\n starts_at DateTime\n expires_at DateTime\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n license_id String @unique\n license License @relation(fields: [license_id], references: [id])\n\n business_activity_id String @unique\n business_activity BusinessActivity @relation(fields: [business_activity_id], references: [id])\n\n license_renews LicenseRenew[]\n account_allocations LicenseAccountAllocation[]\n\n @@map(\"licenses_activated\")\n}\n\nmodel LicenseRenewChargeTransaction {\n id String @id @default(ulid())\n activation_expires_at DateTime\n tracking_code String @unique()\n purchased_count Int\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n partner_id String\n partner Partner @relation(fields: [partner_id], references: [id])\n\n license_renews LicenseRenew[]\n\n @@map(\"license_renew_charge_transaction\")\n}\n\nmodel LicenseRenew {\n id String @id @default(ulid())\n expires_at DateTime\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n charge_transaction_id String\n charge_transaction LicenseRenewChargeTransaction @relation(fields: [charge_transaction_id], references: [id])\n\n activation_id String?\n activation LicenseActivation? @relation(fields: [activation_id], references: [id])\n\n @@map(\"license_renew\")\n}\n\nmodel PartnerAccountQuotaChargeTransaction {\n id String @id @default(ulid())\n activation_expires_at DateTime\n tracking_code String @unique()\n purchased_count Int\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n partner_id String\n partner Partner @relation(fields: [partner_id], references: [id])\n\n credits PartnerAccountQuotaCredit[]\n\n @@map(\"partner_account_quota_charge_transaction\")\n}\n\nmodel PartnerAccountQuotaCredit {\n id String @id @default(ulid())\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n charge_transaction_id String?\n charge_transaction PartnerAccountQuotaChargeTransaction? @relation(fields: [charge_transaction_id], references: [id])\n\n allocation LicenseAccountAllocation?\n\n @@map(\"partner_account_quota_credit\")\n}\n\nmodel LicenseAccountAllocation {\n id String @id @default(ulid())\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n license_activation_id String?\n license_activation LicenseActivation? @relation(fields: [license_activation_id], references: [id])\n\n account_id String? @unique\n account ConsumerAccount? @relation(fields: [account_id], references: [id])\n\n credit_id String? @unique\n credit PartnerAccountQuotaCredit? @relation(fields: [credit_id], references: [id])\n\n @@map(\"license_account_allocation\")\n}\n\nmodel PartnerAccount {\n id String @id @default(ulid())\n role PartnerRole\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @default(now()) @updatedAt @db.Timestamp(0)\n\n partner_id String\n partner Partner @relation(fields: [partner_id], references: [id])\n\n account_id String @unique\n account Account @relation(fields: [account_id], references: [id], onDelete: Cascade)\n\n @@map(\"partner_accounts\")\n}\n\nmodel Partner {\n id String @id @default(ulid())\n name String\n code String @unique()\n status PartnerStatus @default(ACTIVE)\n tsp_provider TspProviderType @default(NAMA)\n logo_url String?\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @default(now()) @updatedAt @db.Timestamp(0)\n\n accounts PartnerAccount[]\n consumers_individual ConsumerIndividual[]\n consumers_legal ConsumerLegal[]\n license_charge_transactions LicenseChargeTransaction[]\n account_quota_charge_transactions PartnerAccountQuotaChargeTransaction[]\n license_renew_charge_transactions LicenseRenewChargeTransaction[]\n\n @@map(\"partners\")\n}\n\nmodel PermissionConsumer {\n id String @id @default(ulid())\n\n consumer_account_id String @unique\n consumer_account ConsumerAccount @relation(fields: [consumer_account_id], references: [id], onDelete: Cascade)\n\n pos_permissions PermissionPos[]\n complex_permissions PermissionComplex[]\n business_permissions PermissionBusiness[]\n\n @@map(\"permission_consumers\")\n}\n\nmodel PermissionPos {\n id String @id @default(ulid())\n role POSRole\n\n pos_id String\n permission_id String\n\n pos Pos @relation(fields: [pos_id], references: [id], onDelete: Cascade)\n permission PermissionConsumer @relation(fields: [permission_id], references: [id], onDelete: Cascade)\n\n @@unique([permission_id, pos_id])\n @@map(\"permission_poses\")\n}\n\nmodel PermissionComplex {\n id String @id @default(ulid())\n role ComplexRole\n\n complex_id String\n permission_id String\n\n complex Complex @relation(fields: [complex_id], references: [id], onDelete: Cascade)\n permission PermissionConsumer @relation(fields: [permission_id], references: [id], onDelete: Cascade)\n\n @@unique([permission_id, complex_id])\n @@map(\"permission_complexes\")\n}\n\nmodel PermissionBusiness {\n id String @id @default(ulid())\n role BusinessRole\n\n business_id String\n permission_id String\n\n business BusinessActivity @relation(fields: [business_id], references: [id], onDelete: Cascade)\n permission PermissionConsumer @relation(fields: [permission_id], references: [id], onDelete: Cascade)\n\n @@unique([permission_id, business_id])\n @@map(\"permission_business_activities\")\n}\n\nmodel ProviderAccount {\n id String @id @default(ulid())\n role ProviderRole\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n provider_id String\n provider Provider @relation(fields: [provider_id], references: [id])\n\n account_id String @unique\n account Account @relation(fields: [account_id], references: [id], onDelete: Cascade)\n\n @@map(\"provider_accounts\")\n}\n\nmodel Provider {\n id String @id @default(ulid())\n code String @unique()\n status PartnerStatus @default(ACTIVE)\n name String\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n\n accounts ProviderAccount[]\n pos_list Pos[]\n\n @@map(\"providers\")\n}\n\nmodel ConsumerDevices {\n uuid String @id @unique() @db.VarChar(255)\n app_version String @db.VarChar(20)\n build_number String @db.VarChar(20)\n platform String @db.VarChar(100)\n brand String @db.VarChar(100)\n model String @db.VarChar(100)\n device String @db.VarChar(100)\n publisher ApplicationPublisher\n os_version String @db.VarChar(20)\n sdk_version String @db.VarChar(20)\n release_number String @db.VarChar(20)\n user_agent String? @db.VarChar(100)\n browser_name String? @db.VarChar(100)\n fcm_token String? @db.VarChar(100)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n consumer_id String\n consumer Consumer @relation(fields: [consumer_id], references: [id])\n\n @@map(\"consumer_devices\")\n}\n\nmodel ApplicationReleasedInfo {\n id String @id @default(ulid())\n version String\n build_number String\n is_minimum_supported Boolean @default(false)\n release_type ApplicationReleaseType\n platform ApplicationPlatform\n notes Json?\n\n release_date DateTime @default(now()) @db.Timestamp(0)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n @@map(\"application_released_info\")\n}\n\nmodel ConsumerAccount {\n id String @id @default(ulid())\n role ConsumerRole\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n consumer_id String\n consumer Consumer @relation(fields: [consumer_id], references: [id])\n\n account_id String @unique()\n account Account @relation(fields: [account_id], references: [id])\n\n pos Pos?\n permission PermissionConsumer?\n account_allocation LicenseAccountAllocation?\n sales_invoices SalesInvoice[]\n\n @@map(\"consumer_accounts\")\n}\n\nmodel Consumer {\n id String @id @default(ulid())\n type ConsumerType\n status ConsumerStatus @default(ACTIVE)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n accounts ConsumerAccount[]\n business_activities BusinessActivity[]\n devices ConsumerDevices[]\n individual ConsumerIndividual?\n legal ConsumerLegal?\n\n @@map(\"consumers\")\n}\n\nmodel ConsumerIndividual {\n first_name String\n last_name String\n mobile_number String\n national_code String\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n partner_id String\n partner Partner @relation(fields: [partner_id], references: [id])\n\n consumer_id String @id\n consumer Consumer @relation(fields: [consumer_id], references: [id], onDelete: Cascade)\n\n @@unique([mobile_number, consumer_id])\n @@unique([partner_id, national_code])\n @@map(\"consumers_individual\")\n}\n\nmodel ConsumerLegal {\n name String\n registration_code String\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n partner_id String\n partner Partner @relation(fields: [partner_id], references: [id])\n\n consumer_id String @id\n consumer Consumer @relation(fields: [consumer_id], references: [id], onDelete: Cascade)\n\n @@unique([partner_id, registration_code])\n @@map(\"consumers_legal\")\n}\n\nmodel BusinessActivity {\n id String @id @default(ulid())\n economic_code String\n name String\n fiscal_id String\n partner_token String\n invoice_number_sequence Decimal @default(1) @db.Decimal(20, 0)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n guild_id String\n guild Guild @relation(fields: [guild_id], references: [id])\n\n consumer_id String\n consumer Consumer @relation(fields: [consumer_id], references: [id])\n\n license_activation LicenseActivation?\n complexes Complex[]\n permission_businesses PermissionBusiness[]\n goods Good[]\n customer_individuals CustomerIndividual[]\n customer_legals CustomerLegal[]\n\n @@unique([economic_code, consumer_id])\n @@map(\"business_activities\")\n}\n\nmodel Complex {\n id String @id @default(ulid())\n name String\n branch_code String\n address String?\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n business_activity_id String\n\n business_activity BusinessActivity @relation(fields: [business_activity_id], references: [id])\n\n pos_list Pos[]\n good_categories GoodCategory[]\n permission_complexes PermissionComplex[]\n\n @@map(\"complexes\")\n}\n\nmodel Pos {\n id String @id @default(ulid())\n name String\n model String?\n serial_number String? @unique()\n status POSStatus @default(ACTIVE)\n pos_type POSType\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n complex_id String\n complex Complex @relation(fields: [complex_id], references: [id])\n\n device_id String?\n device Device? @relation(fields: [device_id], references: [id])\n\n provider_id String?\n provider Provider? @relation(fields: [provider_id], references: [id])\n\n account_id String @unique\n account ConsumerAccount @relation(fields: [account_id], references: [id])\n\n permission_pos PermissionPos[]\n sales_invoices SalesInvoice[]\n\n @@map(\"poses\")\n}\n\nmodel Good {\n id String @id @default(ulid())\n name String @db.VarChar(255)\n is_default_guild_good Boolean @default(false)\n pricing_model GoodPricingModel\n description String? @db.Text\n local_sku String? @unique() @db.VarChar(100)\n barcode String? @unique() @db.VarChar(100)\n base_sale_price Decimal? @default(0.00) @db.Decimal(15, 0)\n image_url String? @db.VarChar(255)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n deleted_at DateTime? @db.Timestamp(0)\n\n sku_id String\n sku StockKeepingUnits @relation(fields: [sku_id], references: [id])\n\n measure_unit_id String\n measure_unit MeasureUnits @relation(fields: [measure_unit_id], references: [id])\n\n category_id String?\n category GoodCategory? @relation(fields: [category_id], references: [id])\n\n business_activity_id String?\n business_activity BusinessActivity? @relation(fields: [business_activity_id], references: [id])\n\n sales_invoice_items SalesInvoiceItem[]\n\n @@index([category_id])\n @@map(\"goods\")\n}\n\nmodel GoodCategory {\n id String @id @default(ulid())\n name String @db.VarChar(100)\n description String? @db.Text\n image_url String? @db.VarChar(255)\n complex_id String?\n is_default_guild_good Boolean @default(false)\n guild_id String?\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n deleted_at DateTime? @db.Timestamp(0)\n\n goods Good[]\n guild Guild? @relation(fields: [guild_id], references: [id])\n complex Complex? @relation(fields: [complex_id], references: [id])\n\n @@map(\"good_categories\")\n}\n\nmodel MeasureUnits {\n id String @id @default(ulid())\n code String @unique\n name String\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @default(now()) @updatedAt @db.Timestamp(0)\n\n goods Good[]\n\n @@map(\"measure_units\")\n}\n\nmodel StockKeepingUnits {\n id String @id @default(ulid())\n code String @unique\n name String\n VAT Decimal @db.Decimal(5, 2)\n type SKUGuildType\n is_public Boolean @default(true)\n is_domestic Boolean @default(false)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n goods Good[]\n\n @@index([code])\n @@map(\"stock_keeping_units\")\n}\n\nmodel TriggerLog {\n id Int @id @default(autoincrement())\n message String @db.Text\n createdAt DateTime @default(now()) @db.Timestamp(0)\n name String @db.Text\n\n @@map(\"trigger_logs\")\n}\n\n// generator client {\n// provider = \"prisma-client-js\"\n// // output = \"../../src/generated/prisma\"\n// // moduleFormat = \"cjs\"\n// previewFeatures = [\"views\"]\n// }\n\n// datasource db {\n// provider = \"mysql\"\n// }\n\ngenerator client {\n provider = \"prisma-client\"\n output = \"../../src/generated/prisma\"\n moduleFormat = \"cjs\"\n previewFeatures = [\"views\"]\n}\n\ndatasource db {\n provider = \"mysql\"\n}\n\nmodel Customer {\n id String @id @default(ulid())\n is_favorite Boolean? @default(false)\n type CustomerType\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n deleted_at DateTime? @db.Timestamp(0)\n\n individual CustomerIndividual?\n legal CustomerLegal?\n\n sales_invoices SalesInvoice[]\n\n @@map(\"customers\")\n}\n\nmodel CustomerIndividual {\n first_name String @db.VarChar(255)\n last_name String @db.VarChar(255)\n national_id String @db.Char(10)\n mobile_number String @db.Char(15)\n\n postal_code String @db.Char(10)\n economic_code String? @db.Char(10)\n\n customer_id String @id\n customer Customer @relation(fields: [customer_id], references: [id], onDelete: Cascade)\n\n business_activity_id String\n business_activity BusinessActivity @relation(fields: [business_activity_id], references: id)\n\n @@unique([business_activity_id, national_id])\n @@index([business_activity_id])\n @@map(\"customer_individuals\")\n}\n\nmodel CustomerLegal {\n name String @db.VarChar(255)\n economic_code String @db.Char(10)\n registration_number String? @db.Char(20)\n postal_code String @db.Char(10)\n\n customer_id String @id\n customer Customer @relation(fields: [customer_id], references: [id], onDelete: Cascade)\n\n business_activity_id String\n business_activity BusinessActivity @relation(fields: [business_activity_id], references: id)\n\n @@unique([business_activity_id, economic_code])\n @@index([business_activity_id])\n @@map(\"customer_legal\")\n}\n\nenum PaymentMethodType {\n CHEQUE\n SET_OFF\n CASH\n TERMINAL\n PAYMENT_GATEWAY\n CARD\n BANK\n OTHER\n}\n\nenum UnitType {\n COUNT\n GRAM\n KILOGRAM\n MILLILITER\n LITER\n METER\n HOUR\n}\n\nenum GoodPricingModel {\n STANDARD\n GOLD\n}\n\nenum CustomerType {\n INDIVIDUAL\n LEGAL\n UNKNOWN\n}\n\nenum POSStatus {\n ACTIVE\n DISABLED\n}\n\nenum POSRole {\n MANAGER\n OPERATOR\n}\n\nenum ComplexRole {\n MANAGER\n OPERATOR\n}\n\nenum BusinessRole {\n MANAGER\n OPERATOR\n}\n\nenum LicenseType {\n BASIC\n PRO\n ENTERPRISE\n}\n\nenum LicenseStatus {\n ACTIVE\n EXPIRED\n SUSPENDED\n}\n\nenum POSType {\n PSP\n MOBILE\n WEB\n API\n}\n\nenum UserType {\n LEGAL\n INDIVIDUAL\n}\n\nenum AccountType {\n ADMIN\n PROVIDER\n PARTNER\n CONSUMER\n}\n\nenum UserStatus {\n ACTIVE\n INACTIVE\n}\n\nenum AccountRole {\n OWNER\n OPERATOR\n ACCOUNTANT\n}\n\nenum AccountStatus {\n ACTIVE\n SUSPENDED\n}\n\nenum PartnerRole {\n OWNER\n MANAGER\n OPERATOR\n}\n\nenum PartnerStatus {\n ACTIVE\n SUSPENDED\n}\n\nenum ProviderRole {\n OWNER\n MANAGER\n OPERATOR\n}\n\nenum ProviderStatus {\n ACTIVE\n SUSPENDED\n}\n\nenum ConsumerRole {\n OWNER\n MANAGER\n OPERATOR\n}\n\nenum ConsumerStatus {\n ACTIVE\n SUSPENDED\n}\n\nenum TokenType {\n ACCESS\n REFRESH\n}\n\nenum ApplicationPlatform {\n ANDROID\n IOS\n}\n\nenum ApplicationReleaseType {\n STABLE\n BETA\n ALPHA\n}\n\nenum ApplicationPublisher {\n DIRECT\n CAFE_BAZAR\n MAYKET\n}\n\nenum ConsumerType {\n INDIVIDUAL\n LEGAL\n}\n\nenum TspProviderType {\n NAMA\n SUN\n}\n\nenum TspProviderResponseStatus {\n SUCCESS\n FAILURE\n NOT_SEND\n QUEUED\n}\n\nenum TspProviderRequestType {\n MAIN\n UPDATE\n REVOKE\n REMOVE\n}\n\nenum TspProviderCustomerType {\n Unknown\n Known\n}\n\nenum SKUGuildType {\n GOLD\n}\n\nenum InvoiceTemplateType {\n SALE\n FX_SALE\n GOLD_JEWELRY\n CONTRACT\n UTILITY\n AIR_TICKET\n EXPORT\n BILL_OF_LADING\n PETROCHEMICAL\n COMMODITY_EXCHANGE\n INSURANCE\n}\n\nmodel Guild {\n id String @id @default(ulid())\n name String\n invoice_template InvoiceTemplateType\n code String?\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt() @db.Timestamp(0)\n\n business_activities BusinessActivity[]\n good_categories GoodCategory[]\n\n @@map(\"guilds\")\n}\n\nmodel SalesInvoice {\n id String @id @default(uuid())\n code String @unique @db.VarChar(100)\n total_amount Decimal @db.Decimal(15, 2)\n invoice_number Int @db.Int()\n invoice_date DateTime @default(now()) @db.Timestamp(0)\n\n notes String? @db.Text\n unknown_customer Json? @db.Json\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n\n customer_id String?\n customer Customer? @relation(fields: [customer_id], references: [id])\n\n consumer_account_id String\n consumer_account ConsumerAccount @relation(fields: [consumer_account_id], references: [id])\n\n pos_id String\n pos Pos @relation(fields: [pos_id], references: [id])\n\n items SalesInvoiceItem[]\n payments SalesInvoicePayment[]\n tsp_attempts SaleInvoiceTspAttempts[]\n\n @@unique([invoice_number, pos_id])\n @@map(\"sales_invoices\")\n}\n\nmodel SalesInvoiceItem {\n id String @id @default(ulid())\n quantity Decimal @db.Decimal(10, 0)\n measure_unit_text String @db.VarChar(50)\n measure_unit_code String @db.VarChar(50)\n sku_code String @db.VarChar(50)\n sku_vat Decimal @default(0.00) @db.Decimal(15, 2)\n unit_price Decimal @default(0.00) @db.Decimal(15, 2)\n total_amount Decimal @default(0.00) @db.Decimal(15, 2)\n created_at DateTime @default(now()) @db.Timestamp(0)\n discount Decimal @default(0.00) @db.Decimal(15, 2)\n notes String? @db.Text\n\n payload Json?\n good_snapshot Json\n\n invoice_id String\n invoice SalesInvoice @relation(fields: [invoice_id], references: [id])\n\n good_id String\n good Good @relation(fields: [good_id], references: [id])\n\n service_id String?\n service Service? @relation(fields: [service_id], references: [id])\n\n @@index([invoice_id, good_id])\n @@map(\"sales_invoice_items\")\n}\n\nmodel SaleInvoiceTspAttempts {\n id String @id @default(ulid())\n\n attempt_no Int\n status TspProviderResponseStatus\n tax_id String? @unique @db.VarChar(191)\n type TspProviderRequestType\n\n request_payload Json?\n response_payload Json?\n error_message String? @db.Text\n\n sent_at DateTime? @db.Timestamp(0)\n received_at DateTime? @db.Timestamp(0)\n created_at DateTime @default(now()) @db.Timestamp(0)\n\n invoice_id String @unique\n invoice SalesInvoice @relation(fields: [invoice_id], references: [id], onDelete: Cascade)\n\n @@unique([invoice_id, attempt_no])\n @@index([status])\n @@index([tax_id])\n @@index([invoice_id])\n @@map(\"sale_invoice_tsp_attempts\")\n}\n\nmodel SalesInvoicePayment {\n id String @id @default(ulid())\n amount Decimal @db.Decimal(15, 2)\n payment_method PaymentMethodType\n paid_at DateTime @db.Timestamp(0)\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n\n invoice_id String\n invoice SalesInvoice @relation(fields: [invoice_id], references: [id])\n\n terminal_info SalesInvoicePaymentTerminalInfo?\n\n @@index([invoice_id])\n @@map(\"sales_invoice_payments\")\n}\n\nmodel SalesInvoicePaymentTerminalInfo {\n id String @id @default(ulid())\n terminal_id String\n stan String\n rrn String\n transaction_date_time DateTime\n customer_card_no String?\n description String?\n\n created_at DateTime @default(now()) @db.Timestamp(0)\n\n payment_id String @unique\n payment SalesInvoicePayment @relation(fields: [payment_id], references: [id])\n\n @@unique([terminal_id, stan, rrn, payment_id])\n @@map(\"sales_invoice_payment_terminal_info\")\n}\n\nmodel Service {\n id String @id @default(ulid())\n name String @db.VarChar(255)\n description String? @db.Text\n sku String @unique() @db.VarChar(100)\n local_sku String? @unique() @db.VarChar(100)\n barcode String? @unique() @db.VarChar(100)\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n deleted_at DateTime? @db.Timestamp(0)\n category_id String?\n base_sale_price Decimal @default(0.00) @db.Decimal(15, 0)\n account_id String\n complex_id String\n\n category ServiceCategory? @relation(fields: [category_id], references: [id])\n sales_invoice_items SalesInvoiceItem[]\n\n @@index([category_id])\n @@map(\"services\")\n}\n\nmodel ServiceCategory {\n id String @id @default(ulid())\n name String @db.VarChar(100)\n description String? @db.Text\n image_url String? @db.VarChar(255)\n account_id String\n complex_id String\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n deleted_at DateTime? @db.Timestamp(0)\n\n services Service[]\n\n @@map(\"service_categories\")\n}\n", "runtimeDataModel": { "models": {}, "enums": {}, @@ -34,10 +34,10 @@ const config: runtime.GetPrismaClientConfig = { } } -config.runtimeDataModel = JSON.parse("{\"models\":{\"AdminAccount\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"admin_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"admin\",\"kind\":\"object\",\"type\":\"Admin\",\"relationName\":\"AdminToAdminAccount\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account\",\"kind\":\"object\",\"type\":\"Account\",\"relationName\":\"AccountToAdminAccount\"}],\"dbName\":\"admin_accounts\"},\"Admin\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"mobile_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"national_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"first_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"last_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"accounts\",\"kind\":\"object\",\"type\":\"AdminAccount\",\"relationName\":\"AdminToAdminAccount\"}],\"dbName\":\"admins\"},\"Account\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"username\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"password\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"AccountStatus\"},{\"name\":\"type\",\"kind\":\"enum\",\"type\":\"AccountType\"},{\"name\":\"admin_account\",\"kind\":\"object\",\"type\":\"AdminAccount\",\"relationName\":\"AccountToAdminAccount\"},{\"name\":\"provider_account\",\"kind\":\"object\",\"type\":\"ProviderAccount\",\"relationName\":\"AccountToProviderAccount\"},{\"name\":\"partner_account\",\"kind\":\"object\",\"type\":\"PartnerAccount\",\"relationName\":\"AccountToPartnerAccount\"},{\"name\":\"consumer_account\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"AccountToConsumerAccount\"}],\"dbName\":\"accounts\"},\"DeviceBrand\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"devices\",\"kind\":\"object\",\"type\":\"Device\",\"relationName\":\"DeviceToDeviceBrand\"}],\"dbName\":\"device_brands\"},\"Device\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"os_version\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"brand_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"brand\",\"kind\":\"object\",\"type\":\"DeviceBrand\",\"relationName\":\"DeviceToDeviceBrand\"},{\"name\":\"poses\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"DeviceToPos\"}],\"dbName\":\"devices\"},\"LicenseChargeTransaction\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"activation_expires_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"tracking_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"purchased_count\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"partner_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner\",\"kind\":\"object\",\"type\":\"Partner\",\"relationName\":\"LicenseChargeTransactionToPartner\"},{\"name\":\"licenses\",\"kind\":\"object\",\"type\":\"License\",\"relationName\":\"LicenseToLicenseChargeTransaction\"}],\"dbName\":\"license_charged_transactions\"},\"License\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"accounts_limit\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"charge_transaction_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"charge_transaction\",\"kind\":\"object\",\"type\":\"LicenseChargeTransaction\",\"relationName\":\"LicenseToLicenseChargeTransaction\"},{\"name\":\"activation\",\"kind\":\"object\",\"type\":\"LicenseActivation\",\"relationName\":\"LicenseToLicenseActivation\"}],\"dbName\":\"licenses\"},\"LicenseActivation\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"starts_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"expires_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"license_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"license\",\"kind\":\"object\",\"type\":\"License\",\"relationName\":\"LicenseToLicenseActivation\"},{\"name\":\"business_activity_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"business_activity\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToLicenseActivation\"},{\"name\":\"license_renews\",\"kind\":\"object\",\"type\":\"LicenseRenew\",\"relationName\":\"LicenseActivationToLicenseRenew\"},{\"name\":\"account_allocations\",\"kind\":\"object\",\"type\":\"LicenseAccountAllocation\",\"relationName\":\"LicenseAccountAllocationToLicenseActivation\"}],\"dbName\":\"licenses_activated\"},\"LicenseRenewChargeTransaction\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"activation_expires_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"tracking_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"purchased_count\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"partner_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner\",\"kind\":\"object\",\"type\":\"Partner\",\"relationName\":\"LicenseRenewChargeTransactionToPartner\"},{\"name\":\"license_renews\",\"kind\":\"object\",\"type\":\"LicenseRenew\",\"relationName\":\"LicenseRenewToLicenseRenewChargeTransaction\"}],\"dbName\":\"license_renew_charge_transaction\"},\"LicenseRenew\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"expires_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"charge_transaction_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"charge_transaction\",\"kind\":\"object\",\"type\":\"LicenseRenewChargeTransaction\",\"relationName\":\"LicenseRenewToLicenseRenewChargeTransaction\"},{\"name\":\"activation_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"activation\",\"kind\":\"object\",\"type\":\"LicenseActivation\",\"relationName\":\"LicenseActivationToLicenseRenew\"}],\"dbName\":\"license_renew\"},\"PartnerAccountQuotaChargeTransaction\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"activation_expires_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"tracking_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"purchased_count\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"partner_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner\",\"kind\":\"object\",\"type\":\"Partner\",\"relationName\":\"PartnerToPartnerAccountQuotaChargeTransaction\"},{\"name\":\"credits\",\"kind\":\"object\",\"type\":\"PartnerAccountQuotaCredit\",\"relationName\":\"PartnerAccountQuotaChargeTransactionToPartnerAccountQuotaCredit\"}],\"dbName\":\"partner_account_quota_charge_transaction\"},\"PartnerAccountQuotaCredit\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"charge_transaction_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"charge_transaction\",\"kind\":\"object\",\"type\":\"PartnerAccountQuotaChargeTransaction\",\"relationName\":\"PartnerAccountQuotaChargeTransactionToPartnerAccountQuotaCredit\"},{\"name\":\"allocation\",\"kind\":\"object\",\"type\":\"LicenseAccountAllocation\",\"relationName\":\"LicenseAccountAllocationToPartnerAccountQuotaCredit\"}],\"dbName\":\"partner_account_quota_credit\"},\"LicenseAccountAllocation\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"license_activation_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"license_activation\",\"kind\":\"object\",\"type\":\"LicenseActivation\",\"relationName\":\"LicenseAccountAllocationToLicenseActivation\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"ConsumerAccountToLicenseAccountAllocation\"},{\"name\":\"credit_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"credit\",\"kind\":\"object\",\"type\":\"PartnerAccountQuotaCredit\",\"relationName\":\"LicenseAccountAllocationToPartnerAccountQuotaCredit\"}],\"dbName\":\"license_account_allocation\"},\"PartnerAccount\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"PartnerRole\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"partner_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner\",\"kind\":\"object\",\"type\":\"Partner\",\"relationName\":\"PartnerToPartnerAccount\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account\",\"kind\":\"object\",\"type\":\"Account\",\"relationName\":\"AccountToPartnerAccount\"}],\"dbName\":\"partner_accounts\"},\"Partner\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"PartnerStatus\"},{\"name\":\"fiscal_switch_type\",\"kind\":\"enum\",\"type\":\"PartnerFiscalSwitchType\"},{\"name\":\"logo_url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"accounts\",\"kind\":\"object\",\"type\":\"PartnerAccount\",\"relationName\":\"PartnerToPartnerAccount\"},{\"name\":\"consumers_individual\",\"kind\":\"object\",\"type\":\"ConsumerIndividual\",\"relationName\":\"ConsumerIndividualToPartner\"},{\"name\":\"consumers_legal\",\"kind\":\"object\",\"type\":\"ConsumerLegal\",\"relationName\":\"ConsumerLegalToPartner\"},{\"name\":\"license_charge_transactions\",\"kind\":\"object\",\"type\":\"LicenseChargeTransaction\",\"relationName\":\"LicenseChargeTransactionToPartner\"},{\"name\":\"account_quota_charge_transactions\",\"kind\":\"object\",\"type\":\"PartnerAccountQuotaChargeTransaction\",\"relationName\":\"PartnerToPartnerAccountQuotaChargeTransaction\"},{\"name\":\"license_renew_charge_transactions\",\"kind\":\"object\",\"type\":\"LicenseRenewChargeTransaction\",\"relationName\":\"LicenseRenewChargeTransactionToPartner\"}],\"dbName\":\"partners\"},\"PermissionConsumer\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer_account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer_account\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"ConsumerAccountToPermissionConsumer\"},{\"name\":\"pos_permissions\",\"kind\":\"object\",\"type\":\"PermissionPos\",\"relationName\":\"PermissionConsumerToPermissionPos\"},{\"name\":\"complex_permissions\",\"kind\":\"object\",\"type\":\"PermissionComplex\",\"relationName\":\"PermissionComplexToPermissionConsumer\"},{\"name\":\"business_permissions\",\"kind\":\"object\",\"type\":\"PermissionBusiness\",\"relationName\":\"PermissionBusinessToPermissionConsumer\"}],\"dbName\":\"permission_consumers\"},\"PermissionPos\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"POSRole\"},{\"name\":\"pos_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"permission_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"pos\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"PermissionPosToPos\"},{\"name\":\"permission\",\"kind\":\"object\",\"type\":\"PermissionConsumer\",\"relationName\":\"PermissionConsumerToPermissionPos\"}],\"dbName\":\"permission_poses\"},\"PermissionComplex\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"ComplexRole\"},{\"name\":\"complex_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"permission_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"complex\",\"kind\":\"object\",\"type\":\"Complex\",\"relationName\":\"ComplexToPermissionComplex\"},{\"name\":\"permission\",\"kind\":\"object\",\"type\":\"PermissionConsumer\",\"relationName\":\"PermissionComplexToPermissionConsumer\"}],\"dbName\":\"permission_complexes\"},\"PermissionBusiness\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"BusinessRole\"},{\"name\":\"business_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"permission_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"business\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToPermissionBusiness\"},{\"name\":\"permission\",\"kind\":\"object\",\"type\":\"PermissionConsumer\",\"relationName\":\"PermissionBusinessToPermissionConsumer\"}],\"dbName\":\"permission_business_activities\"},\"ProviderAccount\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"ProviderRole\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"provider_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"provider\",\"kind\":\"object\",\"type\":\"Provider\",\"relationName\":\"ProviderToProviderAccount\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account\",\"kind\":\"object\",\"type\":\"Account\",\"relationName\":\"AccountToProviderAccount\"}],\"dbName\":\"provider_accounts\"},\"Provider\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"PartnerStatus\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"accounts\",\"kind\":\"object\",\"type\":\"ProviderAccount\",\"relationName\":\"ProviderToProviderAccount\"},{\"name\":\"pos_list\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"PosToProvider\"}],\"dbName\":\"providers\"},\"ConsumerDevices\":{\"fields\":[{\"name\":\"uuid\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"app_version\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"build_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"platform\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"brand\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"model\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"device\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"publisher\",\"kind\":\"enum\",\"type\":\"ApplicationPublisher\"},{\"name\":\"os_version\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sdk_version\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"release_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user_agent\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"browser_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"fcm_token\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"consumer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer\",\"kind\":\"object\",\"type\":\"Consumer\",\"relationName\":\"ConsumerToConsumerDevices\"}],\"dbName\":\"consumer_devices\"},\"ApplicationReleasedInfo\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"version\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"build_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_minimum_supported\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"release_type\",\"kind\":\"enum\",\"type\":\"ApplicationReleaseType\"},{\"name\":\"platform\",\"kind\":\"enum\",\"type\":\"ApplicationPlatform\"},{\"name\":\"notes\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"release_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":\"application_released_info\"},\"ConsumerAccount\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"ConsumerRole\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"consumer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer\",\"kind\":\"object\",\"type\":\"Consumer\",\"relationName\":\"ConsumerToConsumerAccount\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account\",\"kind\":\"object\",\"type\":\"Account\",\"relationName\":\"AccountToConsumerAccount\"},{\"name\":\"pos\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"ConsumerAccountToPos\"},{\"name\":\"permission\",\"kind\":\"object\",\"type\":\"PermissionConsumer\",\"relationName\":\"ConsumerAccountToPermissionConsumer\"},{\"name\":\"account_allocation\",\"kind\":\"object\",\"type\":\"LicenseAccountAllocation\",\"relationName\":\"ConsumerAccountToLicenseAccountAllocation\"},{\"name\":\"sales_invoices\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"ConsumerAccountToSalesInvoice\"}],\"dbName\":\"consumer_accounts\"},\"Consumer\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"type\",\"kind\":\"enum\",\"type\":\"ConsumerType\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"ConsumerStatus\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"accounts\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"ConsumerToConsumerAccount\"},{\"name\":\"business_activities\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToConsumer\"},{\"name\":\"devices\",\"kind\":\"object\",\"type\":\"ConsumerDevices\",\"relationName\":\"ConsumerToConsumerDevices\"},{\"name\":\"individual\",\"kind\":\"object\",\"type\":\"ConsumerIndividual\",\"relationName\":\"ConsumerToConsumerIndividual\"},{\"name\":\"legal\",\"kind\":\"object\",\"type\":\"ConsumerLegal\",\"relationName\":\"ConsumerToConsumerLegal\"}],\"dbName\":\"consumers\"},\"ConsumerIndividual\":{\"fields\":[{\"name\":\"first_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"last_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"mobile_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"national_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"partner_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner\",\"kind\":\"object\",\"type\":\"Partner\",\"relationName\":\"ConsumerIndividualToPartner\"},{\"name\":\"consumer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer\",\"kind\":\"object\",\"type\":\"Consumer\",\"relationName\":\"ConsumerToConsumerIndividual\"}],\"dbName\":\"consumers_individual\"},\"ConsumerLegal\":{\"fields\":[{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"registration_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"partner_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner\",\"kind\":\"object\",\"type\":\"Partner\",\"relationName\":\"ConsumerLegalToPartner\"},{\"name\":\"consumer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer\",\"kind\":\"object\",\"type\":\"Consumer\",\"relationName\":\"ConsumerToConsumerLegal\"}],\"dbName\":\"consumers_legal\"},\"BusinessActivity\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"economic_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"fiscal_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner_token\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"guild_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"guild\",\"kind\":\"object\",\"type\":\"Guild\",\"relationName\":\"BusinessActivityToGuild\"},{\"name\":\"consumer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer\",\"kind\":\"object\",\"type\":\"Consumer\",\"relationName\":\"BusinessActivityToConsumer\"},{\"name\":\"license_activation\",\"kind\":\"object\",\"type\":\"LicenseActivation\",\"relationName\":\"BusinessActivityToLicenseActivation\"},{\"name\":\"complexes\",\"kind\":\"object\",\"type\":\"Complex\",\"relationName\":\"BusinessActivityToComplex\"},{\"name\":\"permission_businesses\",\"kind\":\"object\",\"type\":\"PermissionBusiness\",\"relationName\":\"BusinessActivityToPermissionBusiness\"},{\"name\":\"goods\",\"kind\":\"object\",\"type\":\"Good\",\"relationName\":\"BusinessActivityToGood\"},{\"name\":\"customer_individuals\",\"kind\":\"object\",\"type\":\"CustomerIndividual\",\"relationName\":\"BusinessActivityToCustomerIndividual\"},{\"name\":\"customer_legals\",\"kind\":\"object\",\"type\":\"CustomerLegal\",\"relationName\":\"BusinessActivityToCustomerLegal\"}],\"dbName\":\"business_activities\"},\"Complex\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"branch_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"address\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"business_activity_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"business_activity\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToComplex\"},{\"name\":\"pos_list\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"ComplexToPos\"},{\"name\":\"good_categories\",\"kind\":\"object\",\"type\":\"GoodCategory\",\"relationName\":\"ComplexToGoodCategory\"},{\"name\":\"permission_complexes\",\"kind\":\"object\",\"type\":\"PermissionComplex\",\"relationName\":\"ComplexToPermissionComplex\"}],\"dbName\":\"complexes\"},\"Pos\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"model\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"serial_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"POSStatus\"},{\"name\":\"pos_type\",\"kind\":\"enum\",\"type\":\"POSType\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"complex_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"complex\",\"kind\":\"object\",\"type\":\"Complex\",\"relationName\":\"ComplexToPos\"},{\"name\":\"device_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"device\",\"kind\":\"object\",\"type\":\"Device\",\"relationName\":\"DeviceToPos\"},{\"name\":\"provider_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"provider\",\"kind\":\"object\",\"type\":\"Provider\",\"relationName\":\"PosToProvider\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"ConsumerAccountToPos\"},{\"name\":\"permission_pos\",\"kind\":\"object\",\"type\":\"PermissionPos\",\"relationName\":\"PermissionPosToPos\"},{\"name\":\"sales_invoices\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"PosToSalesInvoice\"}],\"dbName\":\"poses\"},\"Good\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_default_guild_good\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"pricing_model\",\"kind\":\"enum\",\"type\":\"GoodPricingModel\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"local_sku\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"barcode\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"base_sale_price\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"image_url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deleted_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"sku_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sku\",\"kind\":\"object\",\"type\":\"StockKeepingUnits\",\"relationName\":\"GoodToStockKeepingUnits\"},{\"name\":\"measure_unit_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"measure_unit\",\"kind\":\"object\",\"type\":\"MeasureUnits\",\"relationName\":\"GoodToMeasureUnits\"},{\"name\":\"category_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"category\",\"kind\":\"object\",\"type\":\"GoodCategory\",\"relationName\":\"GoodToGoodCategory\"},{\"name\":\"business_activity_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"business_activity\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToGood\"},{\"name\":\"sales_invoice_items\",\"kind\":\"object\",\"type\":\"SalesInvoiceItem\",\"relationName\":\"GoodToSalesInvoiceItem\"}],\"dbName\":\"goods\"},\"GoodCategory\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"image_url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"complex_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_default_guild_good\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"guild_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deleted_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"goods\",\"kind\":\"object\",\"type\":\"Good\",\"relationName\":\"GoodToGoodCategory\"},{\"name\":\"guild\",\"kind\":\"object\",\"type\":\"Guild\",\"relationName\":\"GoodCategoryToGuild\"},{\"name\":\"complex\",\"kind\":\"object\",\"type\":\"Complex\",\"relationName\":\"ComplexToGoodCategory\"}],\"dbName\":\"good_categories\"},\"MeasureUnits\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"goods\",\"kind\":\"object\",\"type\":\"Good\",\"relationName\":\"GoodToMeasureUnits\"}],\"dbName\":\"measure_units\"},\"StockKeepingUnits\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"VAT\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"type\",\"kind\":\"enum\",\"type\":\"SKUGuildType\"},{\"name\":\"is_public\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"is_domestic\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"goods\",\"kind\":\"object\",\"type\":\"Good\",\"relationName\":\"GoodToStockKeepingUnits\"}],\"dbName\":\"stock_keeping_units\"},\"TriggerLog\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"message\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"}],\"dbName\":\"trigger_logs\"},\"Customer\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_favorite\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"type\",\"kind\":\"enum\",\"type\":\"CustomerType\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deleted_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"individual\",\"kind\":\"object\",\"type\":\"CustomerIndividual\",\"relationName\":\"CustomerToCustomerIndividual\"},{\"name\":\"legal\",\"kind\":\"object\",\"type\":\"CustomerLegal\",\"relationName\":\"CustomerToCustomerLegal\"},{\"name\":\"sales_invoices\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"CustomerToSalesInvoice\"}],\"dbName\":\"customers\"},\"CustomerIndividual\":{\"fields\":[{\"name\":\"first_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"last_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"national_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"mobile_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"postal_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"economic_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"customer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"customer\",\"kind\":\"object\",\"type\":\"Customer\",\"relationName\":\"CustomerToCustomerIndividual\"},{\"name\":\"business_activity_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"business_activity\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToCustomerIndividual\"}],\"dbName\":\"customer_individuals\"},\"CustomerLegal\":{\"fields\":[{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"economic_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"registration_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"postal_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"customer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"customer\",\"kind\":\"object\",\"type\":\"Customer\",\"relationName\":\"CustomerToCustomerLegal\"},{\"name\":\"business_activity_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"business_activity\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToCustomerLegal\"}],\"dbName\":\"customer_legal\"},\"Guild\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"business_activities\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToGuild\"},{\"name\":\"good_categories\",\"kind\":\"object\",\"type\":\"GoodCategory\",\"relationName\":\"GoodCategoryToGuild\"}],\"dbName\":\"guilds\"},\"SalesInvoice\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"total_amount\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"invoice_number\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"invoice_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"notes\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"unknown_customer\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"customer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"customer\",\"kind\":\"object\",\"type\":\"Customer\",\"relationName\":\"CustomerToSalesInvoice\"},{\"name\":\"consumer_account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer_account\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"ConsumerAccountToSalesInvoice\"},{\"name\":\"pos_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"pos\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"PosToSalesInvoice\"},{\"name\":\"fiscal\",\"kind\":\"object\",\"type\":\"SaleInvoiceFiscals\",\"relationName\":\"SaleInvoiceFiscalsToSalesInvoice\"},{\"name\":\"items\",\"kind\":\"object\",\"type\":\"SalesInvoiceItem\",\"relationName\":\"SalesInvoiceToSalesInvoiceItem\"},{\"name\":\"payments\",\"kind\":\"object\",\"type\":\"SalesInvoicePayment\",\"relationName\":\"SalesInvoiceToSalesInvoicePayment\"}],\"dbName\":\"sales_invoices\"},\"SalesInvoiceItem\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quantity\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"measure_unit_text\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"measure_unit_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sku_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sku_vat\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"unit_price\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"total_amount\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"discount\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"notes\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"payload\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"good_snapshot\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"invoice_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"invoice\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"SalesInvoiceToSalesInvoiceItem\"},{\"name\":\"good_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"good\",\"kind\":\"object\",\"type\":\"Good\",\"relationName\":\"GoodToSalesInvoiceItem\"},{\"name\":\"service_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"service\",\"kind\":\"object\",\"type\":\"Service\",\"relationName\":\"SalesInvoiceItemToService\"}],\"dbName\":\"sales_invoice_items\"},\"SaleInvoiceFiscals\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"retry_count\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"last_attempt_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"invoice_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"invoice\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"SaleInvoiceFiscalsToSalesInvoice\"},{\"name\":\"attempts\",\"kind\":\"object\",\"type\":\"SaleInvoiceFiscalAttempts\",\"relationName\":\"SaleInvoiceFiscalAttemptsToSaleInvoiceFiscals\"}],\"dbName\":\"sale_invoice_fiscals\"},\"SaleInvoiceFiscalAttempts\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"attempt_no\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"FiscalResponseStatus\"},{\"name\":\"tax_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"type\",\"kind\":\"enum\",\"type\":\"FiscalRequestType\"},{\"name\":\"request_payload\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"response_payload\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"error_message\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sent_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"received_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"fiscal_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"fiscal\",\"kind\":\"object\",\"type\":\"SaleInvoiceFiscals\",\"relationName\":\"SaleInvoiceFiscalAttemptsToSaleInvoiceFiscals\"}],\"dbName\":\"sale_invoice_fiscal_attempts\"},\"SalesInvoicePayment\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"amount\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"payment_method\",\"kind\":\"enum\",\"type\":\"PaymentMethodType\"},{\"name\":\"paid_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"invoice_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"invoice\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"SalesInvoiceToSalesInvoicePayment\"},{\"name\":\"terminal_info\",\"kind\":\"object\",\"type\":\"SalesInvoicePaymentTerminalInfo\",\"relationName\":\"SalesInvoicePaymentToSalesInvoicePaymentTerminalInfo\"}],\"dbName\":\"sales_invoice_payments\"},\"SalesInvoicePaymentTerminalInfo\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"terminal_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"stan\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"rrn\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"transaction_date_time\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"customer_card_no\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"payment_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"payment\",\"kind\":\"object\",\"type\":\"SalesInvoicePayment\",\"relationName\":\"SalesInvoicePaymentToSalesInvoicePaymentTerminalInfo\"}],\"dbName\":\"sales_invoice_payment_terminal_info\"},\"Service\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sku\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"local_sku\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"barcode\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deleted_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"category_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"base_sale_price\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"complex_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"category\",\"kind\":\"object\",\"type\":\"ServiceCategory\",\"relationName\":\"ServiceToServiceCategory\"},{\"name\":\"sales_invoice_items\",\"kind\":\"object\",\"type\":\"SalesInvoiceItem\",\"relationName\":\"SalesInvoiceItemToService\"}],\"dbName\":\"services\"},\"ServiceCategory\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"image_url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"complex_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deleted_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"services\",\"kind\":\"object\",\"type\":\"Service\",\"relationName\":\"ServiceToServiceCategory\"}],\"dbName\":\"service_categories\"}},\"enums\":{},\"types\":{}}") +config.runtimeDataModel = JSON.parse("{\"models\":{\"AdminAccount\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"admin_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"admin\",\"kind\":\"object\",\"type\":\"Admin\",\"relationName\":\"AdminToAdminAccount\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account\",\"kind\":\"object\",\"type\":\"Account\",\"relationName\":\"AccountToAdminAccount\"}],\"dbName\":\"admin_accounts\"},\"Admin\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"mobile_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"national_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"first_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"last_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"accounts\",\"kind\":\"object\",\"type\":\"AdminAccount\",\"relationName\":\"AdminToAdminAccount\"}],\"dbName\":\"admins\"},\"Account\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"username\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"password\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"AccountStatus\"},{\"name\":\"type\",\"kind\":\"enum\",\"type\":\"AccountType\"},{\"name\":\"admin_account\",\"kind\":\"object\",\"type\":\"AdminAccount\",\"relationName\":\"AccountToAdminAccount\"},{\"name\":\"provider_account\",\"kind\":\"object\",\"type\":\"ProviderAccount\",\"relationName\":\"AccountToProviderAccount\"},{\"name\":\"partner_account\",\"kind\":\"object\",\"type\":\"PartnerAccount\",\"relationName\":\"AccountToPartnerAccount\"},{\"name\":\"consumer_account\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"AccountToConsumerAccount\"}],\"dbName\":\"accounts\"},\"DeviceBrand\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"devices\",\"kind\":\"object\",\"type\":\"Device\",\"relationName\":\"DeviceToDeviceBrand\"}],\"dbName\":\"device_brands\"},\"Device\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"os_version\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"brand_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"brand\",\"kind\":\"object\",\"type\":\"DeviceBrand\",\"relationName\":\"DeviceToDeviceBrand\"},{\"name\":\"poses\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"DeviceToPos\"}],\"dbName\":\"devices\"},\"LicenseChargeTransaction\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"activation_expires_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"tracking_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"purchased_count\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"partner_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner\",\"kind\":\"object\",\"type\":\"Partner\",\"relationName\":\"LicenseChargeTransactionToPartner\"},{\"name\":\"licenses\",\"kind\":\"object\",\"type\":\"License\",\"relationName\":\"LicenseToLicenseChargeTransaction\"}],\"dbName\":\"license_charged_transactions\"},\"License\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"accounts_limit\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"charge_transaction_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"charge_transaction\",\"kind\":\"object\",\"type\":\"LicenseChargeTransaction\",\"relationName\":\"LicenseToLicenseChargeTransaction\"},{\"name\":\"activation\",\"kind\":\"object\",\"type\":\"LicenseActivation\",\"relationName\":\"LicenseToLicenseActivation\"}],\"dbName\":\"licenses\"},\"LicenseActivation\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"starts_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"expires_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"license_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"license\",\"kind\":\"object\",\"type\":\"License\",\"relationName\":\"LicenseToLicenseActivation\"},{\"name\":\"business_activity_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"business_activity\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToLicenseActivation\"},{\"name\":\"license_renews\",\"kind\":\"object\",\"type\":\"LicenseRenew\",\"relationName\":\"LicenseActivationToLicenseRenew\"},{\"name\":\"account_allocations\",\"kind\":\"object\",\"type\":\"LicenseAccountAllocation\",\"relationName\":\"LicenseAccountAllocationToLicenseActivation\"}],\"dbName\":\"licenses_activated\"},\"LicenseRenewChargeTransaction\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"activation_expires_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"tracking_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"purchased_count\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"partner_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner\",\"kind\":\"object\",\"type\":\"Partner\",\"relationName\":\"LicenseRenewChargeTransactionToPartner\"},{\"name\":\"license_renews\",\"kind\":\"object\",\"type\":\"LicenseRenew\",\"relationName\":\"LicenseRenewToLicenseRenewChargeTransaction\"}],\"dbName\":\"license_renew_charge_transaction\"},\"LicenseRenew\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"expires_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"charge_transaction_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"charge_transaction\",\"kind\":\"object\",\"type\":\"LicenseRenewChargeTransaction\",\"relationName\":\"LicenseRenewToLicenseRenewChargeTransaction\"},{\"name\":\"activation_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"activation\",\"kind\":\"object\",\"type\":\"LicenseActivation\",\"relationName\":\"LicenseActivationToLicenseRenew\"}],\"dbName\":\"license_renew\"},\"PartnerAccountQuotaChargeTransaction\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"activation_expires_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"tracking_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"purchased_count\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"partner_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner\",\"kind\":\"object\",\"type\":\"Partner\",\"relationName\":\"PartnerToPartnerAccountQuotaChargeTransaction\"},{\"name\":\"credits\",\"kind\":\"object\",\"type\":\"PartnerAccountQuotaCredit\",\"relationName\":\"PartnerAccountQuotaChargeTransactionToPartnerAccountQuotaCredit\"}],\"dbName\":\"partner_account_quota_charge_transaction\"},\"PartnerAccountQuotaCredit\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"charge_transaction_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"charge_transaction\",\"kind\":\"object\",\"type\":\"PartnerAccountQuotaChargeTransaction\",\"relationName\":\"PartnerAccountQuotaChargeTransactionToPartnerAccountQuotaCredit\"},{\"name\":\"allocation\",\"kind\":\"object\",\"type\":\"LicenseAccountAllocation\",\"relationName\":\"LicenseAccountAllocationToPartnerAccountQuotaCredit\"}],\"dbName\":\"partner_account_quota_credit\"},\"LicenseAccountAllocation\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"license_activation_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"license_activation\",\"kind\":\"object\",\"type\":\"LicenseActivation\",\"relationName\":\"LicenseAccountAllocationToLicenseActivation\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"ConsumerAccountToLicenseAccountAllocation\"},{\"name\":\"credit_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"credit\",\"kind\":\"object\",\"type\":\"PartnerAccountQuotaCredit\",\"relationName\":\"LicenseAccountAllocationToPartnerAccountQuotaCredit\"}],\"dbName\":\"license_account_allocation\"},\"PartnerAccount\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"PartnerRole\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"partner_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner\",\"kind\":\"object\",\"type\":\"Partner\",\"relationName\":\"PartnerToPartnerAccount\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account\",\"kind\":\"object\",\"type\":\"Account\",\"relationName\":\"AccountToPartnerAccount\"}],\"dbName\":\"partner_accounts\"},\"Partner\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"PartnerStatus\"},{\"name\":\"tsp_provider\",\"kind\":\"enum\",\"type\":\"TspProviderType\"},{\"name\":\"logo_url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"accounts\",\"kind\":\"object\",\"type\":\"PartnerAccount\",\"relationName\":\"PartnerToPartnerAccount\"},{\"name\":\"consumers_individual\",\"kind\":\"object\",\"type\":\"ConsumerIndividual\",\"relationName\":\"ConsumerIndividualToPartner\"},{\"name\":\"consumers_legal\",\"kind\":\"object\",\"type\":\"ConsumerLegal\",\"relationName\":\"ConsumerLegalToPartner\"},{\"name\":\"license_charge_transactions\",\"kind\":\"object\",\"type\":\"LicenseChargeTransaction\",\"relationName\":\"LicenseChargeTransactionToPartner\"},{\"name\":\"account_quota_charge_transactions\",\"kind\":\"object\",\"type\":\"PartnerAccountQuotaChargeTransaction\",\"relationName\":\"PartnerToPartnerAccountQuotaChargeTransaction\"},{\"name\":\"license_renew_charge_transactions\",\"kind\":\"object\",\"type\":\"LicenseRenewChargeTransaction\",\"relationName\":\"LicenseRenewChargeTransactionToPartner\"}],\"dbName\":\"partners\"},\"PermissionConsumer\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer_account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer_account\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"ConsumerAccountToPermissionConsumer\"},{\"name\":\"pos_permissions\",\"kind\":\"object\",\"type\":\"PermissionPos\",\"relationName\":\"PermissionConsumerToPermissionPos\"},{\"name\":\"complex_permissions\",\"kind\":\"object\",\"type\":\"PermissionComplex\",\"relationName\":\"PermissionComplexToPermissionConsumer\"},{\"name\":\"business_permissions\",\"kind\":\"object\",\"type\":\"PermissionBusiness\",\"relationName\":\"PermissionBusinessToPermissionConsumer\"}],\"dbName\":\"permission_consumers\"},\"PermissionPos\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"POSRole\"},{\"name\":\"pos_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"permission_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"pos\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"PermissionPosToPos\"},{\"name\":\"permission\",\"kind\":\"object\",\"type\":\"PermissionConsumer\",\"relationName\":\"PermissionConsumerToPermissionPos\"}],\"dbName\":\"permission_poses\"},\"PermissionComplex\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"ComplexRole\"},{\"name\":\"complex_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"permission_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"complex\",\"kind\":\"object\",\"type\":\"Complex\",\"relationName\":\"ComplexToPermissionComplex\"},{\"name\":\"permission\",\"kind\":\"object\",\"type\":\"PermissionConsumer\",\"relationName\":\"PermissionComplexToPermissionConsumer\"}],\"dbName\":\"permission_complexes\"},\"PermissionBusiness\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"BusinessRole\"},{\"name\":\"business_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"permission_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"business\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToPermissionBusiness\"},{\"name\":\"permission\",\"kind\":\"object\",\"type\":\"PermissionConsumer\",\"relationName\":\"PermissionBusinessToPermissionConsumer\"}],\"dbName\":\"permission_business_activities\"},\"ProviderAccount\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"ProviderRole\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"provider_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"provider\",\"kind\":\"object\",\"type\":\"Provider\",\"relationName\":\"ProviderToProviderAccount\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account\",\"kind\":\"object\",\"type\":\"Account\",\"relationName\":\"AccountToProviderAccount\"}],\"dbName\":\"provider_accounts\"},\"Provider\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"PartnerStatus\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"accounts\",\"kind\":\"object\",\"type\":\"ProviderAccount\",\"relationName\":\"ProviderToProviderAccount\"},{\"name\":\"pos_list\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"PosToProvider\"}],\"dbName\":\"providers\"},\"ConsumerDevices\":{\"fields\":[{\"name\":\"uuid\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"app_version\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"build_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"platform\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"brand\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"model\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"device\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"publisher\",\"kind\":\"enum\",\"type\":\"ApplicationPublisher\"},{\"name\":\"os_version\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sdk_version\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"release_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"user_agent\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"browser_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"fcm_token\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"consumer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer\",\"kind\":\"object\",\"type\":\"Consumer\",\"relationName\":\"ConsumerToConsumerDevices\"}],\"dbName\":\"consumer_devices\"},\"ApplicationReleasedInfo\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"version\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"build_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_minimum_supported\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"release_type\",\"kind\":\"enum\",\"type\":\"ApplicationReleaseType\"},{\"name\":\"platform\",\"kind\":\"enum\",\"type\":\"ApplicationPlatform\"},{\"name\":\"notes\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"release_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"}],\"dbName\":\"application_released_info\"},\"ConsumerAccount\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"role\",\"kind\":\"enum\",\"type\":\"ConsumerRole\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"consumer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer\",\"kind\":\"object\",\"type\":\"Consumer\",\"relationName\":\"ConsumerToConsumerAccount\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account\",\"kind\":\"object\",\"type\":\"Account\",\"relationName\":\"AccountToConsumerAccount\"},{\"name\":\"pos\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"ConsumerAccountToPos\"},{\"name\":\"permission\",\"kind\":\"object\",\"type\":\"PermissionConsumer\",\"relationName\":\"ConsumerAccountToPermissionConsumer\"},{\"name\":\"account_allocation\",\"kind\":\"object\",\"type\":\"LicenseAccountAllocation\",\"relationName\":\"ConsumerAccountToLicenseAccountAllocation\"},{\"name\":\"sales_invoices\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"ConsumerAccountToSalesInvoice\"}],\"dbName\":\"consumer_accounts\"},\"Consumer\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"type\",\"kind\":\"enum\",\"type\":\"ConsumerType\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"ConsumerStatus\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"accounts\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"ConsumerToConsumerAccount\"},{\"name\":\"business_activities\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToConsumer\"},{\"name\":\"devices\",\"kind\":\"object\",\"type\":\"ConsumerDevices\",\"relationName\":\"ConsumerToConsumerDevices\"},{\"name\":\"individual\",\"kind\":\"object\",\"type\":\"ConsumerIndividual\",\"relationName\":\"ConsumerToConsumerIndividual\"},{\"name\":\"legal\",\"kind\":\"object\",\"type\":\"ConsumerLegal\",\"relationName\":\"ConsumerToConsumerLegal\"}],\"dbName\":\"consumers\"},\"ConsumerIndividual\":{\"fields\":[{\"name\":\"first_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"last_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"mobile_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"national_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"partner_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner\",\"kind\":\"object\",\"type\":\"Partner\",\"relationName\":\"ConsumerIndividualToPartner\"},{\"name\":\"consumer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer\",\"kind\":\"object\",\"type\":\"Consumer\",\"relationName\":\"ConsumerToConsumerIndividual\"}],\"dbName\":\"consumers_individual\"},\"ConsumerLegal\":{\"fields\":[{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"registration_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"partner_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner\",\"kind\":\"object\",\"type\":\"Partner\",\"relationName\":\"ConsumerLegalToPartner\"},{\"name\":\"consumer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer\",\"kind\":\"object\",\"type\":\"Consumer\",\"relationName\":\"ConsumerToConsumerLegal\"}],\"dbName\":\"consumers_legal\"},\"BusinessActivity\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"economic_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"fiscal_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"partner_token\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"invoice_number_sequence\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"guild_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"guild\",\"kind\":\"object\",\"type\":\"Guild\",\"relationName\":\"BusinessActivityToGuild\"},{\"name\":\"consumer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer\",\"kind\":\"object\",\"type\":\"Consumer\",\"relationName\":\"BusinessActivityToConsumer\"},{\"name\":\"license_activation\",\"kind\":\"object\",\"type\":\"LicenseActivation\",\"relationName\":\"BusinessActivityToLicenseActivation\"},{\"name\":\"complexes\",\"kind\":\"object\",\"type\":\"Complex\",\"relationName\":\"BusinessActivityToComplex\"},{\"name\":\"permission_businesses\",\"kind\":\"object\",\"type\":\"PermissionBusiness\",\"relationName\":\"BusinessActivityToPermissionBusiness\"},{\"name\":\"goods\",\"kind\":\"object\",\"type\":\"Good\",\"relationName\":\"BusinessActivityToGood\"},{\"name\":\"customer_individuals\",\"kind\":\"object\",\"type\":\"CustomerIndividual\",\"relationName\":\"BusinessActivityToCustomerIndividual\"},{\"name\":\"customer_legals\",\"kind\":\"object\",\"type\":\"CustomerLegal\",\"relationName\":\"BusinessActivityToCustomerLegal\"}],\"dbName\":\"business_activities\"},\"Complex\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"branch_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"address\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"business_activity_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"business_activity\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToComplex\"},{\"name\":\"pos_list\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"ComplexToPos\"},{\"name\":\"good_categories\",\"kind\":\"object\",\"type\":\"GoodCategory\",\"relationName\":\"ComplexToGoodCategory\"},{\"name\":\"permission_complexes\",\"kind\":\"object\",\"type\":\"PermissionComplex\",\"relationName\":\"ComplexToPermissionComplex\"}],\"dbName\":\"complexes\"},\"Pos\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"model\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"serial_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"POSStatus\"},{\"name\":\"pos_type\",\"kind\":\"enum\",\"type\":\"POSType\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"complex_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"complex\",\"kind\":\"object\",\"type\":\"Complex\",\"relationName\":\"ComplexToPos\"},{\"name\":\"device_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"device\",\"kind\":\"object\",\"type\":\"Device\",\"relationName\":\"DeviceToPos\"},{\"name\":\"provider_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"provider\",\"kind\":\"object\",\"type\":\"Provider\",\"relationName\":\"PosToProvider\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"ConsumerAccountToPos\"},{\"name\":\"permission_pos\",\"kind\":\"object\",\"type\":\"PermissionPos\",\"relationName\":\"PermissionPosToPos\"},{\"name\":\"sales_invoices\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"PosToSalesInvoice\"}],\"dbName\":\"poses\"},\"Good\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_default_guild_good\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"pricing_model\",\"kind\":\"enum\",\"type\":\"GoodPricingModel\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"local_sku\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"barcode\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"base_sale_price\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"image_url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deleted_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"sku_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sku\",\"kind\":\"object\",\"type\":\"StockKeepingUnits\",\"relationName\":\"GoodToStockKeepingUnits\"},{\"name\":\"measure_unit_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"measure_unit\",\"kind\":\"object\",\"type\":\"MeasureUnits\",\"relationName\":\"GoodToMeasureUnits\"},{\"name\":\"category_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"category\",\"kind\":\"object\",\"type\":\"GoodCategory\",\"relationName\":\"GoodToGoodCategory\"},{\"name\":\"business_activity_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"business_activity\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToGood\"},{\"name\":\"sales_invoice_items\",\"kind\":\"object\",\"type\":\"SalesInvoiceItem\",\"relationName\":\"GoodToSalesInvoiceItem\"}],\"dbName\":\"goods\"},\"GoodCategory\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"image_url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"complex_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_default_guild_good\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"guild_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deleted_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"goods\",\"kind\":\"object\",\"type\":\"Good\",\"relationName\":\"GoodToGoodCategory\"},{\"name\":\"guild\",\"kind\":\"object\",\"type\":\"Guild\",\"relationName\":\"GoodCategoryToGuild\"},{\"name\":\"complex\",\"kind\":\"object\",\"type\":\"Complex\",\"relationName\":\"ComplexToGoodCategory\"}],\"dbName\":\"good_categories\"},\"MeasureUnits\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"goods\",\"kind\":\"object\",\"type\":\"Good\",\"relationName\":\"GoodToMeasureUnits\"}],\"dbName\":\"measure_units\"},\"StockKeepingUnits\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"VAT\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"type\",\"kind\":\"enum\",\"type\":\"SKUGuildType\"},{\"name\":\"is_public\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"is_domestic\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"goods\",\"kind\":\"object\",\"type\":\"Good\",\"relationName\":\"GoodToStockKeepingUnits\"}],\"dbName\":\"stock_keeping_units\"},\"TriggerLog\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"message\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"createdAt\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"}],\"dbName\":\"trigger_logs\"},\"Customer\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_favorite\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"type\",\"kind\":\"enum\",\"type\":\"CustomerType\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deleted_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"individual\",\"kind\":\"object\",\"type\":\"CustomerIndividual\",\"relationName\":\"CustomerToCustomerIndividual\"},{\"name\":\"legal\",\"kind\":\"object\",\"type\":\"CustomerLegal\",\"relationName\":\"CustomerToCustomerLegal\"},{\"name\":\"sales_invoices\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"CustomerToSalesInvoice\"}],\"dbName\":\"customers\"},\"CustomerIndividual\":{\"fields\":[{\"name\":\"first_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"last_name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"national_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"mobile_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"postal_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"economic_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"customer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"customer\",\"kind\":\"object\",\"type\":\"Customer\",\"relationName\":\"CustomerToCustomerIndividual\"},{\"name\":\"business_activity_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"business_activity\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToCustomerIndividual\"}],\"dbName\":\"customer_individuals\"},\"CustomerLegal\":{\"fields\":[{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"economic_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"registration_number\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"postal_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"customer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"customer\",\"kind\":\"object\",\"type\":\"Customer\",\"relationName\":\"CustomerToCustomerLegal\"},{\"name\":\"business_activity_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"business_activity\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToCustomerLegal\"}],\"dbName\":\"customer_legal\"},\"Guild\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"invoice_template\",\"kind\":\"enum\",\"type\":\"InvoiceTemplateType\"},{\"name\":\"code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"business_activities\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToGuild\"},{\"name\":\"good_categories\",\"kind\":\"object\",\"type\":\"GoodCategory\",\"relationName\":\"GoodCategoryToGuild\"}],\"dbName\":\"guilds\"},\"SalesInvoice\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"total_amount\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"invoice_number\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"invoice_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"notes\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"unknown_customer\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"customer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"customer\",\"kind\":\"object\",\"type\":\"Customer\",\"relationName\":\"CustomerToSalesInvoice\"},{\"name\":\"consumer_account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"consumer_account\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"ConsumerAccountToSalesInvoice\"},{\"name\":\"pos_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"pos\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"PosToSalesInvoice\"},{\"name\":\"items\",\"kind\":\"object\",\"type\":\"SalesInvoiceItem\",\"relationName\":\"SalesInvoiceToSalesInvoiceItem\"},{\"name\":\"payments\",\"kind\":\"object\",\"type\":\"SalesInvoicePayment\",\"relationName\":\"SalesInvoiceToSalesInvoicePayment\"},{\"name\":\"tsp_attempts\",\"kind\":\"object\",\"type\":\"SaleInvoiceTspAttempts\",\"relationName\":\"SaleInvoiceTspAttemptsToSalesInvoice\"}],\"dbName\":\"sales_invoices\"},\"SalesInvoiceItem\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quantity\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"measure_unit_text\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"measure_unit_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sku_code\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sku_vat\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"unit_price\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"total_amount\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"discount\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"notes\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"payload\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"good_snapshot\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"invoice_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"invoice\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"SalesInvoiceToSalesInvoiceItem\"},{\"name\":\"good_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"good\",\"kind\":\"object\",\"type\":\"Good\",\"relationName\":\"GoodToSalesInvoiceItem\"},{\"name\":\"service_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"service\",\"kind\":\"object\",\"type\":\"Service\",\"relationName\":\"SalesInvoiceItemToService\"}],\"dbName\":\"sales_invoice_items\"},\"SaleInvoiceTspAttempts\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"attempt_no\",\"kind\":\"scalar\",\"type\":\"Int\"},{\"name\":\"status\",\"kind\":\"enum\",\"type\":\"TspProviderResponseStatus\"},{\"name\":\"tax_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"type\",\"kind\":\"enum\",\"type\":\"TspProviderRequestType\"},{\"name\":\"request_payload\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"response_payload\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"error_message\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sent_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"received_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"invoice_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"invoice\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"SaleInvoiceTspAttemptsToSalesInvoice\"}],\"dbName\":\"sale_invoice_tsp_attempts\"},\"SalesInvoicePayment\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"amount\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"payment_method\",\"kind\":\"enum\",\"type\":\"PaymentMethodType\"},{\"name\":\"paid_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"invoice_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"invoice\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"SalesInvoiceToSalesInvoicePayment\"},{\"name\":\"terminal_info\",\"kind\":\"object\",\"type\":\"SalesInvoicePaymentTerminalInfo\",\"relationName\":\"SalesInvoicePaymentToSalesInvoicePaymentTerminalInfo\"}],\"dbName\":\"sales_invoice_payments\"},\"SalesInvoicePaymentTerminalInfo\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"terminal_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"stan\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"rrn\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"transaction_date_time\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"customer_card_no\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"payment_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"payment\",\"kind\":\"object\",\"type\":\"SalesInvoicePayment\",\"relationName\":\"SalesInvoicePaymentToSalesInvoicePaymentTerminalInfo\"}],\"dbName\":\"sales_invoice_payment_terminal_info\"},\"Service\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"sku\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"local_sku\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"barcode\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deleted_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"category_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"base_sale_price\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"complex_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"category\",\"kind\":\"object\",\"type\":\"ServiceCategory\",\"relationName\":\"ServiceToServiceCategory\"},{\"name\":\"sales_invoice_items\",\"kind\":\"object\",\"type\":\"SalesInvoiceItem\",\"relationName\":\"SalesInvoiceItemToService\"}],\"dbName\":\"services\"},\"ServiceCategory\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"description\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"image_url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"complex_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deleted_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"services\",\"kind\":\"object\",\"type\":\"Service\",\"relationName\":\"ServiceToServiceCategory\"}],\"dbName\":\"service_categories\"}},\"enums\":{},\"types\":{}}") config.parameterizationSchema = { - strings: JSON.parse("[\"where\",\"orderBy\",\"cursor\",\"accounts\",\"_count\",\"admin\",\"admin_account\",\"business_activities\",\"goods\",\"sku\",\"measure_unit\",\"category\",\"business_activity\",\"customer\",\"individual\",\"legal\",\"sales_invoices\",\"consumer\",\"devices\",\"partner\",\"account\",\"consumers_individual\",\"consumers_legal\",\"charge_transaction\",\"license\",\"license_renews\",\"activation\",\"license_activation\",\"credits\",\"allocation\",\"credit\",\"account_allocations\",\"licenses\",\"license_charge_transactions\",\"account_quota_charge_transactions\",\"license_renew_charge_transactions\",\"pos\",\"consumer_account\",\"permission\",\"pos_permissions\",\"complex\",\"complex_permissions\",\"business\",\"business_permissions\",\"account_allocation\",\"invoice\",\"fiscal\",\"attempts\",\"items\",\"payment\",\"terminal_info\",\"payments\",\"good\",\"services\",\"sales_invoice_items\",\"service\",\"guild\",\"good_categories\",\"complexes\",\"permission_businesses\",\"customer_individuals\",\"customer_legals\",\"pos_list\",\"permission_complexes\",\"brand\",\"poses\",\"device\",\"provider\",\"permission_pos\",\"provider_account\",\"partner_account\",\"AdminAccount.findUnique\",\"AdminAccount.findUniqueOrThrow\",\"AdminAccount.findFirst\",\"AdminAccount.findFirstOrThrow\",\"AdminAccount.findMany\",\"data\",\"AdminAccount.createOne\",\"AdminAccount.createMany\",\"AdminAccount.updateOne\",\"AdminAccount.updateMany\",\"create\",\"update\",\"AdminAccount.upsertOne\",\"AdminAccount.deleteOne\",\"AdminAccount.deleteMany\",\"having\",\"_min\",\"_max\",\"AdminAccount.groupBy\",\"AdminAccount.aggregate\",\"Admin.findUnique\",\"Admin.findUniqueOrThrow\",\"Admin.findFirst\",\"Admin.findFirstOrThrow\",\"Admin.findMany\",\"Admin.createOne\",\"Admin.createMany\",\"Admin.updateOne\",\"Admin.updateMany\",\"Admin.upsertOne\",\"Admin.deleteOne\",\"Admin.deleteMany\",\"Admin.groupBy\",\"Admin.aggregate\",\"Account.findUnique\",\"Account.findUniqueOrThrow\",\"Account.findFirst\",\"Account.findFirstOrThrow\",\"Account.findMany\",\"Account.createOne\",\"Account.createMany\",\"Account.updateOne\",\"Account.updateMany\",\"Account.upsertOne\",\"Account.deleteOne\",\"Account.deleteMany\",\"Account.groupBy\",\"Account.aggregate\",\"DeviceBrand.findUnique\",\"DeviceBrand.findUniqueOrThrow\",\"DeviceBrand.findFirst\",\"DeviceBrand.findFirstOrThrow\",\"DeviceBrand.findMany\",\"DeviceBrand.createOne\",\"DeviceBrand.createMany\",\"DeviceBrand.updateOne\",\"DeviceBrand.updateMany\",\"DeviceBrand.upsertOne\",\"DeviceBrand.deleteOne\",\"DeviceBrand.deleteMany\",\"DeviceBrand.groupBy\",\"DeviceBrand.aggregate\",\"Device.findUnique\",\"Device.findUniqueOrThrow\",\"Device.findFirst\",\"Device.findFirstOrThrow\",\"Device.findMany\",\"Device.createOne\",\"Device.createMany\",\"Device.updateOne\",\"Device.updateMany\",\"Device.upsertOne\",\"Device.deleteOne\",\"Device.deleteMany\",\"Device.groupBy\",\"Device.aggregate\",\"LicenseChargeTransaction.findUnique\",\"LicenseChargeTransaction.findUniqueOrThrow\",\"LicenseChargeTransaction.findFirst\",\"LicenseChargeTransaction.findFirstOrThrow\",\"LicenseChargeTransaction.findMany\",\"LicenseChargeTransaction.createOne\",\"LicenseChargeTransaction.createMany\",\"LicenseChargeTransaction.updateOne\",\"LicenseChargeTransaction.updateMany\",\"LicenseChargeTransaction.upsertOne\",\"LicenseChargeTransaction.deleteOne\",\"LicenseChargeTransaction.deleteMany\",\"_avg\",\"_sum\",\"LicenseChargeTransaction.groupBy\",\"LicenseChargeTransaction.aggregate\",\"License.findUnique\",\"License.findUniqueOrThrow\",\"License.findFirst\",\"License.findFirstOrThrow\",\"License.findMany\",\"License.createOne\",\"License.createMany\",\"License.updateOne\",\"License.updateMany\",\"License.upsertOne\",\"License.deleteOne\",\"License.deleteMany\",\"License.groupBy\",\"License.aggregate\",\"LicenseActivation.findUnique\",\"LicenseActivation.findUniqueOrThrow\",\"LicenseActivation.findFirst\",\"LicenseActivation.findFirstOrThrow\",\"LicenseActivation.findMany\",\"LicenseActivation.createOne\",\"LicenseActivation.createMany\",\"LicenseActivation.updateOne\",\"LicenseActivation.updateMany\",\"LicenseActivation.upsertOne\",\"LicenseActivation.deleteOne\",\"LicenseActivation.deleteMany\",\"LicenseActivation.groupBy\",\"LicenseActivation.aggregate\",\"LicenseRenewChargeTransaction.findUnique\",\"LicenseRenewChargeTransaction.findUniqueOrThrow\",\"LicenseRenewChargeTransaction.findFirst\",\"LicenseRenewChargeTransaction.findFirstOrThrow\",\"LicenseRenewChargeTransaction.findMany\",\"LicenseRenewChargeTransaction.createOne\",\"LicenseRenewChargeTransaction.createMany\",\"LicenseRenewChargeTransaction.updateOne\",\"LicenseRenewChargeTransaction.updateMany\",\"LicenseRenewChargeTransaction.upsertOne\",\"LicenseRenewChargeTransaction.deleteOne\",\"LicenseRenewChargeTransaction.deleteMany\",\"LicenseRenewChargeTransaction.groupBy\",\"LicenseRenewChargeTransaction.aggregate\",\"LicenseRenew.findUnique\",\"LicenseRenew.findUniqueOrThrow\",\"LicenseRenew.findFirst\",\"LicenseRenew.findFirstOrThrow\",\"LicenseRenew.findMany\",\"LicenseRenew.createOne\",\"LicenseRenew.createMany\",\"LicenseRenew.updateOne\",\"LicenseRenew.updateMany\",\"LicenseRenew.upsertOne\",\"LicenseRenew.deleteOne\",\"LicenseRenew.deleteMany\",\"LicenseRenew.groupBy\",\"LicenseRenew.aggregate\",\"PartnerAccountQuotaChargeTransaction.findUnique\",\"PartnerAccountQuotaChargeTransaction.findUniqueOrThrow\",\"PartnerAccountQuotaChargeTransaction.findFirst\",\"PartnerAccountQuotaChargeTransaction.findFirstOrThrow\",\"PartnerAccountQuotaChargeTransaction.findMany\",\"PartnerAccountQuotaChargeTransaction.createOne\",\"PartnerAccountQuotaChargeTransaction.createMany\",\"PartnerAccountQuotaChargeTransaction.updateOne\",\"PartnerAccountQuotaChargeTransaction.updateMany\",\"PartnerAccountQuotaChargeTransaction.upsertOne\",\"PartnerAccountQuotaChargeTransaction.deleteOne\",\"PartnerAccountQuotaChargeTransaction.deleteMany\",\"PartnerAccountQuotaChargeTransaction.groupBy\",\"PartnerAccountQuotaChargeTransaction.aggregate\",\"PartnerAccountQuotaCredit.findUnique\",\"PartnerAccountQuotaCredit.findUniqueOrThrow\",\"PartnerAccountQuotaCredit.findFirst\",\"PartnerAccountQuotaCredit.findFirstOrThrow\",\"PartnerAccountQuotaCredit.findMany\",\"PartnerAccountQuotaCredit.createOne\",\"PartnerAccountQuotaCredit.createMany\",\"PartnerAccountQuotaCredit.updateOne\",\"PartnerAccountQuotaCredit.updateMany\",\"PartnerAccountQuotaCredit.upsertOne\",\"PartnerAccountQuotaCredit.deleteOne\",\"PartnerAccountQuotaCredit.deleteMany\",\"PartnerAccountQuotaCredit.groupBy\",\"PartnerAccountQuotaCredit.aggregate\",\"LicenseAccountAllocation.findUnique\",\"LicenseAccountAllocation.findUniqueOrThrow\",\"LicenseAccountAllocation.findFirst\",\"LicenseAccountAllocation.findFirstOrThrow\",\"LicenseAccountAllocation.findMany\",\"LicenseAccountAllocation.createOne\",\"LicenseAccountAllocation.createMany\",\"LicenseAccountAllocation.updateOne\",\"LicenseAccountAllocation.updateMany\",\"LicenseAccountAllocation.upsertOne\",\"LicenseAccountAllocation.deleteOne\",\"LicenseAccountAllocation.deleteMany\",\"LicenseAccountAllocation.groupBy\",\"LicenseAccountAllocation.aggregate\",\"PartnerAccount.findUnique\",\"PartnerAccount.findUniqueOrThrow\",\"PartnerAccount.findFirst\",\"PartnerAccount.findFirstOrThrow\",\"PartnerAccount.findMany\",\"PartnerAccount.createOne\",\"PartnerAccount.createMany\",\"PartnerAccount.updateOne\",\"PartnerAccount.updateMany\",\"PartnerAccount.upsertOne\",\"PartnerAccount.deleteOne\",\"PartnerAccount.deleteMany\",\"PartnerAccount.groupBy\",\"PartnerAccount.aggregate\",\"Partner.findUnique\",\"Partner.findUniqueOrThrow\",\"Partner.findFirst\",\"Partner.findFirstOrThrow\",\"Partner.findMany\",\"Partner.createOne\",\"Partner.createMany\",\"Partner.updateOne\",\"Partner.updateMany\",\"Partner.upsertOne\",\"Partner.deleteOne\",\"Partner.deleteMany\",\"Partner.groupBy\",\"Partner.aggregate\",\"PermissionConsumer.findUnique\",\"PermissionConsumer.findUniqueOrThrow\",\"PermissionConsumer.findFirst\",\"PermissionConsumer.findFirstOrThrow\",\"PermissionConsumer.findMany\",\"PermissionConsumer.createOne\",\"PermissionConsumer.createMany\",\"PermissionConsumer.updateOne\",\"PermissionConsumer.updateMany\",\"PermissionConsumer.upsertOne\",\"PermissionConsumer.deleteOne\",\"PermissionConsumer.deleteMany\",\"PermissionConsumer.groupBy\",\"PermissionConsumer.aggregate\",\"PermissionPos.findUnique\",\"PermissionPos.findUniqueOrThrow\",\"PermissionPos.findFirst\",\"PermissionPos.findFirstOrThrow\",\"PermissionPos.findMany\",\"PermissionPos.createOne\",\"PermissionPos.createMany\",\"PermissionPos.updateOne\",\"PermissionPos.updateMany\",\"PermissionPos.upsertOne\",\"PermissionPos.deleteOne\",\"PermissionPos.deleteMany\",\"PermissionPos.groupBy\",\"PermissionPos.aggregate\",\"PermissionComplex.findUnique\",\"PermissionComplex.findUniqueOrThrow\",\"PermissionComplex.findFirst\",\"PermissionComplex.findFirstOrThrow\",\"PermissionComplex.findMany\",\"PermissionComplex.createOne\",\"PermissionComplex.createMany\",\"PermissionComplex.updateOne\",\"PermissionComplex.updateMany\",\"PermissionComplex.upsertOne\",\"PermissionComplex.deleteOne\",\"PermissionComplex.deleteMany\",\"PermissionComplex.groupBy\",\"PermissionComplex.aggregate\",\"PermissionBusiness.findUnique\",\"PermissionBusiness.findUniqueOrThrow\",\"PermissionBusiness.findFirst\",\"PermissionBusiness.findFirstOrThrow\",\"PermissionBusiness.findMany\",\"PermissionBusiness.createOne\",\"PermissionBusiness.createMany\",\"PermissionBusiness.updateOne\",\"PermissionBusiness.updateMany\",\"PermissionBusiness.upsertOne\",\"PermissionBusiness.deleteOne\",\"PermissionBusiness.deleteMany\",\"PermissionBusiness.groupBy\",\"PermissionBusiness.aggregate\",\"ProviderAccount.findUnique\",\"ProviderAccount.findUniqueOrThrow\",\"ProviderAccount.findFirst\",\"ProviderAccount.findFirstOrThrow\",\"ProviderAccount.findMany\",\"ProviderAccount.createOne\",\"ProviderAccount.createMany\",\"ProviderAccount.updateOne\",\"ProviderAccount.updateMany\",\"ProviderAccount.upsertOne\",\"ProviderAccount.deleteOne\",\"ProviderAccount.deleteMany\",\"ProviderAccount.groupBy\",\"ProviderAccount.aggregate\",\"Provider.findUnique\",\"Provider.findUniqueOrThrow\",\"Provider.findFirst\",\"Provider.findFirstOrThrow\",\"Provider.findMany\",\"Provider.createOne\",\"Provider.createMany\",\"Provider.updateOne\",\"Provider.updateMany\",\"Provider.upsertOne\",\"Provider.deleteOne\",\"Provider.deleteMany\",\"Provider.groupBy\",\"Provider.aggregate\",\"ConsumerDevices.findUnique\",\"ConsumerDevices.findUniqueOrThrow\",\"ConsumerDevices.findFirst\",\"ConsumerDevices.findFirstOrThrow\",\"ConsumerDevices.findMany\",\"ConsumerDevices.createOne\",\"ConsumerDevices.createMany\",\"ConsumerDevices.updateOne\",\"ConsumerDevices.updateMany\",\"ConsumerDevices.upsertOne\",\"ConsumerDevices.deleteOne\",\"ConsumerDevices.deleteMany\",\"ConsumerDevices.groupBy\",\"ConsumerDevices.aggregate\",\"ApplicationReleasedInfo.findUnique\",\"ApplicationReleasedInfo.findUniqueOrThrow\",\"ApplicationReleasedInfo.findFirst\",\"ApplicationReleasedInfo.findFirstOrThrow\",\"ApplicationReleasedInfo.findMany\",\"ApplicationReleasedInfo.createOne\",\"ApplicationReleasedInfo.createMany\",\"ApplicationReleasedInfo.updateOne\",\"ApplicationReleasedInfo.updateMany\",\"ApplicationReleasedInfo.upsertOne\",\"ApplicationReleasedInfo.deleteOne\",\"ApplicationReleasedInfo.deleteMany\",\"ApplicationReleasedInfo.groupBy\",\"ApplicationReleasedInfo.aggregate\",\"ConsumerAccount.findUnique\",\"ConsumerAccount.findUniqueOrThrow\",\"ConsumerAccount.findFirst\",\"ConsumerAccount.findFirstOrThrow\",\"ConsumerAccount.findMany\",\"ConsumerAccount.createOne\",\"ConsumerAccount.createMany\",\"ConsumerAccount.updateOne\",\"ConsumerAccount.updateMany\",\"ConsumerAccount.upsertOne\",\"ConsumerAccount.deleteOne\",\"ConsumerAccount.deleteMany\",\"ConsumerAccount.groupBy\",\"ConsumerAccount.aggregate\",\"Consumer.findUnique\",\"Consumer.findUniqueOrThrow\",\"Consumer.findFirst\",\"Consumer.findFirstOrThrow\",\"Consumer.findMany\",\"Consumer.createOne\",\"Consumer.createMany\",\"Consumer.updateOne\",\"Consumer.updateMany\",\"Consumer.upsertOne\",\"Consumer.deleteOne\",\"Consumer.deleteMany\",\"Consumer.groupBy\",\"Consumer.aggregate\",\"ConsumerIndividual.findUnique\",\"ConsumerIndividual.findUniqueOrThrow\",\"ConsumerIndividual.findFirst\",\"ConsumerIndividual.findFirstOrThrow\",\"ConsumerIndividual.findMany\",\"ConsumerIndividual.createOne\",\"ConsumerIndividual.createMany\",\"ConsumerIndividual.updateOne\",\"ConsumerIndividual.updateMany\",\"ConsumerIndividual.upsertOne\",\"ConsumerIndividual.deleteOne\",\"ConsumerIndividual.deleteMany\",\"ConsumerIndividual.groupBy\",\"ConsumerIndividual.aggregate\",\"ConsumerLegal.findUnique\",\"ConsumerLegal.findUniqueOrThrow\",\"ConsumerLegal.findFirst\",\"ConsumerLegal.findFirstOrThrow\",\"ConsumerLegal.findMany\",\"ConsumerLegal.createOne\",\"ConsumerLegal.createMany\",\"ConsumerLegal.updateOne\",\"ConsumerLegal.updateMany\",\"ConsumerLegal.upsertOne\",\"ConsumerLegal.deleteOne\",\"ConsumerLegal.deleteMany\",\"ConsumerLegal.groupBy\",\"ConsumerLegal.aggregate\",\"BusinessActivity.findUnique\",\"BusinessActivity.findUniqueOrThrow\",\"BusinessActivity.findFirst\",\"BusinessActivity.findFirstOrThrow\",\"BusinessActivity.findMany\",\"BusinessActivity.createOne\",\"BusinessActivity.createMany\",\"BusinessActivity.updateOne\",\"BusinessActivity.updateMany\",\"BusinessActivity.upsertOne\",\"BusinessActivity.deleteOne\",\"BusinessActivity.deleteMany\",\"BusinessActivity.groupBy\",\"BusinessActivity.aggregate\",\"Complex.findUnique\",\"Complex.findUniqueOrThrow\",\"Complex.findFirst\",\"Complex.findFirstOrThrow\",\"Complex.findMany\",\"Complex.createOne\",\"Complex.createMany\",\"Complex.updateOne\",\"Complex.updateMany\",\"Complex.upsertOne\",\"Complex.deleteOne\",\"Complex.deleteMany\",\"Complex.groupBy\",\"Complex.aggregate\",\"Pos.findUnique\",\"Pos.findUniqueOrThrow\",\"Pos.findFirst\",\"Pos.findFirstOrThrow\",\"Pos.findMany\",\"Pos.createOne\",\"Pos.createMany\",\"Pos.updateOne\",\"Pos.updateMany\",\"Pos.upsertOne\",\"Pos.deleteOne\",\"Pos.deleteMany\",\"Pos.groupBy\",\"Pos.aggregate\",\"Good.findUnique\",\"Good.findUniqueOrThrow\",\"Good.findFirst\",\"Good.findFirstOrThrow\",\"Good.findMany\",\"Good.createOne\",\"Good.createMany\",\"Good.updateOne\",\"Good.updateMany\",\"Good.upsertOne\",\"Good.deleteOne\",\"Good.deleteMany\",\"Good.groupBy\",\"Good.aggregate\",\"GoodCategory.findUnique\",\"GoodCategory.findUniqueOrThrow\",\"GoodCategory.findFirst\",\"GoodCategory.findFirstOrThrow\",\"GoodCategory.findMany\",\"GoodCategory.createOne\",\"GoodCategory.createMany\",\"GoodCategory.updateOne\",\"GoodCategory.updateMany\",\"GoodCategory.upsertOne\",\"GoodCategory.deleteOne\",\"GoodCategory.deleteMany\",\"GoodCategory.groupBy\",\"GoodCategory.aggregate\",\"MeasureUnits.findUnique\",\"MeasureUnits.findUniqueOrThrow\",\"MeasureUnits.findFirst\",\"MeasureUnits.findFirstOrThrow\",\"MeasureUnits.findMany\",\"MeasureUnits.createOne\",\"MeasureUnits.createMany\",\"MeasureUnits.updateOne\",\"MeasureUnits.updateMany\",\"MeasureUnits.upsertOne\",\"MeasureUnits.deleteOne\",\"MeasureUnits.deleteMany\",\"MeasureUnits.groupBy\",\"MeasureUnits.aggregate\",\"StockKeepingUnits.findUnique\",\"StockKeepingUnits.findUniqueOrThrow\",\"StockKeepingUnits.findFirst\",\"StockKeepingUnits.findFirstOrThrow\",\"StockKeepingUnits.findMany\",\"StockKeepingUnits.createOne\",\"StockKeepingUnits.createMany\",\"StockKeepingUnits.updateOne\",\"StockKeepingUnits.updateMany\",\"StockKeepingUnits.upsertOne\",\"StockKeepingUnits.deleteOne\",\"StockKeepingUnits.deleteMany\",\"StockKeepingUnits.groupBy\",\"StockKeepingUnits.aggregate\",\"TriggerLog.findUnique\",\"TriggerLog.findUniqueOrThrow\",\"TriggerLog.findFirst\",\"TriggerLog.findFirstOrThrow\",\"TriggerLog.findMany\",\"TriggerLog.createOne\",\"TriggerLog.createMany\",\"TriggerLog.updateOne\",\"TriggerLog.updateMany\",\"TriggerLog.upsertOne\",\"TriggerLog.deleteOne\",\"TriggerLog.deleteMany\",\"TriggerLog.groupBy\",\"TriggerLog.aggregate\",\"Customer.findUnique\",\"Customer.findUniqueOrThrow\",\"Customer.findFirst\",\"Customer.findFirstOrThrow\",\"Customer.findMany\",\"Customer.createOne\",\"Customer.createMany\",\"Customer.updateOne\",\"Customer.updateMany\",\"Customer.upsertOne\",\"Customer.deleteOne\",\"Customer.deleteMany\",\"Customer.groupBy\",\"Customer.aggregate\",\"CustomerIndividual.findUnique\",\"CustomerIndividual.findUniqueOrThrow\",\"CustomerIndividual.findFirst\",\"CustomerIndividual.findFirstOrThrow\",\"CustomerIndividual.findMany\",\"CustomerIndividual.createOne\",\"CustomerIndividual.createMany\",\"CustomerIndividual.updateOne\",\"CustomerIndividual.updateMany\",\"CustomerIndividual.upsertOne\",\"CustomerIndividual.deleteOne\",\"CustomerIndividual.deleteMany\",\"CustomerIndividual.groupBy\",\"CustomerIndividual.aggregate\",\"CustomerLegal.findUnique\",\"CustomerLegal.findUniqueOrThrow\",\"CustomerLegal.findFirst\",\"CustomerLegal.findFirstOrThrow\",\"CustomerLegal.findMany\",\"CustomerLegal.createOne\",\"CustomerLegal.createMany\",\"CustomerLegal.updateOne\",\"CustomerLegal.updateMany\",\"CustomerLegal.upsertOne\",\"CustomerLegal.deleteOne\",\"CustomerLegal.deleteMany\",\"CustomerLegal.groupBy\",\"CustomerLegal.aggregate\",\"Guild.findUnique\",\"Guild.findUniqueOrThrow\",\"Guild.findFirst\",\"Guild.findFirstOrThrow\",\"Guild.findMany\",\"Guild.createOne\",\"Guild.createMany\",\"Guild.updateOne\",\"Guild.updateMany\",\"Guild.upsertOne\",\"Guild.deleteOne\",\"Guild.deleteMany\",\"Guild.groupBy\",\"Guild.aggregate\",\"SalesInvoice.findUnique\",\"SalesInvoice.findUniqueOrThrow\",\"SalesInvoice.findFirst\",\"SalesInvoice.findFirstOrThrow\",\"SalesInvoice.findMany\",\"SalesInvoice.createOne\",\"SalesInvoice.createMany\",\"SalesInvoice.updateOne\",\"SalesInvoice.updateMany\",\"SalesInvoice.upsertOne\",\"SalesInvoice.deleteOne\",\"SalesInvoice.deleteMany\",\"SalesInvoice.groupBy\",\"SalesInvoice.aggregate\",\"SalesInvoiceItem.findUnique\",\"SalesInvoiceItem.findUniqueOrThrow\",\"SalesInvoiceItem.findFirst\",\"SalesInvoiceItem.findFirstOrThrow\",\"SalesInvoiceItem.findMany\",\"SalesInvoiceItem.createOne\",\"SalesInvoiceItem.createMany\",\"SalesInvoiceItem.updateOne\",\"SalesInvoiceItem.updateMany\",\"SalesInvoiceItem.upsertOne\",\"SalesInvoiceItem.deleteOne\",\"SalesInvoiceItem.deleteMany\",\"SalesInvoiceItem.groupBy\",\"SalesInvoiceItem.aggregate\",\"SaleInvoiceFiscals.findUnique\",\"SaleInvoiceFiscals.findUniqueOrThrow\",\"SaleInvoiceFiscals.findFirst\",\"SaleInvoiceFiscals.findFirstOrThrow\",\"SaleInvoiceFiscals.findMany\",\"SaleInvoiceFiscals.createOne\",\"SaleInvoiceFiscals.createMany\",\"SaleInvoiceFiscals.updateOne\",\"SaleInvoiceFiscals.updateMany\",\"SaleInvoiceFiscals.upsertOne\",\"SaleInvoiceFiscals.deleteOne\",\"SaleInvoiceFiscals.deleteMany\",\"SaleInvoiceFiscals.groupBy\",\"SaleInvoiceFiscals.aggregate\",\"SaleInvoiceFiscalAttempts.findUnique\",\"SaleInvoiceFiscalAttempts.findUniqueOrThrow\",\"SaleInvoiceFiscalAttempts.findFirst\",\"SaleInvoiceFiscalAttempts.findFirstOrThrow\",\"SaleInvoiceFiscalAttempts.findMany\",\"SaleInvoiceFiscalAttempts.createOne\",\"SaleInvoiceFiscalAttempts.createMany\",\"SaleInvoiceFiscalAttempts.updateOne\",\"SaleInvoiceFiscalAttempts.updateMany\",\"SaleInvoiceFiscalAttempts.upsertOne\",\"SaleInvoiceFiscalAttempts.deleteOne\",\"SaleInvoiceFiscalAttempts.deleteMany\",\"SaleInvoiceFiscalAttempts.groupBy\",\"SaleInvoiceFiscalAttempts.aggregate\",\"SalesInvoicePayment.findUnique\",\"SalesInvoicePayment.findUniqueOrThrow\",\"SalesInvoicePayment.findFirst\",\"SalesInvoicePayment.findFirstOrThrow\",\"SalesInvoicePayment.findMany\",\"SalesInvoicePayment.createOne\",\"SalesInvoicePayment.createMany\",\"SalesInvoicePayment.updateOne\",\"SalesInvoicePayment.updateMany\",\"SalesInvoicePayment.upsertOne\",\"SalesInvoicePayment.deleteOne\",\"SalesInvoicePayment.deleteMany\",\"SalesInvoicePayment.groupBy\",\"SalesInvoicePayment.aggregate\",\"SalesInvoicePaymentTerminalInfo.findUnique\",\"SalesInvoicePaymentTerminalInfo.findUniqueOrThrow\",\"SalesInvoicePaymentTerminalInfo.findFirst\",\"SalesInvoicePaymentTerminalInfo.findFirstOrThrow\",\"SalesInvoicePaymentTerminalInfo.findMany\",\"SalesInvoicePaymentTerminalInfo.createOne\",\"SalesInvoicePaymentTerminalInfo.createMany\",\"SalesInvoicePaymentTerminalInfo.updateOne\",\"SalesInvoicePaymentTerminalInfo.updateMany\",\"SalesInvoicePaymentTerminalInfo.upsertOne\",\"SalesInvoicePaymentTerminalInfo.deleteOne\",\"SalesInvoicePaymentTerminalInfo.deleteMany\",\"SalesInvoicePaymentTerminalInfo.groupBy\",\"SalesInvoicePaymentTerminalInfo.aggregate\",\"Service.findUnique\",\"Service.findUniqueOrThrow\",\"Service.findFirst\",\"Service.findFirstOrThrow\",\"Service.findMany\",\"Service.createOne\",\"Service.createMany\",\"Service.updateOne\",\"Service.updateMany\",\"Service.upsertOne\",\"Service.deleteOne\",\"Service.deleteMany\",\"Service.groupBy\",\"Service.aggregate\",\"ServiceCategory.findUnique\",\"ServiceCategory.findUniqueOrThrow\",\"ServiceCategory.findFirst\",\"ServiceCategory.findFirstOrThrow\",\"ServiceCategory.findMany\",\"ServiceCategory.createOne\",\"ServiceCategory.createMany\",\"ServiceCategory.updateOne\",\"ServiceCategory.updateMany\",\"ServiceCategory.upsertOne\",\"ServiceCategory.deleteOne\",\"ServiceCategory.deleteMany\",\"ServiceCategory.groupBy\",\"ServiceCategory.aggregate\",\"AND\",\"OR\",\"NOT\",\"id\",\"name\",\"description\",\"image_url\",\"account_id\",\"complex_id\",\"created_at\",\"updated_at\",\"deleted_at\",\"equals\",\"in\",\"notIn\",\"lt\",\"lte\",\"gt\",\"gte\",\"not\",\"contains\",\"startsWith\",\"endsWith\",\"search\",\"every\",\"some\",\"none\",\"local_sku\",\"barcode\",\"category_id\",\"base_sale_price\",\"terminal_id\",\"stan\",\"rrn\",\"transaction_date_time\",\"customer_card_no\",\"payment_id\",\"terminal_id_stan_rrn_payment_id\",\"amount\",\"PaymentMethodType\",\"payment_method\",\"paid_at\",\"invoice_id\",\"attempt_no\",\"FiscalResponseStatus\",\"status\",\"tax_id\",\"FiscalRequestType\",\"type\",\"request_payload\",\"response_payload\",\"error_message\",\"sent_at\",\"received_at\",\"fiscal_id\",\"string_contains\",\"string_starts_with\",\"string_ends_with\",\"array_starts_with\",\"array_ends_with\",\"array_contains\",\"retry_count\",\"last_attempt_at\",\"quantity\",\"measure_unit_text\",\"measure_unit_code\",\"sku_code\",\"sku_vat\",\"unit_price\",\"total_amount\",\"discount\",\"notes\",\"payload\",\"good_snapshot\",\"good_id\",\"service_id\",\"code\",\"invoice_number\",\"invoice_date\",\"unknown_customer\",\"customer_id\",\"consumer_account_id\",\"pos_id\",\"economic_code\",\"registration_number\",\"postal_code\",\"business_activity_id\",\"first_name\",\"last_name\",\"national_id\",\"mobile_number\",\"is_favorite\",\"CustomerType\",\"message\",\"createdAt\",\"VAT\",\"SKUGuildType\",\"is_public\",\"is_domestic\",\"is_default_guild_good\",\"guild_id\",\"GoodPricingModel\",\"pricing_model\",\"sku_id\",\"measure_unit_id\",\"model\",\"serial_number\",\"POSStatus\",\"POSType\",\"pos_type\",\"device_id\",\"provider_id\",\"branch_code\",\"address\",\"partner_token\",\"consumer_id\",\"registration_code\",\"partner_id\",\"national_code\",\"ConsumerType\",\"ConsumerStatus\",\"ConsumerRole\",\"role\",\"version\",\"build_number\",\"is_minimum_supported\",\"ApplicationReleaseType\",\"release_type\",\"ApplicationPlatform\",\"platform\",\"release_date\",\"uuid\",\"app_version\",\"ApplicationPublisher\",\"publisher\",\"os_version\",\"sdk_version\",\"release_number\",\"user_agent\",\"browser_name\",\"fcm_token\",\"PartnerStatus\",\"ProviderRole\",\"BusinessRole\",\"business_id\",\"permission_id\",\"ComplexRole\",\"POSRole\",\"PartnerFiscalSwitchType\",\"fiscal_switch_type\",\"logo_url\",\"PartnerRole\",\"license_activation_id\",\"credit_id\",\"charge_transaction_id\",\"activation_expires_at\",\"tracking_code\",\"purchased_count\",\"expires_at\",\"activation_id\",\"starts_at\",\"license_id\",\"accounts_limit\",\"brand_id\",\"username\",\"password\",\"AccountStatus\",\"AccountType\",\"admin_id\",\"business_activity_id_economic_code\",\"business_activity_id_national_id\",\"fiscal_id_attempt_no\",\"permission_id_business_id\",\"permission_id_complex_id\",\"permission_id_pos_id\",\"partner_id_registration_code\",\"mobile_number_consumer_id\",\"partner_id_national_code\",\"invoice_number_pos_id\",\"economic_code_consumer_id\",\"is\",\"isNot\",\"connectOrCreate\",\"upsert\",\"createMany\",\"set\",\"disconnect\",\"delete\",\"connect\",\"updateMany\",\"deleteMany\",\"_relevance\",\"increment\",\"decrement\",\"multiply\",\"divide\"]"), - graph: "uhfOApIFCgUAAO4LACAUAADGCwAg4QUAAO0LADDiBQAAAwAQ4wUAAO0LADDkBQEAAAAB6AUBAAAAAeoFQADFCQAh6wVAAMUJACGJBwEAwwkAIQEAAAABACAKBQAA7gsAIBQAAMYLACDhBQAA7QsAMOIFAAADABDjBQAA7QsAMOQFAQDDCQAh6AUBAMMJACHqBUAAxQkAIesFQADFCQAhiQcBAMMJACEDBQAA2xQAIBQAAMQUACCgBwAA3BQAIAMAAAADACABAAAEADACAAABACABAAAAAwAgAQAAAAMAIAsUAADGCwAgQwAA7AsAIOEFAADqCwAw4gUAAAgAEOMFAADqCwAw5AUBAMMJACHoBQEAwwkAIeoFQADFCQAh6wVAAMUJACHQBgEAwwkAIdsGAADrC_AGIgEAAAAIACADFAAAxBQAIEMAANgUACCgBwAA2hQAIAsUAADGCwAgQwAA7AsAIOEFAADqCwAw4gUAAAgAEOMFAADqCwAw5AUBAAAAAegFAQAAAAHqBUAAxQkAIesFQADFCQAh0AYBAMMJACHbBgAA6wvwBiIDAAAACAAgAQAACgAwAgAACwAgFRAAAPkJACAUAADYCgAgKAAAqQsAIEIAAOgLACBDAADpCwAgRAAA2QoAIOEFAADlCwAw4gUAAA0AEOMFAADlCwAw5AUBAMMJACHlBQEAwwkAIegFAQDDCQAh6QUBAMMJACHqBUAAxQkAIesFQADFCQAhjgYAAOYLzQYiygYBAMQJACHLBgEAxAkAIc4GAADnC84GIs8GAQDECQAh0AYBAMQJACELEAAAxw8AIBQAAOgRACAoAACtFAAgQgAA1xQAIEMAANgUACBEAADpEQAgygYAAO8LACDLBgAA7wsAIM8GAADvCwAg0AYAAO8LACCgBwAA2RQAIBUQAAD5CQAgFAAA2AoAICgAAKkLACBCAADoCwAgQwAA6QsAIEQAANkKACDhBQAA5QsAMOIFAAANABDjBQAA5QsAMOQFAQAAAAHlBQEAwwkAIegFAQAAAAHpBQEAwwkAIeoFQADFCQAh6wVAAMUJACGOBgAA5gvNBiLKBgEAxAkAIcsGAQAAAAHOBgAA5wvOBiLPBgEAxAkAIdAGAQDECQAhAwAAAA0AIAEAAA4AMAIAAA8AIBQIAACHCgAgEQAAwAsAIBsAALYLACA4AADhCwAgOgAA4gsAIDsAANsKACA8AADjCwAgPQAA5AsAIOEFAADgCwAw4gUAABEAEOMFAADgCwAw5AUBAMMJACHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACGXBgEAwwkAIbQGAQDDCQAhxQYBAMMJACHTBgEAwwkAIdQGAQDDCQAhCQgAAOAPACARAADBFAAgGwAAuBQAIDgAANEUACA6AADTFAAgOwAA6xEAIDwAANQUACA9AADVFAAgoAcAANYUACAVCAAAhwoAIBEAAMALACAbAAC2CwAgOAAA4QsAIDoAAOILACA7AADbCgAgPAAA4wsAID0AAOQLACDhBQAA4AsAMOIFAAARABDjBQAA4AsAMOQFAQAAAAHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACGXBgEAwwkAIbQGAQDDCQAhxQYBAMMJACHTBgEAwwkAIdQGAQDDCQAhlAcAAN8LACADAAAAEQAgAQAAEgAwAgAAEwAgEAgAAIcKACAoAADeCwAgOAAA3QsAIOEFAADcCwAw4gUAABUAEOMFAADcCwAw5AUBAMMJACHlBQEAwwkAIeYFAQDECQAh5wUBAMQJACHpBQEAxAkAIeoFQADFCQAh6wVAAMUJACHsBUAAxgkAIcQGIACGCgAhxQYBAMQJACEJCAAA4A8AICgAAK0UACA4AADRFAAg5gUAAO8LACDnBQAA7wsAIOkFAADvCwAg7AUAAO8LACDFBgAA7wsAIKAHAADSFAAgEAgAAIcKACAoAADeCwAgOAAA3QsAIOEFAADcCwAw4gUAABUAEOMFAADcCwAw5AUBAAAAAeUFAQDDCQAh5gUBAMQJACHnBQEAxAkAIekFAQDECQAh6gVAAMUJACHrBUAAxQkAIewFQADGCQAhxAYgAIYKACHFBgEAxAkAIQMAAAAVACABAAAWADACAAAXACAYCQAA2AsAIAoAANkLACALAADaCwAgDAAA2wsAIDYAAJkLACDhBQAA1QsAMOIFAAAZABDjBQAA1QsAMOQFAQDDCQAh5QUBAMMJACHmBQEAxAkAIecFAQDECQAh6gVAAMUJACHrBUAAxQkAIewFQADGCQAh_AUBAMQJACH9BQEAxAkAIf4FAQDECQAh_wUQANcLACG3BgEAxAkAIcQGIACGCgAhxwYAANYLxwYiyAYBAMMJACHJBgEAwwkAIQ4JAADNFAAgCgAAzhQAIAsAAM8UACAMAACqEwAgNgAApRQAIOYFAADvCwAg5wUAAO8LACDsBQAA7wsAIPwFAADvCwAg_QUAAO8LACD-BQAA7wsAIP8FAADvCwAgtwYAAO8LACCgBwAA0BQAIBgJAADYCwAgCgAA2QsAIAsAANoLACAMAADbCwAgNgAAmQsAIOEFAADVCwAw4gUAABkAEOMFAADVCwAw5AUBAAAAAeUFAQDDCQAh5gUBAMQJACHnBQEAxAkAIeoFQADFCQAh6wVAAMUJACHsBUAAxgkAIfwFAQAAAAH9BQEAAAAB_gUBAMQJACH_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_CwAw4gUAAEQAEOMFAAC_CwAw5QUBAMMJACHqBUAAxQkAIesFQADFCQAh1AYBAAAAAdUGAQDDCQAh1gYBAMMJACGQBwAAvgsAIAMAAABEACABAABFADACAABGACAMEwAArwsAICAAAL0LACDhBQAAvAsAMOIFAABIABDjBQAAvAsAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIdYGAQDDCQAh_AZAAMUJACH9BgEAwwkAIf4GAgDiCQAhAxMAALEUACAgAAC_FAAgoAcAAMAUACAMEwAArwsAICAAAL0LACDhBQAAvAsAMOIFAABIABDjBQAAvAsAMOQFAQAAAAHqBUAAxQkAIesFQADFCQAh1gYBAMMJACH8BkAAxQkAIf0GAQAAAAH-BgIA4gkAIQMAAABIACABAABJADACAABKACAKFwAAuwsAIBoAALYLACDhBQAAugsAMOIFAABMABDjBQAAugsAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIfsGAQDDCQAhgwcCAOIJACEDFwAAvRQAIBoAALgUACCgBwAAvhQAIAoXAAC7CwAgGgAAtgsAIOEFAAC6CwAw4gUAAEwAEOMFAAC6CwAw5AUBAAAAAeoFQADFCQAh6wVAAMUJACH7BgEAwwkAIYMHAgDiCQAhAwAAAEwAIAEAAE0AMAIAAE4AIA4MAAD0CgAgGAAA8woAIBkAAPUKACAfAAD2CgAg4QUAAPIKADDiBQAAUAAQ4wUAAPIKADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACG3BgEAwwkAIf8GQADFCQAhgQdAAMUJACGCBwEAwwkAIQEAAABQACALFwAAuQsAIBoAALYLACDhBQAAuAsAMOIFAABSABDjBQAAuAsAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIfsGAQDDCQAh_wZAAMUJACGABwEAxAkAIQQXAAC7FAAgGgAAuBQAIIAHAADvCwAgoAcAALwUACALFwAAuQsAIBoAALYLACDhBQAAuAsAMOIFAABSABDjBQAAuAsAMOQFAQAAAAHqBUAAxQkAIesFQADFCQAh-wYBAMMJACH_BkAAxQkAIYAHAQDECQAhAwAAAFIAIAEAAFMAMAIAAFQAIAMAAABSACABAABTADACAABUACABAAAAUgAgAQAAAFAAIAwUAACKCwAgGwAAtgsAIB4AALcLACDhBQAAtQsAMOIFAABZABDjBQAAtQsAMOQFAQDDCQAh6AUBAMQJACHqBUAAxQkAIesFQADFCQAh-QYBAMQJACH6BgEAxAkAIQcUAADoEQAgGwAAuBQAIB4AALkUACDoBQAA7wsAIPkGAADvCwAg-gYAAO8LACCgBwAAuhQAIAwUAACKCwAgGwAAtgsAIB4AALcLACDhBQAAtQsAMOIFAABZABDjBQAAtQsAMOQFAQAAAAHoBQEAAAAB6gVAAMUJACHrBUAAxQkAIfkGAQDECQAh-gYBAAAAAQMAAABZACABAABaADACAABbACABAAAAUAAgAQAAADIAIAkXAACzCwAgHQAAtAsAIOEFAACyCwAw4gUAAF8AEOMFAACyCwAw5AUBAMMJACHqBUAAxQkAIesFQADFCQAh-wYBAMQJACEBAAAAXwAgDBMAAK8LACAcAACxCwAg4QUAALALADDiBQAAYQAQ4wUAALALADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACHWBgEAwwkAIfwGQADFCQAh_QYBAMMJACH-BgIA4gkAIQEAAABhACAEFwAAtRQAIB0AALYUACD7BgAA7wsAIKAHAAC3FAAgCRcAALMLACAdAAC0CwAg4QUAALILADDiBQAAXwAQ4wUAALILADDkBQEAAAAB6gVAAMUJACHrBUAAxQkAIfsGAQDECQAhAwAAAF8AIAEAAGMAMAIAAGQAIAEAAABfACABAAAAWQAgAQAAAFIAIAEAAABZACABAAAATAAgAxMAALEUACAcAACzFAAgoAcAALQUACAMEwAArwsAIBwAALELACDhBQAAsAsAMOIFAABhABDjBQAAsAsAMOQFAQAAAAHqBUAAxQkAIesFQADFCQAh1gYBAMMJACH8BkAAxQkAIf0GAQAAAAH-BgIA4gkAIQMAAABhACABAABrADACAABsACAMEwAArwsAIBkAAPUKACDhBQAArgsAMOIFAABuABDjBQAArgsAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIdYGAQDDCQAh_AZAAMUJACH9BgEAwwkAIf4GAgDiCQAhAxMAALEUACAZAACrEwAgoAcAALIUACAMEwAArwsAIBkAAPUKACDhBQAArgsAMOIFAABuABDjBQAArgsAMOQFAQAAAAHqBUAAxQkAIesFQADFCQAh1gYBAMMJACH8BkAAxQkAIf0GAQAAAAH-BgIA4gkAIQMAAABuACABAABvADACAABwACABAAAAPQAgAQAAADsAIAEAAABEACABAAAASAAgAQAAAGEAIAEAAABuACABAAAARAAgAQAAADIAIAEAAAARACABAAAANwAgAQAAAA0AIAklAADYCgAgJwAA2QoAICkAANoKACArAADbCgAg4QUAANcKADDiBQAAfQAQ4wUAANcKADDkBQEAwwkAIbIGAQDDCQAhAQAAAH0AIAkkAACtCwAgJgAApQsAIOEFAACrCwAw4gUAAH8AEOMFAACrCwAw5AUBAMMJACGzBgEAwwkAIdsGAACsC_UGIvIGAQDDCQAhAyQAAK8UACAmAACrFAAgoAcAALAUACAKJAAArQsAICYAAKULACDhBQAAqwsAMOIFAAB_ABDjBQAAqwsAMOQFAQAAAAGzBgEAwwkAIdsGAACsC_UGIvIGAQDDCQAhjwcAAKoLACADAAAAfwAgAQAAgAEAMAIAAIEBACAJJgAApQsAICgAAKkLACDhBQAApwsAMOIFAACDAQAQ4wUAAKcLADDkBQEAwwkAIekFAQDDCQAh2wYAAKgL9AYi8gYBAMMJACEDJgAAqxQAICgAAK0UACCgBwAArhQAIAomAAClCwAgKAAAqQsAIOEFAACnCwAw4gUAAIMBABDjBQAApwsAMOQFAQAAAAHpBQEAwwkAIdsGAACoC_QGIvIGAQDDCQAhjgcAAKYLACADAAAAgwEAIAEAAIQBADACAACFAQAgCSYAAKULACAqAAD0CgAg4QUAAKMLADDiBQAAhwEAEOMFAACjCwAw5AUBAMMJACHbBgAApAvxBiLxBgEAwwkAIfIGAQDDCQAhAyYAAKsUACAqAACqEwAgoAcAAKwUACAKJgAApQsAICoAAPQKACDhBQAAowsAMOIFAACHAQAQ4wUAAKMLADDkBQEAAAAB2wYAAKQL8QYi8QYBAMMJACHyBgEAwwkAIY0HAACiCwAgAwAAAIcBACABAACIAQAwAgAAiQEAIAEAAAB_ACABAAAAgwEAIAEAAACHAQAgAQAAAFkAIAMAAAAtACABAAAuADACAAAvACABAAAALQAgCy0AAOMJACAvAADkCQAg4QUAAOEJADDiBQAAkQEAEOMFAADhCQAw5AUBAMMJACHqBUAAxQkAIesFQADFCQAhiwYBAMMJACGeBgIA4gkAIZ8GQADGCQAhAQAAAJEBACAQLgAAoQsAIOEFAACeCwAw4gUAAJMBABDjBQAAngsAMOQFAQDDCQAh6gVAAMUJACGMBgIA4gkAIY4GAACfC44GIo8GAQDECQAhkQYAAKALkQYikgYAALkKACCTBgAAuQoAIJQGAQDECQAhlQZAAMYJACGWBkAAxgkAIZcGAQDDCQAhCC4AAKkUACCPBgAA7wsAIJIGAADvCwAgkwYAAO8LACCUBgAA7wsAIJUGAADvCwAglgYAAO8LACCgBwAAqhQAIBEuAAChCwAg4QUAAJ4LADDiBQAAkwEAEOMFAACeCwAw5AUBAAAAAeoFQADFCQAhjAYCAOIJACGOBgAAnwuOBiKPBgEAAAABkQYAAKALkQYikgYAALkKACCTBgAAuQoAIJQGAQDECQAhlQZAAMYJACGWBkAAxgkAIZcGAQDDCQAhjAcAAJ0LACADAAAAkwEAIAEAAJQBADACAACVAQAgAQAAAJMBACADAAAAIwAgAQAAJAAwAgAAJQAgCy0AAOMJACAyAACcCwAg4QUAAJoLADDiBQAAmQEAEOMFAACaCwAw5AUBAMMJACHqBUAAxQkAIYcGEACECgAhiQYAAJsLiQYiigZAAMUJACGLBgEAwwkAIQMtAADWDAAgMgAApxQAIKAHAACoFAAgCy0AAOMJACAyAACcCwAg4QUAAJoLADDiBQAAmQEAEOMFAACaCwAw5AUBAAAAAeoFQADFCQAhhwYQAIQKACGJBgAAmwuJBiKKBkAAxQkAIYsGAQDDCQAhAwAAAJkBACABAACaAQAwAgAAmwEAIA0xAADPCQAg4QUAAM4JADDiBQAAnQEAEOMFAADOCQAw5AUBAMMJACHmBQEAxAkAIeoFQADFCQAhgAYBAMMJACGBBgEAwwkAIYIGAQDDCQAhgwZAAMUJACGEBgEAxAkAIYUGAQDDCQAhAQAAAJ0BACABAAAAIwAgAQAAAJkBACABAAAAGQAgEgkBAMMJACELAACYCwAgNgAAmQsAIOEFAACXCwAw4gUAAKIBABDjBQAAlwsAMOQFAQDDCQAh5QUBAMMJACHmBQEAxAkAIegFAQDDCQAh6QUBAMMJACHqBUAAxQkAIesFQADFCQAh7AVAAMYJACH8BQEAxAkAIf0FAQDECQAh_gUBAMQJACH_BRAAhAoAIQEAAACiAQAgDTUAAMcJACDhBQAAwgkAMOIFAACkAQAQ4wUAAMIJADDkBQEAwwkAIeUFAQDDCQAh5gUBAMQJACHnBQEAxAkAIegFAQDDCQAh6QUBAMMJACHqBUAAxQkAIesFQADFCQAh7AVAAMYJACEBAAAApAEAIAgLAACkFAAgNgAApRQAIOYFAADvCwAg7AUAAO8LACD8BQAA7wsAIP0FAADvCwAg_gUAAO8LACCgBwAAphQAIBIJAQAAAAELAACYCwAgNgAAmQsAIOEFAACXCwAw4gUAAKIBABDjBQAAlwsAMOQFAQAAAAHlBQEAwwkAIeYFAQDECQAh6AUBAMMJACHpBQEAwwkAIeoFQADFCQAh6wVAAMUJACHsBUAAxgkAIfwFAQAAAAH9BQEAAAAB_gUBAMQJACH_BRAAhAoAIQMAAACiAQAgAQAApgEAMAIAAKcBACABAAAAogEAIAMAAAAjACABAAAkADACAAAlACABAAAAIwAgAQAAACMAIAoHAADpCQAgOQAA6gkAIOEFAADoCQAw4gUAAK0BABDjBQAA6AkAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAhrQYBAMQJACEBAAAArQEAIA4MAAD0CgAgOQAA6gkAID4AAMUKACA_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-AQAgAwAAAPABACBRAAD4AQAgUgAA_AEAIAEAAADwAQAgAQAAAPMBACAEBAAAhhQAIFcAAIgUACBYAACHFAAg1wYAAO8LACAK4QUAAIsLADDiBQAAhAIAEOMFAACLCwAw5AUBALQJACHqBUAAtgkAIesFQAC2CQAhuAYBALQJACG5BgEAtAkAIbsGAQC0CQAh1wYBALUJACEDAAAA8wEAIAEAAIMCADBWAACEAgAgAwAAAPMBACABAAD0AQAwAgAA8AEAIAwGAACHCwAgJQAAigsAIEUAAIgLACBGAACJCwAg4QUAAIQLADDiBQAAigIAEOMFAACECwAw5AUBAAAAAY4GAACFC4gHIpEGAACGC4kHIoUHAQAAAAGGBwEAwwkAIQEAAACHAgAgAQAAAIcCACAMBgAAhwsAICUAAIoLACBFAACICwAgRgAAiQsAIOEFAACECwAw4gUAAIoCABDjBQAAhAsAMOQFAQDDCQAhjgYAAIULiAcikQYAAIYLiQcihQcBAMMJACGGBwEAwwkAIQUGAACCFAAgJQAA6BEAIEUAAIMUACBGAACEFAAgoAcAAIUUACADAAAAigIAIAEAAIsCADACAACHAgAgAwAAAIoCACABAACLAgAwAgAAhwIAIAMAAACKAgAgAQAAiwIAMAIAAIcCACAJBgAA_hMAICUAAIEUACBFAAD_EwAgRgAAgBQAIOQFAQAAAAGOBgAAAIgHApEGAAAAiQcChQcBAAAAAYYHAQAAAAEBTAAAjwIAIAXkBQEAAAABjgYAAACIBwKRBgAAAIkHAoUHAQAAAAGGBwEAAAABAUwAAJECADAJBgAA5BMAICUAAOcTACBFAADlEwAgRgAA5hMAIOQFAQDzCwAhjgYAAOITiAcikQYAAOMTiQcihQcBAPMLACGGBwEA8wsAIQIAAACHAgAgTAAAkwIAIAXkBQEA8wsAIY4GAADiE4gHIpEGAADjE4kHIoUHAQDzCwAhhgcBAPMLACECAAAAigIAIEwAAJUCACADAAAAhwIAIFEAAI8CACBSAACTAgAgAQAAAIcCACABAAAAigIAIAMEAADfEwAgVwAA4RMAIFgAAOATACAI4QUAAP0KADDiBQAAmwIAEOMFAAD9CgAw5AUBALQJACGOBgAA_gqIByKRBgAA_wqJByKFBwEAtAkAIYYHAQC0CQAhAwAAAIoCACABAACaAgAwVgAAmwIAIAMAAACKAgAgAQAAiwIAMAIAAIcCACAIEgAA_AoAIOEFAAD7CgAw4gUAAKECABDjBQAA-woAMOQFAQAAAAHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACEBAAAAngIAIAEAAACeAgAgCBIAAPwKACDhBQAA-woAMOIFAAChAgAQ4wUAAPsKADDkBQEAwwkAIeUFAQDDCQAh6gVAAMUJACHrBUAAxQkAIQISAADdEwAgoAcAAN4TACADAAAAoQIAIAEAAKICADACAACeAgAgAwAAAKECACABAACiAgAwAgAAngIAIAMAAAChAgAgAQAAogIAMAIAAJ4CACAFEgAA3BMAIOQFAQAAAAHlBQEAAAAB6gVAAAAAAesFQAAAAAEBTAAApgIAIATkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAABAUwAAKgCADAFEgAAzxMAIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhAgAAAJ4CACBMAACqAgAgBOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhAgAAAKECACBMAACsAgAgAwAAAJ4CACBRAACmAgAgUgAAqgIAIAEAAACeAgAgAQAAAKECACADBAAAzBMAIFcAAM4TACBYAADNEwAgB-EFAAD6CgAw4gUAALICABDjBQAA-goAMOQFAQC0CQAh5QUBALQJACHqBUAAtgkAIesFQAC2CQAhAwAAAKECACABAACxAgAwVgAAsgIAIAMAAAChAgAgAQAAogIAMAIAAJ4CACABAAAAzgEAIAEAAADOAQAgAwAAAMsBACABAADNAQAwAgAAzgEAIAMAAADLAQAgAQAAzQEAMAIAAM4BACADAAAAywEAIAEAAM0BADACAADOAQAgCEAAAMoTACBBAADLEwAg5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAegGAQAAAAGEBwEAAAABAUwAALoCACAG5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAegGAQAAAAGEBwEAAAABAUwAALwCADAIQAAAvxMAIEEAAMATACDkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIegGAQD0CwAhhAcBAPMLACECAAAAzgEAIEwAAL4CACAG5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACHoBgEA9AsAIYQHAQDzCwAhAgAAAMsBACBMAADAAgAgAwAAAM4BACBRAAC6AgAgUgAAvgIAIAEAAADOAQAgAQAAAMsBACAEBAAAvBMAIFcAAL4TACBYAAC9EwAg6AYAAO8LACAJ4QUAAPkKADDiBQAAxgIAEOMFAAD5CgAw5AUBALQJACHlBQEAtAkAIeoFQAC2CQAh6wVAALYJACHoBgEAtQkAIYQHAQC0CQAhAwAAAMsBACABAADFAgAwVgAAxgIAIAMAAADLAQAgAQAAzQEAMAIAAM4BACABAAAASgAgAQAAAEoAIAMAAABIACABAABJADACAABKACADAAAASAAgAQAASQAwAgAASgAgAwAAAEgAIAEAAEkAMAIAAEoAIAkTAAC7EwAgIAAA0xIAIOQFAQAAAAHqBUAAAAAB6wVAAAAAAdYGAQAAAAH8BkAAAAAB_QYBAAAAAf4GAgAAAAEBTAAAzgIAIAfkBQEAAAAB6gVAAAAAAesFQAAAAAHWBgEAAAAB_AZAAAAAAf0GAQAAAAH-BgIAAAABAUwAANACADAJEwAAuhMAICAAALwSACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACHWBgEA8wsAIfwGQAD1CwAh_QYBAPMLACH-BgIAvAwAIQIAAABKACBMAADSAgAgB-QFAQDzCwAh6gVAAPULACHrBUAA9QsAIdYGAQDzCwAh_AZAAPULACH9BgEA8wsAIf4GAgC8DAAhAgAAAEgAIEwAANQCACADAAAASgAgUQAAzgIAIFIAANICACABAAAASgAgAQAAAEgAIAUEAAC1EwAgVwAAuBMAIFgAALcTACCfAQAAthMAIKABAAC5EwAgCuEFAAD4CgAw4gUAANoCABDjBQAA-AoAMOQFAQC0CQAh6gVAALYJACHrBUAAtgkAIdYGAQC0CQAh_AZAALYJACH9BgEAtAkAIf4GAgDVCQAhAwAAAEgAIAEAANkCADBWAADaAgAgAwAAAEgAIAEAAEkAMAIAAEoAIAEAAABOACABAAAATgAgAwAAAEwAIAEAAE0AMAIAAE4AIAMAAABMACABAABNADACAABOACADAAAATAAgAQAATQAwAgAATgAgBxcAALQTACAaAADREgAg5AUBAAAAAeoFQAAAAAHrBUAAAAAB-wYBAAAAAYMHAgAAAAEBTAAA4gIAIAXkBQEAAAAB6gVAAAAAAesFQAAAAAH7BgEAAAABgwcCAAAAAQFMAADkAgAwBxcAALMTACAaAADIEgAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh-wYBAPMLACGDBwIAvAwAIQIAAABOACBMAADmAgAgBeQFAQDzCwAh6gVAAPULACHrBUAA9QsAIfsGAQDzCwAhgwcCALwMACECAAAATAAgTAAA6AIAIAMAAABOACBRAADiAgAgUgAA5gIAIAEAAABOACABAAAATAAgBQQAAK4TACBXAACxEwAgWAAAsBMAIJ8BAACvEwAgoAEAALITACAI4QUAAPcKADDiBQAA7gIAEOMFAAD3CgAw5AUBALQJACHqBUAAtgkAIesFQAC2CQAh-wYBALQJACGDBwIA1QkAIQMAAABMACABAADtAgAwVgAA7gIAIAMAAABMACABAABNADACAABOACAODAAA9AoAIBgAAPMKACAZAAD1CgAgHwAA9goAIOEFAADyCgAw4gUAAFAAEOMFAADyCgAw5AUBAAAAAeoFQADFCQAh6wVAAMUJACG3BgEAAAAB_wZAAMUJACGBB0AAxQkAIYIHAQAAAAEBAAAA8QIAIAEAAADxAgAgBQwAAKoTACAYAACpEwAgGQAAqxMAIB8AAKwTACCgBwAArRMAIAMAAABQACABAAD0AgAwAgAA8QIAIAMAAABQACABAAD0AgAwAgAA8QIAIAMAAABQACABAAD0AgAwAgAA8QIAIAsMAADPEgAgGAAAjQ8AIBkAAI4PACAfAACPDwAg5AUBAAAAAeoFQAAAAAHrBUAAAAABtwYBAAAAAf8GQAAAAAGBB0AAAAABggcBAAAAAQFMAAD4AgAgB-QFAQAAAAHqBUAAAAAB6wVAAAAAAbcGAQAAAAH_BkAAAAABgQdAAAAAAYIHAQAAAAEBTAAA-gIAMAsMAADOEgAgGAAA7A4AIBkAAO0OACAfAADuDgAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhtwYBAPMLACH_BkAA9QsAIYEHQAD1CwAhggcBAPMLACECAAAA8QIAIEwAAPwCACAH5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhtwYBAPMLACH_BkAA9QsAIYEHQAD1CwAhggcBAPMLACECAAAAUAAgTAAA_gIAIAMAAADxAgAgUQAA-AIAIFIAAPwCACABAAAA8QIAIAEAAABQACADBAAAphMAIFcAAKgTACBYAACnEwAgCuEFAADxCgAw4gUAAIQDABDjBQAA8QoAMOQFAQC0CQAh6gVAALYJACHrBUAAtgkAIbcGAQC0CQAh_wZAALYJACGBB0AAtgkAIYIHAQC0CQAhAwAAAFAAIAEAAIMDADBWAACEAwAgAwAAAFAAIAEAAPQCADACAADxAgAgAQAAAHAAIAEAAABwACADAAAAbgAgAQAAbwAwAgAAcAAgAwAAAG4AIAEAAG8AMAIAAHAAIAMAAABuACABAABvADACAABwACAJEwAApRMAIBkAAI8SACDkBQEAAAAB6gVAAAAAAesFQAAAAAHWBgEAAAAB_AZAAAAAAf0GAQAAAAH-BgIAAAABAUwAAIwDACAH5AUBAAAAAeoFQAAAAAHrBUAAAAAB1gYBAAAAAfwGQAAAAAH9BgEAAAAB_gYCAAAAAQFMAACOAwAwCRMAAKQTACAZAACCEgAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh1gYBAPMLACH8BkAA9QsAIf0GAQDzCwAh_gYCALwMACECAAAAcAAgTAAAkAMAIAfkBQEA8wsAIeoFQAD1CwAh6wVAAPULACHWBgEA8wsAIfwGQAD1CwAh_QYBAPMLACH-BgIAvAwAIQIAAABuACBMAACSAwAgAwAAAHAAIFEAAIwDACBSAACQAwAgAQAAAHAAIAEAAABuACAFBAAAnxMAIFcAAKITACBYAAChEwAgnwEAAKATACCgAQAAoxMAIArhBQAA8AoAMOIFAACYAwAQ4wUAAPAKADDkBQEAtAkAIeoFQAC2CQAh6wVAALYJACHWBgEAtAkAIfwGQAC2CQAh_QYBALQJACH-BgIA1QkAIQMAAABuACABAACXAwAwVgAAmAMAIAMAAABuACABAABvADACAABwACABAAAAVAAgAQAAAFQAIAMAAABSACABAABTADACAABUACADAAAAUgAgAQAAUwAwAgAAVAAgAwAAAFIAIAEAAFMAMAIAAFQAIAgXAACMDwAgGgAAjRIAIOQFAQAAAAHqBUAAAAAB6wVAAAAAAfsGAQAAAAH_BkAAAAABgAcBAAAAAQFMAACgAwAgBuQFAQAAAAHqBUAAAAAB6wVAAAAAAfsGAQAAAAH_BkAAAAABgAcBAAAAAQFMAACiAwAwCBcAAIoPACAaAACLEgAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh-wYBAPMLACH_BkAA9QsAIYAHAQD0CwAhAgAAAFQAIEwAAKQDACAG5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh-wYBAPMLACH_BkAA9QsAIYAHAQD0CwAhAgAAAFIAIEwAAKYDACADAAAAVAAgUQAAoAMAIFIAAKQDACABAAAAVAAgAQAAAFIAIAQEAACcEwAgVwAAnhMAIFgAAJ0TACCABwAA7wsAIAnhBQAA7woAMOIFAACsAwAQ4wUAAO8KADDkBQEAtAkAIeoFQAC2CQAh6wVAALYJACH7BgEAtAkAIf8GQAC2CQAhgAcBALUJACEDAAAAUgAgAQAAqwMAMFYAAKwDACADAAAAUgAgAQAAUwAwAgAAVAAgAQAAAGwAIAEAAABsACADAAAAYQAgAQAAawAwAgAAbAAgAwAAAGEAIAEAAGsAMAIAAGwAIAMAAABhACABAABrADACAABsACAJEwAAmxMAIBwAALASACDkBQEAAAAB6gVAAAAAAesFQAAAAAHWBgEAAAAB_AZAAAAAAf0GAQAAAAH-BgIAAAABAUwAALQDACAH5AUBAAAAAeoFQAAAAAHrBUAAAAAB1gYBAAAAAfwGQAAAAAH9BgEAAAAB_gYCAAAAAQFMAAC2AwAwCRMAAJoTACAcAACbEgAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh1gYBAPMLACH8BkAA9QsAIf0GAQDzCwAh_gYCALwMACECAAAAbAAgTAAAuAMAIAfkBQEA8wsAIeoFQAD1CwAh6wVAAPULACHWBgEA8wsAIfwGQAD1CwAh_QYBAPMLACH-BgIAvAwAIQIAAABhACBMAAC6AwAgAwAAAGwAIFEAALQDACBSAAC4AwAgAQAAAGwAIAEAAABhACAFBAAAlRMAIFcAAJgTACBYAACXEwAgnwEAAJYTACCgAQAAmRMAIArhBQAA7goAMOIFAADAAwAQ4wUAAO4KADDkBQEAtAkAIeoFQAC2CQAh6wVAALYJACHWBgEAtAkAIfwGQAC2CQAh_QYBALQJACH-BgIA1QkAIQMAAABhACABAAC_AwAwVgAAwAMAIAMAAABhACABAABrADACAABsACABAAAAZAAgAQAAAGQAIAMAAABfACABAABjADACAABkACADAAAAXwAgAQAAYwAwAgAAZAAgAwAAAF8AIAEAAGMAMAIAAGQAIAYXAACUEwAgHQAArhIAIOQFAQAAAAHqBUAAAAAB6wVAAAAAAfsGAQAAAAEBTAAAyAMAIATkBQEAAAAB6gVAAAAAAesFQAAAAAH7BgEAAAABAUwAAMoDADAGFwAAkxMAIB0AAKcSACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACH7BgEA9AsAIQIAAABkACBMAADMAwAgBOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIfsGAQD0CwAhAgAAAF8AIEwAAM4DACADAAAAZAAgUQAAyAMAIFIAAMwDACABAAAAZAAgAQAAAF8AIAQEAACQEwAgVwAAkhMAIFgAAJETACD7BgAA7wsAIAfhBQAA7QoAMOIFAADUAwAQ4wUAAO0KADDkBQEAtAkAIeoFQAC2CQAh6wVAALYJACH7BgEAtQkAIQMAAABfACABAADTAwAwVgAA1AMAIAMAAABfACABAABjADACAABkACABAAAAWwAgAQAAAFsAIAMAAABZACABAABaADACAABbACADAAAAWQAgAQAAWgAwAgAAWwAgAwAAAFkAIAEAAFoAMAIAAFsAIAkUAAD9DgAgGwAA4BAAIB4AAP4OACDkBQEAAAAB6AUBAAAAAeoFQAAAAAHrBUAAAAAB-QYBAAAAAfoGAQAAAAEBTAAA3AMAIAbkBQEAAAAB6AUBAAAAAeoFQAAAAAHrBUAAAAAB-QYBAAAAAfoGAQAAAAEBTAAA3gMAMAkUAAD6DgAgGwAA3xAAIB4AAPsOACDkBQEA8wsAIegFAQD0CwAh6gVAAPULACHrBUAA9QsAIfkGAQD0CwAh-gYBAPQLACECAAAAWwAgTAAA4AMAIAbkBQEA8wsAIegFAQD0CwAh6gVAAPULACHrBUAA9QsAIfkGAQD0CwAh-gYBAPQLACECAAAAWQAgTAAA4gMAIAMAAABbACBRAADcAwAgUgAA4AMAIAEAAABbACABAAAAWQAgBgQAAI0TACBXAACPEwAgWAAAjhMAIOgFAADvCwAg-QYAAO8LACD6BgAA7wsAIAnhBQAA7AoAMOIFAADoAwAQ4wUAAOwKADDkBQEAtAkAIegFAQC1CQAh6gVAALYJACHrBUAAtgkAIfkGAQC1CQAh-gYBALUJACEDAAAAWQAgAQAA5wMAMFYAAOgDACADAAAAWQAgAQAAWgAwAgAAWwAgAQAAAD8AIAEAAAA_ACADAAAAPQAgAQAAPgAwAgAAPwAgAwAAAD0AIAEAAD4AMAIAAD8AIAMAAAA9ACABAAA-ADACAAA_ACAIEwAAjBMAIBQAAPoSACDkBQEAAAAB6AUBAAAAAeoFQAAAAAHrBUAAAAAB1gYBAAAAAdsGAAAA-QYCAUwAAPADACAG5AUBAAAAAegFAQAAAAHqBUAAAAAB6wVAAAAAAdYGAQAAAAHbBgAAAPkGAgFMAADyAwAwCBMAAIsTACAUAAD4EgAg5AUBAPMLACHoBQEA8wsAIeoFQAD1CwAh6wVAAPULACHWBgEA8wsAIdsGAAD2EvkGIgIAAAA_ACBMAAD0AwAgBuQFAQDzCwAh6AUBAPMLACHqBUAA9QsAIesFQAD1CwAh1gYBAPMLACHbBgAA9hL5BiICAAAAPQAgTAAA9gMAIAMAAAA_ACBRAADwAwAgUgAA9AMAIAEAAAA_ACABAAAAPQAgAwQAAIgTACBXAACKEwAgWAAAiRMAIAnhBQAA6AoAMOIFAAD8AwAQ4wUAAOgKADDkBQEAtAkAIegFAQC0CQAh6gVAALYJACHrBUAAtgkAIdYGAQC0CQAh2wYAAOkK-QYiAwAAAD0AIAEAAPsDADBWAAD8AwAgAwAAAD0AIAEAAD4AMAIAAD8AIBEDAADiCgAgFQAA4woAIBYAAOQKACAhAADlCgAgIgAA5goAICMAAOcKACDhBQAA4AoAMOIFAACCBAAQ4wUAAOAKADDkBQEAAAAB5QUBAMMJACHqBUAAxQkAIesFQADFCQAhjgYAAMMK7wYirQYBAAAAAfYGAADhCvYGIvcGAQDECQAhAQAAAP8DACABAAAA_wMAIBEDAADiCgAgFQAA4woAIBYAAOQKACAhAADlCgAgIgAA5goAICMAAOcKACDhBQAA4AoAMOIFAACCBAAQ4wUAAOAKADDkBQEAwwkAIeUFAQDDCQAh6gVAAMUJACHrBUAAxQkAIY4GAADDCu8GIq0GAQDDCQAh9gYAAOEK9gYi9wYBAMQJACEIAwAAgRMAIBUAAIITACAWAACDEwAgIQAAhBMAICIAAIUTACAjAACGEwAg9wYAAO8LACCgBwAAhxMAIAMAAACCBAAgAQAAgwQAMAIAAP8DACADAAAAggQAIAEAAIMEADACAAD_AwAgAwAAAIIEACABAACDBAAwAgAA_wMAIA4DAAD7EgAgFQAA_BIAIBYAAP0SACAhAAD-EgAgIgAA_xIAICMAAIATACDkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAABjgYAAADvBgKtBgEAAAAB9gYAAAD2BgL3BgEAAAABAUwAAIcEACAI5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAY4GAAAA7wYCrQYBAAAAAfYGAAAA9gYC9wYBAAAAAQFMAACJBAAwDgMAAPERACAVAADyEQAgFgAA8xEAICEAAPQRACAiAAD1EQAgIwAA9hEAIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALUR7wYirQYBAPMLACH2BgAA8BH2BiL3BgEA9AsAIQIAAAD_AwAgTAAAiwQAIAjkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAAC1Ee8GIq0GAQDzCwAh9gYAAPAR9gYi9wYBAPQLACECAAAAggQAIEwAAI0EACADAAAA_wMAIFEAAIcEACBSAACLBAAgAQAAAP8DACABAAAAggQAIAQEAADtEQAgVwAA7xEAIFgAAO4RACD3BgAA7wsAIAvhBQAA3AoAMOIFAACTBAAQ4wUAANwKADDkBQEAtAkAIeUFAQC0CQAh6gVAALYJACHrBUAAtgkAIY4GAAC_Cu8GIq0GAQC0CQAh9gYAAN0K9gYi9wYBALUJACEDAAAAggQAIAEAAJIEADBWAACTBAAgAwAAAIIEACABAACDBAAwAgAA_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_AQAIAMDAADSEQAgPgAA0xEAIKAHAADUEQAgAwAAANMBACABAAD_BAAwAgAA_AQAIAMAAADTAQAgAQAA_wQAMAIAAPwEACADAAAA0wEAIAEAAP8EADACAAD8BAAgCAMAANARACA-AADREQAg5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAY4GAAAA7wYCrQYBAAAAAQFMAACDBQAgBuQFAQAAAAHlBQEAAAAB6gVAAAAAAesFQAAAAAGOBgAAAO8GAq0GAQAAAAEBTAAAhQUAMAgDAAC2EQAgPgAAtxEAIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALUR7wYirQYBAPMLACECAAAA_AQAIEwAAIcFACAG5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACGOBgAAtRHvBiKtBgEA8wsAIQIAAADTAQAgTAAAiQUAIAMAAAD8BAAgUQAAgwUAIFIAAIcFACABAAAA_AQAIAEAAADTAQAgAwQAALIRACBXAAC0EQAgWAAAsxEAIAnhBQAAvgoAMOIFAACPBQAQ4wUAAL4KADDkBQEAtAkAIeUFAQC0CQAh6gVAALYJACHrBUAAtgkAIY4GAAC_Cu8GIq0GAQC0CQAhAwAAANMBACABAACOBQAwVgAAjwUAIAMAAADTAQAgAQAA_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_w8AINIGAADvCwAgCuEFAACZCgAw4gUAALUGABDjBQAAmQoAMOQFAQC0CQAh5QUBALQJACHqBUAAtgkAIesFQAC2CQAhtwYBALQJACHRBgEAtAkAIdIGAQC1CQAhAwAAAK8BACABAAC0BgAwVgAAtQYAIAMAAACvAQAgAQAAtQEAMAIAALYBACABAAAADwAgAQAAAA8AIAMAAAANACABAAAOADACAAAPACADAAAADQAgAQAADgAwAgAADwAgAwAAAA0AIAEAAA4AMAIAAA8AIBIQAADiDgAgFAAA4A4AICgAAP0PACBCAADeDgAgQwAA3w4AIEQAAOEOACDkBQEAAAAB5QUBAAAAAegFAQAAAAHpBQEAAAAB6gVAAAAAAesFQAAAAAGOBgAAAM0GAsoGAQAAAAHLBgEAAAABzgYAAADOBgLPBgEAAAAB0AYBAAAAAQFMAAC9BgAgDOQFAQAAAAHlBQEAAAAB6AUBAAAAAekFAQAAAAHqBUAAAAAB6wVAAAAAAY4GAAAAzQYCygYBAAAAAcsGAQAAAAHOBgAAAM4GAs8GAQAAAAHQBgEAAAABAUwAAL8GADASEAAAwQ4AIBQAAL8OACAoAAD8DwAgQgAAvQ4AIEMAAL4OACBEAADADgAg5AUBAPMLACHlBQEA8wsAIegFAQDzCwAh6QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALoOzQYiygYBAPQLACHLBgEA9AsAIc4GAAC7Ds4GIs8GAQD0CwAh0AYBAPQLACECAAAADwAgTAAAwQYAIAzkBQEA8wsAIeUFAQDzCwAh6AUBAPMLACHpBQEA8wsAIeoFQAD1CwAh6wVAAPULACGOBgAAug7NBiLKBgEA9AsAIcsGAQD0CwAhzgYAALsOzgYizwYBAPQLACHQBgEA9AsAIQIAAAANACBMAADDBgAgAwAAAA8AIFEAAL0GACBSAADBBgAgAQAAAA8AIAEAAAANACAHBAAA-Q8AIFcAAPsPACBYAAD6DwAgygYAAO8LACDLBgAA7wsAIM8GAADvCwAg0AYAAO8LACAP4QUAAJIKADDiBQAAyQYAEOMFAACSCgAw5AUBALQJACHlBQEAtAkAIegFAQC0CQAh6QUBALQJACHqBUAAtgkAIesFQAC2CQAhjgYAAJMKzQYiygYBALUJACHLBgEAtQkAIc4GAACUCs4GIs8GAQC1CQAh0AYBALUJACEDAAAADQAgAQAAyAYAMFYAAMkGACADAAAADQAgAQAADgAwAgAADwAgAQAAABsAIAEAAAAbACADAAAAGQAgAQAAGgAwAgAAGwAgAwAAABkAIAEAABoAMAIAABsAIAMAAAAZACABAAAaADACAAAbACAVCQAAuQ0AIAoAALoNACALAAD4DQAgDAAAuw0AIDYAALwNACDkBQEAAAAB5QUBAAAAAeYFAQAAAAHnBQEAAAAB6gVAAAAAAesFQAAAAAHsBUAAAAAB_AUBAAAAAf0FAQAAAAH-BQEAAAAB_wUQAAAAAbcGAQAAAAHEBiAAAAABxwYAAADHBgLIBgEAAAAByQYBAAAAAQFMAADRBgAgEOQFAQAAAAHlBQEAAAAB5gUBAAAAAecFAQAAAAHqBUAAAAAB6wVAAAAAAewFQAAAAAH8BQEAAAAB_QUBAAAAAf4FAQAAAAH_BRAAAAABtwYBAAAAAcQGIAAAAAHHBgAAAMcGAsgGAQAAAAHJBgEAAAABAUwAANMGADAVCQAAqw0AIAoAAKwNACALAAD2DQAgDAAArQ0AIDYAAK4NACDkBQEA8wsAIeUFAQDzCwAh5gUBAPQLACHnBQEA9AsAIeoFQAD1CwAh6wVAAPULACHsBUAA9gsAIfwFAQD0CwAh_QUBAPQLACH-BQEA9AsAIf8FEACpDQAhtwYBAPQLACHEBiAAmg0AIccGAACoDccGIsgGAQDzCwAhyQYBAPMLACECAAAAGwAgTAAA1QYAIBDkBQEA8wsAIeUFAQDzCwAh5gUBAPQLACHnBQEA9AsAIeoFQAD1CwAh6wVAAPULACHsBUAA9gsAIfwFAQD0CwAh_QUBAPQLACH-BQEA9AsAIf8FEACpDQAhtwYBAPQLACHEBiAAmg0AIccGAACoDccGIsgGAQDzCwAhyQYBAPMLACECAAAAGQAgTAAA1wYAIAMAAAAbACBRAADRBgAgUgAA1QYAIAEAAAAbACABAAAAGQAgDQQAAPQPACBXAAD3DwAgWAAA9g8AIJ8BAAD1DwAgoAEAAPgPACDmBQAA7wsAIOcFAADvCwAg7AUAAO8LACD8BQAA7wsAIP0FAADvCwAg_gUAAO8LACD_BQAA7wsAILcGAADvCwAgE-EFAACLCgAw4gUAAN0GABDjBQAAiwoAMOQFAQC0CQAh5QUBALQJACHmBQEAtQkAIecFAQC1CQAh6gVAALYJACHrBUAAtgkAIewFQAC3CQAh_AUBALUJACH9BQEAtQkAIf4FAQC1CQAh_wUQAI0KACG3BgEAtQkAIcQGIAD-CQAhxwYAAIwKxwYiyAYBALQJACHJBgEAtAkAIQMAAAAZACABAADcBgAwVgAA3QYAIAMAAAAZACABAAAaADACAAAbACABAAAAFwAgAQAAABcAIAMAAAAVACABAAAWADACAAAXACADAAAAFQAgAQAAFgAwAgAAFwAgAwAAABUAIAEAABYAMAIAABcAIA0IAAC-DQAgKAAAvw0AIDgAAK8OACDkBQEAAAAB5QUBAAAAAeYFAQAAAAHnBQEAAAAB6QUBAAAAAeoFQAAAAAHrBUAAAAAB7AVAAAAAAcQGIAAAAAHFBgEAAAABAUwAAOUGACAK5AUBAAAAAeUFAQAAAAHmBQEAAAAB5wUBAAAAAekFAQAAAAHqBUAAAAAB6wVAAAAAAewFQAAAAAHEBiAAAAABxQYBAAAAAQFMAADnBgAwDQgAAJwNACAoAACdDQAgOAAArQ4AIOQFAQDzCwAh5QUBAPMLACHmBQEA9AsAIecFAQD0CwAh6QUBAPQLACHqBUAA9QsAIesFQAD1CwAh7AVAAPYLACHEBiAAmg0AIcUGAQD0CwAhAgAAABcAIEwAAOkGACAK5AUBAPMLACHlBQEA8wsAIeYFAQD0CwAh5wUBAPQLACHpBQEA9AsAIeoFQAD1CwAh6wVAAPULACHsBUAA9gsAIcQGIACaDQAhxQYBAPQLACECAAAAFQAgTAAA6wYAIAMAAAAXACBRAADlBgAgUgAA6QYAIAEAAAAXACABAAAAFQAgCAQAAPEPACBXAADzDwAgWAAA8g8AIOYFAADvCwAg5wUAAO8LACDpBQAA7wsAIOwFAADvCwAgxQYAAO8LACAN4QUAAIoKADDiBQAA8QYAEOMFAACKCgAw5AUBALQJACHlBQEAtAkAIeYFAQC1CQAh5wUBALUJACHpBQEAtQkAIeoFQAC2CQAh6wVAALYJACHsBUAAtwkAIcQGIAD-CQAhxQYBALUJACEDAAAAFQAgAQAA8AYAMFYAAPEGACADAAAAFQAgAQAAFgAwAgAAFwAgCQgAAIcKACDhBQAAiQoAMOIFAAD3BgAQ4wUAAIkKADDkBQEAAAAB5QUBAMMJACHqBUAAxQkAIesFQADFCQAhrQYBAAAAAQEAAAD0BgAgAQAAAPQGACAJCAAAhwoAIOEFAACJCgAw4gUAAPcGABDjBQAAiQoAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAhrQYBAMMJACECCAAA4A8AIKAHAADwDwAgAwAAAPcGACABAAD4BgAwAgAA9AYAIAMAAAD3BgAgAQAA-AYAMAIAAPQGACADAAAA9wYAIAEAAPgGADACAAD0BgAgBggAAO8PACDkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAABrQYBAAAAAQFMAAD8BgAgBeQFAQAAAAHlBQEAAAAB6gVAAAAAAesFQAAAAAGtBgEAAAABAUwAAP4GADAGCAAA5Q8AIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhrQYBAPMLACECAAAA9AYAIEwAAIAHACAF5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACGtBgEA8wsAIQIAAAD3BgAgTAAAggcAIAMAAAD0BgAgUQAA_AYAIFIAAIAHACABAAAA9AYAIAEAAAD3BgAgAwQAAOIPACBXAADkDwAgWAAA4w8AIAjhBQAAiAoAMOIFAACIBwAQ4wUAAIgKADDkBQEAtAkAIeUFAQC0CQAh6gVAALYJACHrBUAAtgkAIa0GAQC0CQAhAwAAAPcGACABAACHBwAwVgAAiAcAIAMAAAD3BgAgAQAA-AYAMAIAAPQGACANCAAAhwoAIOEFAACDCgAw4gUAAI4HABDjBQAAgwoAMOQFAQAAAAHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACGRBgAAhQrCBiKtBgEAAAABwAYQAIQKACHCBiAAhgoAIcMGIACGCgAhAQAAAIsHACABAAAAiwcAIA0IAACHCgAg4QUAAIMKADDiBQAAjgcAEOMFAACDCgAw5AUBAMMJACHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACGRBgAAhQrCBiKtBgEAwwkAIcAGEACECgAhwgYgAIYKACHDBiAAhgoAIQIIAADgDwAgoAcAAOEPACADAAAAjgcAIAEAAI8HADACAACLBwAgAwAAAI4HACABAACPBwAwAgAAiwcAIAMAAACOBwAgAQAAjwcAMAIAAIsHACAKCAAA3w8AIOQFAQAAAAHlBQEAAAAB6gVAAAAAAesFQAAAAAGRBgAAAMIGAq0GAQAAAAHABhAAAAABwgYgAAAAAcMGIAAAAAEBTAAAkwcAIAnkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAABkQYAAADCBgKtBgEAAAABwAYQAAAAAcIGIAAAAAHDBiAAAAABAUwAAJUHADAKCAAA1Q8AIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhkQYAANQPwgYirQYBAPMLACHABhAAggwAIcIGIACaDQAhwwYgAJoNACECAAAAiwcAIEwAAJcHACAJ5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACGRBgAA1A_CBiKtBgEA8wsAIcAGEACCDAAhwgYgAJoNACHDBiAAmg0AIQIAAACOBwAgTAAAmQcAIAMAAACLBwAgUQAAkwcAIFIAAJcHACABAAAAiwcAIAEAAACOBwAgBQQAAM8PACBXAADSDwAgWAAA0Q8AIJ8BAADQDwAgoAEAANMPACAM4QUAAPwJADDiBQAAnwcAEOMFAAD8CQAw5AUBALQJACHlBQEAtAkAIeoFQAC2CQAh6wVAALYJACGRBgAA_QnCBiKtBgEAtAkAIcAGEADJCQAhwgYgAP4JACHDBiAA_gkAIQMAAACOBwAgAQAAngcAMFYAAJ8HACADAAAAjgcAIAEAAI8HADACAACLBwAgB-EFAAD7CQAw4gUAAKUHABDjBQAA-wkAMOQFAgAAAAHlBQEAwwkAIb4GAQDDCQAhvwZAAMUJACEBAAAAogcAIAEAAACiBwAgB-EFAAD7CQAw4gUAAKUHABDjBQAA-wkAMOQFAgDiCQAh5QUBAMMJACG-BgEAwwkAIb8GQADFCQAhAaAHAADODwAgAwAAAKUHACABAACmBwAwAgAAogcAIAMAAAClBwAgAQAApgcAMAIAAKIHACADAAAApQcAIAEAAKYHADACAACiBwAgBOQFAgAAAAHlBQEAAAABvgYBAAAAAb8GQAAAAAEBTAAAqgcAIATkBQIAAAAB5QUBAAAAAb4GAQAAAAG_BkAAAAABAUwAAKwHADAE5AUCALwMACHlBQEA8wsAIb4GAQDzCwAhvwZAAPULACECAAAAogcAIEwAAK4HACAE5AUCALwMACHlBQEA8wsAIb4GAQDzCwAhvwZAAPULACECAAAApQcAIEwAALAHACADAAAAogcAIFEAAKoHACBSAACuBwAgAQAAAKIHACABAAAApQcAIAUEAADJDwAgVwAAzA8AIFgAAMsPACCfAQAAyg8AIKABAADNDwAgB-EFAAD6CQAw4gUAALYHABDjBQAA-gkAMOQFAgDVCQAh5QUBALQJACG-BgEAtAkAIb8GQAC2CQAhAwAAAKUHACABAAC1BwAwVgAAtgcAIAMAAAClBwAgAQAApgcAMAIAAKIHACAMDgAA9wkAIA8AAPgJACAQAAD5CQAg4QUAAPQJADDiBQAAJwAQ4wUAAPQJADDkBQEAAAAB6gVAAMUJACHrBUAAxQkAIewFQADGCQAhkQYAAPYJvgYivAYgAPUJACEBAAAAuQcAIAEAAAC5BwAgBg4AAMUPACAPAADGDwAgEAAAxw8AIOwFAADvCwAgvAYAAO8LACCgBwAAyA8AIAMAAAAnACABAAC8BwAwAgAAuQcAIAMAAAAnACABAAC8BwAwAgAAuQcAIAMAAAAnACABAAC8BwAwAgAAuQcAIAkOAADCDwAgDwAAww8AIBAAAMQPACDkBQEAAAAB6gVAAAAAAesFQAAAAAHsBUAAAAABkQYAAAC-BgK8BiAAAAABAUwAAMAHACAG5AUBAAAAAeoFQAAAAAHrBUAAAAAB7AVAAAAAAZEGAAAAvgYCvAYgAAAAAQFMAADCBwAwCQ4AAKwPACAPAACtDwAgEAAArg8AIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIewFQAD2CwAhkQYAAKsPvgYivAYgAKoPACECAAAAuQcAIEwAAMQHACAG5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh7AVAAPYLACGRBgAAqw--BiK8BiAAqg8AIQIAAAAnACBMAADGBwAgAwAAALkHACBRAADABwAgUgAAxAcAIAEAAAC5BwAgAQAAACcAIAUEAACnDwAgVwAAqQ8AIFgAAKgPACDsBQAA7wsAILwGAADvCwAgCeEFAADtCQAw4gUAAMwHABDjBQAA7QkAMOQFAQC0CQAh6gVAALYJACHrBUAAtgkAIewFQAC3CQAhkQYAAO8JvgYivAYgAO4JACEDAAAAJwAgAQAAywcAMFYAAMwHACADAAAAJwAgAQAAvAcAMAIAALkHACABAAAAuwEAIAEAAAC7AQAgAwAAACkAIAEAALoBADACAAC7AQAgAwAAACkAIAEAALoBADACAAC7AQAgAwAAACkAIAEAALoBADACAAC7AQAgCgwAAKYPACANAADtDQAgsQYBAAAAAbQGAQAAAAG2BgEAAAABtwYBAAAAAbgGAQAAAAG5BgEAAAABugYBAAAAAbsGAQAAAAEBTAAA1AcAIAixBgEAAAABtAYBAAAAAbYGAQAAAAG3BgEAAAABuAYBAAAAAbkGAQAAAAG6BgEAAAABuwYBAAAAAQFMAADWBwAwCgwAAKUPACANAADrDQAgsQYBAPMLACG0BgEA9AsAIbYGAQDzCwAhtwYBAPMLACG4BgEA8wsAIbkGAQDzCwAhugYBAPMLACG7BgEA8wsAIQIAAAC7AQAgTAAA2AcAIAixBgEA8wsAIbQGAQD0CwAhtgYBAPMLACG3BgEA8wsAIbgGAQDzCwAhuQYBAPMLACG6BgEA8wsAIbsGAQDzCwAhAgAAACkAIEwAANoHACADAAAAuwEAIFEAANQHACBSAADYBwAgAQAAALsBACABAAAAKQAgBAQAAKIPACBXAACkDwAgWAAAow8AILQGAADvCwAgC-EFAADsCQAw4gUAAOAHABDjBQAA7AkAMLEGAQC0CQAhtAYBALUJACG2BgEAtAkAIbcGAQC0CQAhuAYBALQJACG5BgEAtAkAIboGAQC0CQAhuwYBALQJACEDAAAAKQAgAQAA3wcAMFYAAOAHACADAAAAKQAgAQAAugEAMAIAALsBACABAAAAvgEAIAEAAAC-AQAgAwAAACsAIAEAAL0BADACAAC-AQAgAwAAACsAIAEAAL0BADACAAC-AQAgAwAAACsAIAEAAL0BADACAAC-AQAgCAwAAKEPACANAADfDQAg5QUBAAAAAbEGAQAAAAG0BgEAAAABtQYBAAAAAbYGAQAAAAG3BgEAAAABAUwAAOgHACAG5QUBAAAAAbEGAQAAAAG0BgEAAAABtQYBAAAAAbYGAQAAAAG3BgEAAAABAUwAAOoHADAIDAAAoA8AIA0AAN0NACDlBQEA8wsAIbEGAQDzCwAhtAYBAPMLACG1BgEA9AsAIbYGAQDzCwAhtwYBAPMLACECAAAAvgEAIEwAAOwHACAG5QUBAPMLACGxBgEA8wsAIbQGAQDzCwAhtQYBAPQLACG2BgEA8wsAIbcGAQDzCwAhAgAAACsAIEwAAO4HACADAAAAvgEAIFEAAOgHACBSAADsBwAgAQAAAL4BACABAAAAKwAgBAQAAJ0PACBXAACfDwAgWAAAng8AILUGAADvCwAgCeEFAADrCQAw4gUAAPQHABDjBQAA6wkAMOUFAQC0CQAhsQYBALQJACG0BgEAtAkAIbUGAQC1CQAhtgYBALQJACG3BgEAtAkAIQMAAAArACABAADzBwAwVgAA9AcAIAMAAAArACABAAC9AQAwAgAAvgEAIAoHAADpCQAgOQAA6gkAIOEFAADoCQAw4gUAAK0BABDjBQAA6AkAMOQFAQAAAAHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACGtBgEAxAkAIQEAAAD3BwAgAQAAAPcHACAEBwAAmg8AIDkAAJsPACCtBgAA7wsAIKAHAACcDwAgAwAAAK0BACABAAD6BwAwAgAA9wcAIAMAAACtAQAgAQAA-gcAMAIAAPcHACADAAAArQEAIAEAAPoHADACAAD3BwAgBwcAAJgPACA5AACZDwAg5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAa0GAQAAAAEBTAAA_gcAIAXkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAABrQYBAAAAAQFMAACACAAwBwcAAI4NACA5AACPDQAg5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACGtBgEA9AsAIQIAAAD3BwAgTAAAgggAIAXkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIa0GAQD0CwAhAgAAAK0BACBMAACECAAgAwAAAPcHACBRAAD-BwAgUgAAgggAIAEAAAD3BwAgAQAAAK0BACAEBAAAiw0AIFcAAI0NACBYAACMDQAgrQYAAO8LACAI4QUAAOcJADDiBQAAiggAEOMFAADnCQAw5AUBALQJACHlBQEAtAkAIeoFQAC2CQAh6wVAALYJACGtBgEAtQkAIQMAAACtAQAgAQAAiQgAMFYAAIoIACADAAAArQEAIAEAAPoHADACAAD3BwAgAQAAAC8AIAEAAAAvACADAAAALQAgAQAALgAwAgAALwAgAwAAAC0AIAEAAC4AMAIAAC8AIAMAAAAtACABAAAuADACAAAvACASDQAAhQ0AICQAAIcNACAlAACGDQAgLgAAiA0AIDAAAIkNACAzAACKDQAg5AUBAAAAAeoFQAAAAAHrBUAAAAABpgYQAAAAAagGAQAAAAGtBgEAAAABrgYCAAAAAa8GQAAAAAGwBoAAAAABsQYBAAAAAbIGAQAAAAGzBgEAAAABAUwAAJIIACAM5AUBAAAAAeoFQAAAAAHrBUAAAAABpgYQAAAAAagGAQAAAAGtBgEAAAABrgYCAAAAAa8GQAAAAAGwBoAAAAABsQYBAAAAAbIGAQAAAAGzBgEAAAABAUwAAJQIADASDQAA5QwAICQAAOcMACAlAADmDAAgLgAA6AwAIDAAAOkMACAzAADqDAAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhpgYQAIIMACGoBgEA9AsAIa0GAQDzCwAhrgYCALwMACGvBkAA9QsAIbAGgAAAAAGxBgEA9AsAIbIGAQDzCwAhswYBAPMLACECAAAALwAgTAAAlggAIAzkBQEA8wsAIeoFQAD1CwAh6wVAAPULACGmBhAAggwAIagGAQD0CwAhrQYBAPMLACGuBgIAvAwAIa8GQAD1CwAhsAaAAAAAAbEGAQD0CwAhsgYBAPMLACGzBgEA8wsAIQIAAAAtACBMAACYCAAgAwAAAC8AIFEAAJIIACBSAACWCAAgAQAAAC8AIAEAAAAtACAIBAAA4AwAIFcAAOMMACBYAADiDAAgnwEAAOEMACCgAQAA5AwAIKgGAADvCwAgsAYAAO8LACCxBgAA7wsAIA_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_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_ggAIAnkBQEA8wsAIeYFAQD0CwAh6gVAAPULACGABgEA8wsAIYEGAQDzCwAhggYBAPMLACGDBkAA9QsAIYQGAQD0CwAhhQYBAPMLACECAAAAnQEAIEwAAIAJACADAAAA8wgAIFEAAPoIACBSAAD-CAAgAQAAAPMIACABAAAAnQEAIAUEAAChDAAgVwAAowwAIFgAAKIMACDmBQAA7wsAIIQGAADvCwAgDOEFAADMCQAw4gUAAIYJABDjBQAAzAkAMOQFAQC0CQAh5gUBALUJACHqBUAAtgkAIYAGAQC0CQAhgQYBALQJACGCBgEAtAkAIYMGQAC2CQAhhAYBALUJACGFBgEAtAkAIQMAAACdAQAgAQAAhQkAMFYAAIYJACADAAAAnQEAIAEAAPYIADACAADzCAAgAQAAAKcBACABAAAApwEAIAMAAACiAQAgAQAApgEAMAIAAKcBACADAAAAogEAIAEAAKYBADACAACnAQAgAwAAAKIBACABAACmAQAwAgAApwEAIA8JAQAAAAELAACgDAAgNgAAlgwAIOQFAQAAAAHlBQEAAAAB5gUBAAAAAegFAQAAAAHpBQEAAAAB6gVAAAAAAesFQAAAAAHsBUAAAAAB_AUBAAAAAf0FAQAAAAH-BQEAAAAB_wUQAAAAAQFMAACOCQAgDQkBAAAAAeQFAQAAAAHlBQEAAAAB5gUBAAAAAegFAQAAAAHpBQEAAAAB6gVAAAAAAesFQAAAAAHsBUAAAAAB_AUBAAAAAf0FAQAAAAH-BQEAAAAB_wUQAAAAAQFMAACQCQAwDwkBAPMLACELAACfDAAgNgAAhAwAIOQFAQDzCwAh5QUBAPMLACHmBQEA9AsAIegFAQDzCwAh6QUBAPMLACHqBUAA9QsAIesFQAD1CwAh7AVAAPYLACH8BQEA9AsAIf0FAQD0CwAh_gUBAPQLACH_BRAAggwAIQIAAACnAQAgTAAAkgkAIA0JAQDzCwAh5AUBAPMLACHlBQEA8wsAIeYFAQD0CwAh6AUBAPMLACHpBQEA8wsAIeoFQAD1CwAh6wVAAPULACHsBUAA9gsAIfwFAQD0CwAh_QUBAPQLACH-BQEA9AsAIf8FEACCDAAhAgAAAKIBACBMAACUCQAgAwAAAKcBACBRAACOCQAgUgAAkgkAIAEAAACnAQAgAQAAAKIBACAKBAAAmgwAIFcAAJ0MACBYAACcDAAgnwEAAJsMACCgAQAAngwAIOYFAADvCwAg7AUAAO8LACD8BQAA7wsAIP0FAADvCwAg_gUAAO8LACAQCQEAtAkAIeEFAADICQAw4gUAAJoJABDjBQAAyAkAMOQFAQC0CQAh5QUBALQJACHmBQEAtQkAIegFAQC0CQAh6QUBALQJACHqBUAAtgkAIesFQAC2CQAh7AVAALcJACH8BQEAtQkAIf0FAQC1CQAh_gUBALUJACH_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_CQAg7QUBAAAAAe4FAQAAAAXvBQEAAAAF8AUBAAAAAfEFAQAAAAHyBQEAAAAB8wUBAAAAAfQFAQC-CQAh9QUBAAAAAfYFAQAAAAH3BQEAAAAB-AUBAAAAAQztBQEAAAAB7gUBAAAABe8FAQAAAAXwBQEAAAAB8QUBAAAAAfIFAQAAAAHzBQEAAAAB9AUBAL8JACH1BQEAAAAB9gUBAAAAAfcFAQAAAAH4BQEAAAABDwQAALwJACBXAADBCQAgWAAAwQkAIO0FAQAAAAHuBQEAAAAE7wUBAAAABPAFAQAAAAHxBQEAAAAB8gUBAAAAAfMFAQAAAAH0BQEAwAkAIfUFAQAAAAH2BQEAAAAB9wUBAAAAAfgFAQAAAAEM7QUBAAAAAe4FAQAAAATvBQEAAAAE8AUBAAAAAfEFAQAAAAHyBQEAAAAB8wUBAAAAAfQFAQDBCQAh9QUBAAAAAfYFAQAAAAH3BQEAAAAB-AUBAAAAAQ01AADHCQAg4QUAAMIJADDiBQAApAEAEOMFAADCCQAw5AUBAMMJACHlBQEAwwkAIeYFAQDECQAh5wUBAMQJACHoBQEAwwkAIekFAQDDCQAh6gVAAMUJACHrBUAAxQkAIewFQADGCQAhDO0FAQAAAAHuBQEAAAAE7wUBAAAABPAFAQAAAAHxBQEAAAAB8gUBAAAAAfMFAQAAAAH0BQEAwQkAIfUFAQAAAAH2BQEAAAAB9wUBAAAAAfgFAQAAAAEM7QUBAAAAAe4FAQAAAAXvBQEAAAAF8AUBAAAAAfEFAQAAAAHyBQEAAAAB8wUBAAAAAfQFAQC_CQAh9QUBAAAAAfYFAQAAAAH3BQEAAAAB-AUBAAAAAQjtBUAAAAAB7gVAAAAABO8FQAAAAATwBUAAAAAB8QVAAAAAAfIFQAAAAAHzBUAAAAAB9AVAAL0JACEI7QVAAAAAAe4FQAAAAAXvBUAAAAAF8AVAAAAAAfEFQAAAAAHyBUAAAAAB8wVAAAAAAfQFQAC6CQAhA_kFAACiAQAg-gUAAKIBACD7BQAAogEAIBAJAQC0CQAh4QUAAMgJADDiBQAAmgkAEOMFAADICQAw5AUBALQJACHlBQEAtAkAIeYFAQC1CQAh6AUBALQJACHpBQEAtAkAIeoFQAC2CQAh6wVAALYJACHsBUAAtwkAIfwFAQC1CQAh_QUBALUJACH-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_kFAAARACD6BQAAEQAg-wUAABEAIAP5BQAAFQAg-gUAABUAIPsFAAAVACAJ4QUAAOsJADDiBQAA9AcAEOMFAADrCQAw5QUBALQJACGxBgEAtAkAIbQGAQC0CQAhtQYBALUJACG2BgEAtAkAIbcGAQC0CQAhC-EFAADsCQAw4gUAAOAHABDjBQAA7AkAMLEGAQC0CQAhtAYBALUJACG2BgEAtAkAIbcGAQC0CQAhuAYBALQJACG5BgEAtAkAIboGAQC0CQAhuwYBALQJACEJ4QUAAO0JADDiBQAAzAcAEOMFAADtCQAw5AUBALQJACHqBUAAtgkAIesFQAC2CQAh7AVAALcJACGRBgAA7wm-BiK8BiAA7gkAIQUEAAC5CQAgVwAA8wkAIFgAAPMJACDtBSAAAAAB9AUgAPIJACEHBAAAvAkAIFcAAPEJACBYAADxCQAg7QUAAAC-BgLuBQAAAL4GCO8FAAAAvgYI9AUAAPAJvgYiBwQAALwJACBXAADxCQAgWAAA8QkAIO0FAAAAvgYC7gUAAAC-BgjvBQAAAL4GCPQFAADwCb4GIgTtBQAAAL4GAu4FAAAAvgYI7wUAAAC-Bgj0BQAA8Qm-BiIFBAAAuQkAIFcAAPMJACBYAADzCQAg7QUgAAAAAfQFIADyCQAhAu0FIAAAAAH0BSAA8wkAIQwOAAD3CQAgDwAA-AkAIBAAAPkJACDhBQAA9AkAMOIFAAAnABDjBQAA9AkAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIewFQADGCQAhkQYAAPYJvgYivAYgAPUJACEC7QUgAAAAAfQFIADzCQAhBO0FAAAAvgYC7gUAAAC-BgjvBQAAAL4GCPQFAADxCb4GIg8MAAD0CgAgDQAAkwsAIOEFAACVCwAw4gUAACkAEOMFAACVCwAwsQYBAMMJACG0BgEAxAkAIbYGAQDDCQAhtwYBAMMJACG4BgEAwwkAIbkGAQDDCQAhugYBAMMJACG7BgEAwwkAIZUHAAApACCWBwAAKQAgDQwAAPQKACANAACTCwAg4QUAAJILADDiBQAAKwAQ4wUAAJILADDlBQEAwwkAIbEGAQDDCQAhtAYBAMMJACG1BgEAxAkAIbYGAQDDCQAhtwYBAMMJACGVBwAAKwAglgcAACsAIAP5BQAALQAg-gUAAC0AIPsFAAAtACAH4QUAAPoJADDiBQAAtgcAEOMFAAD6CQAw5AUCANUJACHlBQEAtAkAIb4GAQC0CQAhvwZAALYJACEH4QUAAPsJADDiBQAApQcAEOMFAAD7CQAw5AUCAOIJACHlBQEAwwkAIb4GAQDDCQAhvwZAAMUJACEM4QUAAPwJADDiBQAAnwcAEOMFAAD8CQAw5AUBALQJACHlBQEAtAkAIeoFQAC2CQAh6wVAALYJACGRBgAA_QnCBiKtBgEAtAkAIcAGEADJCQAhwgYgAP4JACHDBiAA_gkAIQcEAAC8CQAgVwAAggoAIFgAAIIKACDtBQAAAMIGAu4FAAAAwgYI7wUAAADCBgj0BQAAgQrCBiIFBAAAvAkAIFcAAIAKACBYAACACgAg7QUgAAAAAfQFIAD_CQAhBQQAALwJACBXAACACgAgWAAAgAoAIO0FIAAAAAH0BSAA_wkAIQLtBSAAAAAB9AUgAIAKACEHBAAAvAkAIFcAAIIKACBYAACCCgAg7QUAAADCBgLuBQAAAMIGCO8FAAAAwgYI9AUAAIEKwgYiBO0FAAAAwgYC7gUAAADCBgjvBQAAAMIGCPQFAACCCsIGIg0IAACHCgAg4QUAAIMKADDiBQAAjgcAEOMFAACDCgAw5AUBAMMJACHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACGRBgAAhQrCBiKtBgEAwwkAIcAGEACECgAhwgYgAIYKACHDBiAAhgoAIQjtBRAAAAAB7gUQAAAABO8FEAAAAATwBRAAAAAB8QUQAAAAAfIFEAAAAAHzBRAAAAAB9AUQAMsJACEE7QUAAADCBgLuBQAAAMIGCO8FAAAAwgYI9AUAAIIKwgYiAu0FIAAAAAH0BSAAgAoAIQP5BQAAGQAg-gUAABkAIPsFAAAZACAI4QUAAIgKADDiBQAAiAcAEOMFAACICgAw5AUBALQJACHlBQEAtAkAIeoFQAC2CQAh6wVAALYJACGtBgEAtAkAIQkIAACHCgAg4QUAAIkKADDiBQAA9wYAEOMFAACJCgAw5AUBAMMJACHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACGtBgEAwwkAIQ3hBQAAigoAMOIFAADxBgAQ4wUAAIoKADDkBQEAtAkAIeUFAQC0CQAh5gUBALUJACHnBQEAtQkAIekFAQC1CQAh6gVAALYJACHrBUAAtgkAIewFQAC3CQAhxAYgAP4JACHFBgEAtQkAIRPhBQAAiwoAMOIFAADdBgAQ4wUAAIsKADDkBQEAtAkAIeUFAQC0CQAh5gUBALUJACHnBQEAtQkAIeoFQAC2CQAh6wVAALYJACHsBUAAtwkAIfwFAQC1CQAh_QUBALUJACH-BQEAtQkAIf8FEACNCgAhtwYBALUJACHEBiAA_gkAIccGAACMCscGIsgGAQC0CQAhyQYBALQJACEHBAAAvAkAIFcAAJEKACBYAACRCgAg7QUAAADHBgLuBQAAAMcGCO8FAAAAxwYI9AUAAJAKxwYiDQQAALkJACBXAACPCgAgWAAAjwoAIJ8BAACPCgAgoAEAAI8KACDtBRAAAAAB7gUQAAAABe8FEAAAAAXwBRAAAAAB8QUQAAAAAfIFEAAAAAHzBRAAAAAB9AUQAI4KACENBAAAuQkAIFcAAI8KACBYAACPCgAgnwEAAI8KACCgAQAAjwoAIO0FEAAAAAHuBRAAAAAF7wUQAAAABfAFEAAAAAHxBRAAAAAB8gUQAAAAAfMFEAAAAAH0BRAAjgoAIQjtBRAAAAAB7gUQAAAABe8FEAAAAAXwBRAAAAAB8QUQAAAAAfIFEAAAAAHzBRAAAAAB9AUQAI8KACEHBAAAvAkAIFcAAJEKACBYAACRCgAg7QUAAADHBgLuBQAAAMcGCO8FAAAAxwYI9AUAAJAKxwYiBO0FAAAAxwYC7gUAAADHBgjvBQAAAMcGCPQFAACRCscGIg_hBQAAkgoAMOIFAADJBgAQ4wUAAJIKADDkBQEAtAkAIeUFAQC0CQAh6AUBALQJACHpBQEAtAkAIeoFQAC2CQAh6wVAALYJACGOBgAAkwrNBiLKBgEAtQkAIcsGAQC1CQAhzgYAAJQKzgYizwYBALUJACHQBgEAtQkAIQcEAAC8CQAgVwAAmAoAIFgAAJgKACDtBQAAAM0GAu4FAAAAzQYI7wUAAADNBgj0BQAAlwrNBiIHBAAAvAkAIFcAAJYKACBYAACWCgAg7QUAAADOBgLuBQAAAM4GCO8FAAAAzgYI9AUAAJUKzgYiBwQAALwJACBXAACWCgAgWAAAlgoAIO0FAAAAzgYC7gUAAADOBgjvBQAAAM4GCPQFAACVCs4GIgTtBQAAAM4GAu4FAAAAzgYI7wUAAADOBgj0BQAAlgrOBiIHBAAAvAkAIFcAAJgKACBYAACYCgAg7QUAAADNBgLuBQAAAM0GCO8FAAAAzQYI9AUAAJcKzQYiBO0FAAAAzQYC7gUAAADNBgjvBQAAAM0GCPQFAACYCs0GIgrhBQAAmQoAMOIFAAC1BgAQ4wUAAJkKADDkBQEAtAkAIeUFAQC0CQAh6gVAALYJACHrBUAAtgkAIbcGAQC0CQAh0QYBALQJACHSBgEAtQkAIQzhBQAAmgoAMOIFAAChBgAQ4wUAAJoKADDkBQEAtAkAIeUFAQC0CQAh6gVAALYJACHrBUAAtgkAIZcGAQC0CQAhtAYBALQJACHFBgEAtAkAIdMGAQC0CQAh1AYBALQJACEJ4QUAAJsKADDiBQAAjQYAEOMFAACbCgAw5QUBALQJACHqBUAAtgkAIesFQAC2CQAh1AYBALQJACHVBgEAtAkAIdYGAQC0CQAhC-EFAACcCgAw4gUAAPkFABDjBQAAnAoAMOoFQAC2CQAh6wVAALYJACG4BgEAtAkAIbkGAQC0CQAhuwYBALQJACHUBgEAtAkAIdYGAQC0CQAh1wYBALQJACEI4QUAAJ0KADDiBQAA5QUAEOMFAACdCgAw5AUBALQJACHqBUAAtgkAIesFQAC2CQAhjgYAAJ8K2gYikQYAAJ4K2QYiBwQAALwJACBXAACjCgAgWAAAowoAIO0FAAAA2QYC7gUAAADZBgjvBQAAANkGCPQFAACiCtkGIgcEAAC8CQAgVwAAoQoAIFgAAKEKACDtBQAAANoGAu4FAAAA2gYI7wUAAADaBgj0BQAAoAraBiIHBAAAvAkAIFcAAKEKACBYAAChCgAg7QUAAADaBgLuBQAAANoGCO8FAAAA2gYI9AUAAKAK2gYiBO0FAAAA2gYC7gUAAADaBgjvBQAAANoGCPQFAAChCtoGIgcEAAC8CQAgVwAAowoAIFgAAKMKACDtBQAAANkGAu4FAAAA2QYI7wUAAADZBgj0BQAAogrZBiIE7QUAAADZBgLuBQAAANkGCO8FAAAA2QYI9AUAAKMK2QYiDQMAAKcKACAHAADpCQAgDgAAqQoAIA8AAKoKACASAACoCgAg4QUAAKQKADDiBQAA1AUAEOMFAACkCgAw5AUBAMMJACHqBUAAxQkAIesFQADFCQAhjgYAAKYK2gYikQYAAKUK2QYiBO0FAAAA2QYC7gUAAADZBgjvBQAAANkGCPQFAACjCtkGIgTtBQAAANoGAu4FAAAA2gYI7wUAAADaBgj0BQAAoQraBiID-QUAADIAIPoFAAAyACD7BQAAMgAgA_kFAAA3ACD6BQAANwAg-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_kFAAAIACD6BQAACAAg-wUAAAgAIAP5BQAADQAg-gUAAA0AIPsFAAANACAJ4QUAAMYKADDiBQAA-QQAEOMFAADGCgAw5AUBALQJACHoBQEAtAkAIeoFQAC2CQAh6wVAALYJACHQBgEAtAkAIdsGAADHCvAGIgcEAAC8CQAgVwAAyQoAIFgAAMkKACDtBQAAAPAGAu4FAAAA8AYI7wUAAADwBgj0BQAAyArwBiIHBAAAvAkAIFcAAMkKACBYAADJCgAg7QUAAADwBgLuBQAAAPAGCO8FAAAA8AYI9AUAAMgK8AYiBO0FAAAA8AYC7gUAAADwBgjvBQAAAPAGCPQFAADJCvAGIgfhBQAAygoAMOIFAADlBAAQ4wUAAMoKADDkBQEAtAkAIdsGAADLCvEGIvEGAQC0CQAh8gYBALQJACEHBAAAvAkAIFcAAM0KACBYAADNCgAg7QUAAADxBgLuBQAAAPEGCO8FAAAA8QYI9AUAAMwK8QYiBwQAALwJACBXAADNCgAgWAAAzQoAIO0FAAAA8QYC7gUAAADxBgjvBQAAAPEGCPQFAADMCvEGIgTtBQAAAPEGAu4FAAAA8QYI7wUAAADxBgj0BQAAzQrxBiIH4QUAAM4KADDiBQAA0QQAEOMFAADOCgAw5AUBALQJACHpBQEAtAkAIdsGAADPCvQGIvIGAQC0CQAhBwQAALwJACBXAADRCgAgWAAA0QoAIO0FAAAA9AYC7gUAAAD0BgjvBQAAAPQGCPQFAADQCvQGIgcEAAC8CQAgVwAA0QoAIFgAANEKACDtBQAAAPQGAu4FAAAA9AYI7wUAAAD0Bgj0BQAA0Ar0BiIE7QUAAAD0BgLuBQAAAPQGCO8FAAAA9AYI9AUAANEK9AYiB-EFAADSCgAw4gUAAL0EABDjBQAA0goAMOQFAQC0CQAhswYBALQJACHbBgAA0wr1BiLyBgEAtAkAIQcEAAC8CQAgVwAA1QoAIFgAANUKACDtBQAAAPUGAu4FAAAA9QYI7wUAAAD1Bgj0BQAA1Ar1BiIHBAAAvAkAIFcAANUKACBYAADVCgAg7QUAAAD1BgLuBQAAAPUGCO8FAAAA9QYI9AUAANQK9QYiBO0FAAAA9QYC7gUAAAD1BgjvBQAAAPUGCPQFAADVCvUGIgXhBQAA1goAMOIFAACpBAAQ4wUAANYKADDkBQEAtAkAIbIGAQC0CQAhCSUAANgKACAnAADZCgAgKQAA2goAICsAANsKACDhBQAA1woAMOIFAAB9ABDjBQAA1woAMOQFAQDDCQAhsgYBAMMJACEREAAA-QkAIBEAAMALACAUAADGCwAgJAAAywsAICYAAMwLACAsAAC0CwAg4QUAAMkLADDiBQAAMgAQ4wUAAMkLADDkBQEAwwkAIegFAQDDCQAh6gVAAMUJACHrBUAAxQkAIdQGAQDDCQAh2wYAAMoL2wYilQcAADIAIJYHAAAyACAD-QUAAH8AIPoFAAB_ACD7BQAAfwAgA_kFAACDAQAg-gUAAIMBACD7BQAAgwEAIAP5BQAAhwEAIPoFAACHAQAg-wUAAIcBACAL4QUAANwKADDiBQAAkwQAEOMFAADcCgAw5AUBALQJACHlBQEAtAkAIeoFQAC2CQAh6wVAALYJACGOBgAAvwrvBiKtBgEAtAkAIfYGAADdCvYGIvcGAQC1CQAhBwQAALwJACBXAADfCgAgWAAA3woAIO0FAAAA9gYC7gUAAAD2BgjvBQAAAPYGCPQFAADeCvYGIgcEAAC8CQAgVwAA3woAIFgAAN8KACDtBQAAAPYGAu4FAAAA9gYI7wUAAAD2Bgj0BQAA3gr2BiIE7QUAAAD2BgLuBQAAAPYGCO8FAAAA9gYI9AUAAN8K9gYiEQMAAOIKACAVAADjCgAgFgAA5AoAICEAAOUKACAiAADmCgAgIwAA5woAIOEFAADgCgAw4gUAAIIEABDjBQAA4AoAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAhjgYAAMMK7wYirQYBAMMJACH2BgAA4Qr2BiL3BgEAxAkAIQTtBQAAAPYGAu4FAAAA9gYI7wUAAAD2Bgj0BQAA3wr2BiID-QUAAD0AIPoFAAA9ACD7BQAAPQAgA_kFAAA7ACD6BQAAOwAg-wUAADsAIAP5BQAARAAg-gUAAEQAIPsFAABEACAD-QUAAEgAIPoFAABIACD7BQAASAAgA_kFAABhACD6BQAAYQAg-wUAAGEAIAP5BQAAbgAg-gUAAG4AIPsFAABuACAJ4QUAAOgKADDiBQAA_AMAEOMFAADoCgAw5AUBALQJACHoBQEAtAkAIeoFQAC2CQAh6wVAALYJACHWBgEAtAkAIdsGAADpCvkGIgcEAAC8CQAgVwAA6woAIFgAAOsKACDtBQAAAPkGAu4FAAAA-QYI7wUAAAD5Bgj0BQAA6gr5BiIHBAAAvAkAIFcAAOsKACBYAADrCgAg7QUAAAD5BgLuBQAAAPkGCO8FAAAA-QYI9AUAAOoK-QYiBO0FAAAA-QYC7gUAAAD5BgjvBQAAAPkGCPQFAADrCvkGIgnhBQAA7AoAMOIFAADoAwAQ4wUAAOwKADDkBQEAtAkAIegFAQC1CQAh6gVAALYJACHrBUAAtgkAIfkGAQC1CQAh-gYBALUJACEH4QUAAO0KADDiBQAA1AMAEOMFAADtCgAw5AUBALQJACHqBUAAtgkAIesFQAC2CQAh-wYBALUJACEK4QUAAO4KADDiBQAAwAMAEOMFAADuCgAw5AUBALQJACHqBUAAtgkAIesFQAC2CQAh1gYBALQJACH8BkAAtgkAIf0GAQC0CQAh_gYCANUJACEJ4QUAAO8KADDiBQAArAMAEOMFAADvCgAw5AUBALQJACHqBUAAtgkAIesFQAC2CQAh-wYBALQJACH_BkAAtgkAIYAHAQC1CQAhCuEFAADwCgAw4gUAAJgDABDjBQAA8AoAMOQFAQC0CQAh6gVAALYJACHrBUAAtgkAIdYGAQC0CQAh_AZAALYJACH9BgEAtAkAIf4GAgDVCQAhCuEFAADxCgAw4gUAAIQDABDjBQAA8QoAMOQFAQC0CQAh6gVAALYJACHrBUAAtgkAIbcGAQC0CQAh_wZAALYJACGBB0AAtgkAIYIHAQC0CQAhDgwAAPQKACAYAADzCgAgGQAA9QoAIB8AAPYKACDhBQAA8goAMOIFAABQABDjBQAA8goAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIbcGAQDDCQAh_wZAAMUJACGBB0AAxQkAIYIHAQDDCQAhDBcAALsLACAaAAC2CwAg4QUAALoLADDiBQAATAAQ4wUAALoLADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACH7BgEAwwkAIYMHAgDiCQAhlQcAAEwAIJYHAABMACAWCAAAhwoAIBEAAMALACAbAAC2CwAgOAAA4QsAIDoAAOILACA7AADbCgAgPAAA4wsAID0AAOQLACDhBQAA4AsAMOIFAAARABDjBQAA4AsAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAhlwYBAMMJACG0BgEAwwkAIcUGAQDDCQAh0wYBAMMJACHUBgEAwwkAIZUHAAARACCWBwAAEQAgA_kFAABSACD6BQAAUgAg-wUAAFIAIAP5BQAAWQAg-gUAAFkAIPsFAABZACAI4QUAAPcKADDiBQAA7gIAEOMFAAD3CgAw5AUBALQJACHqBUAAtgkAIesFQAC2CQAh-wYBALQJACGDBwIA1QkAIQrhBQAA-AoAMOIFAADaAgAQ4wUAAPgKADDkBQEAtAkAIeoFQAC2CQAh6wVAALYJACHWBgEAtAkAIfwGQAC2CQAh_QYBALQJACH-BgIA1QkAIQnhBQAA-QoAMOIFAADGAgAQ4wUAAPkKADDkBQEAtAkAIeUFAQC0CQAh6gVAALYJACHrBUAAtgkAIegGAQC1CQAhhAcBALQJACEH4QUAAPoKADDiBQAAsgIAEOMFAAD6CgAw5AUBALQJACHlBQEAtAkAIeoFQAC2CQAh6wVAALYJACEIEgAA_AoAIOEFAAD7CgAw4gUAAKECABDjBQAA-woAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAhA_kFAADLAQAg-gUAAMsBACD7BQAAywEAIAjhBQAA_QoAMOIFAACbAgAQ4wUAAP0KADDkBQEAtAkAIY4GAAD-CogHIpEGAAD_CokHIoUHAQC0CQAhhgcBALQJACEHBAAAvAkAIFcAAIMLACBYAACDCwAg7QUAAACIBwLuBQAAAIgHCO8FAAAAiAcI9AUAAIILiAciBwQAALwJACBXAACBCwAgWAAAgQsAIO0FAAAAiQcC7gUAAACJBwjvBQAAAIkHCPQFAACAC4kHIgcEAAC8CQAgVwAAgQsAIFgAAIELACDtBQAAAIkHAu4FAAAAiQcI7wUAAACJBwj0BQAAgAuJByIE7QUAAACJBwLuBQAAAIkHCO8FAAAAiQcI9AUAAIELiQciBwQAALwJACBXAACDCwAgWAAAgwsAIO0FAAAAiAcC7gUAAACIBwjvBQAAAIgHCPQFAACCC4gHIgTtBQAAAIgHAu4FAAAAiAcI7wUAAACIBwj0BQAAgwuIByIMBgAAhwsAICUAAIoLACBFAACICwAgRgAAiQsAIOEFAACECwAw4gUAAIoCABDjBQAAhAsAMOQFAQDDCQAhjgYAAIULiAcikQYAAIYLiQcihQcBAMMJACGGBwEAwwkAIQTtBQAAAIgHAu4FAAAAiAcI7wUAAACIBwj0BQAAgwuIByIE7QUAAACJBwLuBQAAAIkHCO8FAAAAiQcI9AUAAIELiQciDAUAAO4LACAUAADGCwAg4QUAAO0LADDiBQAAAwAQ4wUAAO0LADDkBQEAwwkAIegFAQDDCQAh6gVAAMUJACHrBUAAxQkAIYkHAQDDCQAhlQcAAAMAIJYHAAADACANFAAAxgsAIEMAAOwLACDhBQAA6gsAMOIFAAAIABDjBQAA6gsAMOQFAQDDCQAh6AUBAMMJACHqBUAAxQkAIesFQADFCQAh0AYBAMMJACHbBgAA6wvwBiKVBwAACAAglgcAAAgAIA0TAACvCwAgFAAAxgsAIOEFAADECwAw4gUAAD0AEOMFAADECwAw5AUBAMMJACHoBQEAwwkAIeoFQADFCQAh6wVAAMUJACHWBgEAwwkAIdsGAADFC_kGIpUHAAA9ACCWBwAAPQAgERAAAPkJACARAADACwAgFAAAxgsAICQAAMsLACAmAADMCwAgLAAAtAsAIOEFAADJCwAw4gUAADIAEOMFAADJCwAw5AUBAMMJACHoBQEAwwkAIeoFQADFCQAh6wVAAMUJACHUBgEAwwkAIdsGAADKC9sGIpUHAAAyACCWBwAAMgAgCuEFAACLCwAw4gUAAIQCABDjBQAAiwsAMOQFAQC0CQAh6gVAALYJACHrBUAAtgkAIbgGAQC0CQAhuQYBALQJACG7BgEAtAkAIdcGAQC1CQAhCwMAAI0LACDhBQAAjAsAMOIFAADzAQAQ4wUAAIwLADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACG4BgEAwwkAIbkGAQDDCQAhuwYBAMMJACHXBgEAxAkAIQP5BQAAAwAg-gUAAAMAIPsFAAADACAI4QUAAI4LADDiBQAA7QEAEOMFAACOCwAw5AUBALQJACHoBQEAtAkAIeoFQAC2CQAh6wVAALYJACGJBwEAtAkAIQtAAACQCwAgQQAAxQoAIOEFAACPCwAw4gUAAMsBABDjBQAAjwsAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAh6AYBAMQJACGEBwEAwwkAIQoSAAD8CgAg4QUAAPsKADDiBQAAoQIAEOMFAAD7CgAw5AUBAMMJACHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACGVBwAAoQIAIJYHAAChAgAgArQGAQAAAAG3BgEAAAABCwwAAPQKACANAACTCwAg4QUAAJILADDiBQAAKwAQ4wUAAJILADDlBQEAwwkAIbEGAQDDCQAhtAYBAMMJACG1BgEAxAkAIbYGAQDDCQAhtwYBAMMJACEODgAA9wkAIA8AAPgJACAQAAD5CQAg4QUAAPQJADDiBQAAJwAQ4wUAAPQJADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACHsBUAAxgkAIZEGAAD2Cb4GIrwGIAD1CQAhlQcAACcAIJYHAAAnACACtwYBAAAAAboGAQAAAAENDAAA9AoAIA0AAJMLACDhBQAAlQsAMOIFAAApABDjBQAAlQsAMLEGAQDDCQAhtAYBAMQJACG2BgEAwwkAIbcGAQDDCQAhuAYBAMMJACG5BgEAwwkAIboGAQDDCQAhuwYBAMMJACEODAAA9AoAIDkAAOoJACA-AADFCgAgPwAA2goAIOEFAACWCwAw4gUAAK8BABDjBQAAlgsAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAhtwYBAMMJACHRBgEAwwkAIdIGAQDECQAhEgkBAMMJACELAACYCwAgNgAAmQsAIOEFAACXCwAw4gUAAKIBABDjBQAAlwsAMOQFAQDDCQAh5QUBAMMJACHmBQEAxAkAIegFAQDDCQAh6QUBAMMJACHqBUAAxQkAIesFQADFCQAh7AVAAMYJACH8BQEAxAkAIf0FAQDECQAh_gUBAMQJACH_BRAAhAoAIQ81AADHCQAg4QUAAMIJADDiBQAApAEAEOMFAADCCQAw5AUBAMMJACHlBQEAwwkAIeYFAQDECQAh5wUBAMQJACHoBQEAwwkAIekFAQDDCQAh6gVAAMUJACHrBUAAxQkAIewFQADGCQAhlQcAAKQBACCWBwAApAEAIAP5BQAAIwAg-gUAACMAIPsFAAAjACALLQAA4wkAIDIAAJwLACDhBQAAmgsAMOIFAACZAQAQ4wUAAJoLADDkBQEAwwkAIeoFQADFCQAhhwYQAIQKACGJBgAAmwuJBiKKBkAAxQkAIYsGAQDDCQAhBO0FAAAAiQYC7gUAAACJBgjvBQAAAIkGCPQFAADTCYkGIg8xAADPCQAg4QUAAM4JADDiBQAAnQEAEOMFAADOCQAw5AUBAMMJACHmBQEAxAkAIeoFQADFCQAhgAYBAMMJACGBBgEAwwkAIYIGAQDDCQAhgwZAAMUJACGEBgEAxAkAIYUGAQDDCQAhlQcAAJ0BACCWBwAAnQEAIAKMBgIAAAABlwYBAAAAARAuAAChCwAg4QUAAJ4LADDiBQAAkwEAEOMFAACeCwAw5AUBAMMJACHqBUAAxQkAIYwGAgDiCQAhjgYAAJ8LjgYijwYBAMQJACGRBgAAoAuRBiKSBgAAuQoAIJMGAAC5CgAglAYBAMQJACGVBkAAxgkAIZYGQADGCQAhlwYBAMMJACEE7QUAAACOBgLuBQAAAI4GCO8FAAAAjgYI9AUAAN0JjgYiBO0FAAAAkQYC7gUAAACRBgjvBQAAAJEGCPQFAADbCZEGIg0tAADjCQAgLwAA5AkAIOEFAADhCQAw4gUAAJEBABDjBQAA4QkAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIYsGAQDDCQAhngYCAOIJACGfBkAAxgkAIZUHAACRAQAglgcAAJEBACAC8QYBAAAAAfIGAQAAAAEJJgAApQsAICoAAPQKACDhBQAAowsAMOIFAACHAQAQ4wUAAKMLADDkBQEAwwkAIdsGAACkC_EGIvEGAQDDCQAh8gYBAMMJACEE7QUAAADxBgLuBQAAAPEGCO8FAAAA8QYI9AUAAM0K8QYiCyUAANgKACAnAADZCgAgKQAA2goAICsAANsKACDhBQAA1woAMOIFAAB9ABDjBQAA1woAMOQFAQDDCQAhsgYBAMMJACGVBwAAfQAglgcAAH0AIALpBQEAAAAB8gYBAAAAAQkmAAClCwAgKAAAqQsAIOEFAACnCwAw4gUAAIMBABDjBQAApwsAMOQFAQDDCQAh6QUBAMMJACHbBgAAqAv0BiLyBgEAwwkAIQTtBQAAAPQGAu4FAAAA9AYI7wUAAAD0Bgj0BQAA0Qr0BiIQDAAA9AoAIDkAAOoJACA-AADFCgAgPwAA2goAIOEFAACWCwAw4gUAAK8BABDjBQAAlgsAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAhtwYBAMMJACHRBgEAwwkAIdIGAQDECQAhlQcAAK8BACCWBwAArwEAIAKzBgEAAAAB8gYBAAAAAQkkAACtCwAgJgAApQsAIOEFAACrCwAw4gUAAH8AEOMFAACrCwAw5AUBAMMJACGzBgEAwwkAIdsGAACsC_UGIvIGAQDDCQAhBO0FAAAA9QYC7gUAAAD1BgjvBQAAAPUGCPQFAADVCvUGIhcQAAD5CQAgFAAA2AoAICgAAKkLACBCAADoCwAgQwAA6QsAIEQAANkKACDhBQAA5QsAMOIFAAANABDjBQAA5QsAMOQFAQDDCQAh5QUBAMMJACHoBQEAwwkAIekFAQDDCQAh6gVAAMUJACHrBUAAxQkAIY4GAADmC80GIsoGAQDECQAhywYBAMQJACHOBgAA5wvOBiLPBgEAxAkAIdAGAQDECQAhlQcAAA0AIJYHAAANACAMEwAArwsAIBkAAPUKACDhBQAArgsAMOIFAABuABDjBQAArgsAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIdYGAQDDCQAh_AZAAMUJACH9BgEAwwkAIf4GAgDiCQAhEwMAAOIKACAVAADjCgAgFgAA5AoAICEAAOUKACAiAADmCgAgIwAA5woAIOEFAADgCgAw4gUAAIIEABDjBQAA4AoAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAhjgYAAMMK7wYirQYBAMMJACH2BgAA4Qr2BiL3BgEAxAkAIZUHAACCBAAglgcAAIIEACAMEwAArwsAIBwAALELACDhBQAAsAsAMOIFAABhABDjBQAAsAsAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIdYGAQDDCQAh_AZAAMUJACH9BgEAwwkAIf4GAgDiCQAhA_kFAABfACD6BQAAXwAg-wUAAF8AIAkXAACzCwAgHQAAtAsAIOEFAACyCwAw4gUAAF8AEOMFAACyCwAw5AUBAMMJACHqBUAAxQkAIesFQADFCQAh-wYBAMQJACEOEwAArwsAIBwAALELACDhBQAAsAsAMOIFAABhABDjBQAAsAsAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIdYGAQDDCQAh_AZAAMUJACH9BgEAwwkAIf4GAgDiCQAhlQcAAGEAIJYHAABhACAOFAAAigsAIBsAALYLACAeAAC3CwAg4QUAALULADDiBQAAWQAQ4wUAALULADDkBQEAwwkAIegFAQDECQAh6gVAAMUJACHrBUAAxQkAIfkGAQDECQAh-gYBAMQJACGVBwAAWQAglgcAAFkAIAwUAACKCwAgGwAAtgsAIB4AALcLACDhBQAAtQsAMOIFAABZABDjBQAAtQsAMOQFAQDDCQAh6AUBAMQJACHqBUAAxQkAIesFQADFCQAh-QYBAMQJACH6BgEAxAkAIRAMAAD0CgAgGAAA8woAIBkAAPUKACAfAAD2CgAg4QUAAPIKADDiBQAAUAAQ4wUAAPIKADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACG3BgEAwwkAIf8GQADFCQAhgQdAAMUJACGCBwEAwwkAIZUHAABQACCWBwAAUAAgCxcAALMLACAdAAC0CwAg4QUAALILADDiBQAAXwAQ4wUAALILADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACH7BgEAxAkAIZUHAABfACCWBwAAXwAgCxcAALkLACAaAAC2CwAg4QUAALgLADDiBQAAUgAQ4wUAALgLADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACH7BgEAwwkAIf8GQADFCQAhgAcBAMQJACEOEwAArwsAIBkAAPUKACDhBQAArgsAMOIFAABuABDjBQAArgsAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIdYGAQDDCQAh_AZAAMUJACH9BgEAwwkAIf4GAgDiCQAhlQcAAG4AIJYHAABuACAKFwAAuwsAIBoAALYLACDhBQAAugsAMOIFAABMABDjBQAAugsAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIfsGAQDDCQAhgwcCAOIJACEOEwAArwsAICAAAL0LACDhBQAAvAsAMOIFAABIABDjBQAAvAsAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIdYGAQDDCQAh_AZAAMUJACH9BgEAwwkAIf4GAgDiCQAhlQcAAEgAIJYHAABIACAMEwAArwsAICAAAL0LACDhBQAAvAsAMOIFAABIABDjBQAAvAsAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIdYGAQDDCQAh_AZAAMUJACH9BgEAwwkAIf4GAgDiCQAhA_kFAABMACD6BQAATAAg-wUAAEwAIALVBgEAAAAB1gYBAAAAAQsRAADACwAgEwAArwsAIOEFAAC_CwAw4gUAAEQAEOMFAAC_CwAw5QUBAMMJACHqBUAAxQkAIesFQADFCQAh1AYBAMMJACHVBgEAwwkAIdYGAQDDCQAhDwMAAKcKACAHAADpCQAgDgAAqQoAIA8AAKoKACASAACoCgAg4QUAAKQKADDiBQAA1AUAEOMFAACkCgAw5AUBAMMJACHqBUAAxQkAIesFQADFCQAhjgYAAKYK2gYikQYAAKUK2QYilQcAANQFACCWBwAA1AUAIAK7BgEAAAAB1AYBAAAAAQLWBgEAAAAB1wYBAAAAAQ0RAADACwAgEwAArwsAIOEFAADDCwAw4gUAADsAEOMFAADDCwAw6gVAAMUJACHrBUAAxQkAIbgGAQDDCQAhuQYBAMMJACG7BgEAwwkAIdQGAQDDCQAh1gYBAMMJACHXBgEAwwkAIQsTAACvCwAgFAAAxgsAIOEFAADECwAw4gUAAD0AEOMFAADECwAw5AUBAMMJACHoBQEAwwkAIeoFQADFCQAh6wVAAMUJACHWBgEAwwkAIdsGAADFC_kGIgTtBQAAAPkGAu4FAAAA-QYI7wUAAAD5Bgj0BQAA6wr5BiIOBgAAhwsAICUAAIoLACBFAACICwAgRgAAiQsAIOEFAACECwAw4gUAAIoCABDjBQAAhAsAMOQFAQDDCQAhjgYAAIULiAcikQYAAIYLiQcihQcBAMMJACGGBwEAwwkAIZUHAACKAgAglgcAAIoCACAVEQAAwAsAIEABAMMJACFCAQDDCQAh4QUAAMcLADDiBQAANwAQ4wUAAMcLADDqBUAAxQkAIesFQADFCQAhygYBAMMJACHUBgEAwwkAId0GAQDDCQAh4gYBAMMJACHkBgEAwwkAIeUGAQDDCQAh5wYAAMgL5wYi6AYBAMMJACHpBgEAwwkAIeoGAQDDCQAh6wYBAMQJACHsBgEAxAkAIe0GAQDECQAhBO0FAAAA5wYC7gUAAADnBgjvBQAAAOcGCPQFAAC9CucGIg8QAAD5CQAgEQAAwAsAIBQAAMYLACAkAADLCwAgJgAAzAsAICwAALQLACDhBQAAyQsAMOIFAAAyABDjBQAAyQsAMOQFAQDDCQAh6AUBAMMJACHqBUAAxQkAIesFQADFCQAh1AYBAMMJACHbBgAAygvbBiIE7QUAAADbBgLuBQAAANsGCO8FAAAA2wYI9AUAAK4K2wYiFxAAAPkJACAUAADYCgAgKAAAqQsAIEIAAOgLACBDAADpCwAgRAAA2QoAIOEFAADlCwAw4gUAAA0AEOMFAADlCwAw5AUBAMMJACHlBQEAwwkAIegFAQDDCQAh6QUBAMMJACHqBUAAxQkAIesFQADFCQAhjgYAAOYLzQYiygYBAMQJACHLBgEAxAkAIc4GAADnC84GIs8GAQDECQAh0AYBAMQJACGVBwAADQAglgcAAA0AIAslAADYCgAgJwAA2QoAICkAANoKACArAADbCgAg4QUAANcKADDiBQAAfQAQ4wUAANcKADDkBQEAwwkAIbIGAQDDCQAhlQcAAH0AIJYHAAB9ACACrgYCAAAAAbMGAQAAAAEVDQAAzwsAICQAAK0LACAlAADYCgAgLgAA0AsAIDAAAJkLACAzAADRCwAg4QUAAM4LADDiBQAALQAQ4wUAAM4LADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACGmBhAAhAoAIagGAQDECQAhrQYBAMMJACGuBgIA4gkAIa8GQADFCQAhsAYAALkKACCxBgEAxAkAIbIGAQDDCQAhswYBAMMJACEODgAA9wkAIA8AAPgJACAQAAD5CQAg4QUAAPQJADDiBQAAJwAQ4wUAAPQJADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACHsBUAAxgkAIZEGAAD2Cb4GIrwGIAD1CQAhlQcAACcAIJYHAAAnACANLQAA4wkAIC8AAOQJACDhBQAA4QkAMOIFAACRAQAQ4wUAAOEJADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACGLBgEAwwkAIZ4GAgDiCQAhnwZAAMYJACGVBwAAkQEAIJYHAACRAQAgA_kFAACZAQAg-gUAAJkBACD7BQAAmQEAIBYtAADjCQAgNAAA0wsAIDcAANQLACDhBQAA0gsAMOIFAAAjABDjBQAA0gsAMOQFAQDDCQAh6gVAAMUJACGLBgEAwwkAIaAGEACECgAhoQYBAMMJACGiBgEAwwkAIaMGAQDDCQAhpAYQAIQKACGlBhAAhAoAIaYGEACECgAhpwYQAIQKACGoBgEAxAkAIakGAAC5CgAgqgYAALkKACCrBgEAxAkAIawGAQDECQAhGgkAANgLACAKAADZCwAgCwAA2gsAIAwAANsLACA2AACZCwAg4QUAANULADDiBQAAGQAQ4wUAANULADDkBQEAwwkAIeUFAQDDCQAh5gUBAMQJACHnBQEAxAkAIeoFQADFCQAh6wVAAMUJACHsBUAAxgkAIfwFAQDECQAh_QUBAMQJACH-BQEAxAkAIf8FEADXCwAhtwYBAMQJACHEBiAAhgoAIccGAADWC8cGIsgGAQDDCQAhyQYBAMMJACGVBwAAGQAglgcAABkAIBQJAQDDCQAhCwAAmAsAIDYAAJkLACDhBQAAlwsAMOIFAACiAQAQ4wUAAJcLADDkBQEAwwkAIeUFAQDDCQAh5gUBAMQJACHoBQEAwwkAIekFAQDDCQAh6gVAAMUJACHrBUAAxQkAIewFQADGCQAh_AUBAMQJACH9BQEAxAkAIf4FAQDECQAh_wUQAIQKACGVBwAAogEAIJYHAACiAQAgGAkAANgLACAKAADZCwAgCwAA2gsAIAwAANsLACA2AACZCwAg4QUAANULADDiBQAAGQAQ4wUAANULADDkBQEAwwkAIeUFAQDDCQAh5gUBAMQJACHnBQEAxAkAIeoFQADFCQAh6wVAAMUJACHsBUAAxgkAIfwFAQDECQAh_QUBAMQJACH-BQEAxAkAIf8FEADXCwAhtwYBAMQJACHEBiAAhgoAIccGAADWC8cGIsgGAQDDCQAhyQYBAMMJACEE7QUAAADHBgLuBQAAAMcGCO8FAAAAxwYI9AUAAJEKxwYiCO0FEAAAAAHuBRAAAAAF7wUQAAAABfAFEAAAAAHxBRAAAAAB8gUQAAAAAfMFEAAAAAH0BRAAjwoAIQ8IAACHCgAg4QUAAIMKADDiBQAAjgcAEOMFAACDCgAw5AUBAMMJACHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACGRBgAAhQrCBiKtBgEAwwkAIcAGEACECgAhwgYgAIYKACHDBiAAhgoAIZUHAACOBwAglgcAAI4HACALCAAAhwoAIOEFAACJCgAw4gUAAPcGABDjBQAAiQoAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAhrQYBAMMJACGVBwAA9wYAIJYHAAD3BgAgEggAAIcKACAoAADeCwAgOAAA3QsAIOEFAADcCwAw4gUAABUAEOMFAADcCwAw5AUBAMMJACHlBQEAwwkAIeYFAQDECQAh5wUBAMQJACHpBQEAxAkAIeoFQADFCQAh6wVAAMUJACHsBUAAxgkAIcQGIACGCgAhxQYBAMQJACGVBwAAFQAglgcAABUAIBYIAACHCgAgEQAAwAsAIBsAALYLACA4AADhCwAgOgAA4gsAIDsAANsKACA8AADjCwAgPQAA5AsAIOEFAADgCwAw4gUAABEAEOMFAADgCwAw5AUBAMMJACHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACGXBgEAwwkAIbQGAQDDCQAhxQYBAMMJACHTBgEAwwkAIdQGAQDDCQAhlQcAABEAIJYHAAARACAQCAAAhwoAICgAAN4LACA4AADdCwAg4QUAANwLADDiBQAAFQAQ4wUAANwLADDkBQEAwwkAIeUFAQDDCQAh5gUBAMQJACHnBQEAxAkAIekFAQDECQAh6gVAAMUJACHrBUAAxQkAIewFQADGCQAhxAYgAIYKACHFBgEAxAkAIQwHAADpCQAgOQAA6gkAIOEFAADoCQAw4gUAAK0BABDjBQAA6AkAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAhrQYBAMQJACGVBwAArQEAIJYHAACtAQAgEAwAAPQKACA5AADqCQAgPgAAxQoAID8AANoKACDhBQAAlgsAMOIFAACvAQAQ4wUAAJYLADDkBQEAwwkAIeUFAQDDCQAh6gVAAMUJACHrBUAAxQkAIbcGAQDDCQAh0QYBAMMJACHSBgEAxAkAIZUHAACvAQAglgcAAK8BACACtAYBAAAAAdQGAQAAAAEUCAAAhwoAIBEAAMALACAbAAC2CwAgOAAA4QsAIDoAAOILACA7AADbCgAgPAAA4wsAID0AAOQLACDhBQAA4AsAMOIFAAARABDjBQAA4AsAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAhlwYBAMMJACG0BgEAwwkAIcUGAQDDCQAh0wYBAMMJACHUBgEAwwkAIQwHAADpCQAgOQAA6gkAIOEFAADoCQAw4gUAAK0BABDjBQAA6AkAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAhrQYBAMQJACGVBwAArQEAIJYHAACtAQAgA_kFAACvAQAg-gUAAK8BACD7BQAArwEAIAP5BQAAKQAg-gUAACkAIPsFAAApACAD-QUAACsAIPoFAAArACD7BQAAKwAgFRAAAPkJACAUAADYCgAgKAAAqQsAIEIAAOgLACBDAADpCwAgRAAA2QoAIOEFAADlCwAw4gUAAA0AEOMFAADlCwAw5AUBAMMJACHlBQEAwwkAIegFAQDDCQAh6QUBAMMJACHqBUAAxQkAIesFQADFCQAhjgYAAOYLzQYiygYBAMQJACHLBgEAxAkAIc4GAADnC84GIs8GAQDECQAh0AYBAMQJACEE7QUAAADNBgLuBQAAAM0GCO8FAAAAzQYI9AUAAJgKzQYiBO0FAAAAzgYC7gUAAADOBgjvBQAAAM4GCPQFAACWCs4GIg1AAACQCwAgQQAAxQoAIOEFAACPCwAw4gUAAMsBABDjBQAAjwsAMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAh6AYBAMQJACGEBwEAwwkAIZUHAADLAQAglgcAAMsBACANAwAAxAoAID4AAMUKACDhBQAAwgoAMOIFAADTAQAQ4wUAAMIKADDkBQEAwwkAIeUFAQDDCQAh6gVAAMUJACHrBUAAxQkAIY4GAADDCu8GIq0GAQDDCQAhlQcAANMBACCWBwAA0wEAIAsUAADGCwAgQwAA7AsAIOEFAADqCwAw4gUAAAgAEOMFAADqCwAw5AUBAMMJACHoBQEAwwkAIeoFQADFCQAh6wVAAMUJACHQBgEAwwkAIdsGAADrC_AGIgTtBQAAAPAGAu4FAAAA8AYI7wUAAADwBgj0BQAAyQrwBiINAwAAxAoAID4AAMUKACDhBQAAwgoAMOIFAADTAQAQ4wUAAMIKADDkBQEAwwkAIeUFAQDDCQAh6gVAAMUJACHrBUAAxQkAIY4GAADDCu8GIq0GAQDDCQAhlQcAANMBACCWBwAA0wEAIAoFAADuCwAgFAAAxgsAIOEFAADtCwAw4gUAAAMAEOMFAADtCwAw5AUBAMMJACHoBQEAwwkAIeoFQADFCQAh6wVAAMUJACGJBwEAwwkAIQ0DAACNCwAg4QUAAIwLADDiBQAA8wEAEOMFAACMCwAw5AUBAMMJACHqBUAAxQkAIesFQADFCQAhuAYBAMMJACG5BgEAwwkAIbsGAQDDCQAh1wYBAMQJACGVBwAA8wEAIJYHAADzAQAgAAAAAAGaBwEAAAABAZoHAQAAAAEBmgdAAAAAAQGaB0AAAAABC1EAAPgLADBSAAD9CwAwlwcAAPkLADCYBwAA-gsAMJkHAAD7CwAgmgcAAPwLADCbBwAA_AsAMJwHAAD8CwAwnQcAAPwLADCeBwAA_gsAMJ8HAAD_CwAwDQkBAAAAATYAAJYMACDkBQEAAAAB5QUBAAAAAeYFAQAAAAHoBQEAAAAB6QUBAAAAAeoFQAAAAAHrBUAAAAAB7AVAAAAAAfwFAQAAAAH9BQEAAAAB_wUQAAAAAQIAAACnAQAgUQAAlQwAIAMAAACnAQAgUQAAlQwAIFIAAIMMACABTAAAuhcAMBIJAQAAAAELAACYCwAgNgAAmQsAIOEFAACXCwAw4gUAAKIBABDjBQAAlwsAMOQFAQAAAAHlBQEAwwkAIeYFAQDECQAh6AUBAMMJACHpBQEAwwkAIeoFQADFCQAh6wVAAMUJACHsBUAAxgkAIfwFAQAAAAH9BQEAAAAB_gUBAMQJACH_BRAAhAoAIQIAAACnAQAgTAAAgwwAIAIAAACADAAgTAAAgQwAIBAJAQDDCQAh4QUAAP8LADDiBQAAgAwAEOMFAAD_CwAw5AUBAMMJACHlBQEAwwkAIeYFAQDECQAh6AUBAMMJACHpBQEAwwkAIeoFQADFCQAh6wVAAMUJACHsBUAAxgkAIfwFAQDECQAh_QUBAMQJACH-BQEAxAkAIf8FEACECgAhEAkBAMMJACHhBQAA_wsAMOIFAACADAAQ4wUAAP8LADDkBQEAwwkAIeUFAQDDCQAh5gUBAMQJACHoBQEAwwkAIekFAQDDCQAh6gVAAMUJACHrBUAAxQkAIewFQADGCQAh_AUBAMQJACH9BQEAxAkAIf4FAQDECQAh_wUQAIQKACEMCQEA8wsAIeQFAQDzCwAh5QUBAPMLACHmBQEA9AsAIegFAQDzCwAh6QUBAPMLACHqBUAA9QsAIesFQAD1CwAh7AVAAPYLACH8BQEA9AsAIf0FAQD0CwAh_wUQAIIMACEFmgcQAAAAAaEHEAAAAAGiBxAAAAABowcQAAAAAaQHEAAAAAENCQEA8wsAITYAAIQMACDkBQEA8wsAIeUFAQDzCwAh5gUBAPQLACHoBQEA8wsAIekFAQDzCwAh6gVAAPULACHrBUAA9QsAIewFQAD2CwAh_AUBAPQLACH9BQEA9AsAIf8FEACCDAAhC1EAAIUMADBSAACKDAAwlwcAAIYMADCYBwAAhwwAMJkHAACIDAAgmgcAAIkMADCbBwAAiQwAMJwHAACJDAAwnQcAAIkMADCeBwAAiwwAMJ8HAACMDAAwES0AAJMMACA0AACUDAAg5AUBAAAAAeoFQAAAAAGLBgEAAAABoAYQAAAAAaEGAQAAAAGiBgEAAAABowYBAAAAAaQGEAAAAAGlBhAAAAABpgYQAAAAAacGEAAAAAGoBgEAAAABqQaAAAAAAaoGgAAAAAGrBgEAAAABAgAAACUAIFEAAJIMACADAAAAJQAgUQAAkgwAIFIAAI8MACABTAAAuRcAMBYtAADjCQAgNAAA0wsAIDcAANQLACDhBQAA0gsAMOIFAAAjABDjBQAA0gsAMOQFAQAAAAHqBUAAxQkAIYsGAQDDCQAhoAYQAIQKACGhBgEAwwkAIaIGAQDDCQAhowYBAMMJACGkBhAAhAoAIaUGEACECgAhpgYQAIQKACGnBhAAhAoAIagGAQDECQAhqQYAALkKACCqBgAAuQoAIKsGAQDECQAhrAYBAMQJACECAAAAJQAgTAAAjwwAIAIAAACNDAAgTAAAjgwAIBPhBQAAjAwAMOIFAACNDAAQ4wUAAIwMADDkBQEAwwkAIeoFQADFCQAhiwYBAMMJACGgBhAAhAoAIaEGAQDDCQAhogYBAMMJACGjBgEAwwkAIaQGEACECgAhpQYQAIQKACGmBhAAhAoAIacGEACECgAhqAYBAMQJACGpBgAAuQoAIKoGAAC5CgAgqwYBAMQJACGsBgEAxAkAIRPhBQAAjAwAMOIFAACNDAAQ4wUAAIwMADDkBQEAwwkAIeoFQADFCQAhiwYBAMMJACGgBhAAhAoAIaEGAQDDCQAhogYBAMMJACGjBgEAwwkAIaQGEACECgAhpQYQAIQKACGmBhAAhAoAIacGEACECgAhqAYBAMQJACGpBgAAuQoAIKoGAAC5CgAgqwYBAMQJACGsBgEAxAkAIQ_kBQEA8wsAIeoFQAD1CwAhiwYBAPMLACGgBhAAggwAIaEGAQDzCwAhogYBAPMLACGjBgEA8wsAIaQGEACCDAAhpQYQAIIMACGmBhAAggwAIacGEACCDAAhqAYBAPQLACGpBoAAAAABqgaAAAAAAasGAQD0CwAhES0AAJAMACA0AACRDAAg5AUBAPMLACHqBUAA9QsAIYsGAQDzCwAhoAYQAIIMACGhBgEA8wsAIaIGAQDzCwAhowYBAPMLACGkBhAAggwAIaUGEACCDAAhpgYQAIIMACGnBhAAggwAIagGAQD0CwAhqQaAAAAAAaoGgAAAAAGrBgEA9AsAIQVRAACxFwAgUgAAtxcAIJcHAACyFwAgmAcAALYXACCdBwAALwAgB1EAAK8XACBSAAC0FwAglwcAALAXACCYBwAAsxcAIJsHAAAZACCcBwAAGQAgnQcAABsAIBEtAACTDAAgNAAAlAwAIOQFAQAAAAHqBUAAAAABiwYBAAAAAaAGEAAAAAGhBgEAAAABogYBAAAAAaMGAQAAAAGkBhAAAAABpQYQAAAAAaYGEAAAAAGnBhAAAAABqAYBAAAAAakGgAAAAAGqBoAAAAABqwYBAAAAAQNRAACxFwAglwcAALIXACCdBwAALwAgA1EAAK8XACCXBwAAsBcAIJ0HAAAbACANCQEAAAABNgAAlgwAIOQFAQAAAAHlBQEAAAAB5gUBAAAAAegFAQAAAAHpBQEAAAAB6gVAAAAAAesFQAAAAAHsBUAAAAAB_AUBAAAAAf0FAQAAAAH_BRAAAAABBFEAAIUMADCXBwAAhgwAMJkHAACIDAAgnQcAAIkMADAEUQAA-AsAMJcHAAD5CwAwmQcAAPsLACCdBwAA_AsAMAAB-AUBAAAAAQAAAAAAB1EAAKoXACBSAACtFwAglwcAAKsXACCYBwAArBcAIJsHAACkAQAgnAcAAKQBACCdBwAAnQkAIANRAACqFwAglwcAAKsXACCdBwAAnQkAIAAAAAVRAAClFwAgUgAAqBcAIJcHAACmFwAgmAcAAKcXACCdBwAAmwEAIANRAAClFwAglwcAAKYXACCdBwAAmwEAIAMtAADWDAAgMgAApxQAIKAHAACoFAAgAfgFAQAAAAEAAAAAAAGaBwAAAIkGAgVRAACgFwAgUgAAoxcAIJcHAAChFwAgmAcAAKIXACCdBwAALwAgB1EAALAMACBSAACzDAAglwcAALEMACCYBwAAsgwAIJsHAACdAQAgnAcAAJ0BACCdBwAA8wgAIAjkBQEAAAAB5gUBAAAAAeoFQAAAAAGABgEAAAABgQYBAAAAAYIGAQAAAAGDBkAAAAABhAYBAAAAAQIAAADzCAAgUQAAsAwAIAMAAACdAQAgUQAAsAwAIFIAALQMACAKAAAAnQEAIEwAALQMACDkBQEA8wsAIeYFAQD0CwAh6gVAAPULACGABgEA8wsAIYEGAQDzCwAhggYBAPMLACGDBkAA9QsAIYQGAQD0CwAhCOQFAQDzCwAh5gUBAPQLACHqBUAA9QsAIYAGAQDzCwAhgQYBAPMLACGCBgEA8wsAIYMGQAD1CwAhhAYBAPQLACEDUQAAoBcAIJcHAAChFwAgnQcAAC8AIANRAACwDAAglwcAALEMACCdBwAA8wgAIAAAAAAABZoHAgAAAAGhBwIAAAABogcCAAAAAaMHAgAAAAGkBwIAAAABAZoHAAAAjgYCAZoHAAAAkQYCBVEAAJsXACBSAACeFwAglwcAAJwXACCYBwAAnRcAIJ0HAAC1CAAgA1EAAJsXACCXBwAAnBcAIJ0HAAC1CAAgAAAAAAAFUQAAlRcAIFIAAJkXACCXBwAAlhcAIJgHAACYFwAgnQcAAC8AIAtRAADIDAAwUgAAzQwAMJcHAADJDAAwmAcAAMoMADCZBwAAywwAIJoHAADMDAAwmwcAAMwMADCcBwAAzAwAMJ0HAADMDAAwngcAAM4MADCfBwAAzwwAMAvkBQEAAAAB6gVAAAAAAYwGAgAAAAGOBgAAAI4GAo8GAQAAAAGRBgAAAJEGApIGgAAAAAGTBoAAAAABlAYBAAAAAZUGQAAAAAGWBkAAAAABAgAAAJUBACBRAADTDAAgAwAAAJUBACBRAADTDAAgUgAA0gwAIAFMAACXFwAwES4AAKELACDhBQAAngsAMOIFAACTAQAQ4wUAAJ4LADDkBQEAAAAB6gVAAMUJACGMBgIA4gkAIY4GAACfC44GIo8GAQAAAAGRBgAAoAuRBiKSBgAAuQoAIJMGAAC5CgAglAYBAMQJACGVBkAAxgkAIZYGQADGCQAhlwYBAMMJACGMBwAAnQsAIAIAAACVAQAgTAAA0gwAIAIAAADQDAAgTAAA0QwAIA_hBQAAzwwAMOIFAADQDAAQ4wUAAM8MADDkBQEAwwkAIeoFQADFCQAhjAYCAOIJACGOBgAAnwuOBiKPBgEAxAkAIZEGAACgC5EGIpIGAAC5CgAgkwYAALkKACCUBgEAxAkAIZUGQADGCQAhlgZAAMYJACGXBgEAwwkAIQ_hBQAAzwwAMOIFAADQDAAQ4wUAAM8MADDkBQEAwwkAIeoFQADFCQAhjAYCAOIJACGOBgAAnwuOBiKPBgEAxAkAIZEGAACgC5EGIpIGAAC5CgAgkwYAALkKACCUBgEAxAkAIZUGQADGCQAhlgZAAMYJACGXBgEAwwkAIQvkBQEA8wsAIeoFQAD1CwAhjAYCALwMACGOBgAAvQyOBiKPBgEA9AsAIZEGAAC-DJEGIpIGgAAAAAGTBoAAAAABlAYBAPQLACGVBkAA9gsAIZYGQAD2CwAhC-QFAQDzCwAh6gVAAPULACGMBgIAvAwAIY4GAAC9DI4GIo8GAQD0CwAhkQYAAL4MkQYikgaAAAAAAZMGgAAAAAGUBgEA9AsAIZUGQAD2CwAhlgZAAPYLACEL5AUBAAAAAeoFQAAAAAGMBgIAAAABjgYAAACOBgKPBgEAAAABkQYAAACRBgKSBoAAAAABkwaAAAAAAZQGAQAAAAGVBkAAAAABlgZAAAAAAQNRAACVFwAglwcAAJYXACCdBwAALwAgBFEAAMgMADCXBwAAyQwAMJkHAADLDAAgnQcAAMwMADAKDQAAoBQAICQAAK8UACAlAADoEQAgLgAAqRQAIDAAAKUUACAzAADIFAAgqAYAAO8LACCwBgAA7wsAILEGAADvCwAgoAcAAMkUACAAAfgFAQAAAAEAAAAAAAdRAACQFwAgUgAAkxcAIJcHAACRFwAgmAcAAJIXACCbBwAAogEAIJwHAACiAQAgnQcAAKcBACADUQAAkBcAIJcHAACRFwAgnQcAAKcBACAAAAAAAAdRAACDFwAgUgAAjhcAIJcHAACEFwAgmAcAAI0XACCbBwAAJwAgnAcAACcAIJ0HAAC5BwAgBVEAAIEXACBSAACLFwAglwcAAIIXACCYBwAAihcAIJ0HAAA0ACAFUQAA_xYAIFIAAIgXACCXBwAAgBcAIJgHAACHFwAgnQcAAA8AIAdRAACADQAgUgAAgw0AIJcHAACBDQAgmAcAAIINACCbBwAAkQEAIJwHAACRAQAgnQcAALUIACALUQAA9wwAMFIAAPsMADCXBwAA-AwAMJgHAAD5DAAwmQcAAPoMACCaBwAAiQwAMJsHAACJDAAwnAcAAIkMADCdBwAAiQwAMJ4HAAD8DAAwnwcAAIwMADALUQAA6wwAMFIAAPAMADCXBwAA7AwAMJgHAADtDAAwmQcAAO4MACCaBwAA7wwAMJsHAADvDAAwnAcAAO8MADCdBwAA7wwAMJ4HAADxDAAwnwcAAPIMADAGMgAAtgwAIOQFAQAAAAHqBUAAAAABhwYQAAAAAYkGAAAAiQYCigZAAAAAAQIAAACbAQAgUQAA9gwAIAMAAACbAQAgUQAA9gwAIFIAAPUMACABTAAAhhcAMAstAADjCQAgMgAAnAsAIOEFAACaCwAw4gUAAJkBABDjBQAAmgsAMOQFAQAAAAHqBUAAxQkAIYcGEACECgAhiQYAAJsLiQYiigZAAMUJACGLBgEAwwkAIQIAAACbAQAgTAAA9QwAIAIAAADzDAAgTAAA9AwAIAnhBQAA8gwAMOIFAADzDAAQ4wUAAPIMADDkBQEAwwkAIeoFQADFCQAhhwYQAIQKACGJBgAAmwuJBiKKBkAAxQkAIYsGAQDDCQAhCeEFAADyDAAw4gUAAPMMABDjBQAA8gwAMOQFAQDDCQAh6gVAAMUJACGHBhAAhAoAIYkGAACbC4kGIooGQADFCQAhiwYBAMMJACEF5AUBAPMLACHqBUAA9QsAIYcGEACCDAAhiQYAAK0MiQYiigZAAPULACEGMgAArwwAIOQFAQDzCwAh6gVAAPULACGHBhAAggwAIYkGAACtDIkGIooGQAD1CwAhBjIAALYMACDkBQEAAAAB6gVAAAAAAYcGEAAAAAGJBgAAAIkGAooGQAAAAAERNAAAlAwAIDcAAN8MACDkBQEAAAAB6gVAAAAAAaAGEAAAAAGhBgEAAAABogYBAAAAAaMGAQAAAAGkBhAAAAABpQYQAAAAAaYGEAAAAAGnBhAAAAABqAYBAAAAAakGgAAAAAGqBoAAAAABqwYBAAAAAawGAQAAAAECAAAAJQAgUQAA_wwAIAMAAAAlACBRAAD_DAAgUgAA_gwAIAFMAACFFwAwAgAAACUAIEwAAP4MACACAAAAjQwAIEwAAP0MACAP5AUBAPMLACHqBUAA9QsAIaAGEACCDAAhoQYBAPMLACGiBgEA8wsAIaMGAQDzCwAhpAYQAIIMACGlBhAAggwAIaYGEACCDAAhpwYQAIIMACGoBgEA9AsAIakGgAAAAAGqBoAAAAABqwYBAPQLACGsBgEA9AsAIRE0AACRDAAgNwAA3gwAIOQFAQDzCwAh6gVAAPULACGgBhAAggwAIaEGAQDzCwAhogYBAPMLACGjBgEA8wsAIaQGEACCDAAhpQYQAIIMACGmBhAAggwAIacGEACCDAAhqAYBAPQLACGpBoAAAAABqgaAAAAAAasGAQD0CwAhrAYBAPQLACERNAAAlAwAIDcAAN8MACDkBQEAAAAB6gVAAAAAAaAGEAAAAAGhBgEAAAABogYBAAAAAaMGAQAAAAGkBhAAAAABpQYQAAAAAaYGEAAAAAGnBhAAAAABqAYBAAAAAakGgAAAAAGqBoAAAAABqwYBAAAAAawGAQAAAAEGLwAA1QwAIOQFAQAAAAHqBUAAAAAB6wVAAAAAAZ4GAgAAAAGfBkAAAAABAgAAALUIACBRAACADQAgAwAAAJEBACBRAACADQAgUgAAhA0AIAgAAACRAQAgLwAAxwwAIEwAAIQNACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACGeBgIAvAwAIZ8GQAD2CwAhBi8AAMcMACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACGeBgIAvAwAIZ8GQAD2CwAhA1EAAIMXACCXBwAAhBcAIJ0HAAC5BwAgA1EAAIEXACCXBwAAghcAIJ0HAAA0ACADUQAA_xYAIJcHAACAFwAgnQcAAA8AIANRAACADQAglwcAAIENACCdBwAAtQgAIARRAAD3DAAwlwcAAPgMADCZBwAA-gwAIJ0HAACJDAAwBFEAAOsMADCXBwAA7AwAMJkHAADuDAAgnQcAAO8MADAAAAALUQAAwA0AMFIAAMUNADCXBwAAwQ0AMJgHAADCDQAwmQcAAMMNACCaBwAAxA0AMJsHAADEDQAwnAcAAMQNADCdBwAAxA0AMJ4HAADGDQAwnwcAAMcNADALUQAAkA0AMFIAAJUNADCXBwAAkQ0AMJgHAACSDQAwmQcAAJMNACCaBwAAlA0AMJsHAACUDQAwnAcAAJQNADCdBwAAlA0AMJ4HAACWDQAwnwcAAJcNADALCAAAvg0AICgAAL8NACDkBQEAAAAB5QUBAAAAAeYFAQAAAAHnBQEAAAAB6QUBAAAAAeoFQAAAAAHrBUAAAAAB7AVAAAAAAcQGIAAAAAECAAAAFwAgUQAAvQ0AIAMAAAAXACBRAAC9DQAgUgAAmw0AIAFMAAD-FgAwEAgAAIcKACAoAADeCwAgOAAA3QsAIOEFAADcCwAw4gUAABUAEOMFAADcCwAw5AUBAAAAAeUFAQDDCQAh5gUBAMQJACHnBQEAxAkAIekFAQDECQAh6gVAAMUJACHrBUAAxQkAIewFQADGCQAhxAYgAIYKACHFBgEAxAkAIQIAAAAXACBMAACbDQAgAgAAAJgNACBMAACZDQAgDeEFAACXDQAw4gUAAJgNABDjBQAAlw0AMOQFAQDDCQAh5QUBAMMJACHmBQEAxAkAIecFAQDECQAh6QUBAMQJACHqBUAAxQkAIesFQADFCQAh7AVAAMYJACHEBiAAhgoAIcUGAQDECQAhDeEFAACXDQAw4gUAAJgNABDjBQAAlw0AMOQFAQDDCQAh5QUBAMMJACHmBQEAxAkAIecFAQDECQAh6QUBAMQJACHqBUAAxQkAIesFQADFCQAh7AVAAMYJACHEBiAAhgoAIcUGAQDECQAhCeQFAQDzCwAh5QUBAPMLACHmBQEA9AsAIecFAQD0CwAh6QUBAPQLACHqBUAA9QsAIesFQAD1CwAh7AVAAPYLACHEBiAAmg0AIQGaByAAAAABCwgAAJwNACAoAACdDQAg5AUBAPMLACHlBQEA8wsAIeYFAQD0CwAh5wUBAPQLACHpBQEA9AsAIeoFQAD1CwAh6wVAAPULACHsBUAA9gsAIcQGIACaDQAhC1EAAJ4NADBSAACjDQAwlwcAAJ8NADCYBwAAoA0AMJkHAAChDQAgmgcAAKINADCbBwAAog0AMJwHAACiDQAwnQcAAKINADCeBwAApA0AMJ8HAAClDQAwB1EAAOgWACBSAAD8FgAglwcAAOkWACCYBwAA-xYAIJsHAACvAQAgnAcAAK8BACCdBwAAtgEAIBMJAAC5DQAgCgAAug0AIAwAALsNACA2AAC8DQAg5AUBAAAAAeUFAQAAAAHmBQEAAAAB5wUBAAAAAeoFQAAAAAHrBUAAAAAB7AVAAAAAAfwFAQAAAAH9BQEAAAAB_wUQAAAAAbcGAQAAAAHEBiAAAAABxwYAAADHBgLIBgEAAAAByQYBAAAAAQIAAAAbACBRAAC4DQAgAwAAABsAIFEAALgNACBSAACqDQAgAUwAAPoWADAYCQAA2AsAIAoAANkLACALAADaCwAgDAAA2wsAIDYAAJkLACDhBQAA1QsAMOIFAAAZABDjBQAA1QsAMOQFAQAAAAHlBQEAwwkAIeYFAQDECQAh5wUBAMQJACHqBUAAxQkAIesFQADFCQAh7AVAAMYJACH8BQEAAAAB_QUBAAAAAf4FAQDECQAh_wUQANcLACG3BgEAxAkAIcQGIACGCgAhxwYAANYLxwYiyAYBAMMJACHJBgEAwwkAIQIAAAAbACBMAACqDQAgAgAAAKYNACBMAACnDQAgE-EFAAClDQAw4gUAAKYNABDjBQAApQ0AMOQFAQDDCQAh5QUBAMMJACHmBQEAxAkAIecFAQDECQAh6gVAAMUJACHrBUAAxQkAIewFQADGCQAh_AUBAMQJACH9BQEAxAkAIf4FAQDECQAh_wUQANcLACG3BgEAxAkAIcQGIACGCgAhxwYAANYLxwYiyAYBAMMJACHJBgEAwwkAIRPhBQAApQ0AMOIFAACmDQAQ4wUAAKUNADDkBQEAwwkAIeUFAQDDCQAh5gUBAMQJACHnBQEAxAkAIeoFQADFCQAh6wVAAMUJACHsBUAAxgkAIfwFAQDECQAh_QUBAMQJACH-BQEAxAkAIf8FEADXCwAhtwYBAMQJACHEBiAAhgoAIccGAADWC8cGIsgGAQDDCQAhyQYBAMMJACEP5AUBAPMLACHlBQEA8wsAIeYFAQD0CwAh5wUBAPQLACHqBUAA9QsAIesFQAD1CwAh7AVAAPYLACH8BQEA9AsAIf0FAQD0CwAh_wUQAKkNACG3BgEA9AsAIcQGIACaDQAhxwYAAKgNxwYiyAYBAPMLACHJBgEA8wsAIQGaBwAAAMcGAgWaBxAAAAABoQcQAAAAAaIHEAAAAAGjBxAAAAABpAcQAAAAARMJAACrDQAgCgAArA0AIAwAAK0NACA2AACuDQAg5AUBAPMLACHlBQEA8wsAIeYFAQD0CwAh5wUBAPQLACHqBUAA9QsAIesFQAD1CwAh7AVAAPYLACH8BQEA9AsAIf0FAQD0CwAh_wUQAKkNACG3BgEA9AsAIcQGIACaDQAhxwYAAKgNxwYiyAYBAPMLACHJBgEA8wsAIQVRAADuFgAgUgAA-BYAIJcHAADvFgAgmAcAAPcWACCdBwAAiwcAIAVRAADsFgAgUgAA9RYAIJcHAADtFgAgmAcAAPQWACCdBwAA9AYAIAdRAADqFgAgUgAA8hYAIJcHAADrFgAgmAcAAPEWACCbBwAAEQAgnAcAABEAIJ0HAAATACALUQAArw0AMFIAALMNADCXBwAAsA0AMJgHAACxDQAwmQcAALINACCaBwAAiQwAMJsHAACJDAAwnAcAAIkMADCdBwAAiQwAMJ4HAAC0DQAwnwcAAIwMADARLQAAkwwAIDcAAN8MACDkBQEAAAAB6gVAAAAAAYsGAQAAAAGgBhAAAAABoQYBAAAAAaIGAQAAAAGjBgEAAAABpAYQAAAAAaUGEAAAAAGmBhAAAAABpwYQAAAAAagGAQAAAAGpBoAAAAABqgaAAAAAAawGAQAAAAECAAAAJQAgUQAAtw0AIAMAAAAlACBRAAC3DQAgUgAAtg0AIAFMAADwFgAwAgAAACUAIEwAALYNACACAAAAjQwAIEwAALUNACAP5AUBAPMLACHqBUAA9QsAIYsGAQDzCwAhoAYQAIIMACGhBgEA8wsAIaIGAQDzCwAhowYBAPMLACGkBhAAggwAIaUGEACCDAAhpgYQAIIMACGnBhAAggwAIagGAQD0CwAhqQaAAAAAAaoGgAAAAAGsBgEA9AsAIREtAACQDAAgNwAA3gwAIOQFAQDzCwAh6gVAAPULACGLBgEA8wsAIaAGEACCDAAhoQYBAPMLACGiBgEA8wsAIaMGAQDzCwAhpAYQAIIMACGlBhAAggwAIaYGEACCDAAhpwYQAIIMACGoBgEA9AsAIakGgAAAAAGqBoAAAAABrAYBAPQLACERLQAAkwwAIDcAAN8MACDkBQEAAAAB6gVAAAAAAYsGAQAAAAGgBhAAAAABoQYBAAAAAaIGAQAAAAGjBgEAAAABpAYQAAAAAaUGEAAAAAGmBhAAAAABpwYQAAAAAagGAQAAAAGpBoAAAAABqgaAAAAAAawGAQAAAAETCQAAuQ0AIAoAALoNACAMAAC7DQAgNgAAvA0AIOQFAQAAAAHlBQEAAAAB5gUBAAAAAecFAQAAAAHqBUAAAAAB6wVAAAAAAewFQAAAAAH8BQEAAAAB_QUBAAAAAf8FEAAAAAG3BgEAAAABxAYgAAAAAccGAAAAxwYCyAYBAAAAAckGAQAAAAEDUQAA7hYAIJcHAADvFgAgnQcAAIsHACADUQAA7BYAIJcHAADtFgAgnQcAAPQGACADUQAA6hYAIJcHAADrFgAgnQcAABMAIARRAACvDQAwlwcAALANADCZBwAAsg0AIJ0HAACJDAAwCwgAAL4NACAoAAC_DQAg5AUBAAAAAeUFAQAAAAHmBQEAAAAB5wUBAAAAAekFAQAAAAHqBUAAAAAB6wVAAAAAAewFQAAAAAHEBiAAAAABBFEAAJ4NADCXBwAAnw0AMJkHAAChDQAgnQcAAKINADADUQAA6BYAIJcHAADpFgAgnQcAALYBACAPCAAAlQ8AIBEAAJEPACAbAACSDwAgOgAAkw8AIDsAAJQPACA8AACWDwAgPQAAlw8AIOQFAQAAAAHlBQEAAAAB6gVAAAAAAesFQAAAAAGXBgEAAAABtAYBAAAAAdMGAQAAAAHUBgEAAAABAgAAABMAIFEAAJAPACADAAAAEwAgUQAAkA8AIFIAAMoNACABTAAA5xYAMBUIAACHCgAgEQAAwAsAIBsAALYLACA4AADhCwAgOgAA4gsAIDsAANsKACA8AADjCwAgPQAA5AsAIOEFAADgCwAw4gUAABEAEOMFAADgCwAw5AUBAAAAAeUFAQDDCQAh6gVAAMUJACHrBUAAxQkAIZcGAQDDCQAhtAYBAMMJACHFBgEAwwkAIdMGAQDDCQAh1AYBAMMJACGUBwAA3wsAIAIAAAATACBMAADKDQAgAgAAAMgNACBMAADJDQAgDOEFAADHDQAw4gUAAMgNABDjBQAAxw0AMOQFAQDDCQAh5QUBAMMJACHqBUAAxQkAIesFQADFCQAhlwYBAMMJACG0BgEAwwkAIcUGAQDDCQAh0wYBAMMJACHUBgEAwwkAIQzhBQAAxw0AMOIFAADIDQAQ4wUAAMcNADDkBQEAwwkAIeUFAQDDCQAh6gVAAMUJACHrBUAAxQkAIZcGAQDDCQAhtAYBAMMJACHFBgEAwwkAIdMGAQDDCQAh1AYBAMMJACEI5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACGXBgEA8wsAIbQGAQDzCwAh0wYBAPMLACHUBgEA8wsAIQ8IAADPDQAgEQAAyw0AIBsAAMwNACA6AADNDQAgOwAAzg0AIDwAANANACA9AADRDQAg5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACGXBgEA8wsAIbQGAQDzCwAh0wYBAPMLACHUBgEA8wsAIQVRAACQFgAgUgAA5RYAIJcHAACRFgAgmAcAAOQWACCdBwAA0QUAIAdRAADnDgAgUgAA6g4AIJcHAADoDgAgmAcAAOkOACCbBwAAUAAgnAcAAFAAIJ0HAADxAgAgC1EAAIgOADBSAACNDgAwlwcAAIkOADCYBwAAig4AMJkHAACLDgAgmgcAAIwOADCbBwAAjA4AMJwHAACMDgAwnQcAAIwOADCeBwAAjg4AMJ8HAACPDgAwC1EAAPkNADBSAAD-DQAwlwcAAPoNADCYBwAA-w0AMJkHAAD8DQAgmgcAAP0NADCbBwAA_Q0AMJwHAAD9DQAwnQcAAP0NADCeBwAA_w0AMJ8HAACADgAwC1EAAO4NADBSAADyDQAwlwcAAO8NADCYBwAA8A0AMJkHAADxDQAgmgcAAKINADCbBwAAog0AMJwHAACiDQAwnQcAAKINADCeBwAA8w0AMJ8HAAClDQAwC1EAAOANADBSAADlDQAwlwcAAOENADCYBwAA4g0AMJkHAADjDQAgmgcAAOQNADCbBwAA5A0AMJwHAADkDQAwnQcAAOQNADCeBwAA5g0AMJ8HAADnDQAwC1EAANINADBSAADXDQAwlwcAANMNADCYBwAA1A0AMJkHAADVDQAgmgcAANYNADCbBwAA1g0AMJwHAADWDQAwnQcAANYNADCeBwAA2A0AMJ8HAADZDQAwBg0AAN8NACDlBQEAAAABsQYBAAAAAbQGAQAAAAG1BgEAAAABtgYBAAAAAQIAAAC-AQAgUQAA3g0AIAMAAAC-AQAgUQAA3g0AIFIAANwNACABTAAA4xYAMAwMAAD0CgAgDQAAkwsAIOEFAACSCwAw4gUAACsAEOMFAACSCwAw5QUBAMMJACGxBgEAAAABtAYBAMMJACG1BgEAxAkAIbYGAQDDCQAhtwYBAMMJACGKBwAAkQsAIAIAAAC-AQAgTAAA3A0AIAIAAADaDQAgTAAA2w0AIAnhBQAA2Q0AMOIFAADaDQAQ4wUAANkNADDlBQEAwwkAIbEGAQDDCQAhtAYBAMMJACG1BgEAxAkAIbYGAQDDCQAhtwYBAMMJACEJ4QUAANkNADDiBQAA2g0AEOMFAADZDQAw5QUBAMMJACGxBgEAwwkAIbQGAQDDCQAhtQYBAMQJACG2BgEAwwkAIbcGAQDDCQAhBeUFAQDzCwAhsQYBAPMLACG0BgEA8wsAIbUGAQD0CwAhtgYBAPMLACEGDQAA3Q0AIOUFAQDzCwAhsQYBAPMLACG0BgEA8wsAIbUGAQD0CwAhtgYBAPMLACEFUQAA3hYAIFIAAOEWACCXBwAA3xYAIJgHAADgFgAgnQcAALkHACAGDQAA3w0AIOUFAQAAAAGxBgEAAAABtAYBAAAAAbUGAQAAAAG2BgEAAAABA1EAAN4WACCXBwAA3xYAIJ0HAAC5BwAgCA0AAO0NACCxBgEAAAABtAYBAAAAAbYGAQAAAAG4BgEAAAABuQYBAAAAAboGAQAAAAG7BgEAAAABAgAAALsBACBRAADsDQAgAwAAALsBACBRAADsDQAgUgAA6g0AIAFMAADdFgAwDgwAAPQKACANAACTCwAg4QUAAJULADDiBQAAKQAQ4wUAAJULADCxBgEAAAABtAYBAMQJACG2BgEAwwkAIbcGAQDDCQAhuAYBAMMJACG5BgEAwwkAIboGAQDDCQAhuwYBAMMJACGLBwAAlAsAIAIAAAC7AQAgTAAA6g0AIAIAAADoDQAgTAAA6Q0AIAvhBQAA5w0AMOIFAADoDQAQ4wUAAOcNADCxBgEAwwkAIbQGAQDECQAhtgYBAMMJACG3BgEAwwkAIbgGAQDDCQAhuQYBAMMJACG6BgEAwwkAIbsGAQDDCQAhC-EFAADnDQAw4gUAAOgNABDjBQAA5w0AMLEGAQDDCQAhtAYBAMQJACG2BgEAwwkAIbcGAQDDCQAhuAYBAMMJACG5BgEAwwkAIboGAQDDCQAhuwYBAMMJACEHsQYBAPMLACG0BgEA9AsAIbYGAQDzCwAhuAYBAPMLACG5BgEA8wsAIboGAQDzCwAhuwYBAPMLACEIDQAA6w0AILEGAQDzCwAhtAYBAPQLACG2BgEA8wsAIbgGAQDzCwAhuQYBAPMLACG6BgEA8wsAIbsGAQDzCwAhBVEAANgWACBSAADbFgAglwcAANkWACCYBwAA2hYAIJ0HAAC5BwAgCA0AAO0NACCxBgEAAAABtAYBAAAAAbYGAQAAAAG4BgEAAAABuQYBAAAAAboGAQAAAAG7BgEAAAABA1EAANgWACCXBwAA2RYAIJ0HAAC5BwAgEwkAALkNACAKAAC6DQAgCwAA-A0AIDYAALwNACDkBQEAAAAB5QUBAAAAAeYFAQAAAAHnBQEAAAAB6gVAAAAAAesFQAAAAAHsBUAAAAAB_AUBAAAAAf0FAQAAAAH-BQEAAAAB_wUQAAAAAcQGIAAAAAHHBgAAAMcGAsgGAQAAAAHJBgEAAAABAgAAABsAIFEAAPcNACADAAAAGwAgUQAA9w0AIFIAAPUNACABTAAA1xYAMAIAAAAbACBMAAD1DQAgAgAAAKYNACBMAAD0DQAgD-QFAQDzCwAh5QUBAPMLACHmBQEA9AsAIecFAQD0CwAh6gVAAPULACHrBUAA9QsAIewFQAD2CwAh_AUBAPQLACH9BQEA9AsAIf4FAQD0CwAh_wUQAKkNACHEBiAAmg0AIccGAACoDccGIsgGAQDzCwAhyQYBAPMLACETCQAAqw0AIAoAAKwNACALAAD2DQAgNgAArg0AIOQFAQDzCwAh5QUBAPMLACHmBQEA9AsAIecFAQD0CwAh6gVAAPULACHrBUAA9QsAIewFQAD2CwAh_AUBAPQLACH9BQEA9AsAIf4FAQD0CwAh_wUQAKkNACHEBiAAmg0AIccGAACoDccGIsgGAQDzCwAhyQYBAPMLACEHUQAA0hYAIFIAANUWACCXBwAA0xYAIJgHAADUFgAgmwcAABUAIJwHAAAVACCdBwAAFwAgEwkAALkNACAKAAC6DQAgCwAA-A0AIDYAALwNACDkBQEAAAAB5QUBAAAAAeYFAQAAAAHnBQEAAAAB6gVAAAAAAesFQAAAAAHsBUAAAAAB_AUBAAAAAf0FAQAAAAH-BQEAAAAB_wUQAAAAAcQGIAAAAAHHBgAAAMcGAsgGAQAAAAHJBgEAAAABA1EAANIWACCXBwAA0xYAIJ0HAAAXACAEJgAAhw4AIOQFAQAAAAHbBgAAAPEGAvIGAQAAAAECAAAAiQEAIFEAAIYOACADAAAAiQEAIFEAAIYOACBSAACEDgAgAUwAANEWADAKJgAApQsAICoAAPQKACDhBQAAowsAMOIFAACHAQAQ4wUAAKMLADDkBQEAAAAB2wYAAKQL8QYi8QYBAMMJACHyBgEAwwkAIY0HAACiCwAgAgAAAIkBACBMAACEDgAgAgAAAIEOACBMAACCDgAgB-EFAACADgAw4gUAAIEOABDjBQAAgA4AMOQFAQDDCQAh2wYAAKQL8QYi8QYBAMMJACHyBgEAwwkAIQfhBQAAgA4AMOIFAACBDgAQ4wUAAIAOADDkBQEAwwkAIdsGAACkC_EGIvEGAQDDCQAh8gYBAMMJACED5AUBAPMLACHbBgAAgw7xBiLyBgEA8wsAIQGaBwAAAPEGAgQmAACFDgAg5AUBAPMLACHbBgAAgw7xBiLyBgEA8wsAIQVRAADMFgAgUgAAzxYAIJcHAADNFgAgmAcAAM4WACCdBwAAlgQAIAQmAACHDgAg5AUBAAAAAdsGAAAA8QYC8gYBAAAAAQNRAADMFgAglwcAAM0WACCdBwAAlgQAIAk5AADlDgAgPgAA5A4AID8AAOYOACDkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAAB0QYBAAAAAdIGAQAAAAECAAAAtgEAIFEAAOMOACADAAAAtgEAIFEAAOMOACBSAACSDgAgAUwAAMsWADAODAAA9AoAIDkAAOoJACA-AADFCgAgPwAA2goAIOEFAACWCwAw4gUAAK8BABDjBQAAlgsAMOQFAQAAAAHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACG3BgEAwwkAIdEGAQDDCQAh0gYBAMQJACECAAAAtgEAIEwAAJIOACACAAAAkA4AIEwAAJEOACAK4QUAAI8OADDiBQAAkA4AEOMFAACPDgAw5AUBAMMJACHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACG3BgEAwwkAIdEGAQDDCQAh0gYBAMQJACEK4QUAAI8OADDiBQAAkA4AEOMFAACPDgAw5AUBAMMJACHlBQEAwwkAIeoFQADFCQAh6wVAAMUJACG3BgEAwwkAIdEGAQDDCQAh0gYBAMQJACEG5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACHRBgEA8wsAIdIGAQD0CwAhCTkAAJQOACA-AACTDgAgPwAAlQ4AIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAh0QYBAPMLACHSBgEA9AsAIQtRAACwDgAwUgAAtQ4AMJcHAACxDgAwmAcAALIOADCZBwAAsw4AIJoHAAC0DgAwmwcAALQOADCcBwAAtA4AMJ0HAAC0DgAwngcAALYOADCfBwAAtw4AMAtRAAClDgAwUgAAqQ4AMJcHAACmDgAwmAcAAKcOADCZBwAAqA4AIJoHAACUDQAwmwcAAJQNADCcBwAAlA0AMJ0HAACUDQAwngcAAKoOADCfBwAAlw0AMAtRAACWDgAwUgAAmw4AMJcHAACXDgAwmAcAAJgOADCZBwAAmQ4AIJoHAACaDgAwmwcAAJoOADCcBwAAmg4AMJ0HAACaDgAwngcAAJwOADCfBwAAnQ4AMAQmAACkDgAg5AUBAAAAAdsGAAAA9AYC8gYBAAAAAQIAAACFAQAgUQAAow4AIAMAAACFAQAgUQAAow4AIFIAAKEOACABTAAAyhYAMAomAAClCwAgKAAAqQsAIOEFAACnCwAw4gUAAIMBABDjBQAApwsAMOQFAQAAAAHpBQEAwwkAIdsGAACoC_QGIvIGAQDDCQAhjgcAAKYLACACAAAAhQEAIEwAAKEOACACAAAAng4AIEwAAJ8OACAH4QUAAJ0OADDiBQAAng4AEOMFAACdDgAw5AUBAMMJACHpBQEAwwkAIdsGAACoC_QGIvIGAQDDCQAhB-EFAACdDgAw4gUAAJ4OABDjBQAAnQ4AMOQFAQDDCQAh6QUBAMMJACHbBgAAqAv0BiLyBgEAwwkAIQPkBQEA8wsAIdsGAACgDvQGIvIGAQDzCwAhAZoHAAAA9AYCBCYAAKIOACDkBQEA8wsAIdsGAACgDvQGIvIGAQDzCwAhBVEAAMUWACBSAADIFgAglwcAAMYWACCYBwAAxxYAIJ0HAACWBAAgBCYAAKQOACDkBQEAAAAB2wYAAAD0BgLyBgEAAAABA1EAAMUWACCXBwAAxhYAIJ0HAACWBAAgCwgAAL4NACA4AACvDgAg5AUBAAAAAeUFAQAAAAHmBQEAAAAB5wUBAAAAAeoFQAAAAAHrBUAAAAAB7AVAAAAAAcQGIAAAAAHFBgEAAAABAgAAABcAIFEAAK4OACADAAAAFwAgUQAArg4AIFIAAKwOACABTAAAxBYAMAIAAAAXACBMAACsDgAgAgAAAJgNACBMAACrDgAgCeQFAQDzCwAh5QUBAPMLACHmBQEA9AsAIecFAQD0CwAh6gVAAPULACHrBUAA9QsAIewFQAD2CwAhxAYgAJoNACHFBgEA9AsAIQsIAACcDQAgOAAArQ4AIOQFAQDzCwAh5QUBAPMLACHmBQEA9AsAIecFAQD0CwAh6gVAAPULACHrBUAA9QsAIewFQAD2CwAhxAYgAJoNACHFBgEA9AsAIQdRAAC_FgAgUgAAwhYAIJcHAADAFgAgmAcAAMEWACCbBwAArQEAIJwHAACtAQAgnQcAAPcHACALCAAAvg0AIDgAAK8OACDkBQEAAAAB5QUBAAAAAeYFAQAAAAHnBQEAAAAB6gVAAAAAAesFQAAAAAHsBUAAAAABxAYgAAAAAcUGAQAAAAEDUQAAvxYAIJcHAADAFgAgnQcAAPcHACAQEAAA4g4AIBQAAOAOACBCAADeDgAgQwAA3w4AIEQAAOEOACDkBQEAAAAB5QUBAAAAAegFAQAAAAHqBUAAAAAB6wVAAAAAAY4GAAAAzQYCygYBAAAAAcsGAQAAAAHOBgAAAM4GAs8GAQAAAAHQBgEAAAABAgAAAA8AIFEAAN0OACADAAAADwAgUQAA3Q4AIFIAALwOACABTAAAvhYAMBUQAAD5CQAgFAAA2AoAICgAAKkLACBCAADoCwAgQwAA6QsAIEQAANkKACDhBQAA5QsAMOIFAAANABDjBQAA5QsAMOQFAQAAAAHlBQEAwwkAIegFAQAAAAHpBQEAwwkAIeoFQADFCQAh6wVAAMUJACGOBgAA5gvNBiLKBgEAxAkAIcsGAQAAAAHOBgAA5wvOBiLPBgEAxAkAIdAGAQDECQAhAgAAAA8AIEwAALwOACACAAAAuA4AIEwAALkOACAP4QUAALcOADDiBQAAuA4AEOMFAAC3DgAw5AUBAMMJACHlBQEAwwkAIegFAQDDCQAh6QUBAMMJACHqBUAAxQkAIesFQADFCQAhjgYAAOYLzQYiygYBAMQJACHLBgEAxAkAIc4GAADnC84GIs8GAQDECQAh0AYBAMQJACEP4QUAALcOADDiBQAAuA4AEOMFAAC3DgAw5AUBAMMJACHlBQEAwwkAIegFAQDDCQAh6QUBAMMJACHqBUAAxQkAIesFQADFCQAhjgYAAOYLzQYiygYBAMQJACHLBgEAxAkAIc4GAADnC84GIs8GAQDECQAh0AYBAMQJACEL5AUBAPMLACHlBQEA8wsAIegFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAAC6Ds0GIsoGAQD0CwAhywYBAPQLACHOBgAAuw7OBiLPBgEA9AsAIdAGAQD0CwAhAZoHAAAAzQYCAZoHAAAAzgYCEBAAAMEOACAUAAC_DgAgQgAAvQ4AIEMAAL4OACBEAADADgAg5AUBAPMLACHlBQEA8wsAIegFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAAC6Ds0GIsoGAQD0CwAhywYBAPQLACHOBgAAuw7OBiLPBgEA9AsAIdAGAQD0CwAhB1EAAKwWACBSAAC8FgAglwcAAK0WACCYBwAAuxYAIJsHAADLAQAgnAcAAMsBACCdBwAAzgEAIAdRAACqFgAgUgAAuRYAIJcHAACrFgAgmAcAALgWACCbBwAA0wEAIJwHAADTAQAgnQcAAPwEACAFUQAAqBYAIFIAALYWACCXBwAAqRYAIJgHAAC1FgAgnQcAADQAIAtRAADODgAwUgAA0w4AMJcHAADPDgAwmAcAANAOADCZBwAA0Q4AIJoHAADSDgAwmwcAANIOADCcBwAA0g4AMJ0HAADSDgAwngcAANQOADCfBwAA1Q4AMAtRAADCDgAwUgAAxw4AMJcHAADDDgAwmAcAAMQOADCZBwAAxQ4AIJoHAADGDgAwmwcAAMYOADCcBwAAxg4AMJ0HAADGDgAwngcAAMgOADCfBwAAyQ4AMBANAACFDQAgJQAAhg0AIC4AAIgNACAwAACJDQAgMwAAig0AIOQFAQAAAAHqBUAAAAAB6wVAAAAAAaYGEAAAAAGoBgEAAAABrQYBAAAAAa4GAgAAAAGvBkAAAAABsAaAAAAAAbEGAQAAAAGyBgEAAAABAgAAAC8AIFEAAM0OACADAAAALwAgUQAAzQ4AIFIAAMwOACABTAAAtBYAMBYNAADPCwAgJAAArQsAICUAANgKACAuAADQCwAgMAAAmQsAIDMAANELACDhBQAAzgsAMOIFAAAtABDjBQAAzgsAMOQFAQAAAAHqBUAAxQkAIesFQADFCQAhpgYQAIQKACGoBgEAxAkAIa0GAQAAAAGuBgIA4gkAIa8GQADFCQAhsAYAALkKACCxBgEAxAkAIbIGAQDDCQAhswYBAMMJACGTBwAAzQsAIAIAAAAvACBMAADMDgAgAgAAAMoOACBMAADLDgAgD-EFAADJDgAw4gUAAMoOABDjBQAAyQ4AMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIaYGEACECgAhqAYBAMQJACGtBgEAwwkAIa4GAgDiCQAhrwZAAMUJACGwBgAAuQoAILEGAQDECQAhsgYBAMMJACGzBgEAwwkAIQ_hBQAAyQ4AMOIFAADKDgAQ4wUAAMkOADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACGmBhAAhAoAIagGAQDECQAhrQYBAMMJACGuBgIA4gkAIa8GQADFCQAhsAYAALkKACCxBgEAxAkAIbIGAQDDCQAhswYBAMMJACEL5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhpgYQAIIMACGoBgEA9AsAIa0GAQDzCwAhrgYCALwMACGvBkAA9QsAIbAGgAAAAAGxBgEA9AsAIbIGAQDzCwAhEA0AAOUMACAlAADmDAAgLgAA6AwAIDAAAOkMACAzAADqDAAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhpgYQAIIMACGoBgEA9AsAIa0GAQDzCwAhrgYCALwMACGvBkAA9QsAIbAGgAAAAAGxBgEA9AsAIbIGAQDzCwAhEA0AAIUNACAlAACGDQAgLgAAiA0AIDAAAIkNACAzAACKDQAg5AUBAAAAAeoFQAAAAAHrBUAAAAABpgYQAAAAAagGAQAAAAGtBgEAAAABrgYCAAAAAa8GQAAAAAGwBoAAAAABsQYBAAAAAbIGAQAAAAEEJgAA3A4AIOQFAQAAAAHbBgAAAPUGAvIGAQAAAAECAAAAgQEAIFEAANsOACADAAAAgQEAIFEAANsOACBSAADZDgAgAUwAALMWADAKJAAArQsAICYAAKULACDhBQAAqwsAMOIFAAB_ABDjBQAAqwsAMOQFAQAAAAGzBgEAwwkAIdsGAACsC_UGIvIGAQDDCQAhjwcAAKoLACACAAAAgQEAIEwAANkOACACAAAA1g4AIEwAANcOACAH4QUAANUOADDiBQAA1g4AEOMFAADVDgAw5AUBAMMJACGzBgEAwwkAIdsGAACsC_UGIvIGAQDDCQAhB-EFAADVDgAw4gUAANYOABDjBQAA1Q4AMOQFAQDDCQAhswYBAMMJACHbBgAArAv1BiLyBgEAwwkAIQPkBQEA8wsAIdsGAADYDvUGIvIGAQDzCwAhAZoHAAAA9QYCBCYAANoOACDkBQEA8wsAIdsGAADYDvUGIvIGAQDzCwAhBVEAAK4WACBSAACxFgAglwcAAK8WACCYBwAAsBYAIJ0HAACWBAAgBCYAANwOACDkBQEAAAAB2wYAAAD1BgLyBgEAAAABA1EAAK4WACCXBwAArxYAIJ0HAACWBAAgEBAAAOIOACAUAADgDgAgQgAA3g4AIEMAAN8OACBEAADhDgAg5AUBAAAAAeUFAQAAAAHoBQEAAAAB6gVAAAAAAesFQAAAAAGOBgAAAM0GAsoGAQAAAAHLBgEAAAABzgYAAADOBgLPBgEAAAAB0AYBAAAAAQNRAACsFgAglwcAAK0WACCdBwAAzgEAIANRAACqFgAglwcAAKsWACCdBwAA_AQAIANRAACoFgAglwcAAKkWACCdBwAANAAgBFEAAM4OADCXBwAAzw4AMJkHAADRDgAgnQcAANIOADAEUQAAwg4AMJcHAADDDgAwmQcAAMUOACCdBwAAxg4AMAk5AADlDgAgPgAA5A4AID8AAOYOACDkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAAB0QYBAAAAAdIGAQAAAAEEUQAAsA4AMJcHAACxDgAwmQcAALMOACCdBwAAtA4AMARRAAClDgAwlwcAAKYOADCZBwAAqA4AIJ0HAACUDQAwBFEAAJYOADCXBwAAlw4AMJkHAACZDgAgnQcAAJoOADAJGAAAjQ8AIBkAAI4PACAfAACPDwAg5AUBAAAAAeoFQAAAAAHrBUAAAAAB_wZAAAAAAYEHQAAAAAGCBwEAAAABAgAAAPECACBRAADnDgAgAwAAAFAAIFEAAOcOACBSAADrDgAgCwAAAFAAIBgAAOwOACAZAADtDgAgHwAA7g4AIEwAAOsOACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACH_BkAA9QsAIYEHQAD1CwAhggcBAPMLACEJGAAA7A4AIBkAAO0OACAfAADuDgAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh_wZAAPULACGBB0AA9QsAIYIHAQDzCwAhBVEAAJIWACBSAACmFgAglwcAAJMWACCYBwAApRYAIJ0HAABOACALUQAA_w4AMFIAAIQPADCXBwAAgA8AMJgHAACBDwAwmQcAAIIPACCaBwAAgw8AMJsHAACDDwAwnAcAAIMPADCdBwAAgw8AMJ4HAACFDwAwnwcAAIYPADALUQAA7w4AMFIAAPQOADCXBwAA8A4AMJgHAADxDgAwmQcAAPIOACCaBwAA8w4AMJsHAADzDgAwnAcAAPMOADCdBwAA8w4AMJ4HAAD1DgAwnwcAAPYOADAHFAAA_Q4AIB4AAP4OACDkBQEAAAAB6AUBAAAAAeoFQAAAAAHrBUAAAAAB-gYBAAAAAQIAAABbACBRAAD8DgAgAwAAAFsAIFEAAPwOACBSAAD5DgAgAUwAAKQWADAMFAAAigsAIBsAALYLACAeAAC3CwAg4QUAALULADDiBQAAWQAQ4wUAALULADDkBQEAAAAB6AUBAAAAAeoFQADFCQAh6wVAAMUJACH5BgEAxAkAIfoGAQAAAAECAAAAWwAgTAAA-Q4AIAIAAAD3DgAgTAAA-A4AIAnhBQAA9g4AMOIFAAD3DgAQ4wUAAPYOADDkBQEAwwkAIegFAQDECQAh6gVAAMUJACHrBUAAxQkAIfkGAQDECQAh-gYBAMQJACEJ4QUAAPYOADDiBQAA9w4AEOMFAAD2DgAw5AUBAMMJACHoBQEAxAkAIeoFQADFCQAh6wVAAMUJACH5BgEAxAkAIfoGAQDECQAhBeQFAQDzCwAh6AUBAPQLACHqBUAA9QsAIesFQAD1CwAh-gYBAPQLACEHFAAA-g4AIB4AAPsOACDkBQEA8wsAIegFAQD0CwAh6gVAAPULACHrBUAA9QsAIfoGAQD0CwAhB1EAAJwWACBSAACiFgAglwcAAJ0WACCYBwAAoRYAIJsHAAAyACCcBwAAMgAgnQcAADQAIAdRAACaFgAgUgAAnxYAIJcHAACbFgAgmAcAAJ4WACCbBwAAXwAgnAcAAF8AIJ0HAABkACAHFAAA_Q4AIB4AAP4OACDkBQEAAAAB6AUBAAAAAeoFQAAAAAHrBUAAAAAB-gYBAAAAAQNRAACcFgAglwcAAJ0WACCdBwAANAAgA1EAAJoWACCXBwAAmxYAIJ0HAABkACAGFwAAjA8AIOQFAQAAAAHqBUAAAAAB6wVAAAAAAfsGAQAAAAH_BkAAAAABAgAAAFQAIFEAAIsPACADAAAAVAAgUQAAiw8AIFIAAIkPACABTAAAmRYAMAsXAAC5CwAgGgAAtgsAIOEFAAC4CwAw4gUAAFIAEOMFAAC4CwAw5AUBAAAAAeoFQADFCQAh6wVAAMUJACH7BgEAwwkAIf8GQADFCQAhgAcBAMQJACECAAAAVAAgTAAAiQ8AIAIAAACHDwAgTAAAiA8AIAnhBQAAhg8AMOIFAACHDwAQ4wUAAIYPADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACH7BgEAwwkAIf8GQADFCQAhgAcBAMQJACEJ4QUAAIYPADDiBQAAhw8AEOMFAACGDwAw5AUBAMMJACHqBUAAxQkAIesFQADFCQAh-wYBAMMJACH_BkAAxQkAIYAHAQDECQAhBeQFAQDzCwAh6gVAAPULACHrBUAA9QsAIfsGAQDzCwAh_wZAAPULACEGFwAAig8AIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIfsGAQDzCwAh_wZAAPULACEFUQAAlBYAIFIAAJcWACCXBwAAlRYAIJgHAACWFgAgnQcAAHAAIAYXAACMDwAg5AUBAAAAAeoFQAAAAAHrBUAAAAAB-wYBAAAAAf8GQAAAAAEDUQAAlBYAIJcHAACVFgAgnQcAAHAAIANRAACSFgAglwcAAJMWACCdBwAATgAgBFEAAP8OADCXBwAAgA8AMJkHAACCDwAgnQcAAIMPADAEUQAA7w4AMJcHAADwDgAwmQcAAPIOACCdBwAA8w4AMA8IAACVDwAgEQAAkQ8AIBsAAJIPACA6AACTDwAgOwAAlA8AIDwAAJYPACA9AACXDwAg5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAZcGAQAAAAG0BgEAAAAB0wYBAAAAAdQGAQAAAAEDUQAAkBYAIJcHAACRFgAgnQcAANEFACADUQAA5w4AIJcHAADoDgAgnQcAAPECACAEUQAAiA4AMJcHAACJDgAwmQcAAIsOACCdBwAAjA4AMARRAAD5DQAwlwcAAPoNADCZBwAA_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_AUBAAAAAf0FAQAAAAH-BQEAAAAB_wUQAAAAAbcGAQAAAAHEBiAAAAABxwYAAADHBgLJBgEAAAABAgAAABsAIFEAAN4PACADAAAAGwAgUQAA3g8AIFIAAN0PACABTAAAhBYAMAIAAAAbACBMAADdDwAgAgAAAKYNACBMAADcDwAgD-QFAQDzCwAh5QUBAPMLACHmBQEA9AsAIecFAQD0CwAh6gVAAPULACHrBUAA9QsAIewFQAD2CwAh_AUBAPQLACH9BQEA9AsAIf4FAQD0CwAh_wUQAKkNACG3BgEA9AsAIcQGIACaDQAhxwYAAKgNxwYiyQYBAPMLACETCgAArA0AIAsAAPYNACAMAACtDQAgNgAArg0AIOQFAQDzCwAh5QUBAPMLACHmBQEA9AsAIecFAQD0CwAh6gVAAPULACHrBUAA9QsAIewFQAD2CwAh_AUBAPQLACH9BQEA9AsAIf4FAQD0CwAh_wUQAKkNACG3BgEA9AsAIcQGIACaDQAhxwYAAKgNxwYiyQYBAPMLACETCgAAug0AIAsAAPgNACAMAAC7DQAgNgAAvA0AIOQFAQAAAAHlBQEAAAAB5gUBAAAAAecFAQAAAAHqBUAAAAAB6wVAAAAAAewFQAAAAAH8BQEAAAAB_QUBAAAAAf4FAQAAAAH_BRAAAAABtwYBAAAAAcQGIAAAAAHHBgAAAMcGAskGAQAAAAEEUQAA1g8AMJcHAADXDwAwmQcAANkPACCdBwAAog0AMAAB-AUBAAAAAQAAAAtRAADmDwAwUgAA6g8AMJcHAADnDwAwmAcAAOgPADCZBwAA6Q8AIJoHAACiDQAwmwcAAKINADCcBwAAog0AMJ0HAACiDQAwngcAAOsPADCfBwAApQ0AMBMJAAC5DQAgCwAA-A0AIAwAALsNACA2AAC8DQAg5AUBAAAAAeUFAQAAAAHmBQEAAAAB5wUBAAAAAeoFQAAAAAHrBUAAAAAB7AVAAAAAAfwFAQAAAAH9BQEAAAAB_gUBAAAAAf8FEAAAAAG3BgEAAAABxAYgAAAAAccGAAAAxwYCyAYBAAAAAQIAAAAbACBRAADuDwAgAwAAABsAIFEAAO4PACBSAADtDwAgAUwAAIMWADACAAAAGwAgTAAA7Q8AIAIAAACmDQAgTAAA7A8AIA_kBQEA8wsAIeUFAQDzCwAh5gUBAPQLACHnBQEA9AsAIeoFQAD1CwAh6wVAAPULACHsBUAA9gsAIfwFAQD0CwAh_QUBAPQLACH-BQEA9AsAIf8FEACpDQAhtwYBAPQLACHEBiAAmg0AIccGAACoDccGIsgGAQDzCwAhEwkAAKsNACALAAD2DQAgDAAArQ0AIDYAAK4NACDkBQEA8wsAIeUFAQDzCwAh5gUBAPQLACHnBQEA9AsAIeoFQAD1CwAh6wVAAPULACHsBUAA9gsAIfwFAQD0CwAh_QUBAPQLACH-BQEA9AsAIf8FEACpDQAhtwYBAPQLACHEBiAAmg0AIccGAACoDccGIsgGAQDzCwAhEwkAALkNACALAAD4DQAgDAAAuw0AIDYAALwNACDkBQEAAAAB5QUBAAAAAeYFAQAAAAHnBQEAAAAB6gVAAAAAAesFQAAAAAHsBUAAAAAB_AUBAAAAAf0FAQAAAAH-BQEAAAAB_wUQAAAAAbcGAQAAAAHEBiAAAAABxwYAAADHBgLIBgEAAAABBFEAAOYPADCXBwAA5w8AMJkHAADpDwAgnQcAAKINADAB-AUBAAAAAQAAAAAAAAAAAAAABVEAAP4VACBSAACBFgAglwcAAP8VACCYBwAAgBYAIJ0HAAC2AQAgA1EAAP4VACCXBwAA_xUAIJ0HAAC2AQAgAAAABVEAAPkVACBSAAD8FQAglwcAAPoVACCYBwAA-xUAIJ0HAAATACADUQAA-RUAIJcHAAD6FQAgnQcAABMAIAAAAAVRAAD0FQAgUgAA9xUAIJcHAAD1FQAgmAcAAPYVACCdBwAA9wcAIANRAAD0FQAglwcAAPUVACCdBwAA9wcAIAAAAAVRAADsFQAgUgAA8hUAIJcHAADtFQAgmAcAAPEVACCdBwAA_wMAIAVRAADqFQAgUgAA7xUAIJcHAADrFQAgmAcAAO4VACCdBwAA0QUAIANRAADsFQAglwcAAO0VACCdBwAA_wMAIANRAADqFQAglwcAAOsVACCdBwAA0QUAIAAAAAVRAADiFQAgUgAA6BUAIJcHAADjFQAgmAcAAOcVACCdBwAA_wMAIAVRAADgFQAgUgAA5RUAIJcHAADhFQAgmAcAAOQVACCdBwAA0QUAIANRAADiFQAglwcAAOMVACCdBwAA_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_xAAMFIAAIMRADCXBwAAgBEAMJgHAACBEQAwmQcAAIIRACCaBwAA0g4AMJsHAADSDgAwnAcAANIOADCdBwAA0g4AMJ4HAACEEQAwnwcAANUOADALUQAA9BAAMFIAAPgQADCXBwAA9RAAMJgHAAD2EAAwmQcAAPcQACCaBwAAmg4AMJsHAACaDgAwnAcAAJoOADCdBwAAmg4AMJ4HAAD5EAAwnwcAAJ0OADALUQAA6RAAMFIAAO0QADCXBwAA6hAAMJgHAADrEAAwmQcAAOwQACCaBwAA_Q0AMJsHAAD9DQAwnAcAAP0NADCdBwAA_Q0AMJ4HAADuEAAwnwcAAIAOADAEKgAA8xAAIOQFAQAAAAHbBgAAAPEGAvEGAQAAAAECAAAAiQEAIFEAAPIQACADAAAAiQEAIFEAAPIQACBSAADwEAAgAUwAANMVADACAAAAiQEAIEwAAPAQACACAAAAgQ4AIEwAAO8QACAD5AUBAPMLACHbBgAAgw7xBiLxBgEA8wsAIQQqAADxEAAg5AUBAPMLACHbBgAAgw7xBiLxBgEA8wsAIQVRAADOFQAgUgAA0RUAIJcHAADPFQAgmAcAANAVACCdBwAAEwAgBCoAAPMQACDkBQEAAAAB2wYAAADxBgLxBgEAAAABA1EAAM4VACCXBwAAzxUAIJ0HAAATACAEKAAA_hAAIOQFAQAAAAHpBQEAAAAB2wYAAAD0BgICAAAAhQEAIFEAAP0QACADAAAAhQEAIFEAAP0QACBSAAD7EAAgAUwAAM0VADACAAAAhQEAIEwAAPsQACACAAAAng4AIEwAAPoQACAD5AUBAPMLACHpBQEA8wsAIdsGAACgDvQGIgQoAAD8EAAg5AUBAPMLACHpBQEA8wsAIdsGAACgDvQGIgVRAADIFQAgUgAAyxUAIJcHAADJFQAgmAcAAMoVACCdBwAAtgEAIAQoAAD-EAAg5AUBAAAAAekFAQAAAAHbBgAAAPQGAgNRAADIFQAglwcAAMkVACCdBwAAtgEAIAQkAACJEQAg5AUBAAAAAbMGAQAAAAHbBgAAAPUGAgIAAACBAQAgUQAAiBEAIAMAAACBAQAgUQAAiBEAIFIAAIYRACABTAAAxxUAMAIAAACBAQAgTAAAhhEAIAIAAADWDgAgTAAAhREAIAPkBQEA8wsAIbMGAQDzCwAh2wYAANgO9QYiBCQAAIcRACDkBQEA8wsAIbMGAQDzCwAh2wYAANgO9QYiBVEAAMIVACBSAADFFQAglwcAAMMVACCYBwAAxBUAIJ0HAAAPACAEJAAAiREAIOQFAQAAAAGzBgEAAAAB2wYAAAD1BgIDUQAAwhUAIJcHAADDFQAgnQcAAA8AIARRAAD_EAAwlwcAAIARADCZBwAAghEAIJ0HAADSDgAwBFEAAPQQADCXBwAA9RAAMJkHAAD3EAAgnQcAAJoOADAEUQAA6RAAMJcHAADqEAAwmQcAAOwQACCdBwAA_Q0AMBAQAADiDgAgKAAA_Q8AIEIAAN4OACBDAADfDgAgRAAA4Q4AIOQFAQAAAAHlBQEAAAAB6QUBAAAAAeoFQAAAAAHrBUAAAAABjgYAAADNBgLKBgEAAAABywYBAAAAAc4GAAAAzgYCzwYBAAAAAdAGAQAAAAECAAAADwAgUQAAjREAIAMAAAANACBRAACNEQAgUgAAkREAIBIAAAANACAQAADBDgAgKAAA_A8AIEIAAL0OACBDAAC-DgAgRAAAwA4AIEwAAJERACDkBQEA8wsAIeUFAQDzCwAh6QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALoOzQYiygYBAPQLACHLBgEA9AsAIc4GAAC7Ds4GIs8GAQD0CwAh0AYBAPQLACEQEAAAwQ4AICgAAPwPACBCAAC9DgAgQwAAvg4AIEQAAMAOACDkBQEA8wsAIeUFAQDzCwAh6QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALoOzQYiygYBAPQLACHLBgEA9AsAIc4GAAC7Ds4GIs8GAQD0CwAh0AYBAPQLACEKEAAAlxEAIBQAAJMRACAkAACUEQAgJgAAlREAICwAAJYRACDkBQEAAAAB6AUBAAAAAeoFQAAAAAHrBUAAAAAB2wYAAADbBgIDUQAAwBUAIJcHAADBFQAgnQcAAIcCACADUQAAjREAIJcHAACOEQAgnQcAAA8AIANRAADhEAAglwcAAOIQACCdBwAAlgQAIANRAADaEAAglwcAANsQACCdBwAAWwAgBFEAANEQADCXBwAA0hAAMJkHAADUEAAgnQcAAMYOADAEUQAAwBAAMJcHAADBEAAwmQcAAMMQACCdBwAAxBAAMARRAAC3EAAwlwcAALgQADCZBwAAuhAAIJ0HAADEDQAwBFEAAKoQADCXBwAAqxAAMJkHAACtEAAgnQcAAK4QADADUQAApRAAIJcHAACmEAAgnQcAAEIAIANRAACgEAAglwcAAKEQACCdBwAARgAgAAADEQAAwRQAIBMAALEUACCgBwAAwxQAIAMRAADBFAAgEwAAsRQAIKAHAADCFAAgAfgFAQAAAAEAAAAFUQAAuxUAIFIAAL4VACCXBwAAvBUAIJgHAAC9FQAgnQcAANEFACADUQAAuxUAIJcHAAC8FQAgnQcAANEFACAAAAABmgcAAADgBgIBmgcAAADiBgIB-AUBAAAAAQAAAAVRAAC2FQAgUgAAuRUAIJcHAAC3FQAgmAcAALgVACCdBwAA0QUAIANRAAC2FQAglwcAALcVACCdBwAA0QUAIAAAAAGaBwAAAO8GAgtRAADBEQAwUgAAxhEAMJcHAADCEQAwmAcAAMMRADCZBwAAxBEAIJoHAADFEQAwmwcAAMURADCcBwAAxREAMJ0HAADFEQAwngcAAMcRADCfBwAAyBEAMAtRAAC4EQAwUgAAvBEAMJcHAAC5EQAwmAcAALoRADCZBwAAuxEAIJoHAAC0DgAwmwcAALQOADCcBwAAtA4AMJ0HAAC0DgAwngcAAL0RADCfBwAAtw4AMBAQAADiDgAgFAAA4A4AICgAAP0PACBCAADeDgAgRAAA4Q4AIOQFAQAAAAHlBQEAAAAB6AUBAAAAAekFAQAAAAHqBUAAAAAB6wVAAAAAAY4GAAAAzQYCygYBAAAAAcsGAQAAAAHOBgAAAM4GAs8GAQAAAAECAAAADwAgUQAAwBEAIAMAAAAPACBRAADAEQAgUgAAvxEAIAFMAAC1FQAwAgAAAA8AIEwAAL8RACACAAAAuA4AIEwAAL4RACAL5AUBAPMLACHlBQEA8wsAIegFAQDzCwAh6QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALoOzQYiygYBAPQLACHLBgEA9AsAIc4GAAC7Ds4GIs8GAQD0CwAhEBAAAMEOACAUAAC_DgAgKAAA_A8AIEIAAL0OACBEAADADgAg5AUBAPMLACHlBQEA8wsAIegFAQDzCwAh6QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALoOzQYiygYBAPQLACHLBgEA9AsAIc4GAAC7Ds4GIs8GAQD0CwAhEBAAAOIOACAUAADgDgAgKAAA_Q8AIEIAAN4OACBEAADhDgAg5AUBAAAAAeUFAQAAAAHoBQEAAAAB6QUBAAAAAeoFQAAAAAHrBUAAAAABjgYAAADNBgLKBgEAAAABywYBAAAAAc4GAAAAzgYCzwYBAAAAAQYUAADPEQAg5AUBAAAAAegFAQAAAAHqBUAAAAAB6wVAAAAAAdsGAAAA8AYCAgAAAAsAIFEAAM4RACADAAAACwAgUQAAzhEAIFIAAMwRACABTAAAtBUAMAsUAADGCwAgQwAA7AsAIOEFAADqCwAw4gUAAAgAEOMFAADqCwAw5AUBAAAAAegFAQAAAAHqBUAAxQkAIesFQADFCQAh0AYBAMMJACHbBgAA6wvwBiICAAAACwAgTAAAzBEAIAIAAADJEQAgTAAAyhEAIAnhBQAAyBEAMOIFAADJEQAQ4wUAAMgRADDkBQEAwwkAIegFAQDDCQAh6gVAAMUJACHrBUAAxQkAIdAGAQDDCQAh2wYAAOsL8AYiCeEFAADIEQAw4gUAAMkRABDjBQAAyBEAMOQFAQDDCQAh6AUBAMMJACHqBUAAxQkAIesFQADFCQAh0AYBAMMJACHbBgAA6wvwBiIF5AUBAPMLACHoBQEA8wsAIeoFQAD1CwAh6wVAAPULACHbBgAAyxHwBiIBmgcAAADwBgIGFAAAzREAIOQFAQDzCwAh6AUBAPMLACHqBUAA9QsAIesFQAD1CwAh2wYAAMsR8AYiBVEAAK8VACBSAACyFQAglwcAALAVACCYBwAAsRUAIJ0HAACHAgAgBhQAAM8RACDkBQEAAAAB6AUBAAAAAeoFQAAAAAHrBUAAAAAB2wYAAADwBgIDUQAArxUAIJcHAACwFQAgnQcAAIcCACAEUQAAwREAMJcHAADCEQAwmQcAAMQRACCdBwAAxREAMARRAAC4EQAwlwcAALkRADCZBwAAuxEAIJ0HAAC0DgAwAAAB-AUBAAAAAQAAAAVRAACqFQAgUgAArRUAIJcHAACrFQAgmAcAAKwVACCdBwAA_AQAIANRAACqFQAglwcAAKsVACCdBwAA_AQAIAAAAAAAAAAAAAAAAAVRAAClFQAgUgAAqBUAIJcHAACmFQAgmAcAAKcVACCdBwAANAAgA1EAAKUVACCXBwAAphUAIJ0HAAA0ACAHEAAAxw8AIBEAAMEUACAUAADEFAAgJAAArxQAICYAAKsUACAsAAC2FAAgoAcAAMcUACAAAAAB-AUBAAAAAQAAAAGaBwAAAPYGAgtRAADsEgAwUgAA8RIAMJcHAADtEgAwmAcAAO4SADCZBwAA7xIAIJoHAADwEgAwmwcAAPASADCcBwAA8BIAMJ0HAADwEgAwngcAAPISADCfBwAA8xIAMAtRAADgEgAwUgAA5RIAMJcHAADhEgAwmAcAAOISADCZBwAA4xIAIJoHAADkEgAwmwcAAOQSADCcBwAA5BIAMJ0HAADkEgAwngcAAOYSADCfBwAA5xIAMAtRAADUEgAwUgAA2RIAMJcHAADVEgAwmAcAANYSADCZBwAA1xIAIJoHAADYEgAwmwcAANgSADCcBwAA2BIAMJ0HAADYEgAwngcAANoSADCfBwAA2xIAMAtRAACxEgAwUgAAthIAMJcHAACyEgAwmAcAALMSADCZBwAAtBIAIJoHAAC1EgAwmwcAALUSADCcBwAAtRIAMJ0HAAC1EgAwngcAALcSADCfBwAAuBIAMAtRAACQEgAwUgAAlRIAMJcHAACREgAwmAcAAJISADCZBwAAkxIAIJoHAACUEgAwmwcAAJQSADCcBwAAlBIAMJ0HAACUEgAwngcAAJYSADCfBwAAlxIAMAtRAAD3EQAwUgAA_BEAMJcHAAD4EQAwmAcAAPkRADCZBwAA-hEAIJoHAAD7EQAwmwcAAPsRADCcBwAA-xEAMJ0HAAD7EQAwngcAAP0RADCfBwAA_hEAMAcZAACPEgAg5AUBAAAAAeoFQAAAAAHrBUAAAAAB_AZAAAAAAf0GAQAAAAH-BgIAAAABAgAAAHAAIFEAAI4SACADAAAAcAAgUQAAjhIAIFIAAIESACABTAAApBUAMAwTAACvCwAgGQAA9QoAIOEFAACuCwAw4gUAAG4AEOMFAACuCwAw5AUBAAAAAeoFQADFCQAh6wVAAMUJACHWBgEAwwkAIfwGQADFCQAh_QYBAAAAAf4GAgDiCQAhAgAAAHAAIEwAAIESACACAAAA_xEAIEwAAIASACAK4QUAAP4RADDiBQAA_xEAEOMFAAD-EQAw5AUBAMMJACHqBUAAxQkAIesFQADFCQAh1gYBAMMJACH8BkAAxQkAIf0GAQDDCQAh_gYCAOIJACEK4QUAAP4RADDiBQAA_xEAEOMFAAD-EQAw5AUBAMMJACHqBUAAxQkAIesFQADFCQAh1gYBAMMJACH8BkAAxQkAIf0GAQDDCQAh_gYCAOIJACEG5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh_AZAAPULACH9BgEA8wsAIf4GAgC8DAAhBxkAAIISACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACH8BkAA9QsAIf0GAQDzCwAh_gYCALwMACELUQAAgxIAMFIAAIcSADCXBwAAhBIAMJgHAACFEgAwmQcAAIYSACCaBwAAgw8AMJsHAACDDwAwnAcAAIMPADCdBwAAgw8AMJ4HAACIEgAwnwcAAIYPADAGGgAAjRIAIOQFAQAAAAHqBUAAAAAB6wVAAAAAAf8GQAAAAAGABwEAAAABAgAAAFQAIFEAAIwSACADAAAAVAAgUQAAjBIAIFIAAIoSACABTAAAoxUAMAIAAABUACBMAACKEgAgAgAAAIcPACBMAACJEgAgBeQFAQDzCwAh6gVAAPULACHrBUAA9QsAIf8GQAD1CwAhgAcBAPQLACEGGgAAixIAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIf8GQAD1CwAhgAcBAPQLACEHUQAAnhUAIFIAAKEVACCXBwAAnxUAIJgHAACgFQAgmwcAAFAAIJwHAABQACCdBwAA8QIAIAYaAACNEgAg5AUBAAAAAeoFQAAAAAHrBUAAAAAB_wZAAAAAAYAHAQAAAAEDUQAAnhUAIJcHAACfFQAgnQcAAPECACAHGQAAjxIAIOQFAQAAAAHqBUAAAAAB6wVAAAAAAfwGQAAAAAH9BgEAAAAB_gYCAAAAAQRRAACDEgAwlwcAAIQSADCZBwAAhhIAIJ0HAACDDwAwBxwAALASACDkBQEAAAAB6gVAAAAAAesFQAAAAAH8BkAAAAAB_QYBAAAAAf4GAgAAAAECAAAAbAAgUQAArxIAIAMAAABsACBRAACvEgAgUgAAmhIAIAFMAACdFQAwDBMAAK8LACAcAACxCwAg4QUAALALADDiBQAAYQAQ4wUAALALADDkBQEAAAAB6gVAAMUJACHrBUAAxQkAIdYGAQDDCQAh_AZAAMUJACH9BgEAAAAB_gYCAOIJACECAAAAbAAgTAAAmhIAIAIAAACYEgAgTAAAmRIAIArhBQAAlxIAMOIFAACYEgAQ4wUAAJcSADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACHWBgEAwwkAIfwGQADFCQAh_QYBAMMJACH-BgIA4gkAIQrhBQAAlxIAMOIFAACYEgAQ4wUAAJcSADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACHWBgEAwwkAIfwGQADFCQAh_QYBAMMJACH-BgIA4gkAIQbkBQEA8wsAIeoFQAD1CwAh6wVAAPULACH8BkAA9QsAIf0GAQDzCwAh_gYCALwMACEHHAAAmxIAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIfwGQAD1CwAh_QYBAPMLACH-BgIAvAwAIQtRAACcEgAwUgAAoRIAMJcHAACdEgAwmAcAAJ4SADCZBwAAnxIAIJoHAACgEgAwmwcAAKASADCcBwAAoBIAMJ0HAACgEgAwngcAAKISADCfBwAAoxIAMAQdAACuEgAg5AUBAAAAAeoFQAAAAAHrBUAAAAABAgAAAGQAIFEAAK0SACADAAAAZAAgUQAArRIAIFIAAKYSACABTAAAnBUAMAkXAACzCwAgHQAAtAsAIOEFAACyCwAw4gUAAF8AEOMFAACyCwAw5AUBAAAAAeoFQADFCQAh6wVAAMUJACH7BgEAxAkAIQIAAABkACBMAACmEgAgAgAAAKQSACBMAAClEgAgB-EFAACjEgAw4gUAAKQSABDjBQAAoxIAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIfsGAQDECQAhB-EFAACjEgAw4gUAAKQSABDjBQAAoxIAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIfsGAQDECQAhA-QFAQDzCwAh6gVAAPULACHrBUAA9QsAIQQdAACnEgAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhB1EAAKgSACBSAACrEgAglwcAAKkSACCYBwAAqhIAIJsHAABZACCcBwAAWQAgnQcAAFsAIAcUAAD9DgAgGwAA4BAAIOQFAQAAAAHoBQEAAAAB6gVAAAAAAesFQAAAAAH5BgEAAAABAgAAAFsAIFEAAKgSACADAAAAWQAgUQAAqBIAIFIAAKwSACAJAAAAWQAgFAAA-g4AIBsAAN8QACBMAACsEgAg5AUBAPMLACHoBQEA9AsAIeoFQAD1CwAh6wVAAPULACH5BgEA9AsAIQcUAAD6DgAgGwAA3xAAIOQFAQDzCwAh6AUBAPQLACHqBUAA9QsAIesFQAD1CwAh-QYBAPQLACEEHQAArhIAIOQFAQAAAAHqBUAAAAAB6wVAAAAAAQNRAACoEgAglwcAAKkSACCdBwAAWwAgBxwAALASACDkBQEAAAAB6gVAAAAAAesFQAAAAAH8BkAAAAAB_QYBAAAAAf4GAgAAAAEEUQAAnBIAMJcHAACdEgAwmQcAAJ8SACCdBwAAoBIAMAcgAADTEgAg5AUBAAAAAeoFQAAAAAHrBUAAAAAB_AZAAAAAAf0GAQAAAAH-BgIAAAABAgAAAEoAIFEAANISACADAAAASgAgUQAA0hIAIFIAALsSACABTAAAmxUAMAwTAACvCwAgIAAAvQsAIOEFAAC8CwAw4gUAAEgAEOMFAAC8CwAw5AUBAAAAAeoFQADFCQAh6wVAAMUJACHWBgEAwwkAIfwGQADFCQAh_QYBAAAAAf4GAgDiCQAhAgAAAEoAIEwAALsSACACAAAAuRIAIEwAALoSACAK4QUAALgSADDiBQAAuRIAEOMFAAC4EgAw5AUBAMMJACHqBUAAxQkAIesFQADFCQAh1gYBAMMJACH8BkAAxQkAIf0GAQDDCQAh_gYCAOIJACEK4QUAALgSADDiBQAAuRIAEOMFAAC4EgAw5AUBAMMJACHqBUAAxQkAIesFQADFCQAh1gYBAMMJACH8BkAAxQkAIf0GAQDDCQAh_gYCAOIJACEG5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh_AZAAPULACH9BgEA8wsAIf4GAgC8DAAhByAAALwSACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACH8BkAA9QsAIf0GAQDzCwAh_gYCALwMACELUQAAvRIAMFIAAMISADCXBwAAvhIAMJgHAAC_EgAwmQcAAMASACCaBwAAwRIAMJsHAADBEgAwnAcAAMESADCdBwAAwRIAMJ4HAADDEgAwnwcAAMQSADAFGgAA0RIAIOQFAQAAAAHqBUAAAAAB6wVAAAAAAYMHAgAAAAECAAAATgAgUQAA0BIAIAMAAABOACBRAADQEgAgUgAAxxIAIAFMAACaFQAwChcAALsLACAaAAC2CwAg4QUAALoLADDiBQAATAAQ4wUAALoLADDkBQEAAAAB6gVAAMUJACHrBUAAxQkAIfsGAQDDCQAhgwcCAOIJACECAAAATgAgTAAAxxIAIAIAAADFEgAgTAAAxhIAIAjhBQAAxBIAMOIFAADFEgAQ4wUAAMQSADDkBQEAwwkAIeoFQADFCQAh6wVAAMUJACH7BgEAwwkAIYMHAgDiCQAhCOEFAADEEgAw4gUAAMUSABDjBQAAxBIAMOQFAQDDCQAh6gVAAMUJACHrBUAAxQkAIfsGAQDDCQAhgwcCAOIJACEE5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhgwcCALwMACEFGgAAyBIAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIYMHAgC8DAAhB1EAAMkSACBSAADMEgAglwcAAMoSACCYBwAAyxIAIJsHAABQACCcBwAAUAAgnQcAAPECACAJDAAAzxIAIBkAAI4PACAfAACPDwAg5AUBAAAAAeoFQAAAAAHrBUAAAAABtwYBAAAAAf8GQAAAAAGBB0AAAAABAgAAAPECACBRAADJEgAgAwAAAFAAIFEAAMkSACBSAADNEgAgCwAAAFAAIAwAAM4SACAZAADtDgAgHwAA7g4AIEwAAM0SACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACG3BgEA8wsAIf8GQAD1CwAhgQdAAPULACEJDAAAzhIAIBkAAO0OACAfAADuDgAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhtwYBAPMLACH_BkAA9QsAIYEHQAD1CwAhBVEAAJUVACBSAACYFQAglwcAAJYVACCYBwAAlxUAIJ0HAAATACADUQAAlRUAIJcHAACWFQAgnQcAABMAIAUaAADREgAg5AUBAAAAAeoFQAAAAAHrBUAAAAABgwcCAAAAAQNRAADJEgAglwcAAMoSACCdBwAA8QIAIAcgAADTEgAg5AUBAAAAAeoFQAAAAAHrBUAAAAAB_AZAAAAAAf0GAQAAAAH-BgIAAAABBFEAAL0SADCXBwAAvhIAMJkHAADAEgAgnQcAAMESADAGEQAAjhAAIOUFAQAAAAHqBUAAAAAB6wVAAAAAAdQGAQAAAAHVBgEAAAABAgAAAEYAIFEAAN8SACADAAAARgAgUQAA3xIAIFIAAN4SACABTAAAlBUAMAwRAADACwAgEwAArwsAIOEFAAC_CwAw4gUAAEQAEOMFAAC_CwAw5QUBAMMJACHqBUAAxQkAIesFQADFCQAh1AYBAAAAAdUGAQDDCQAh1gYBAMMJACGQBwAAvgsAIAIAAABGACBMAADeEgAgAgAAANwSACBMAADdEgAgCeEFAADbEgAw4gUAANwSABDjBQAA2xIAMOUFAQDDCQAh6gVAAMUJACHrBUAAxQkAIdQGAQDDCQAh1QYBAMMJACHWBgEAwwkAIQnhBQAA2xIAMOIFAADcEgAQ4wUAANsSADDlBQEAwwkAIeoFQADFCQAh6wVAAMUJACHUBgEAwwkAIdUGAQDDCQAh1gYBAMMJACEF5QUBAPMLACHqBUAA9QsAIesFQAD1CwAh1AYBAPMLACHVBgEA8wsAIQYRAACMEAAg5QUBAPMLACHqBUAA9QsAIesFQAD1CwAh1AYBAPMLACHVBgEA8wsAIQYRAACOEAAg5QUBAAAAAeoFQAAAAAHrBUAAAAAB1AYBAAAAAdUGAQAAAAEIEQAAlRAAIOoFQAAAAAHrBUAAAAABuAYBAAAAAbkGAQAAAAG7BgEAAAAB1AYBAAAAAdcGAQAAAAECAAAAQgAgUQAA6xIAIAMAAABCACBRAADrEgAgUgAA6hIAIAFMAACTFQAwDxEAAMALACATAACvCwAg4QUAAMMLADDiBQAAOwAQ4wUAAMMLADDqBUAAxQkAIesFQADFCQAhuAYBAMMJACG5BgEAwwkAIbsGAQDDCQAh1AYBAAAAAdYGAQDDCQAh1wYBAMMJACGRBwAAwQsAIJIHAADCCwAgAgAAAEIAIEwAAOoSACACAAAA6BIAIEwAAOkSACAL4QUAAOcSADDiBQAA6BIAEOMFAADnEgAw6gVAAMUJACHrBUAAxQkAIbgGAQDDCQAhuQYBAMMJACG7BgEAwwkAIdQGAQDDCQAh1gYBAMMJACHXBgEAwwkAIQvhBQAA5xIAMOIFAADoEgAQ4wUAAOcSADDqBUAAxQkAIesFQADFCQAhuAYBAMMJACG5BgEAwwkAIbsGAQDDCQAh1AYBAMMJACHWBgEAwwkAIdcGAQDDCQAhB-oFQAD1CwAh6wVAAPULACG4BgEA8wsAIbkGAQDzCwAhuwYBAPMLACHUBgEA8wsAIdcGAQDzCwAhCBEAAJMQACDqBUAA9QsAIesFQAD1CwAhuAYBAPMLACG5BgEA8wsAIbsGAQDzCwAh1AYBAPMLACHXBgEA8wsAIQgRAACVEAAg6gVAAAAAAesFQAAAAAG4BgEAAAABuQYBAAAAAbsGAQAAAAHUBgEAAAAB1wYBAAAAAQYUAAD6EgAg5AUBAAAAAegFAQAAAAHqBUAAAAAB6wVAAAAAAdsGAAAA-QYCAgAAAD8AIFEAAPkSACADAAAAPwAgUQAA-RIAIFIAAPcSACABTAAAkhUAMAsTAACvCwAgFAAAxgsAIOEFAADECwAw4gUAAD0AEOMFAADECwAw5AUBAAAAAegFAQAAAAHqBUAAxQkAIesFQADFCQAh1gYBAMMJACHbBgAAxQv5BiICAAAAPwAgTAAA9xIAIAIAAAD0EgAgTAAA9RIAIAnhBQAA8xIAMOIFAAD0EgAQ4wUAAPMSADDkBQEAwwkAIegFAQDDCQAh6gVAAMUJACHrBUAAxQkAIdYGAQDDCQAh2wYAAMUL-QYiCeEFAADzEgAw4gUAAPQSABDjBQAA8xIAMOQFAQDDCQAh6AUBAMMJACHqBUAAxQkAIesFQADFCQAh1gYBAMMJACHbBgAAxQv5BiIF5AUBAPMLACHoBQEA8wsAIeoFQAD1CwAh6wVAAPULACHbBgAA9hL5BiIBmgcAAAD5BgIGFAAA-BIAIOQFAQDzCwAh6AUBAPMLACHqBUAA9QsAIesFQAD1CwAh2wYAAPYS-QYiBVEAAI0VACBSAACQFQAglwcAAI4VACCYBwAAjxUAIJ0HAACHAgAgBhQAAPoSACDkBQEAAAAB6AUBAAAAAeoFQAAAAAHrBUAAAAAB2wYAAAD5BgIDUQAAjRUAIJcHAACOFQAgnQcAAIcCACAEUQAA7BIAMJcHAADtEgAwmQcAAO8SACCdBwAA8BIAMARRAADgEgAwlwcAAOESADCZBwAA4xIAIJ0HAADkEgAwBFEAANQSADCXBwAA1RIAMJkHAADXEgAgnQcAANgSADAEUQAAsRIAMJcHAACyEgAwmQcAALQSACCdBwAAtRIAMARRAACQEgAwlwcAAJESADCZBwAAkxIAIJ0HAACUEgAwBFEAAPcRADCXBwAA-BEAMJkHAAD6EQAgnQcAAPsRADAAAAAAAAAB-AUBAAAAAQAAAAVRAACIFQAgUgAAixUAIJcHAACJFQAgmAcAAIoVACCdBwAA_wMAIANRAACIFQAglwcAAIkVACCdBwAA_wMAIAAAAAAAAAdRAACDFQAgUgAAhhUAIJcHAACEFQAgmAcAAIUVACCbBwAAYQAgnAcAAGEAIJ0HAABsACADUQAAgxUAIJcHAACEFQAgnQcAAGwAIAAAAAAABVEAAP4UACBSAACBFQAglwcAAP8UACCYBwAAgBUAIJ0HAAD_AwAgA1EAAP4UACCXBwAA_xQAIJ0HAAD_AwAgAAAAAAAAAAAFUQAA-RQAIFIAAPwUACCXBwAA-hQAIJgHAAD7FAAgnQcAAP8DACADUQAA-RQAIJcHAAD6FAAgnQcAAP8DACAAAAADFwAAvRQAIBoAALgUACCgBwAAvhQAIAkIAADgDwAgEQAAwRQAIBsAALgUACA4AADRFAAgOgAA0xQAIDsAAOsRACA8AADUFAAgPQAA1RQAIKAHAADWFAAgAAAB-AUBAAAAAQAAAAAABVEAAPQUACBSAAD3FAAglwcAAPUUACCYBwAA9hQAIJ0HAABKACADUQAA9BQAIJcHAAD1FAAgnQcAAEoAIAAAAAAABVEAAO8UACBSAADyFAAglwcAAPAUACCYBwAA8RQAIJ0HAAD_AwAgA1EAAO8UACCXBwAA8BQAIJ0HAAD_AwAgAAAABVEAAOkUACBSAADtFAAglwcAAOoUACCYBwAA7BQAIJ0HAACeAgAgC1EAAMETADBSAADFEwAwlwcAAMITADCYBwAAwxMAMJkHAADEEwAgmgcAALQOADCbBwAAtA4AMJwHAAC0DgAwnQcAALQOADCeBwAAxhMAMJ8HAAC3DgAwEBAAAOIOACAUAADgDgAgKAAA_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_ACBRAADtEwAgAwAAAD0AIFEAAO0TACBSAADxEwAgCAAAAD0AIBMAAIsTACBMAADxEwAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh1gYBAPMLACHbBgAA9hL5BiIGEwAAixMAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIdYGAQDzCwAh2wYAAPYS-QYiBkMAANkRACDkBQEAAAAB6gVAAAAAAesFQAAAAAHQBgEAAAAB2wYAAADwBgICAAAACwAgUQAA8hMAIAMAAAAIACBRAADyEwAgUgAA9hMAIAgAAAAIACBDAADYEQAgTAAA9hMAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIdAGAQDzCwAh2wYAAMsR8AYiBkMAANgRACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACHQBgEA8wsAIdsGAADLEfAGIgUFAAD9EwAg5AUBAAAAAeoFQAAAAAHrBUAAAAABiQcBAAAAAQIAAAABACBRAAD3EwAgAwAAAAMAIFEAAPcTACBSAAD7EwAgBwAAAAMAIAUAAPwTACBMAAD7EwAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhiQcBAPMLACEFBQAA_BMAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIYkHAQDzCwAhBVEAAOMUACBSAADmFAAglwcAAOQUACCYBwAA5RQAIJ0HAADwAQAgA1EAAOMUACCXBwAA5BQAIJ0HAADwAQAgA1EAAPcTACCXBwAA-BMAIJ0HAAABACADUQAA8hMAIJcHAADzEwAgnQcAAAsAIANRAADtEwAglwcAAO4TACCdBwAAPwAgA1EAAOgTACCXBwAA6RMAIJ0HAAA0ACADBQAA2xQAIBQAAMQUACCgBwAA3BQAIAMUAADEFAAgQwAA2BQAIKAHAADaFAAgAxMAALEUACAUAADEFAAgoAcAAMUUACAB-AUBAAAAAQAAAAtRAACKFAAwUgAAjxQAMJcHAACLFAAwmAcAAIwUADCZBwAAjRQAIJoHAACOFAAwmwcAAI4UADCcBwAAjhQAMJ0HAACOFAAwngcAAJAUADCfBwAAkRQAMAUUAACXFAAg5AUBAAAAAegFAQAAAAHqBUAAAAAB6wVAAAAAAQIAAAABACBRAACWFAAgAwAAAAEAIFEAAJYUACBSAACUFAAgAUwAAOIUADAKBQAA7gsAIBQAAMYLACDhBQAA7QsAMOIFAAADABDjBQAA7QsAMOQFAQAAAAHoBQEAAAAB6gVAAMUJACHrBUAAxQkAIYkHAQDDCQAhAgAAAAEAIEwAAJQUACACAAAAkhQAIEwAAJMUACAI4QUAAJEUADDiBQAAkhQAEOMFAACRFAAw5AUBAMMJACHoBQEAwwkAIeoFQADFCQAh6wVAAMUJACGJBwEAwwkAIQjhBQAAkRQAMOIFAACSFAAQ4wUAAJEUADDkBQEAwwkAIegFAQDDCQAh6gVAAMUJACHrBUAAxQkAIYkHAQDDCQAhBOQFAQDzCwAh6AUBAPMLACHqBUAA9QsAIesFQAD1CwAhBRQAAJUUACDkBQEA8wsAIegFAQDzCwAh6gVAAPULACHrBUAA9QsAIQVRAADdFAAgUgAA4BQAIJcHAADeFAAgmAcAAN8UACCdBwAAhwIAIAUUAACXFAAg5AUBAAAAAegFAQAAAAHqBUAAAAAB6wVAAAAAAQNRAADdFAAglwcAAN4UACCdBwAAhwIAIARRAACKFAAwlwcAAIsUADCZBwAAjRQAIJ0HAACOFAAwAAH4BQEAAAABAAAAAhIAAN0TACCgBwAA3hMAIAH4BQEAAAABBg4AAMUPACAPAADGDwAgEAAAxw8AIOwFAADvCwAgvAYAAO8LACCgBwAAyA8AIAH4BQEAAAABAfgFAQAAAAEB-AUBAAAAAQU1AACYDAAg5gUAAO8LACDnBQAA7wsAIOwFAADvCwAgoAcAAJkMACAAAfgFAQAAAAEEMQAApgwAIOYFAADvCwAghAYAAO8LACCgBwAApwwAIAH4BQEAAAABBC0AANYMACAvAADXDAAgnwYAAO8LACCgBwAA2AwAIAH4BQEAAAABBSUAAOgRACAnAADpEQAgKQAA6hEAICsAAOsRACCgBwAA7BEAIAH4BQEAAAABBgwAAKoTACA5AACbDwAgPgAA0xEAID8AAOoRACDSBgAA7wsAIKAHAACjFAAgAfgFAQAAAAELEAAAxw8AIBQAAOgRACAoAACtFAAgQgAA1xQAIEMAANgUACBEAADpEQAgygYAAO8LACDLBgAA7wsAIM8GAADvCwAg0AYAAO8LACCgBwAA2RQAIAH4BQEAAAABCAMAAIETACAVAACCEwAgFgAAgxMAICEAAIQTACAiAACFEwAgIwAAhhMAIPcGAADvCwAgoAcAAIcTACAB-AUBAAAAAQAB-AUBAAAAAQMTAACxFAAgHAAAsxQAIKAHAAC0FAAgBxQAAOgRACAbAAC4FAAgHgAAuRQAIOgFAADvCwAg-QYAAO8LACD6BgAA7wsAIKAHAAC6FAAgAfgFAQAAAAEFDAAAqhMAIBgAAKkTACAZAACrEwAgHwAArBMAIKAHAACtEwAgBBcAALUUACAdAAC2FAAg-wYAAO8LACCgBwAAtxQAIAH4BQEAAAABAxMAALEUACAZAACrEwAgoAcAALIUACAB-AUBAAAAAQMTAACxFAAgIAAAvxQAIKAHAADAFAAgAfgFAQAAAAEAAfgFAQAAAAEGAwAAnREAIAcAAJoPACAOAACfEQAgDwAAoBEAIBIAAJ4RACCgBwAAoREAIAH4BQEAAAABAfgFAQAAAAEFBgAAghQAICUAAOgRACBFAACDFAAgRgAAhBQAIKAHAACFFAAgAfgFAQAAAAEB-AUBAAAAAQH4BQEAAAABAAH4BQEAAAABDgkAAM0UACAKAADOFAAgCwAAzxQAIAwAAKoTACA2AAClFAAg5gUAAO8LACDnBQAA7wsAIOwFAADvCwAg_AUAAO8LACD9BQAA7wsAIP4FAADvCwAg_wUAAO8LACC3BgAA7wsAIKAHAADQFAAgCAsAAKQUACA2AAClFAAg5gUAAO8LACDsBQAA7wsAIPwFAADvCwAg_QUAAO8LACD-BQAA7wsAIKAHAACmFAAgAfgFAQAAAAECCAAA4A8AIKAHAADhDwAgAggAAOAPACCgBwAA8A8AIAkIAADgDwAgKAAArRQAIDgAANEUACDmBQAA7wsAIOcFAADvCwAg6QUAAO8LACDsBQAA7wsAIMUGAADvCwAgoAcAANIUACAB-AUBAAAAAQQHAACaDwAgOQAAmw8AIK0GAADvCwAgoAcAAJwPACAB-AUBAAAAAQAAAAH4BQEAAAABBEAAAJ4UACBBAADTEQAg6AYAAO8LACCgBwAAnxQAIAMDAADSEQAgPgAA0xEAIKAHAADUEQAgAfgFAQAAAAEB-AUBAAAAAQMDAACZFAAg1wYAAO8LACCgBwAAmhQAIAH4BQEAAAABCCUAAIEUACBFAAD_EwAgRgAAgBQAIOQFAQAAAAGOBgAAAIgHApEGAAAAiQcChQcBAAAAAYYHAQAAAAECAAAAhwIAIFEAAN0UACADAAAAigIAIFEAAN0UACBSAADhFAAgCgAAAIoCACAlAADnEwAgRQAA5RMAIEYAAOYTACBMAADhFAAg5AUBAPMLACGOBgAA4hOIByKRBgAA4xOJByKFBwEA8wsAIYYHAQDzCwAhCCUAAOcTACBFAADlEwAgRgAA5hMAIOQFAQDzCwAhjgYAAOITiAcikQYAAOMTiQcihQcBAPMLACGGBwEA8wsAIQTkBQEAAAAB6AUBAAAAAeoFQAAAAAHrBUAAAAABB-QFAQAAAAHqBUAAAAAB6wVAAAAAAbgGAQAAAAG5BgEAAAABuwYBAAAAAdcGAQAAAAECAAAA8AEAIFEAAOMUACADAAAA8wEAIFEAAOMUACBSAADnFAAgCQAAAPMBACBMAADnFAAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhuAYBAPMLACG5BgEA8wsAIbsGAQDzCwAh1wYBAPQLACEH5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhuAYBAPMLACG5BgEA8wsAIbsGAQDzCwAh1wYBAPQLACEF5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAegGAQAAAAEE5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAQIAAACeAgAgUQAA6RQAIAvkBQEAAAAB5QUBAAAAAegFAQAAAAHpBQEAAAAB6gVAAAAAAesFQAAAAAGOBgAAAM0GAsoGAQAAAAHLBgEAAAABzgYAAADOBgLQBgEAAAABAwAAAKECACBRAADpFAAgUgAA7hQAIAYAAAChAgAgTAAA7hQAIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhBOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhDQMAAPsSACAVAAD8EgAgFgAA_RIAICIAAP8SACAjAACAEwAg5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAY4GAAAA7wYCrQYBAAAAAfYGAAAA9gYC9wYBAAAAAQIAAAD_AwAgUQAA7xQAIAMAAACCBAAgUQAA7xQAIFIAAPMUACAPAAAAggQAIAMAAPERACAVAADyEQAgFgAA8xEAICIAAPURACAjAAD2EQAgTAAA8xQAIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALUR7wYirQYBAPMLACH2BgAA8BH2BiL3BgEA9AsAIQ0DAADxEQAgFQAA8hEAIBYAAPMRACAiAAD1EQAgIwAA9hEAIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALUR7wYirQYBAPMLACH2BgAA8BH2BiL3BgEA9AsAIQgTAAC7EwAg5AUBAAAAAeoFQAAAAAHrBUAAAAAB1gYBAAAAAfwGQAAAAAH9BgEAAAAB_gYCAAAAAQIAAABKACBRAAD0FAAgAwAAAEgAIFEAAPQUACBSAAD4FAAgCgAAAEgAIBMAALoTACBMAAD4FAAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh1gYBAPMLACH8BkAA9QsAIf0GAQDzCwAh_gYCALwMACEIEwAAuhMAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIdYGAQDzCwAh_AZAAPULACH9BgEA8wsAIf4GAgC8DAAhDQMAAPsSACAVAAD8EgAgFgAA_RIAICEAAP4SACAiAAD_EgAg5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAY4GAAAA7wYCrQYBAAAAAfYGAAAA9gYC9wYBAAAAAQIAAAD_AwAgUQAA-RQAIAMAAACCBAAgUQAA-RQAIFIAAP0UACAPAAAAggQAIAMAAPERACAVAADyEQAgFgAA8xEAICEAAPQRACAiAAD1EQAgTAAA_RQAIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALUR7wYirQYBAPMLACH2BgAA8BH2BiL3BgEA9AsAIQ0DAADxEQAgFQAA8hEAIBYAAPMRACAhAAD0EQAgIgAA9REAIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALUR7wYirQYBAPMLACH2BgAA8BH2BiL3BgEA9AsAIQ0DAAD7EgAgFQAA_BIAIBYAAP0SACAhAAD-EgAgIwAAgBMAIOQFAQAAAAHlBQEAAAAB6gVAAAAAAesFQAAAAAGOBgAAAO8GAq0GAQAAAAH2BgAAAPYGAvcGAQAAAAECAAAA_wMAIFEAAP4UACADAAAAggQAIFEAAP4UACBSAACCFQAgDwAAAIIEACADAADxEQAgFQAA8hEAIBYAAPMRACAhAAD0EQAgIwAA9hEAIEwAAIIVACDkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAAC1Ee8GIq0GAQDzCwAh9gYAAPAR9gYi9wYBAPQLACENAwAA8REAIBUAAPIRACAWAADzEQAgIQAA9BEAICMAAPYRACDkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAAC1Ee8GIq0GAQDzCwAh9gYAAPAR9gYi9wYBAPQLACEIEwAAmxMAIOQFAQAAAAHqBUAAAAAB6wVAAAAAAdYGAQAAAAH8BkAAAAAB_QYBAAAAAf4GAgAAAAECAAAAbAAgUQAAgxUAIAMAAABhACBRAACDFQAgUgAAhxUAIAoAAABhACATAACaEwAgTAAAhxUAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIdYGAQDzCwAh_AZAAPULACH9BgEA8wsAIf4GAgC8DAAhCBMAAJoTACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACHWBgEA8wsAIfwGQAD1CwAh_QYBAPMLACH-BgIAvAwAIQ0VAAD8EgAgFgAA_RIAICEAAP4SACAiAAD_EgAgIwAAgBMAIOQFAQAAAAHlBQEAAAAB6gVAAAAAAesFQAAAAAGOBgAAAO8GAq0GAQAAAAH2BgAAAPYGAvcGAQAAAAECAAAA_wMAIFEAAIgVACADAAAAggQAIFEAAIgVACBSAACMFQAgDwAAAIIEACAVAADyEQAgFgAA8xEAICEAAPQRACAiAAD1EQAgIwAA9hEAIEwAAIwVACDkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAAC1Ee8GIq0GAQDzCwAh9gYAAPAR9gYi9wYBAPQLACENFQAA8hEAIBYAAPMRACAhAAD0EQAgIgAA9REAICMAAPYRACDkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAAC1Ee8GIq0GAQDzCwAh9gYAAPAR9gYi9wYBAPQLACEIBgAA_hMAICUAAIEUACBFAAD_EwAg5AUBAAAAAY4GAAAAiAcCkQYAAACJBwKFBwEAAAABhgcBAAAAAQIAAACHAgAgUQAAjRUAIAMAAACKAgAgUQAAjRUAIFIAAJEVACAKAAAAigIAIAYAAOQTACAlAADnEwAgRQAA5RMAIEwAAJEVACDkBQEA8wsAIY4GAADiE4gHIpEGAADjE4kHIoUHAQDzCwAhhgcBAPMLACEIBgAA5BMAICUAAOcTACBFAADlEwAg5AUBAPMLACGOBgAA4hOIByKRBgAA4xOJByKFBwEA8wsAIYYHAQDzCwAhBeQFAQAAAAHoBQEAAAAB6gVAAAAAAesFQAAAAAHbBgAAAPkGAgfqBUAAAAAB6wVAAAAAAbgGAQAAAAG5BgEAAAABuwYBAAAAAdQGAQAAAAHXBgEAAAABBeUFAQAAAAHqBUAAAAAB6wVAAAAAAdQGAQAAAAHVBgEAAAABEAgAAJUPACARAACRDwAgOAAAhxAAIDoAAJMPACA7AACUDwAgPAAAlg8AID0AAJcPACDkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAABlwYBAAAAAbQGAQAAAAHFBgEAAAAB0wYBAAAAAdQGAQAAAAECAAAAEwAgUQAAlRUAIAMAAAARACBRAACVFQAgUgAAmRUAIBIAAAARACAIAADPDQAgEQAAyw0AIDgAAIYQACA6AADNDQAgOwAAzg0AIDwAANANACA9AADRDQAgTAAAmRUAIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhlwYBAPMLACG0BgEA8wsAIcUGAQDzCwAh0wYBAPMLACHUBgEA8wsAIRAIAADPDQAgEQAAyw0AIDgAAIYQACA6AADNDQAgOwAAzg0AIDwAANANACA9AADRDQAg5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACGXBgEA8wsAIbQGAQDzCwAhxQYBAPMLACHTBgEA8wsAIdQGAQDzCwAhBOQFAQAAAAHqBUAAAAAB6wVAAAAAAYMHAgAAAAEG5AUBAAAAAeoFQAAAAAHrBUAAAAAB_AZAAAAAAf0GAQAAAAH-BgIAAAABA-QFAQAAAAHqBUAAAAAB6wVAAAAAAQbkBQEAAAAB6gVAAAAAAesFQAAAAAH8BkAAAAAB_QYBAAAAAf4GAgAAAAEKDAAAzxIAIBgAAI0PACAfAACPDwAg5AUBAAAAAeoFQAAAAAHrBUAAAAABtwYBAAAAAf8GQAAAAAGBB0AAAAABggcBAAAAAQIAAADxAgAgUQAAnhUAIAMAAABQACBRAACeFQAgUgAAohUAIAwAAABQACAMAADOEgAgGAAA7A4AIB8AAO4OACBMAACiFQAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhtwYBAPMLACH_BkAA9QsAIYEHQAD1CwAhggcBAPMLACEKDAAAzhIAIBgAAOwOACAfAADuDgAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhtwYBAPMLACH_BkAA9QsAIYEHQAD1CwAhggcBAPMLACEF5AUBAAAAAeoFQAAAAAHrBUAAAAAB_wZAAAAAAYAHAQAAAAEG5AUBAAAAAeoFQAAAAAHrBUAAAAAB_AZAAAAAAf0GAQAAAAH-BgIAAAABCxAAAJcRACARAACmEQAgFAAAkxEAICQAAJQRACAsAACWEQAg5AUBAAAAAegFAQAAAAHqBUAAAAAB6wVAAAAAAdQGAQAAAAHbBgAAANsGAgIAAAA0ACBRAAClFQAgAwAAADIAIFEAAKUVACBSAACpFQAgDQAAADIAIBAAANAQACARAAClEQAgFAAAzBAAICQAAM0QACAsAADPEAAgTAAAqRUAIOQFAQDzCwAh6AUBAPMLACHqBUAA9QsAIesFQAD1CwAh1AYBAPMLACHbBgAAyhDbBiILEAAA0BAAIBEAAKURACAUAADMEAAgJAAAzRAAICwAAM8QACDkBQEA8wsAIegFAQDzCwAh6gVAAPULACHrBUAA9QsAIdQGAQDzCwAh2wYAAMoQ2wYiBz4AANERACDkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAABjgYAAADvBgKtBgEAAAABAgAAAPwEACBRAACqFQAgAwAAANMBACBRAACqFQAgUgAArhUAIAkAAADTAQAgPgAAtxEAIEwAAK4VACDkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAAC1Ee8GIq0GAQDzCwAhBz4AALcRACDkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAAC1Ee8GIq0GAQDzCwAhCAYAAP4TACAlAACBFAAgRgAAgBQAIOQFAQAAAAGOBgAAAIgHApEGAAAAiQcChQcBAAAAAYYHAQAAAAECAAAAhwIAIFEAAK8VACADAAAAigIAIFEAAK8VACBSAACzFQAgCgAAAIoCACAGAADkEwAgJQAA5xMAIEYAAOYTACBMAACzFQAg5AUBAPMLACGOBgAA4hOIByKRBgAA4xOJByKFBwEA8wsAIYYHAQDzCwAhCAYAAOQTACAlAADnEwAgRgAA5hMAIOQFAQDzCwAhjgYAAOITiAcikQYAAOMTiQcihQcBAPMLACGGBwEA8wsAIQXkBQEAAAAB6AUBAAAAAeoFQAAAAAHrBUAAAAAB2wYAAADwBgIL5AUBAAAAAeUFAQAAAAHoBQEAAAAB6QUBAAAAAeoFQAAAAAHrBUAAAAABjgYAAADNBgLKBgEAAAABywYBAAAAAc4GAAAAzgYCzwYBAAAAAQkDAACYEQAgBwAAmREAIA4AAJsRACAPAACcEQAg5AUBAAAAAeoFQAAAAAHrBUAAAAABjgYAAADaBgKRBgAAANkGAgIAAADRBQAgUQAAthUAIAMAAADUBQAgUQAAthUAIFIAALoVACALAAAA1AUAIAMAAJsQACAHAACcEAAgDgAAnhAAIA8AAJ8QACBMAAC6FQAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAAJoQ2gYikQYAAJkQ2QYiCQMAAJsQACAHAACcEAAgDgAAnhAAIA8AAJ8QACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACGOBgAAmhDaBiKRBgAAmRDZBiIJBwAAmREAIA4AAJsRACAPAACcEQAgEgAAmhEAIOQFAQAAAAHqBUAAAAAB6wVAAAAAAY4GAAAA2gYCkQYAAADZBgICAAAA0QUAIFEAALsVACADAAAA1AUAIFEAALsVACBSAAC_FQAgCwAAANQFACAHAACcEAAgDgAAnhAAIA8AAJ8QACASAACdEAAgTAAAvxUAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAACaENoGIpEGAACZENkGIgkHAACcEAAgDgAAnhAAIA8AAJ8QACASAACdEAAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAAJoQ2gYikQYAAJkQ2QYiCAYAAP4TACBFAAD_EwAgRgAAgBQAIOQFAQAAAAGOBgAAAIgHApEGAAAAiQcChQcBAAAAAYYHAQAAAAECAAAAhwIAIFEAAMAVACAREAAA4g4AIBQAAOAOACAoAAD9DwAgQgAA3g4AIEMAAN8OACDkBQEAAAAB5QUBAAAAAegFAQAAAAHpBQEAAAAB6gVAAAAAAesFQAAAAAGOBgAAAM0GAsoGAQAAAAHLBgEAAAABzgYAAADOBgLPBgEAAAAB0AYBAAAAAQIAAAAPACBRAADCFQAgAwAAAA0AIFEAAMIVACBSAADGFQAgEwAAAA0AIBAAAMEOACAUAAC_DgAgKAAA_A8AIEIAAL0OACBDAAC-DgAgTAAAxhUAIOQFAQDzCwAh5QUBAPMLACHoBQEA8wsAIekFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAAC6Ds0GIsoGAQD0CwAhywYBAPQLACHOBgAAuw7OBiLPBgEA9AsAIdAGAQD0CwAhERAAAMEOACAUAAC_DgAgKAAA_A8AIEIAAL0OACBDAAC-DgAg5AUBAPMLACHlBQEA8wsAIegFAQDzCwAh6QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALoOzQYiygYBAPQLACHLBgEA9AsAIc4GAAC7Ds4GIs8GAQD0CwAh0AYBAPQLACED5AUBAAAAAbMGAQAAAAHbBgAAAPUGAgoMAACCEAAgOQAA5Q4AID4AAOQOACDkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAABtwYBAAAAAdEGAQAAAAHSBgEAAAABAgAAALYBACBRAADIFQAgAwAAAK8BACBRAADIFQAgUgAAzBUAIAwAAACvAQAgDAAAgRAAIDkAAJQOACA-AACTDgAgTAAAzBUAIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhtwYBAPMLACHRBgEA8wsAIdIGAQD0CwAhCgwAAIEQACA5AACUDgAgPgAAkw4AIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhtwYBAPMLACHRBgEA8wsAIdIGAQD0CwAhA-QFAQAAAAHpBQEAAAAB2wYAAAD0BgIQCAAAlQ8AIBEAAJEPACAbAACSDwAgOAAAhxAAIDoAAJMPACA8AACWDwAgPQAAlw8AIOQFAQAAAAHlBQEAAAAB6gVAAAAAAesFQAAAAAGXBgEAAAABtAYBAAAAAcUGAQAAAAHTBgEAAAAB1AYBAAAAAQIAAAATACBRAADOFQAgAwAAABEAIFEAAM4VACBSAADSFQAgEgAAABEAIAgAAM8NACARAADLDQAgGwAAzA0AIDgAAIYQACA6AADNDQAgPAAA0A0AID0AANENACBMAADSFQAg5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACGXBgEA8wsAIbQGAQDzCwAhxQYBAPMLACHTBgEA8wsAIdQGAQDzCwAhEAgAAM8NACARAADLDQAgGwAAzA0AIDgAAIYQACA6AADNDQAgPAAA0A0AID0AANENACDkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIZcGAQDzCwAhtAYBAPMLACHFBgEA8wsAIdMGAQDzCwAh1AYBAPMLACED5AUBAAAAAdsGAAAA8QYC8QYBAAAAAQoMAADPEgAgGAAAjQ8AIBkAAI4PACDkBQEAAAAB6gVAAAAAAesFQAAAAAG3BgEAAAAB_wZAAAAAAYEHQAAAAAGCBwEAAAABAgAAAPECACBRAADUFQAgAwAAAFAAIFEAANQVACBSAADYFQAgDAAAAFAAIAwAAM4SACAYAADsDgAgGQAA7Q4AIEwAANgVACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACG3BgEA8wsAIf8GQAD1CwAhgQdAAPULACGCBwEA8wsAIQoMAADOEgAgGAAA7A4AIBkAAO0OACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACG3BgEA8wsAIf8GQAD1CwAhgQdAAPULACGCBwEA8wsAIQvkBQEAAAAB6gVAAAAAAesFQAAAAAGmBhAAAAABqAYBAAAAAa0GAQAAAAGuBgIAAAABrwZAAAAAAbAGgAAAAAGxBgEAAAABswYBAAAAAQMAAACKAgAgUQAAwBUAIFIAANwVACAKAAAAigIAIAYAAOQTACBFAADlEwAgRgAA5hMAIEwAANwVACDkBQEA8wsAIY4GAADiE4gHIpEGAADjE4kHIoUHAQDzCwAhhgcBAPMLACEIBgAA5BMAIEUAAOUTACBGAADmEwAg5AUBAPMLACGOBgAA4hOIByKRBgAA4xOJByKFBwEA8wsAIYYHAQDzCwAhBeQFAQAAAAHoBQEAAAAB6gVAAAAAAesFQAAAAAHbBgAAANsGAgjkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAABlwYBAAAAAbQGAQAAAAHFBgEAAAAB0wYBAAAAARBAAQAAAAFCAQAAAAHqBUAAAAAB6wVAAAAAAcoGAQAAAAHdBgEAAAAB4gYBAAAAAeQGAQAAAAHlBgEAAAAB5wYAAADnBgLoBgEAAAAB6QYBAAAAAeoGAQAAAAHrBgEAAAAB7AYBAAAAAe0GAQAAAAEJAwAAmBEAIAcAAJkRACAPAACcEQAgEgAAmhEAIOQFAQAAAAHqBUAAAAAB6wVAAAAAAY4GAAAA2gYCkQYAAADZBgICAAAA0QUAIFEAAOAVACANAwAA-xIAIBYAAP0SACAhAAD-EgAgIgAA_xIAICMAAIATACDkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAABjgYAAADvBgKtBgEAAAAB9gYAAAD2BgL3BgEAAAABAgAAAP8DACBRAADiFQAgAwAAANQFACBRAADgFQAgUgAA5hUAIAsAAADUBQAgAwAAmxAAIAcAAJwQACAPAACfEAAgEgAAnRAAIEwAAOYVACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACGOBgAAmhDaBiKRBgAAmRDZBiIJAwAAmxAAIAcAAJwQACAPAACfEAAgEgAAnRAAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAACaENoGIpEGAACZENkGIgMAAACCBAAgUQAA4hUAIFIAAOkVACAPAAAAggQAIAMAAPERACAWAADzEQAgIQAA9BEAICIAAPURACAjAAD2EQAgTAAA6RUAIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALUR7wYirQYBAPMLACH2BgAA8BH2BiL3BgEA9AsAIQ0DAADxEQAgFgAA8xEAICEAAPQRACAiAAD1EQAgIwAA9hEAIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAALUR7wYirQYBAPMLACH2BgAA8BH2BiL3BgEA9AsAIQkDAACYEQAgBwAAmREAIA4AAJsRACASAACaEQAg5AUBAAAAAeoFQAAAAAHrBUAAAAABjgYAAADaBgKRBgAAANkGAgIAAADRBQAgUQAA6hUAIA0DAAD7EgAgFQAA_BIAICEAAP4SACAiAAD_EgAgIwAAgBMAIOQFAQAAAAHlBQEAAAAB6gVAAAAAAesFQAAAAAGOBgAAAO8GAq0GAQAAAAH2BgAAAPYGAvcGAQAAAAECAAAA_wMAIFEAAOwVACADAAAA1AUAIFEAAOoVACBSAADwFQAgCwAAANQFACADAACbEAAgBwAAnBAAIA4AAJ4QACASAACdEAAgTAAA8BUAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAACaENoGIpEGAACZENkGIgkDAACbEAAgBwAAnBAAIA4AAJ4QACASAACdEAAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAAJoQ2gYikQYAAJkQ2QYiAwAAAIIEACBRAADsFQAgUgAA8xUAIA8AAACCBAAgAwAA8REAIBUAAPIRACAhAAD0EQAgIgAA9REAICMAAPYRACBMAADzFQAg5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACGOBgAAtRHvBiKtBgEA8wsAIfYGAADwEfYGIvcGAQD0CwAhDQMAAPERACAVAADyEQAgIQAA9BEAICIAAPURACAjAAD2EQAg5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACGOBgAAtRHvBiKtBgEA8wsAIfYGAADwEfYGIvcGAQD0CwAhBjkAAJkPACDkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAABrQYBAAAAAQIAAAD3BwAgUQAA9BUAIAMAAACtAQAgUQAA9BUAIFIAAPgVACAIAAAArQEAIDkAAI8NACBMAAD4FQAg5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACGtBgEA9AsAIQY5AACPDQAg5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACGtBgEA9AsAIRAIAACVDwAgEQAAkQ8AIBsAAJIPACA4AACHEAAgOwAAlA8AIDwAAJYPACA9AACXDwAg5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAZcGAQAAAAG0BgEAAAABxQYBAAAAAdMGAQAAAAHUBgEAAAABAgAAABMAIFEAAPkVACADAAAAEQAgUQAA-RUAIFIAAP0VACASAAAAEQAgCAAAzw0AIBEAAMsNACAbAADMDQAgOAAAhhAAIDsAAM4NACA8AADQDQAgPQAA0Q0AIEwAAP0VACDkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIZcGAQDzCwAhtAYBAPMLACHFBgEA8wsAIdMGAQDzCwAh1AYBAPMLACEQCAAAzw0AIBEAAMsNACAbAADMDQAgOAAAhhAAIDsAAM4NACA8AADQDQAgPQAA0Q0AIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhlwYBAPMLACG0BgEA8wsAIcUGAQDzCwAh0wYBAPMLACHUBgEA8wsAIQoMAACCEAAgOQAA5Q4AID8AAOYOACDkBQEAAAAB5QUBAAAAAeoFQAAAAAHrBUAAAAABtwYBAAAAAdEGAQAAAAHSBgEAAAABAgAAALYBACBRAAD-FQAgAwAAAK8BACBRAAD-FQAgUgAAghYAIAwAAACvAQAgDAAAgRAAIDkAAJQOACA_AACVDgAgTAAAghYAIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhtwYBAPMLACHRBgEA8wsAIdIGAQD0CwAhCgwAAIEQACA5AACUDgAgPwAAlQ4AIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhtwYBAPMLACHRBgEA8wsAIdIGAQD0CwAhD-QFAQAAAAHlBQEAAAAB5gUBAAAAAecFAQAAAAHqBUAAAAAB6wVAAAAAAewFQAAAAAH8BQEAAAAB_QUBAAAAAf4FAQAAAAH_BRAAAAABtwYBAAAAAcQGIAAAAAHHBgAAAMcGAsgGAQAAAAEP5AUBAAAAAeUFAQAAAAHmBQEAAAAB5wUBAAAAAeoFQAAAAAHrBUAAAAAB7AVAAAAAAfwFAQAAAAH9BQEAAAAB_gUBAAAAAf8FEAAAAAG3BgEAAAABxAYgAAAAAccGAAAAxwYCyQYBAAAAAQvkBQEAAAAB6gVAAAAAAesFQAAAAAGmBhAAAAABqAYBAAAAAa0GAQAAAAGuBgIAAAABrwZAAAAAAbAGgAAAAAGyBgEAAAABswYBAAAAARAIAACVDwAgEQAAkQ8AIBsAAJIPACA4AACHEAAgOgAAkw8AIDsAAJQPACA9AACXDwAg5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAZcGAQAAAAG0BgEAAAABxQYBAAAAAdMGAQAAAAHUBgEAAAABAgAAABMAIFEAAIYWACADAAAAEQAgUQAAhhYAIFIAAIoWACASAAAAEQAgCAAAzw0AIBEAAMsNACAbAADMDQAgOAAAhhAAIDoAAM0NACA7AADODQAgPQAA0Q0AIEwAAIoWACDkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIZcGAQDzCwAhtAYBAPMLACHFBgEA8wsAIdMGAQDzCwAh1AYBAPMLACEQCAAAzw0AIBEAAMsNACAbAADMDQAgOAAAhhAAIDoAAM0NACA7AADODQAgPQAA0Q0AIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhlwYBAPMLACG0BgEA8wsAIcUGAQDzCwAh0wYBAPMLACHUBgEA8wsAIRAIAACVDwAgEQAAkQ8AIBsAAJIPACA4AACHEAAgOgAAkw8AIDsAAJQPACA8AACWDwAg5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAZcGAQAAAAG0BgEAAAABxQYBAAAAAdMGAQAAAAHUBgEAAAABAgAAABMAIFEAAIsWACADAAAAEQAgUQAAixYAIFIAAI8WACASAAAAEQAgCAAAzw0AIBEAAMsNACAbAADMDQAgOAAAhhAAIDoAAM0NACA7AADODQAgPAAA0A0AIEwAAI8WACDkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIZcGAQDzCwAhtAYBAPMLACHFBgEA8wsAIdMGAQDzCwAh1AYBAPMLACEQCAAAzw0AIBEAAMsNACAbAADMDQAgOAAAhhAAIDoAAM0NACA7AADODQAgPAAA0A0AIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhlwYBAPMLACG0BgEA8wsAIcUGAQDzCwAh0wYBAPMLACHUBgEA8wsAIQkDAACYEQAgDgAAmxEAIA8AAJwRACASAACaEQAg5AUBAAAAAeoFQAAAAAHrBUAAAAABjgYAAADaBgKRBgAAANkGAgIAAADRBQAgUQAAkBYAIAYXAAC0EwAg5AUBAAAAAeoFQAAAAAHrBUAAAAAB-wYBAAAAAYMHAgAAAAECAAAATgAgUQAAkhYAIAgTAAClEwAg5AUBAAAAAeoFQAAAAAHrBUAAAAAB1gYBAAAAAfwGQAAAAAH9BgEAAAAB_gYCAAAAAQIAAABwACBRAACUFgAgAwAAAG4AIFEAAJQWACBSAACYFgAgCgAAAG4AIBMAAKQTACBMAACYFgAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh1gYBAPMLACH8BkAA9QsAIf0GAQDzCwAh_gYCALwMACEIEwAApBMAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIdYGAQDzCwAh_AZAAPULACH9BgEA8wsAIf4GAgC8DAAhBeQFAQAAAAHqBUAAAAAB6wVAAAAAAfsGAQAAAAH_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_kBQEAAAAB5QUBAAAAAeYFAQAAAAHnBQEAAAAB6gVAAAAAAesFQAAAAAHsBUAAAAAB_AUBAAAAAf0FAQAAAAH-BQEAAAAB_wUQAAAAAcQGIAAAAAHHBgAAAMcGAsgGAQAAAAHJBgEAAAABCA8AAMMPACAQAADEDwAg5AUBAAAAAeoFQAAAAAHrBUAAAAAB7AVAAAAAAZEGAAAAvgYCvAYgAAAAAQIAAAC5BwAgUQAA2BYAIAMAAAAnACBRAADYFgAgUgAA3BYAIAoAAAAnACAPAACtDwAgEAAArg8AIEwAANwWACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACHsBUAA9gsAIZEGAACrD74GIrwGIACqDwAhCA8AAK0PACAQAACuDwAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh7AVAAPYLACGRBgAAqw--BiK8BiAAqg8AIQexBgEAAAABtAYBAAAAAbYGAQAAAAG4BgEAAAABuQYBAAAAAboGAQAAAAG7BgEAAAABCA4AAMIPACAQAADEDwAg5AUBAAAAAeoFQAAAAAHrBUAAAAAB7AVAAAAAAZEGAAAAvgYCvAYgAAAAAQIAAAC5BwAgUQAA3hYAIAMAAAAnACBRAADeFgAgUgAA4hYAIAoAAAAnACAOAACsDwAgEAAArg8AIEwAAOIWACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACHsBUAA9gsAIZEGAACrD74GIrwGIACqDwAhCA4AAKwPACAQAACuDwAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAh7AVAAPYLACGRBgAAqw--BiK8BiAAqg8AIQXlBQEAAAABsQYBAAAAAbQGAQAAAAG1BgEAAAABtgYBAAAAAQMAAADUBQAgUQAAkBYAIFIAAOYWACALAAAA1AUAIAMAAJsQACAOAACeEAAgDwAAnxAAIBIAAJ0QACBMAADmFgAg5AUBAPMLACHqBUAA9QsAIesFQAD1CwAhjgYAAJoQ2gYikQYAAJkQ2QYiCQMAAJsQACAOAACeEAAgDwAAnxAAIBIAAJ0QACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACGOBgAAmhDaBiKRBgAAmRDZBiII5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAZcGAQAAAAG0BgEAAAAB0wYBAAAAAdQGAQAAAAEKDAAAghAAID4AAOQOACA_AADmDgAg5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAbcGAQAAAAHRBgEAAAAB0gYBAAAAAQIAAAC2AQAgUQAA6BYAIBARAACRDwAgGwAAkg8AIDgAAIcQACA6AACTDwAgOwAAlA8AIDwAAJYPACA9AACXDwAg5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAZcGAQAAAAG0BgEAAAABxQYBAAAAAdMGAQAAAAHUBgEAAAABAgAAABMAIFEAAOoWACAF5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAa0GAQAAAAECAAAA9AYAIFEAAOwWACAJ5AUBAAAAAeUFAQAAAAHqBUAAAAAB6wVAAAAAAZEGAAAAwgYCrQYBAAAAAcAGEAAAAAHCBiAAAAABwwYgAAAAAQIAAACLBwAgUQAA7hYAIA_kBQEAAAAB6gVAAAAAAYsGAQAAAAGgBhAAAAABoQYBAAAAAaIGAQAAAAGjBgEAAAABpAYQAAAAAaUGEAAAAAGmBhAAAAABpwYQAAAAAagGAQAAAAGpBoAAAAABqgaAAAAAAawGAQAAAAEDAAAAEQAgUQAA6hYAIFIAAPMWACASAAAAEQAgEQAAyw0AIBsAAMwNACA4AACGEAAgOgAAzQ0AIDsAAM4NACA8AADQDQAgPQAA0Q0AIEwAAPMWACDkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIZcGAQDzCwAhtAYBAPMLACHFBgEA8wsAIdMGAQDzCwAh1AYBAPMLACEQEQAAyw0AIBsAAMwNACA4AACGEAAgOgAAzQ0AIDsAAM4NACA8AADQDQAgPQAA0Q0AIOQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhlwYBAPMLACG0BgEA8wsAIcUGAQDzCwAh0wYBAPMLACHUBgEA8wsAIQMAAAD3BgAgUQAA7BYAIFIAAPYWACAHAAAA9wYAIEwAAPYWACDkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIa0GAQDzCwAhBeQFAQDzCwAh5QUBAPMLACHqBUAA9QsAIesFQAD1CwAhrQYBAPMLACEDAAAAjgcAIFEAAO4WACBSAAD5FgAgCwAAAI4HACBMAAD5FgAg5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACGRBgAA1A_CBiKtBgEA8wsAIcAGEACCDAAhwgYgAJoNACHDBiAAmg0AIQnkBQEA8wsAIeUFAQDzCwAh6gVAAPULACHrBUAA9QsAIZEGAADUD8IGIq0GAQDzCwAhwAYQAIIMACHCBiAAmg0AIcMGIACaDQAhD-QFAQAAAAHlBQEAAAAB5gUBAAAAAecFAQAAAAHqBUAAAAAB6wVAAAAAAewFQAAAAAH8BQEAAAAB_QUBAAAAAf8FEAAAAAG3BgEAAAABxAYgAAAAAccGAAAAxwYCyAYBAAAAAckGAQAAAAEDAAAArwEAIFEAAOgWACBSAAD9FgAgDAAAAK8BACAMAACBEAAgPgAAkw4AID8AAJUOACBMAAD9FgAg5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACG3BgEA8wsAIdEGAQDzCwAh0gYBAPQLACEKDAAAgRAAID4AAJMOACA_AACVDgAg5AUBAPMLACHlBQEA8wsAIeoFQAD1CwAh6wVAAPULACG3BgEA8wsAIdEGAQDzCwAh0gYBAPQLACEJ5AUBAAAAAeUFAQAAAAHmBQEAAAAB5wUBAAAAAekFAQAAAAHqBUAAAAAB6wVAAAAAAewFQAAAAAHEBiAAAAABERQAAOAOACAoAAD9DwAgQgAA3g4AIEMAAN8OACBEAADhDgAg5AUBAAAAAeUFAQAAAAHoBQEAAAAB6QUBAAAAAeoFQAAAAAHrBUAAAAABjgYAAADNBgLKBgEAAAABywYBAAAAAc4GAAAAzgYCzwYBAAAAAdAGAQAAAAECAAAADwAgUQAA_xYAIAsRAACmEQAgFAAAkxEAICQAAJQRACAmAACVEQAgLAAAlhEAIOQFAQAAAAHoBQEAAAAB6gVAAAAAAesFQAAAAAHUBgEAAAAB2wYAAADbBgICAAAANAAgUQAAgRcAIAgOAADCDwAgDwAAww8AIOQFAQAAAAHqBUAAAAAB6wVAAAAAAewFQAAAAAGRBgAAAL4GArwGIAAAAAECAAAAuQcAIFEAAIMXACAP5AUBAAAAAeoFQAAAAAGgBhAAAAABoQYBAAAAAaIGAQAAAAGjBgEAAAABpAYQAAAAAaUGEAAAAAGmBhAAAAABpwYQAAAAAagGAQAAAAGpBoAAAAABqgaAAAAAAasGAQAAAAGsBgEAAAABBeQFAQAAAAHqBUAAAAABhwYQAAAAAYkGAAAAiQYCigZAAAAAAQMAAAANACBRAAD_FgAgUgAAiRcAIBMAAAANACAUAAC_DgAgKAAA_A8AIEIAAL0OACBDAAC-DgAgRAAAwA4AIEwAAIkXACDkBQEA8wsAIeUFAQDzCwAh6AUBAPMLACHpBQEA8wsAIeoFQAD1CwAh6wVAAPULACGOBgAAug7NBiLKBgEA9AsAIcsGAQD0CwAhzgYAALsOzgYizwYBAPQLACHQBgEA9AsAIREUAAC_DgAgKAAA_A8AIEIAAL0OACBDAAC-DgAgRAAAwA4AIOQFAQDzCwAh5QUBAPMLACHoBQEA8wsAIekFAQDzCwAh6gVAAPULACHrBUAA9QsAIY4GAAC6Ds0GIsoGAQD0CwAhywYBAPQLACHOBgAAuw7OBiLPBgEA9AsAIdAGAQD0CwAhAwAAADIAIFEAAIEXACBSAACMFwAgDQAAADIAIBEAAKURACAUAADMEAAgJAAAzRAAICYAAM4QACAsAADPEAAgTAAAjBcAIOQFAQDzCwAh6AUBAPMLACHqBUAA9QsAIesFQAD1CwAh1AYBAPMLACHbBgAAyhDbBiILEQAApREAIBQAAMwQACAkAADNEAAgJgAAzhAAICwAAM8QACDkBQEA8wsAIegFAQDzCwAh6gVAAPULACHrBUAA9QsAIdQGAQDzCwAh2wYAAMoQ2wYiAwAAACcAIFEAAIMXACBSAACPFwAgCgAAACcAIA4AAKwPACAPAACtDwAgTAAAjxcAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIewFQAD2CwAhkQYAAKsPvgYivAYgAKoPACEIDgAArA8AIA8AAK0PACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACHsBUAA9gsAIZEGAACrD74GIrwGIACqDwAhDgkBAAAAAQsAAKAMACDkBQEAAAAB5QUBAAAAAeYFAQAAAAHoBQEAAAAB6QUBAAAAAeoFQAAAAAHrBUAAAAAB7AVAAAAAAfwFAQAAAAH9BQEAAAAB_gUBAAAAAf8FEAAAAAECAAAApwEAIFEAAJAXACADAAAAogEAIFEAAJAXACBSAACUFwAgEAAAAKIBACAJAQDzCwAhCwAAnwwAIEwAAJQXACDkBQEA8wsAIeUFAQDzCwAh5gUBAPQLACHoBQEA8wsAIekFAQDzCwAh6gVAAPULACHrBUAA9QsAIewFQAD2CwAh_AUBAPQLACH9BQEA9AsAIf4FAQD0CwAh_wUQAIIMACEOCQEA8wsAIQsAAJ8MACDkBQEA8wsAIeUFAQDzCwAh5gUBAPQLACHoBQEA8wsAIekFAQDzCwAh6gVAAPULACHrBUAA9QsAIewFQAD2CwAh_AUBAPQLACH9BQEA9AsAIf4FAQD0CwAh_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_AUBAAAAAf0FAQAAAAH-BQEAAAAB_wUQAAAAAbcGAQAAAAHEBiAAAAABxwYAAADHBgLIBgEAAAAByQYBAAAAAQIAAAAbACBRAACvFwAgEQ0AAIUNACAkAACHDQAgJQAAhg0AIC4AAIgNACAzAACKDQAg5AUBAAAAAeoFQAAAAAHrBUAAAAABpgYQAAAAAagGAQAAAAGtBgEAAAABrgYCAAAAAa8GQAAAAAGwBoAAAAABsQYBAAAAAbIGAQAAAAGzBgEAAAABAgAAAC8AIFEAALEXACADAAAAGQAgUQAArxcAIFIAALUXACAWAAAAGQAgCQAAqw0AIAoAAKwNACALAAD2DQAgDAAArQ0AIEwAALUXACDkBQEA8wsAIeUFAQDzCwAh5gUBAPQLACHnBQEA9AsAIeoFQAD1CwAh6wVAAPULACHsBUAA9gsAIfwFAQD0CwAh_QUBAPQLACH-BQEA9AsAIf8FEACpDQAhtwYBAPQLACHEBiAAmg0AIccGAACoDccGIsgGAQDzCwAhyQYBAPMLACEUCQAAqw0AIAoAAKwNACALAAD2DQAgDAAArQ0AIOQFAQDzCwAh5QUBAPMLACHmBQEA9AsAIecFAQD0CwAh6gVAAPULACHrBUAA9QsAIewFQAD2CwAh_AUBAPQLACH9BQEA9AsAIf4FAQD0CwAh_wUQAKkNACG3BgEA9AsAIcQGIACaDQAhxwYAAKgNxwYiyAYBAPMLACHJBgEA8wsAIQMAAAAtACBRAACxFwAgUgAAuBcAIBMAAAAtACANAADlDAAgJAAA5wwAICUAAOYMACAuAADoDAAgMwAA6gwAIEwAALgXACDkBQEA8wsAIeoFQAD1CwAh6wVAAPULACGmBhAAggwAIagGAQD0CwAhrQYBAPMLACGuBgIAvAwAIa8GQAD1CwAhsAaAAAAAAbEGAQD0CwAhsgYBAPMLACGzBgEA8wsAIRENAADlDAAgJAAA5wwAICUAAOYMACAuAADoDAAgMwAA6gwAIOQFAQDzCwAh6gVAAPULACHrBUAA9QsAIaYGEACCDAAhqAYBAPQLACGtBgEA8wsAIa4GAgC8DAAhrwZAAPULACGwBoAAAAABsQYBAPQLACGyBgEA8wsAIbMGAQDzCwAhD-QFAQAAAAHqBUAAAAABiwYBAAAAAaAGEAAAAAGhBgEAAAABogYBAAAAAaMGAQAAAAGkBhAAAAABpQYQAAAAAaYGEAAAAAGnBhAAAAABqAYBAAAAAakGgAAAAAGqBoAAAAABqwYBAAAAAQwJAQAAAAHkBQEAAAAB5QUBAAAAAeYFAQAAAAHoBQEAAAAB6QUBAAAAAeoFQAAAAAHrBUAAAAAB7AVAAAAAAfwFAQAAAAH9BQEAAAAB_wUQAAAAAQIFAAIUAAQCAwUBBAADAQMGAAQGBwEl3AEXRQkFRtsBHAIUAARDAAYDAwwFBABGPhAHBwQARRDWARIUABcoAAhCzAFBQ9QBBkTVAS0FBABADAAJOcYBCz7FAQc_xwEuCQQAPwi5AQwRABgbtAEgOAAKOrcBCDu4AS88vAEUPb8BFQMEAD4HFAk5GAsEBAA9CBwMKLABCDiuAQoGBAA8CQANCgAPCyELDCIJNiYRAgQADggdDAEIHgACBAAQCB8MAQggAAMtABI0oQEMN6MBOAcEADcNKBMkAAclABcukgEyMJgBETOcATUEBAAWDioUDywVEDASAgwACQ0AEwIMAAkNABMBEDEABwQAMRCPARIRABgUAAQkfAcmfiwsjgEkBgM1FwQAKwc2CQ48Gg94HRI6GQERABgCEQAYEwAbBwNAHAQAKhVDGhZHHSFLHiJtJiNxIgITABsUAAQCEQAYEwAbAwQAKRMAGyBPHwIXAB4aUSAFBAAoDAAJGAAfGVUhH1wkAhcAIhpYIAMEACMTABsZViEBGVcAAxReFxtdIB5gJQIXYiYdZyQDBAAnEwAbHGUlARxmAAIZaAAfaQABIGoABgNyABVzABZ0ACF1ACJ2ACN3AAMDeQAHegASewAFBAAwJQAXJ4IBLSmGAS4rigEvAiQAByYALAImACwoAAgCJgAsKgAJAyeLAQApjAEAK40BAAEQkAEAAwQANC0AEi-WATMBLgAyAS-XAQACLQASMp4BNgExADUCMJ8BADOgAQADBAA7C6UBOTaqARECBAA6NagBOAE1qQEAATarAQABNqwBAAEIsQEAAgeyAQA5swEABQjCAQA6wAEAO8EBADzDAQA9xAEAAznJAQA-yAEAP8oBAAMEAERAAEJB0QEHAgQAQxLPAUEBEtABAAFB0gEAAhDYAQBE1wEAAgPZAQA-2gEAAAMEAElXAEpYAEsAAAADBABJVwBKWABLAwQATlcAT1gAUAAAAAMEAE5XAE9YAFADBABTVwBUWABVAAAAAwQAU1cAVFgAVQMEAFhXAFlYAFoAAAADBABYVwBZWABaAwQAXVcAXlgAXwAAAAMEAF1XAF5YAF8FBABiVwBlWABmnwEAY6ABAGQAAAAAAAUEAGJXAGVYAGafAQBjoAEAZAUEAGlXAGxYAG2fAQBqoAEAawAAAAAABQQAaVcAbFgAbZ8BAGqgAQBrAwQAcFcAcVgAcgAAAAMEAHBXAHFYAHIFBAB1VwB4WAB5nwEAdqABAHcAAAAAAAUEAHVXAHhYAHmfAQB2oAEAdwMEAHxXAH1YAH4AAAADBAB8VwB9WAB-BQQAgQFXAIQBWACFAZ8BAIIBoAEAgwEAAAAAAAUEAIEBVwCEAVgAhQGfAQCCAaABAIMBAwQAiAFXAIkBWACKAQAAAAMEAIgBVwCJAVgAigEDBACNAVcAjgFYAI8BAAAAAwQAjQFXAI4BWACPAQMEAJIBVwCTAVgAlAEAAAADBACSAVcAkwFYAJQBAwQAlwFXAJgBWACZAQAAAAMEAJcBVwCYAVgAmQEDBACcAVcAnQFYAJ4BAAAAAwQAnAFXAJ0BWACeAQMEAKEBVwCiAVgAowEAAAADBAChAVcAogFYAKMBAwQApgFXAKcBWACoAQAAAAMEAKYBVwCnAVgAqAEDBACrAVcArAFYAK0BAAAAAwQAqwFXAKwBWACtAQMEALABVwCxAVgAsgEAAAADBACwAVcAsQFYALIBAwQAtQFXALYBWAC3AQAAAAMEALUBVwC2AVgAtwEDBAC6AVcAuwFYALwBAAAAAwQAugFXALsBWAC8AQADBADAAVcAwQFYAMIBAAAAAwQAwAFXAMEBWADCAQMEAMUBVwDGAVgAxwEAAAADBADFAVcAxgFYAMcBAwQAygFXAMsBWADMAQAAAAMEAMoBVwDLAVgAzAEDBADPAVcA0AFYANEBAAAAAwQAzwFXANABWADRAQMEANQBVwDVAVgA1gEAAAADBADUAVcA1QFYANYBAwQA2QFXANoBWADbAQAAAAMEANkBVwDaAVgA2wEDBADeAVcA3wFYAOABAAAAAwQA3gFXAN8BWADgAQMEAOMBVwDkAVgA5QEAAAADBADjAVcA5AFYAOUBBQQA6AFXAOsBWADsAZ8BAOkBoAEA6gEAAAAAAAUEAOgBVwDrAVgA7AGfAQDpAaABAOoBAwQA7wFXAPABWADxAQAAAAMEAO8BVwDwAVgA8QEDBAD0AVcA9QFYAPYBAAAAAwQA9AFXAPUBWAD2AQUEAPkBVwD8AVgA_QGfAQD6AaABAPsBAAAAAAAFBAD5AVcA_AFYAP0BnwEA-gGgAQD7AQAFBACBAlcAhAJYAIUCnwEAggKgAQCDAgAAAAAABQQAgQJXAIQCWACFAp8BAIICoAEAgwIDBACIAlcAiQJYAIoCAAAAAwQAiAJXAIkCWACKAgMEAI0CVwCOAlgAjwIAAAADBACNAlcAjgJYAI8CAwQAkgJXAJMCWACUAgAAAAMEAJICVwCTAlgAlAIDBACXAlcAmAJYAJkCAAAAAwQAlwJXAJgCWACZAgUEAJwCVwCfAlgAoAKfAQCdAqABAJ4CAAAAAAAFBACcAlcAnwJYAKACnwEAnQKgAQCeAgUEAKMCVwCmAlgApwKfAQCkAqABAKUCAAAAAAAFBACjAlcApgJYAKcCnwEApAKgAQClAgUEAKoCVwCtAlgArgKfAQCrAqABAKwCAAAAAAAFBACqAlcArQJYAK4CnwEAqwKgAQCsAgUEALECVwC0AlgAtQKfAQCyAqABALMCAAAAAAAFBACxAlcAtAJYALUCnwEAsgKgAQCzAgUEALgCVwC7AlgAvAKfAQC5AqABALoCAAAAAAAFBAC4AlcAuwJYALwCnwEAuQKgAQC6AgMEAL8CVwDAAlgAwQIAAAADBAC_AlcAwAJYAMECBQQAxAJXAMcCWADIAp8BAMUCoAEAxgIAAAAAAAUEAMQCVwDHAlgAyAKfAQDFAqABAMYCAwQAywJXAMwCWADNAgAAAAMEAMsCVwDMAlgAzQJHAgFI3QEBSd4BAUrfAQFL4AEBTeIBAU7kAUdP5gEBUOgBR1PpAQFU6gEBVesBR1nuAUha7wFMW_EBAlzyAQJd9QECXvYBAl_3AQJg-QECYfsBR2L9AQJj_wFHZIACAmWBAgJmggJHZ4UCTWiGAlFpiAIEaokCBGuMAgRsjQIEbY4CBG6QAgRvkgJHcJQCBHGWAkdylwIEc5gCBHSZAkd1nAJSdp0CVnefAkJ4oAJCeaMCQnqkAkJ7pQJCfKcCQn2pAkd-qwJCf60CR4ABrgJCgQGvAkKCAbACR4MBswJXhAG0AluFAbUCQYYBtgJBhwG3AkGIAbgCQYkBuQJBigG7AkGLAb0CR4wBvwJBjQHBAkeOAcICQY8BwwJBkAHEAkeRAccCXJIByAJgkwHJAh6UAcoCHpUBywIelgHMAh6XAc0CHpgBzwIemQHRAkeaAdMCHpsB1QJHnAHWAh6dAdcCHp4B2AJHoQHbAmGiAdwCZ6MB3QIfpAHeAh-lAd8CH6YB4AIfpwHhAh-oAeMCH6kB5QJHqgHnAh-rAekCR6wB6gIfrQHrAh-uAewCR68B7wJosAHwAm6xAfICILIB8wIgswH1AiC0AfYCILUB9wIgtgH5AiC3AfsCR7gB_QIguQH_Ake6AYADILsBgQMgvAGCA0e9AYUDb74BhgNzvwGHAyLAAYgDIsEBiQMiwgGKAyLDAYsDIsQBjQMixQGPA0fGAZEDIscBkwNHyAGUAyLJAZUDIsoBlgNHywGZA3TMAZoDes0BmwMhzgGcAyHPAZ0DIdABngMh0QGfAyHSAaEDIdMBowNH1AGlAyHVAacDR9YBqAMh1wGpAyHYAaoDR9kBrQN72gGuA3_bAa8DJtwBsAMm3QGxAybeAbIDJt8BswMm4AG1AybhAbcDR-IBuQMm4wG7A0fkAbwDJuUBvQMm5gG-A0fnAcEDgAHoAcIDhgHpAcMDJeoBxAMl6wHFAyXsAcYDJe0BxwMl7gHJAyXvAcsDR_ABzQMl8QHPA0fyAdADJfMB0QMl9AHSA0f1AdUDhwH2AdYDiwH3AdcDJPgB2AMk-QHZAyT6AdoDJPsB2wMk_AHdAyT9Ad8DR_4B4QMk_wHjA0eAAuQDJIEC5QMkggLmA0eDAukDjAGEAuoDkAGFAusDHIYC7AMchwLtAxyIAu4DHIkC7wMcigLxAxyLAvMDR4wC9QMcjQL3A0eOAvgDHI8C-QMckAL6A0eRAv0DkQGSAv4DlQGTAoAEG5QCgQQblQKEBBuWAoUEG5cChgQbmAKIBBuZAooER5oCjAQbmwKOBEecAo8EG50CkAQbngKRBEefApQElgGgApUEmgGhApcELKICmAQsowKaBCykApsELKUCnAQspgKeBCynAqAER6gCogQsqQKkBEeqAqUELKsCpgQsrAKnBEetAqoEmwGuAqsEnwGvAqwELbACrQQtsQKuBC2yAq8ELbMCsAQttAKyBC21ArQER7YCtgQttwK4BEe4ArkELbkCugQtugK7BEe7Ar4EoAG8Ar8EpAG9AsAELr4CwQQuvwLCBC7AAsMELsECxAQuwgLGBC7DAsgER8QCygQuxQLMBEfGAs0ELscCzgQuyALPBEfJAtIEpQHKAtMEqQHLAtQEL8wC1QQvzQLWBC_OAtcEL88C2AQv0ALaBC_RAtwER9IC3gQv0wLgBEfUAuEEL9UC4gQv1gLjBEfXAuYEqgHYAucErgHZAugEBdoC6QQF2wLqBAXcAusEBd0C7AQF3gLuBAXfAvAER-AC8gQF4QL0BEfiAvUEBeMC9gQF5AL3BEflAvoErwHmAvsEswHnAv0EBugC_gQG6QKABQbqAoEFBusCggUG7AKEBQbtAoYFR-4CiAUG7wKKBUfwAosFBvECjAUG8gKNBUfzApAFtAH0ApEFuAH1ApIFGfYCkwUZ9wKUBRn4ApUFGfkClgUZ-gKYBRn7ApoFR_wCnAUZ_QKeBUf-Ap8FGf8CoAUZgAOhBUeBA6QFuQGCA6UFvQGDA6cFvgGEA6gFvgGFA6sFvgGGA6wFvgGHA60FvgGIA68FvgGJA7EFR4oDswW-AYsDtQVHjAO2Bb4BjQO3Bb4BjgO4BUePA7sFvwGQA7wFwwGRA70FF5IDvgUXkwO_BReUA8AFF5UDwQUXlgPDBReXA8UFR5gDxwUXmQPJBUeaA8oFF5sDywUXnAPMBUedA88FxAGeA9AFyAGfA9IFGKAD0wUYoQPWBRiiA9cFGKMD2AUYpAPaBRilA9wFR6YD3gUYpwPgBUeoA-EFGKkD4gUYqgPjBUerA-YFyQGsA-cFzQGtA-gFGq4D6QUarwPqBRqwA-sFGrED7AUasgPuBRqzA_AFR7QD8gUatQP0BUe2A_UFGrcD9gUauAP3BUe5A_oFzgG6A_sF0gG7A_wFHbwD_QUdvQP-BR2-A_8FHb8DgAYdwAOCBh3BA4QGR8IDhgYdwwOIBkfEA4kGHcUDigYdxgOLBkfHA44G0wHIA48G1wHJA5AGCcoDkQYJywOSBgnMA5MGCc0DlAYJzgOWBgnPA5gGR9ADmgYJ0QOcBkfSA50GCdMDngYJ1AOfBkfVA6IG2AHWA6MG3AHXA6QGCNgDpQYI2QOmBgjaA6cGCNsDqAYI3AOqBgjdA6wGR94DrgYI3wOwBkfgA7EGCOEDsgYI4gOzBkfjA7YG3QHkA7cG4QHlA7gGB-YDuQYH5wO6BgfoA7sGB-kDvAYH6gO-BgfrA8AGR-wDwgYH7QPEBkfuA8UGB-8DxgYH8APHBkfxA8oG4gHyA8sG5gHzA8wGDPQDzQYM9QPOBgz2A88GDPcD0AYM-APSBgz5A9QGR_oD1gYM-wPYBkf8A9kGDP0D2gYM_gPbBkf_A94G5wGABN8G7QGBBOAGC4IE4QYLgwTiBguEBOMGC4UE5AYLhgTmBguHBOgGR4gE6gYLiQTsBkeKBO0GC4sE7gYLjATvBkeNBPIG7gGOBPMG8gGPBPUGD5AE9gYPkQT5Bg-SBPoGD5ME-wYPlAT9Bg-VBP8GR5YEgQcPlwSDB0eYBIQHD5kEhQcPmgSGB0ebBIkH8wGcBIoH9wGdBIwHDZ4EjQcNnwSQBw2gBJEHDaEEkgcNogSUBw2jBJYHR6QEmAcNpQSaB0emBJsHDacEnAcNqASdB0epBKAH-AGqBKEH_gGrBKMH_wGsBKQH_wGtBKcH_wGuBKgH_wGvBKkH_wGwBKsH_wGxBK0HR7IErwf_AbMEsQdHtASyB_8BtQSzB_8BtgS0B0e3BLcHgAK4BLgHhgK5BLoHE7oEuwcTuwS9BxO8BL4HE70EvwcTvgTBBxO_BMMHR8AExQcTwQTHB0fCBMgHE8MEyQcTxATKB0fFBM0HhwLGBM4HiwLHBM8HFMgE0AcUyQTRBxTKBNIHFMsE0wcUzATVBxTNBNcHR84E2QcUzwTbB0fQBNwHFNEE3QcU0gTeB0fTBOEHjALUBOIHkALVBOMHFdYE5AcV1wTlBxXYBOYHFdkE5wcV2gTpBxXbBOsHR9wE7QcV3QTvB0feBPAHFd8E8QcV4ATyB0fhBPUHkQLiBPYHlQLjBPgHCuQE-QcK5QT7BwrmBPwHCucE_QcK6AT_BwrpBIEIR-oEgwgK6wSFCEfsBIYICu0EhwgK7gSICEfvBIsIlgLwBIwImgLxBI0IEvIEjggS8wSPCBL0BJAIEvUEkQgS9gSTCBL3BJUIR_gElwgS-QSZCEf6BJoIEvsEmwgS_AScCEf9BJ8ImwL-BKAIoQL_BKEIEYAFoggRgQWjCBGCBaQIEYMFpQgRhAWnCBGFBakIR4YFqwgRhwWtCEeIBa4IEYkFrwgRigWwCEeLBbMIogKMBbQIqAKNBbYIMo4FtwgyjwW5CDKQBboIMpEFuwgykgW9CDKTBb8IR5QFwQgylQXDCEeWBcQIMpcFxQgymAXGCEeZBckIqQKaBcoIrwKbBcsIM5wFzAgznQXNCDOeBc4IM58FzwgzoAXRCDOhBdMIR6IF1QgzowXXCEekBdgIM6UF2QgzpgXaCEenBd0IsAKoBd4ItgKpBd8INaoF4Ag1qwXhCDWsBeIINa0F4wg1rgXlCDWvBecIR7AF6Qg1sQXrCEeyBewINbMF7Qg1tAXuCEe1BfEItwK2BfIIvQK3BfQINrgF9Qg2uQX3CDa6BfgINrsF-Qg2vAX7CDa9Bf0IR74F_wg2vwWBCUfABYIJNsEFgwk2wgWECUfDBYcJvgLEBYgJwgLFBYkJOMYFigk4xwWLCTjIBYwJOMkFjQk4ygWPCTjLBZEJR8wFkwk4zQWVCUfOBZYJOM8Flwk40AWYCUfRBZsJwwLSBZwJyQLTBZ4JOdQFnwk51QWhCTnWBaIJOdcFowk52AWlCTnZBacJR9oFqQk52wWrCUfcBawJOd0FrQk53gWuCUffBbEJygLgBbIJzgI" + strings: JSON.parse("[\"where\",\"orderBy\",\"cursor\",\"accounts\",\"_count\",\"admin\",\"admin_account\",\"business_activities\",\"goods\",\"sku\",\"measure_unit\",\"category\",\"business_activity\",\"customer\",\"individual\",\"legal\",\"sales_invoices\",\"consumer\",\"devices\",\"partner\",\"account\",\"consumers_individual\",\"consumers_legal\",\"charge_transaction\",\"license\",\"license_renews\",\"activation\",\"license_activation\",\"credits\",\"allocation\",\"credit\",\"account_allocations\",\"licenses\",\"license_charge_transactions\",\"account_quota_charge_transactions\",\"license_renew_charge_transactions\",\"pos\",\"consumer_account\",\"permission\",\"pos_permissions\",\"complex\",\"complex_permissions\",\"business\",\"business_permissions\",\"account_allocation\",\"items\",\"invoice\",\"payment\",\"terminal_info\",\"payments\",\"tsp_attempts\",\"good\",\"services\",\"sales_invoice_items\",\"service\",\"guild\",\"good_categories\",\"complexes\",\"permission_businesses\",\"customer_individuals\",\"customer_legals\",\"pos_list\",\"permission_complexes\",\"brand\",\"poses\",\"device\",\"provider\",\"permission_pos\",\"provider_account\",\"partner_account\",\"AdminAccount.findUnique\",\"AdminAccount.findUniqueOrThrow\",\"AdminAccount.findFirst\",\"AdminAccount.findFirstOrThrow\",\"AdminAccount.findMany\",\"data\",\"AdminAccount.createOne\",\"AdminAccount.createMany\",\"AdminAccount.updateOne\",\"AdminAccount.updateMany\",\"create\",\"update\",\"AdminAccount.upsertOne\",\"AdminAccount.deleteOne\",\"AdminAccount.deleteMany\",\"having\",\"_min\",\"_max\",\"AdminAccount.groupBy\",\"AdminAccount.aggregate\",\"Admin.findUnique\",\"Admin.findUniqueOrThrow\",\"Admin.findFirst\",\"Admin.findFirstOrThrow\",\"Admin.findMany\",\"Admin.createOne\",\"Admin.createMany\",\"Admin.updateOne\",\"Admin.updateMany\",\"Admin.upsertOne\",\"Admin.deleteOne\",\"Admin.deleteMany\",\"Admin.groupBy\",\"Admin.aggregate\",\"Account.findUnique\",\"Account.findUniqueOrThrow\",\"Account.findFirst\",\"Account.findFirstOrThrow\",\"Account.findMany\",\"Account.createOne\",\"Account.createMany\",\"Account.updateOne\",\"Account.updateMany\",\"Account.upsertOne\",\"Account.deleteOne\",\"Account.deleteMany\",\"Account.groupBy\",\"Account.aggregate\",\"DeviceBrand.findUnique\",\"DeviceBrand.findUniqueOrThrow\",\"DeviceBrand.findFirst\",\"DeviceBrand.findFirstOrThrow\",\"DeviceBrand.findMany\",\"DeviceBrand.createOne\",\"DeviceBrand.createMany\",\"DeviceBrand.updateOne\",\"DeviceBrand.updateMany\",\"DeviceBrand.upsertOne\",\"DeviceBrand.deleteOne\",\"DeviceBrand.deleteMany\",\"DeviceBrand.groupBy\",\"DeviceBrand.aggregate\",\"Device.findUnique\",\"Device.findUniqueOrThrow\",\"Device.findFirst\",\"Device.findFirstOrThrow\",\"Device.findMany\",\"Device.createOne\",\"Device.createMany\",\"Device.updateOne\",\"Device.updateMany\",\"Device.upsertOne\",\"Device.deleteOne\",\"Device.deleteMany\",\"Device.groupBy\",\"Device.aggregate\",\"LicenseChargeTransaction.findUnique\",\"LicenseChargeTransaction.findUniqueOrThrow\",\"LicenseChargeTransaction.findFirst\",\"LicenseChargeTransaction.findFirstOrThrow\",\"LicenseChargeTransaction.findMany\",\"LicenseChargeTransaction.createOne\",\"LicenseChargeTransaction.createMany\",\"LicenseChargeTransaction.updateOne\",\"LicenseChargeTransaction.updateMany\",\"LicenseChargeTransaction.upsertOne\",\"LicenseChargeTransaction.deleteOne\",\"LicenseChargeTransaction.deleteMany\",\"_avg\",\"_sum\",\"LicenseChargeTransaction.groupBy\",\"LicenseChargeTransaction.aggregate\",\"License.findUnique\",\"License.findUniqueOrThrow\",\"License.findFirst\",\"License.findFirstOrThrow\",\"License.findMany\",\"License.createOne\",\"License.createMany\",\"License.updateOne\",\"License.updateMany\",\"License.upsertOne\",\"License.deleteOne\",\"License.deleteMany\",\"License.groupBy\",\"License.aggregate\",\"LicenseActivation.findUnique\",\"LicenseActivation.findUniqueOrThrow\",\"LicenseActivation.findFirst\",\"LicenseActivation.findFirstOrThrow\",\"LicenseActivation.findMany\",\"LicenseActivation.createOne\",\"LicenseActivation.createMany\",\"LicenseActivation.updateOne\",\"LicenseActivation.updateMany\",\"LicenseActivation.upsertOne\",\"LicenseActivation.deleteOne\",\"LicenseActivation.deleteMany\",\"LicenseActivation.groupBy\",\"LicenseActivation.aggregate\",\"LicenseRenewChargeTransaction.findUnique\",\"LicenseRenewChargeTransaction.findUniqueOrThrow\",\"LicenseRenewChargeTransaction.findFirst\",\"LicenseRenewChargeTransaction.findFirstOrThrow\",\"LicenseRenewChargeTransaction.findMany\",\"LicenseRenewChargeTransaction.createOne\",\"LicenseRenewChargeTransaction.createMany\",\"LicenseRenewChargeTransaction.updateOne\",\"LicenseRenewChargeTransaction.updateMany\",\"LicenseRenewChargeTransaction.upsertOne\",\"LicenseRenewChargeTransaction.deleteOne\",\"LicenseRenewChargeTransaction.deleteMany\",\"LicenseRenewChargeTransaction.groupBy\",\"LicenseRenewChargeTransaction.aggregate\",\"LicenseRenew.findUnique\",\"LicenseRenew.findUniqueOrThrow\",\"LicenseRenew.findFirst\",\"LicenseRenew.findFirstOrThrow\",\"LicenseRenew.findMany\",\"LicenseRenew.createOne\",\"LicenseRenew.createMany\",\"LicenseRenew.updateOne\",\"LicenseRenew.updateMany\",\"LicenseRenew.upsertOne\",\"LicenseRenew.deleteOne\",\"LicenseRenew.deleteMany\",\"LicenseRenew.groupBy\",\"LicenseRenew.aggregate\",\"PartnerAccountQuotaChargeTransaction.findUnique\",\"PartnerAccountQuotaChargeTransaction.findUniqueOrThrow\",\"PartnerAccountQuotaChargeTransaction.findFirst\",\"PartnerAccountQuotaChargeTransaction.findFirstOrThrow\",\"PartnerAccountQuotaChargeTransaction.findMany\",\"PartnerAccountQuotaChargeTransaction.createOne\",\"PartnerAccountQuotaChargeTransaction.createMany\",\"PartnerAccountQuotaChargeTransaction.updateOne\",\"PartnerAccountQuotaChargeTransaction.updateMany\",\"PartnerAccountQuotaChargeTransaction.upsertOne\",\"PartnerAccountQuotaChargeTransaction.deleteOne\",\"PartnerAccountQuotaChargeTransaction.deleteMany\",\"PartnerAccountQuotaChargeTransaction.groupBy\",\"PartnerAccountQuotaChargeTransaction.aggregate\",\"PartnerAccountQuotaCredit.findUnique\",\"PartnerAccountQuotaCredit.findUniqueOrThrow\",\"PartnerAccountQuotaCredit.findFirst\",\"PartnerAccountQuotaCredit.findFirstOrThrow\",\"PartnerAccountQuotaCredit.findMany\",\"PartnerAccountQuotaCredit.createOne\",\"PartnerAccountQuotaCredit.createMany\",\"PartnerAccountQuotaCredit.updateOne\",\"PartnerAccountQuotaCredit.updateMany\",\"PartnerAccountQuotaCredit.upsertOne\",\"PartnerAccountQuotaCredit.deleteOne\",\"PartnerAccountQuotaCredit.deleteMany\",\"PartnerAccountQuotaCredit.groupBy\",\"PartnerAccountQuotaCredit.aggregate\",\"LicenseAccountAllocation.findUnique\",\"LicenseAccountAllocation.findUniqueOrThrow\",\"LicenseAccountAllocation.findFirst\",\"LicenseAccountAllocation.findFirstOrThrow\",\"LicenseAccountAllocation.findMany\",\"LicenseAccountAllocation.createOne\",\"LicenseAccountAllocation.createMany\",\"LicenseAccountAllocation.updateOne\",\"LicenseAccountAllocation.updateMany\",\"LicenseAccountAllocation.upsertOne\",\"LicenseAccountAllocation.deleteOne\",\"LicenseAccountAllocation.deleteMany\",\"LicenseAccountAllocation.groupBy\",\"LicenseAccountAllocation.aggregate\",\"PartnerAccount.findUnique\",\"PartnerAccount.findUniqueOrThrow\",\"PartnerAccount.findFirst\",\"PartnerAccount.findFirstOrThrow\",\"PartnerAccount.findMany\",\"PartnerAccount.createOne\",\"PartnerAccount.createMany\",\"PartnerAccount.updateOne\",\"PartnerAccount.updateMany\",\"PartnerAccount.upsertOne\",\"PartnerAccount.deleteOne\",\"PartnerAccount.deleteMany\",\"PartnerAccount.groupBy\",\"PartnerAccount.aggregate\",\"Partner.findUnique\",\"Partner.findUniqueOrThrow\",\"Partner.findFirst\",\"Partner.findFirstOrThrow\",\"Partner.findMany\",\"Partner.createOne\",\"Partner.createMany\",\"Partner.updateOne\",\"Partner.updateMany\",\"Partner.upsertOne\",\"Partner.deleteOne\",\"Partner.deleteMany\",\"Partner.groupBy\",\"Partner.aggregate\",\"PermissionConsumer.findUnique\",\"PermissionConsumer.findUniqueOrThrow\",\"PermissionConsumer.findFirst\",\"PermissionConsumer.findFirstOrThrow\",\"PermissionConsumer.findMany\",\"PermissionConsumer.createOne\",\"PermissionConsumer.createMany\",\"PermissionConsumer.updateOne\",\"PermissionConsumer.updateMany\",\"PermissionConsumer.upsertOne\",\"PermissionConsumer.deleteOne\",\"PermissionConsumer.deleteMany\",\"PermissionConsumer.groupBy\",\"PermissionConsumer.aggregate\",\"PermissionPos.findUnique\",\"PermissionPos.findUniqueOrThrow\",\"PermissionPos.findFirst\",\"PermissionPos.findFirstOrThrow\",\"PermissionPos.findMany\",\"PermissionPos.createOne\",\"PermissionPos.createMany\",\"PermissionPos.updateOne\",\"PermissionPos.updateMany\",\"PermissionPos.upsertOne\",\"PermissionPos.deleteOne\",\"PermissionPos.deleteMany\",\"PermissionPos.groupBy\",\"PermissionPos.aggregate\",\"PermissionComplex.findUnique\",\"PermissionComplex.findUniqueOrThrow\",\"PermissionComplex.findFirst\",\"PermissionComplex.findFirstOrThrow\",\"PermissionComplex.findMany\",\"PermissionComplex.createOne\",\"PermissionComplex.createMany\",\"PermissionComplex.updateOne\",\"PermissionComplex.updateMany\",\"PermissionComplex.upsertOne\",\"PermissionComplex.deleteOne\",\"PermissionComplex.deleteMany\",\"PermissionComplex.groupBy\",\"PermissionComplex.aggregate\",\"PermissionBusiness.findUnique\",\"PermissionBusiness.findUniqueOrThrow\",\"PermissionBusiness.findFirst\",\"PermissionBusiness.findFirstOrThrow\",\"PermissionBusiness.findMany\",\"PermissionBusiness.createOne\",\"PermissionBusiness.createMany\",\"PermissionBusiness.updateOne\",\"PermissionBusiness.updateMany\",\"PermissionBusiness.upsertOne\",\"PermissionBusiness.deleteOne\",\"PermissionBusiness.deleteMany\",\"PermissionBusiness.groupBy\",\"PermissionBusiness.aggregate\",\"ProviderAccount.findUnique\",\"ProviderAccount.findUniqueOrThrow\",\"ProviderAccount.findFirst\",\"ProviderAccount.findFirstOrThrow\",\"ProviderAccount.findMany\",\"ProviderAccount.createOne\",\"ProviderAccount.createMany\",\"ProviderAccount.updateOne\",\"ProviderAccount.updateMany\",\"ProviderAccount.upsertOne\",\"ProviderAccount.deleteOne\",\"ProviderAccount.deleteMany\",\"ProviderAccount.groupBy\",\"ProviderAccount.aggregate\",\"Provider.findUnique\",\"Provider.findUniqueOrThrow\",\"Provider.findFirst\",\"Provider.findFirstOrThrow\",\"Provider.findMany\",\"Provider.createOne\",\"Provider.createMany\",\"Provider.updateOne\",\"Provider.updateMany\",\"Provider.upsertOne\",\"Provider.deleteOne\",\"Provider.deleteMany\",\"Provider.groupBy\",\"Provider.aggregate\",\"ConsumerDevices.findUnique\",\"ConsumerDevices.findUniqueOrThrow\",\"ConsumerDevices.findFirst\",\"ConsumerDevices.findFirstOrThrow\",\"ConsumerDevices.findMany\",\"ConsumerDevices.createOne\",\"ConsumerDevices.createMany\",\"ConsumerDevices.updateOne\",\"ConsumerDevices.updateMany\",\"ConsumerDevices.upsertOne\",\"ConsumerDevices.deleteOne\",\"ConsumerDevices.deleteMany\",\"ConsumerDevices.groupBy\",\"ConsumerDevices.aggregate\",\"ApplicationReleasedInfo.findUnique\",\"ApplicationReleasedInfo.findUniqueOrThrow\",\"ApplicationReleasedInfo.findFirst\",\"ApplicationReleasedInfo.findFirstOrThrow\",\"ApplicationReleasedInfo.findMany\",\"ApplicationReleasedInfo.createOne\",\"ApplicationReleasedInfo.createMany\",\"ApplicationReleasedInfo.updateOne\",\"ApplicationReleasedInfo.updateMany\",\"ApplicationReleasedInfo.upsertOne\",\"ApplicationReleasedInfo.deleteOne\",\"ApplicationReleasedInfo.deleteMany\",\"ApplicationReleasedInfo.groupBy\",\"ApplicationReleasedInfo.aggregate\",\"ConsumerAccount.findUnique\",\"ConsumerAccount.findUniqueOrThrow\",\"ConsumerAccount.findFirst\",\"ConsumerAccount.findFirstOrThrow\",\"ConsumerAccount.findMany\",\"ConsumerAccount.createOne\",\"ConsumerAccount.createMany\",\"ConsumerAccount.updateOne\",\"ConsumerAccount.updateMany\",\"ConsumerAccount.upsertOne\",\"ConsumerAccount.deleteOne\",\"ConsumerAccount.deleteMany\",\"ConsumerAccount.groupBy\",\"ConsumerAccount.aggregate\",\"Consumer.findUnique\",\"Consumer.findUniqueOrThrow\",\"Consumer.findFirst\",\"Consumer.findFirstOrThrow\",\"Consumer.findMany\",\"Consumer.createOne\",\"Consumer.createMany\",\"Consumer.updateOne\",\"Consumer.updateMany\",\"Consumer.upsertOne\",\"Consumer.deleteOne\",\"Consumer.deleteMany\",\"Consumer.groupBy\",\"Consumer.aggregate\",\"ConsumerIndividual.findUnique\",\"ConsumerIndividual.findUniqueOrThrow\",\"ConsumerIndividual.findFirst\",\"ConsumerIndividual.findFirstOrThrow\",\"ConsumerIndividual.findMany\",\"ConsumerIndividual.createOne\",\"ConsumerIndividual.createMany\",\"ConsumerIndividual.updateOne\",\"ConsumerIndividual.updateMany\",\"ConsumerIndividual.upsertOne\",\"ConsumerIndividual.deleteOne\",\"ConsumerIndividual.deleteMany\",\"ConsumerIndividual.groupBy\",\"ConsumerIndividual.aggregate\",\"ConsumerLegal.findUnique\",\"ConsumerLegal.findUniqueOrThrow\",\"ConsumerLegal.findFirst\",\"ConsumerLegal.findFirstOrThrow\",\"ConsumerLegal.findMany\",\"ConsumerLegal.createOne\",\"ConsumerLegal.createMany\",\"ConsumerLegal.updateOne\",\"ConsumerLegal.updateMany\",\"ConsumerLegal.upsertOne\",\"ConsumerLegal.deleteOne\",\"ConsumerLegal.deleteMany\",\"ConsumerLegal.groupBy\",\"ConsumerLegal.aggregate\",\"BusinessActivity.findUnique\",\"BusinessActivity.findUniqueOrThrow\",\"BusinessActivity.findFirst\",\"BusinessActivity.findFirstOrThrow\",\"BusinessActivity.findMany\",\"BusinessActivity.createOne\",\"BusinessActivity.createMany\",\"BusinessActivity.updateOne\",\"BusinessActivity.updateMany\",\"BusinessActivity.upsertOne\",\"BusinessActivity.deleteOne\",\"BusinessActivity.deleteMany\",\"BusinessActivity.groupBy\",\"BusinessActivity.aggregate\",\"Complex.findUnique\",\"Complex.findUniqueOrThrow\",\"Complex.findFirst\",\"Complex.findFirstOrThrow\",\"Complex.findMany\",\"Complex.createOne\",\"Complex.createMany\",\"Complex.updateOne\",\"Complex.updateMany\",\"Complex.upsertOne\",\"Complex.deleteOne\",\"Complex.deleteMany\",\"Complex.groupBy\",\"Complex.aggregate\",\"Pos.findUnique\",\"Pos.findUniqueOrThrow\",\"Pos.findFirst\",\"Pos.findFirstOrThrow\",\"Pos.findMany\",\"Pos.createOne\",\"Pos.createMany\",\"Pos.updateOne\",\"Pos.updateMany\",\"Pos.upsertOne\",\"Pos.deleteOne\",\"Pos.deleteMany\",\"Pos.groupBy\",\"Pos.aggregate\",\"Good.findUnique\",\"Good.findUniqueOrThrow\",\"Good.findFirst\",\"Good.findFirstOrThrow\",\"Good.findMany\",\"Good.createOne\",\"Good.createMany\",\"Good.updateOne\",\"Good.updateMany\",\"Good.upsertOne\",\"Good.deleteOne\",\"Good.deleteMany\",\"Good.groupBy\",\"Good.aggregate\",\"GoodCategory.findUnique\",\"GoodCategory.findUniqueOrThrow\",\"GoodCategory.findFirst\",\"GoodCategory.findFirstOrThrow\",\"GoodCategory.findMany\",\"GoodCategory.createOne\",\"GoodCategory.createMany\",\"GoodCategory.updateOne\",\"GoodCategory.updateMany\",\"GoodCategory.upsertOne\",\"GoodCategory.deleteOne\",\"GoodCategory.deleteMany\",\"GoodCategory.groupBy\",\"GoodCategory.aggregate\",\"MeasureUnits.findUnique\",\"MeasureUnits.findUniqueOrThrow\",\"MeasureUnits.findFirst\",\"MeasureUnits.findFirstOrThrow\",\"MeasureUnits.findMany\",\"MeasureUnits.createOne\",\"MeasureUnits.createMany\",\"MeasureUnits.updateOne\",\"MeasureUnits.updateMany\",\"MeasureUnits.upsertOne\",\"MeasureUnits.deleteOne\",\"MeasureUnits.deleteMany\",\"MeasureUnits.groupBy\",\"MeasureUnits.aggregate\",\"StockKeepingUnits.findUnique\",\"StockKeepingUnits.findUniqueOrThrow\",\"StockKeepingUnits.findFirst\",\"StockKeepingUnits.findFirstOrThrow\",\"StockKeepingUnits.findMany\",\"StockKeepingUnits.createOne\",\"StockKeepingUnits.createMany\",\"StockKeepingUnits.updateOne\",\"StockKeepingUnits.updateMany\",\"StockKeepingUnits.upsertOne\",\"StockKeepingUnits.deleteOne\",\"StockKeepingUnits.deleteMany\",\"StockKeepingUnits.groupBy\",\"StockKeepingUnits.aggregate\",\"TriggerLog.findUnique\",\"TriggerLog.findUniqueOrThrow\",\"TriggerLog.findFirst\",\"TriggerLog.findFirstOrThrow\",\"TriggerLog.findMany\",\"TriggerLog.createOne\",\"TriggerLog.createMany\",\"TriggerLog.updateOne\",\"TriggerLog.updateMany\",\"TriggerLog.upsertOne\",\"TriggerLog.deleteOne\",\"TriggerLog.deleteMany\",\"TriggerLog.groupBy\",\"TriggerLog.aggregate\",\"Customer.findUnique\",\"Customer.findUniqueOrThrow\",\"Customer.findFirst\",\"Customer.findFirstOrThrow\",\"Customer.findMany\",\"Customer.createOne\",\"Customer.createMany\",\"Customer.updateOne\",\"Customer.updateMany\",\"Customer.upsertOne\",\"Customer.deleteOne\",\"Customer.deleteMany\",\"Customer.groupBy\",\"Customer.aggregate\",\"CustomerIndividual.findUnique\",\"CustomerIndividual.findUniqueOrThrow\",\"CustomerIndividual.findFirst\",\"CustomerIndividual.findFirstOrThrow\",\"CustomerIndividual.findMany\",\"CustomerIndividual.createOne\",\"CustomerIndividual.createMany\",\"CustomerIndividual.updateOne\",\"CustomerIndividual.updateMany\",\"CustomerIndividual.upsertOne\",\"CustomerIndividual.deleteOne\",\"CustomerIndividual.deleteMany\",\"CustomerIndividual.groupBy\",\"CustomerIndividual.aggregate\",\"CustomerLegal.findUnique\",\"CustomerLegal.findUniqueOrThrow\",\"CustomerLegal.findFirst\",\"CustomerLegal.findFirstOrThrow\",\"CustomerLegal.findMany\",\"CustomerLegal.createOne\",\"CustomerLegal.createMany\",\"CustomerLegal.updateOne\",\"CustomerLegal.updateMany\",\"CustomerLegal.upsertOne\",\"CustomerLegal.deleteOne\",\"CustomerLegal.deleteMany\",\"CustomerLegal.groupBy\",\"CustomerLegal.aggregate\",\"Guild.findUnique\",\"Guild.findUniqueOrThrow\",\"Guild.findFirst\",\"Guild.findFirstOrThrow\",\"Guild.findMany\",\"Guild.createOne\",\"Guild.createMany\",\"Guild.updateOne\",\"Guild.updateMany\",\"Guild.upsertOne\",\"Guild.deleteOne\",\"Guild.deleteMany\",\"Guild.groupBy\",\"Guild.aggregate\",\"SalesInvoice.findUnique\",\"SalesInvoice.findUniqueOrThrow\",\"SalesInvoice.findFirst\",\"SalesInvoice.findFirstOrThrow\",\"SalesInvoice.findMany\",\"SalesInvoice.createOne\",\"SalesInvoice.createMany\",\"SalesInvoice.updateOne\",\"SalesInvoice.updateMany\",\"SalesInvoice.upsertOne\",\"SalesInvoice.deleteOne\",\"SalesInvoice.deleteMany\",\"SalesInvoice.groupBy\",\"SalesInvoice.aggregate\",\"SalesInvoiceItem.findUnique\",\"SalesInvoiceItem.findUniqueOrThrow\",\"SalesInvoiceItem.findFirst\",\"SalesInvoiceItem.findFirstOrThrow\",\"SalesInvoiceItem.findMany\",\"SalesInvoiceItem.createOne\",\"SalesInvoiceItem.createMany\",\"SalesInvoiceItem.updateOne\",\"SalesInvoiceItem.updateMany\",\"SalesInvoiceItem.upsertOne\",\"SalesInvoiceItem.deleteOne\",\"SalesInvoiceItem.deleteMany\",\"SalesInvoiceItem.groupBy\",\"SalesInvoiceItem.aggregate\",\"SaleInvoiceTspAttempts.findUnique\",\"SaleInvoiceTspAttempts.findUniqueOrThrow\",\"SaleInvoiceTspAttempts.findFirst\",\"SaleInvoiceTspAttempts.findFirstOrThrow\",\"SaleInvoiceTspAttempts.findMany\",\"SaleInvoiceTspAttempts.createOne\",\"SaleInvoiceTspAttempts.createMany\",\"SaleInvoiceTspAttempts.updateOne\",\"SaleInvoiceTspAttempts.updateMany\",\"SaleInvoiceTspAttempts.upsertOne\",\"SaleInvoiceTspAttempts.deleteOne\",\"SaleInvoiceTspAttempts.deleteMany\",\"SaleInvoiceTspAttempts.groupBy\",\"SaleInvoiceTspAttempts.aggregate\",\"SalesInvoicePayment.findUnique\",\"SalesInvoicePayment.findUniqueOrThrow\",\"SalesInvoicePayment.findFirst\",\"SalesInvoicePayment.findFirstOrThrow\",\"SalesInvoicePayment.findMany\",\"SalesInvoicePayment.createOne\",\"SalesInvoicePayment.createMany\",\"SalesInvoicePayment.updateOne\",\"SalesInvoicePayment.updateMany\",\"SalesInvoicePayment.upsertOne\",\"SalesInvoicePayment.deleteOne\",\"SalesInvoicePayment.deleteMany\",\"SalesInvoicePayment.groupBy\",\"SalesInvoicePayment.aggregate\",\"SalesInvoicePaymentTerminalInfo.findUnique\",\"SalesInvoicePaymentTerminalInfo.findUniqueOrThrow\",\"SalesInvoicePaymentTerminalInfo.findFirst\",\"SalesInvoicePaymentTerminalInfo.findFirstOrThrow\",\"SalesInvoicePaymentTerminalInfo.findMany\",\"SalesInvoicePaymentTerminalInfo.createOne\",\"SalesInvoicePaymentTerminalInfo.createMany\",\"SalesInvoicePaymentTerminalInfo.updateOne\",\"SalesInvoicePaymentTerminalInfo.updateMany\",\"SalesInvoicePaymentTerminalInfo.upsertOne\",\"SalesInvoicePaymentTerminalInfo.deleteOne\",\"SalesInvoicePaymentTerminalInfo.deleteMany\",\"SalesInvoicePaymentTerminalInfo.groupBy\",\"SalesInvoicePaymentTerminalInfo.aggregate\",\"Service.findUnique\",\"Service.findUniqueOrThrow\",\"Service.findFirst\",\"Service.findFirstOrThrow\",\"Service.findMany\",\"Service.createOne\",\"Service.createMany\",\"Service.updateOne\",\"Service.updateMany\",\"Service.upsertOne\",\"Service.deleteOne\",\"Service.deleteMany\",\"Service.groupBy\",\"Service.aggregate\",\"ServiceCategory.findUnique\",\"ServiceCategory.findUniqueOrThrow\",\"ServiceCategory.findFirst\",\"ServiceCategory.findFirstOrThrow\",\"ServiceCategory.findMany\",\"ServiceCategory.createOne\",\"ServiceCategory.createMany\",\"ServiceCategory.updateOne\",\"ServiceCategory.updateMany\",\"ServiceCategory.upsertOne\",\"ServiceCategory.deleteOne\",\"ServiceCategory.deleteMany\",\"ServiceCategory.groupBy\",\"ServiceCategory.aggregate\",\"AND\",\"OR\",\"NOT\",\"id\",\"name\",\"description\",\"image_url\",\"account_id\",\"complex_id\",\"created_at\",\"updated_at\",\"deleted_at\",\"equals\",\"in\",\"notIn\",\"lt\",\"lte\",\"gt\",\"gte\",\"not\",\"contains\",\"startsWith\",\"endsWith\",\"search\",\"every\",\"some\",\"none\",\"local_sku\",\"barcode\",\"category_id\",\"base_sale_price\",\"terminal_id\",\"stan\",\"rrn\",\"transaction_date_time\",\"customer_card_no\",\"payment_id\",\"terminal_id_stan_rrn_payment_id\",\"amount\",\"PaymentMethodType\",\"payment_method\",\"paid_at\",\"invoice_id\",\"attempt_no\",\"TspProviderResponseStatus\",\"status\",\"tax_id\",\"TspProviderRequestType\",\"type\",\"request_payload\",\"response_payload\",\"error_message\",\"sent_at\",\"received_at\",\"string_contains\",\"string_starts_with\",\"string_ends_with\",\"array_starts_with\",\"array_ends_with\",\"array_contains\",\"quantity\",\"measure_unit_text\",\"measure_unit_code\",\"sku_code\",\"sku_vat\",\"unit_price\",\"total_amount\",\"discount\",\"notes\",\"payload\",\"good_snapshot\",\"good_id\",\"service_id\",\"code\",\"invoice_number\",\"invoice_date\",\"unknown_customer\",\"customer_id\",\"consumer_account_id\",\"pos_id\",\"InvoiceTemplateType\",\"invoice_template\",\"economic_code\",\"registration_number\",\"postal_code\",\"business_activity_id\",\"first_name\",\"last_name\",\"national_id\",\"mobile_number\",\"is_favorite\",\"CustomerType\",\"message\",\"createdAt\",\"VAT\",\"SKUGuildType\",\"is_public\",\"is_domestic\",\"is_default_guild_good\",\"guild_id\",\"GoodPricingModel\",\"pricing_model\",\"sku_id\",\"measure_unit_id\",\"model\",\"serial_number\",\"POSStatus\",\"POSType\",\"pos_type\",\"device_id\",\"provider_id\",\"branch_code\",\"address\",\"fiscal_id\",\"partner_token\",\"invoice_number_sequence\",\"consumer_id\",\"registration_code\",\"partner_id\",\"national_code\",\"ConsumerType\",\"ConsumerStatus\",\"ConsumerRole\",\"role\",\"version\",\"build_number\",\"is_minimum_supported\",\"ApplicationReleaseType\",\"release_type\",\"ApplicationPlatform\",\"platform\",\"release_date\",\"uuid\",\"app_version\",\"ApplicationPublisher\",\"publisher\",\"os_version\",\"sdk_version\",\"release_number\",\"user_agent\",\"browser_name\",\"fcm_token\",\"PartnerStatus\",\"ProviderRole\",\"BusinessRole\",\"business_id\",\"permission_id\",\"ComplexRole\",\"POSRole\",\"TspProviderType\",\"tsp_provider\",\"logo_url\",\"PartnerRole\",\"license_activation_id\",\"credit_id\",\"charge_transaction_id\",\"activation_expires_at\",\"tracking_code\",\"purchased_count\",\"expires_at\",\"activation_id\",\"starts_at\",\"license_id\",\"accounts_limit\",\"brand_id\",\"username\",\"password\",\"AccountStatus\",\"AccountType\",\"admin_id\",\"business_activity_id_economic_code\",\"business_activity_id_national_id\",\"invoice_id_attempt_no\",\"permission_id_business_id\",\"permission_id_complex_id\",\"permission_id_pos_id\",\"partner_id_registration_code\",\"mobile_number_consumer_id\",\"partner_id_national_code\",\"invoice_number_pos_id\",\"economic_code_consumer_id\",\"is\",\"isNot\",\"connectOrCreate\",\"upsert\",\"createMany\",\"set\",\"disconnect\",\"delete\",\"connect\",\"updateMany\",\"deleteMany\",\"_relevance\",\"increment\",\"decrement\",\"multiply\",\"divide\"]"), + graph: "khfHAoQFCgUAANgLACAUAACvCwAg0gUAANcLADDTBQAAAwAQ1AUAANcLADDVBQEAAAAB2QUBAAAAAdsFQACsCQAh3AVAAKwJACH7BgEAqgkAIQEAAAABACAKBQAA2AsAIBQAAK8LACDSBQAA1wsAMNMFAAADABDUBQAA1wsAMNUFAQCqCQAh2QUBAKoJACHbBUAArAkAIdwFQACsCQAh-wYBAKoJACEDBQAAuBQAIBQAAKAUACCSBwAAuRQAIAMAAAADACABAAAEADACAAABACABAAAAAwAgAQAAAAMAIAsUAACvCwAgQgAA1gsAINIFAADUCwAw0wUAAAgAENQFAADUCwAw1QUBAKoJACHZBQEAqgkAIdsFQACsCQAh3AVAAKwJACHABgEAqgkAIc0GAADVC-IGIgEAAAAIACADFAAAoBQAIEIAALUUACCSBwAAtxQAIAsUAACvCwAgQgAA1gsAINIFAADUCwAw0wUAAAgAENQFAADUCwAw1QUBAAAAAdkFAQAAAAHbBUAArAkAIdwFQACsCQAhwAYBAKoJACHNBgAA1QviBiIDAAAACAAgAQAACgAwAgAACwAgFRAAAOEJACAUAADBCgAgKAAAkgsAIEEAANILACBCAADTCwAgQwAAwgoAINIFAADPCwAw0wUAAA0AENQFAADPCwAw1QUBAKoJACHWBQEAqgkAIdkFAQCqCQAh2gUBAKoJACHbBUAArAkAIdwFQACsCQAh_wUAANALvQYiugYBAKsJACG7BgEAqwkAIb4GAADRC74GIr8GAQCrCQAhwAYBAKsJACELEAAAoQ8AIBQAAMQRACAoAACJFAAgQQAAtBQAIEIAALUUACBDAADFEQAgugYAANkLACC7BgAA2QsAIL8GAADZCwAgwAYAANkLACCSBwAAthQAIBUQAADhCQAgFAAAwQoAICgAAJILACBBAADSCwAgQgAA0wsAIEMAAMIKACDSBQAAzwsAMNMFAAANABDUBQAAzwsAMNUFAQAAAAHWBQEAqgkAIdkFAQAAAAHaBQEAqgkAIdsFQACsCQAh3AVAAKwJACH_BQAA0Au9BiK6BgEAqwkAIbsGAQAAAAG-BgAA0Qu-BiK_BgEAqwkAIcAGAQCrCQAhAwAAAA0AIAEAAA4AMAIAAA8AIBUIAADwCQAgEQAAqQsAIBsAAJ8LACA3AADLCwAgOQAAzAsAIDoAAMQKACA7AADNCwAgPAAAzgsAINIFAADKCwAw0wUAABEAENQFAADKCwAw1QUBAKoJACHWBQEAqgkAIdsFQACsCQAh3AVAAKwJACGkBgEAqgkAIbUGAQCqCQAhwwYBAKoJACHEBgEAqgkAIcUGEADtCQAhxgYBAKoJACEJCAAAug8AIBEAAJ0UACAbAACUFAAgNwAArhQAIDkAALAUACA6AADHEQAgOwAAsRQAIDwAALIUACCSBwAAsxQAIBYIAADwCQAgEQAAqQsAIBsAAJ8LACA3AADLCwAgOQAAzAsAIDoAAMQKACA7AADNCwAgPAAAzgsAINIFAADKCwAw0wUAABEAENQFAADKCwAw1QUBAAAAAdYFAQCqCQAh2wVAAKwJACHcBUAArAkAIaQGAQCqCQAhtQYBAKoJACHDBgEAqgkAIcQGAQCqCQAhxQYQAO0JACHGBgEAqgkAIYYHAADJCwAgAwAAABEAIAEAABIAMAIAABMAIBAIAADwCQAgKAAAyAsAIDcAAMcLACDSBQAAxgsAMNMFAAAVABDUBQAAxgsAMNUFAQCqCQAh1gUBAKoJACHXBQEAqwkAIdgFAQCrCQAh2gUBAKsJACHbBUAArAkAIdwFQACsCQAh3QVAAK0JACG0BiAA7wkAIbUGAQCrCQAhCQgAALoPACAoAACJFAAgNwAArhQAINcFAADZCwAg2AUAANkLACDaBQAA2QsAIN0FAADZCwAgtQYAANkLACCSBwAArxQAIBAIAADwCQAgKAAAyAsAIDcAAMcLACDSBQAAxgsAMNMFAAAVABDUBQAAxgsAMNUFAQAAAAHWBQEAqgkAIdcFAQCrCQAh2AUBAKsJACHaBQEAqwkAIdsFQACsCQAh3AVAAKwJACHdBUAArQkAIbQGIADvCQAhtQYBAKsJACEDAAAAFQAgAQAAFgAwAgAAFwAgGAkAAMILACAKAADDCwAgCwAAxAsAIAwAAMULACA1AACCCwAg0gUAAL8LADDTBQAAGQAQ1AUAAL8LADDVBQEAqgkAIdYFAQCqCQAh1wUBAKsJACHYBQEAqwkAIdsFQACsCQAh3AVAAKwJACHdBUAArQkAIe0FAQCrCQAh7gUBAKsJACHvBQEAqwkAIfAFEADBCwAhpwYBAKsJACG0BiAA7wkAIbcGAADAC7cGIrgGAQCqCQAhuQYBAKoJACEOCQAAqhQAIAoAAKsUACALAACsFAAgDAAAhhMAIDUAAIEUACDXBQAA2QsAINgFAADZCwAg3QUAANkLACDtBQAA2QsAIO4FAADZCwAg7wUAANkLACDwBQAA2QsAIKcGAADZCwAgkgcAAK0UACAYCQAAwgsAIAoAAMMLACALAADECwAgDAAAxQsAIDUAAIILACDSBQAAvwsAMNMFAAAZABDUBQAAvwsAMNUFAQAAAAHWBQEAqgkAIdcFAQCrCQAh2AUBAKsJACHbBUAArAkAIdwFQACsCQAh3QVAAK0JACHtBQEAAAAB7gUBAAAAAe8FAQCrCQAh8AUQAMELACGnBgEAqwkAIbQGIADvCQAhtwYAAMALtwYiuAYBAKoJACG5BgEAqgkAIQMAAAAZACABAAAaADACAAAbACADAAAAGQAgAQAAGgAwAgAAGwAgAQAAABkAIAMAAAAZACABAAAaADACAAAbACABAAAAGQAgAQAAABUAIAEAAAARACAWLgAAhwsAIDMAAL0LACA2AAC-CwAg0gUAALsLADDTBQAAIwAQ1AUAALsLADDVBQEAqgkAIdsFQACsCQAh_AUBAKoJACGOBhAA7QkAIY8GAQCqCQAhkAYBAKoJACGRBgEAqgkAIZIGEADtCQAhkwYQAO0JACGUBhAA7QkAIZUGEADtCQAhlgYBAKsJACGXBgAAogoAIJgGAAC8CwAgmQYBAKoJACGaBgEAqwkAIQcuAACDFAAgMwAApxQAIDYAAKgUACCWBgAA2QsAIJcGAADZCwAgmgYAANkLACCSBwAAqRQAIBYuAACHCwAgMwAAvQsAIDYAAL4LACDSBQAAuwsAMNMFAAAjABDUBQAAuwsAMNUFAQAAAAHbBUAArAkAIfwFAQCqCQAhjgYQAO0JACGPBgEAqgkAIZAGAQCqCQAhkQYBAKoJACGSBhAA7QkAIZMGEADtCQAhlAYQAO0JACGVBhAA7QkAIZYGAQCrCQAhlwYAAKIKACCYBgAAvAsAIJkGAQCqCQAhmgYBAKsJACEDAAAAIwAgAQAAJAAwAgAAJQAgDA4AAN8JACAPAADgCQAgEAAA4QkAINIFAADcCQAw0wUAACcAENQFAADcCQAw1QUBAKoJACHbBUAArAkAIdwFQACsCQAh3QVAAK0JACGCBgAA3gmuBiKsBiAA3QkAIQEAAAAnACANDAAA3QoAIA0AAPwKACDSBQAA_goAMNMFAAApABDUBQAA_goAMJ8GAQCqCQAhpAYBAKsJACGmBgEAqgkAIacGAQCqCQAhqAYBAKoJACGpBgEAqgkAIaoGAQCqCQAhqwYBAKoJACEBAAAAKQAgCwwAAN0KACANAAD8CgAg0gUAAPsKADDTBQAAKwAQ1AUAAPsKADDWBQEAqgkAIZ8GAQCqCQAhpAYBAKoJACGlBgEAqwkAIaYGAQCqCQAhpwYBAKoJACEBAAAAKwAgFQ0AALgLACAkAACWCwAgJQAAwQoAIC0AAIILACAxAAC5CwAgMgAAugsAINIFAAC3CwAw0wUAAC0AENQFAAC3CwAw1QUBAKoJACHbBUAArAkAIdwFQACsCQAhlAYQAO0JACGWBgEAqwkAIZsGAQCqCQAhnAYCAOQJACGdBkAArAkAIZ4GAACiCgAgnwYBAKsJACGgBgEAqgkAIaEGAQCqCQAhCg0AAPwTACAkAACLFAAgJQAAxBEAIC0AAIEUACAxAACkFAAgMgAApRQAIJYGAADZCwAgngYAANkLACCfBgAA2QsAIJIHAACmFAAgFg0AALgLACAkAACWCwAgJQAAwQoAIC0AAIILACAxAAC5CwAgMgAAugsAINIFAAC3CwAw0wUAAC0AENQFAAC3CwAw1QUBAAAAAdsFQACsCQAh3AVAAKwJACGUBhAA7QkAIZYGAQCrCQAhmwYBAAAAAZwGAgDkCQAhnQZAAKwJACGeBgAAogoAIJ8GAQCrCQAhoAYBAKoJACGhBgEAqgkAIYUHAAC2CwAgAwAAAC0AIAEAAC4AMAIAAC8AIAEAAAAtACAPEAAA4QkAIBEAAKkLACAUAACvCwAgJAAAtAsAICYAALULACAsAACdCwAg0gUAALILADDTBQAAMgAQ1AUAALILADDVBQEAqgkAIdkFAQCqCQAh2wVAAKwJACHcBUAArAkAIcYGAQCqCQAhzQYAALMLzQYiBxAAAKEPACARAACdFAAgFAAAoBQAICQAAIsUACAmAACHFAAgLAAAkhQAIJIHAACjFAAgDxAAAOEJACARAACpCwAgFAAArwsAICQAALQLACAmAAC1CwAgLAAAnQsAINIFAACyCwAw0wUAADIAENQFAACyCwAw1QUBAAAAAdkFAQAAAAHbBUAArAkAIdwFQACsCQAhxgYBAKoJACHNBgAAswvNBiIDAAAAMgAgAQAAMwAwAgAANAAgAwAAABEAIAEAABIAMAIAABMAIBURAACpCwAgPwEAqgkAIUEBAKoJACHSBQAAsAsAMNMFAAA3ABDUBQAAsAsAMNsFQACsCQAh3AVAAKwJACG6BgEAqgkAIcYGAQCqCQAhzwYBAKoJACHUBgEAqgkAIdYGAQCqCQAh1wYBAKoJACHZBgAAsQvZBiLaBgEAqgkAIdsGAQCqCQAh3AYBAKoJACHdBgEAqwkAId4GAQCrCQAh3wYBAKsJACEFEQAAnRQAIN0GAADZCwAg3gYAANkLACDfBgAA2QsAIJIHAACiFAAgFREAAKkLACA_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_ABDUBQAAlAsAMNUFAQAAAAGhBgEAqgkAIc0GAACVC-cGIuQGAQCqCQAhgQcAAJMLACADAAAAfwAgAQAAgAEAMAIAAIEBACAJJgAAjgsAICgAAJILACDSBQAAkAsAMNMFAACDAQAQ1AUAAJALADDVBQEAqgkAIdoFAQCqCQAhzQYAAJEL5gYi5AYBAKoJACEDJgAAhxQAICgAAIkUACCSBwAAihQAIAomAACOCwAgKAAAkgsAINIFAACQCwAw0wUAAIMBABDUBQAAkAsAMNUFAQAAAAHaBQEAqgkAIc0GAACRC-YGIuQGAQCqCQAhgAcAAI8LACADAAAAgwEAIAEAAIQBADACAACFAQAgCSYAAI4LACAqAADdCgAg0gUAAIwLADDTBQAAhwEAENQFAACMCwAw1QUBAKoJACHNBgAAjQvjBiLjBgEAqgkAIeQGAQCqCQAhAyYAAIcUACAqAACGEwAgkgcAAIgUACAKJgAAjgsAICoAAN0KACDSBQAAjAsAMNMFAACHAQAQ1AUAAIwLADDVBQEAAAABzQYAAI0L4wYi4wYBAKoJACHkBgEAqgkAIf8GAACLCwAgAwAAAIcBACABAACIAQAwAgAAiQEAIAEAAAB_ACABAAAAgwEAIAEAAACHAQAgAQAAAFkAIAMAAAAtACABAAAuADACAAAvACABAAAALQAgAwAAACMAIAEAACQAMAIAACUAIAsuAACHCwAgMAAAigsAINIFAACICwAw0wUAAJIBABDUBQAAiAsAMNUFAQCqCQAh2wVAAKwJACH4BRAA7QkAIfoFAACJC_oFIvsFQACsCQAh_AUBAKoJACEDLgAAgxQAIDAAAIUUACCSBwAAhhQAIAsuAACHCwAgMAAAigsAINIFAACICwAw0wUAAJIBABDUBQAAiAsAMNUFAQAAAAHbBUAArAkAIfgFEADtCQAh-gUAAIkL-gUi-wVAAKwJACH8BQEAqgkAIQMAAACSAQAgAQAAkwEAMAIAAJQBACANLwAAtgkAINIFAAC1CQAw0wUAAJYBABDUBQAAtQkAMNUFAQCqCQAh1wUBAKsJACHbBUAArAkAIfEFAQCqCQAh8gUBAKoJACHzBQEAqgkAIfQFQACsCQAh9QUBAKsJACH2BQEAqgkAIQEAAACWAQAgEC4AAIcLACDSBQAAhAsAMNMFAACYAQAQ1AUAAIQLADDVBQEAqgkAIdsFQACsCQAh_AUBAKoJACH9BQIA5AkAIf8FAACFC_8FIoAGAQCrCQAhggYAAIYLggYigwYAAKIKACCEBgAAogoAIIUGAQCrCQAhhgZAAK0JACGHBkAArQkAIQguAACDFAAggAYAANkLACCDBgAA2QsAIIQGAADZCwAghQYAANkLACCGBgAA2QsAIIcGAADZCwAgkgcAAIQUACARLgAAhwsAINIFAACECwAw0wUAAJgBABDUBQAAhAsAMNUFAQAAAAHbBUAArAkAIfwFAQAAAAH9BQIA5AkAIf8FAACFC_8FIoAGAQAAAAGCBgAAhguCBiKDBgAAogoAIIQGAACiCgAghQYBAKsJACGGBkAArQkAIYcGQACtCQAh_gYAAIMLACADAAAAmAEAIAEAAJkBADACAACaAQAgAQAAACMAIAEAAACSAQAgAQAAAJgBACASCQEAqgkAIQsAAIELACA1AACCCwAg0gUAAIALADDTBQAAnwEAENQFAACACwAw1QUBAKoJACHWBQEAqgkAIdcFAQCrCQAh2QUBAKoJACHaBQEAqgkAIdsFQACsCQAh3AVAAKwJACHdBUAArQkAIe0FAQCrCQAh7gUBAKsJACHvBQEAqwkAIfAFEADtCQAhAQAAAJ8BACANNAAArgkAINIFAACpCQAw0wUAAKEBABDUBQAAqQkAMNUFAQCqCQAh1gUBAKoJACHXBQEAqwkAIdgFAQCrCQAh2QUBAKoJACHaBQEAqgkAIdsFQACsCQAh3AVAAKwJACHdBUAArQkAIQEAAAChAQAgCAsAAIAUACA1AACBFAAg1wUAANkLACDdBQAA2QsAIO0FAADZCwAg7gUAANkLACDvBQAA2QsAIJIHAACCFAAgEgkBAAAAAQsAAIELACA1AACCCwAg0gUAAIALADDTBQAAnwEAENQFAACACwAw1QUBAAAAAdYFAQCqCQAh1wUBAKsJACHZBQEAqgkAIdoFAQCqCQAh2wVAAKwJACHcBUAArAkAId0FQACtCQAh7QUBAAAAAe4FAQAAAAHvBQEAqwkAIfAFEADtCQAhAwAAAJ8BACABAACjAQAwAgAApAEAIAEAAACfAQAgAwAAACMAIAEAACQAMAIAACUAIAEAAAAjACABAAAAIwAgCwcAANEJACA4AADSCQAg0gUAAM8JADDTBQAAqgEAENQFAADPCQAw1QUBAKoJACHWBQEAqgkAIdsFQACsCQAh3AVAAKwJACGbBgEAqwkAIaMGAADQCaMGIgEAAACqAQAgDgwAAN0KACA4AADSCQAgPQAArgoAID4AAMMKACDSBQAA_woAMNMFAACsAQAQ1AUAAP8KADDVBQEAqgkAIdYFAQCqCQAh2wVAAKwJACHcBUAArAkAIacGAQCqCQAhwQYBAKoJACHCBgEAqwkAIQEAAACsAQAgAQAAABkAIAEAAAARACABAAAAFQAgAQAAAFAAIAYMAACGEwAgOAAA9Q4AID0AAK8RACA-AADGEQAgwgYAANkLACCSBwAA_xMAIA4MAADdCgAgOAAA0gkAID0AAK4KACA-AADDCgAg0gUAAP8KADDTBQAArAEAENQFAAD_CgAw1QUBAAAAAdYFAQCqCQAh2wVAAKwJACHcBUAArAkAIacGAQCqCQAhwQYBAKoJACHCBgEAqwkAIQMAAACsAQAgAQAAsgEAMAIAALMBACADAAAAhwEAIAEAAIgBADACAACJAQAgAwAAABkAIAEAABoAMAIAABsAIAQMAACGEwAgDQAA_BMAIKQGAADZCwAgkgcAAP4TACAODAAA3QoAIA0AAPwKACDSBQAA_goAMNMFAAApABDUBQAA_goAMJ8GAQAAAAGkBgEAqwkAIaYGAQCqCQAhpwYBAKoJACGoBgEAqgkAIakGAQCqCQAhqgYBAKoJACGrBgEAqgkAIf0GAAD9CgAgAwAAACkAIAEAALcBADACAAC4AQAgBAwAAIYTACANAAD8EwAgpQYAANkLACCSBwAA_RMAIAwMAADdCgAgDQAA_AoAINIFAAD7CgAw0wUAACsAENQFAAD7CgAw1gUBAKoJACGfBgEAAAABpAYBAKoJACGlBgEAqwkAIaYGAQCqCQAhpwYBAKoJACH8BgAA-goAIAMAAAArACABAAC6AQAwAgAAuwEAIAEAAACsAQAgAQAAAIcBACABAAAAGQAgAQAAACkAIAEAAAArACADAAAADQAgAQAADgAwAgAADwAgAwAAABUAIAEAABYAMAIAABcAIAMAAACDAQAgAQAAhAEAMAIAAIUBACABAAAADQAgAQAAABUAIAEAAACDAQAgCz8AAPkKACBAAACuCgAg0gUAAPgKADDTBQAAyAEAENQFAAD4CgAw1QUBAKoJACHWBQEAqgkAIdsFQACsCQAh3AVAAKwJACHaBgEAqwkAIfYGAQCqCQAhAQAAAMgBACAEPwAA-hMAIEAAAK8RACDaBgAA2QsAIJIHAAD7EwAgCz8AAPkKACBAAACuCgAg0gUAAPgKADDTBQAAyAEAENQFAAD4CgAw1QUBAAAAAdYFAQCqCQAh2wVAAKwJACHcBUAArAkAIdoGAQCrCQAh9gYBAKoJACEDAAAAyAEAIAEAAMoBADACAADLAQAgAQAAAMgBACADAAAADQAgAQAADgAwAgAADwAgAQAAAA0AIAsDAACtCgAgPQAArgoAINIFAACrCgAw0wUAANABABDUBQAAqwoAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAh_wUAAKwK4QYimwYBAKoJACEBAAAA0AEAIAMAAAB_ACABAACAAQAwAgAAgQEAIAMAAAAtACABAAAuADACAAAvACABAAAAfwAgAQAAAC0AIAEAAAAIACABAAAADQAgAQAAAD0AIAEAAAAyACABAAAAAQAgAwAAAAMAIAEAAAQAMAIAAAEAIAMAAAADACABAAAEADACAAABACADAAAAAwAgAQAABAAwAgAAAQAgBwUAANkTACAUAADzEwAg1QUBAAAAAdkFAQAAAAHbBUAAAAAB3AVAAAAAAfsGAQAAAAEBSwAA3gEAIAXVBQEAAAAB2QUBAAAAAdsFQAAAAAHcBUAAAAAB-wYBAAAAAQFLAADgAQAwBwUAANgTACAUAADxEwAg1QUBAN0LACHZBQEA3QsAIdsFQADfCwAh3AVAAN8LACH7BgEA3QsAIQIAAAABACBLAADiAQAgBdUFAQDdCwAh2QUBAN0LACHbBUAA3wsAIdwFQADfCwAh-wYBAN0LACECAAAAAwAgSwAA5AEAIAMAAAABACBQAADeAQAgUQAA4gEAIAEAAAABACABAAAAAwAgAwQAAPcTACBWAAD5EwAgVwAA-BMAIAjSBQAA9woAMNMFAADqAQAQ1AUAAPcKADDVBQEAmwkAIdkFAQCbCQAh2wVAAJ0JACHcBUAAnQkAIfsGAQCbCQAhAwAAAAMAIAEAAOkBADBVAADqAQAgAwAAAAMAIAEAAAQAMAIAAAEAIAsDAAD2CgAg0gUAAPUKADDTBQAA8AEAENQFAAD1CgAw1QUBAAAAAdsFQACsCQAh3AVAAKwJACGoBgEAqgkAIakGAQCqCQAhqwYBAAAAAckGAQAAAAEBAAAA7QEAIAEAAADtAQAgCwMAAPYKACDSBQAA9QoAMNMFAADwAQAQ1AUAAPUKADDVBQEAqgkAIdsFQACsCQAh3AVAAKwJACGoBgEAqgkAIakGAQCqCQAhqwYBAKoJACHJBgEAqwkAIQMDAAD1EwAgyQYAANkLACCSBwAA9hMAIAMAAADwAQAgAQAA8QEAMAIAAO0BACADAAAA8AEAIAEAAPEBADACAADtAQAgAwAAAPABACABAADxAQAwAgAA7QEAIAgDAAD0EwAg1QUBAAAAAdsFQAAAAAHcBUAAAAABqAYBAAAAAakGAQAAAAGrBgEAAAAByQYBAAAAAQFLAAD1AQAgB9UFAQAAAAHbBUAAAAAB3AVAAAAAAagGAQAAAAGpBgEAAAABqwYBAAAAAckGAQAAAAEBSwAA9wEAMAgDAADlEwAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhqAYBAN0LACGpBgEA3QsAIasGAQDdCwAhyQYBAN4LACECAAAA7QEAIEsAAPkBACAH1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhqAYBAN0LACGpBgEA3QsAIasGAQDdCwAhyQYBAN4LACECAAAA8AEAIEsAAPsBACADAAAA7QEAIFAAAPUBACBRAAD5AQAgAQAAAO0BACABAAAA8AEAIAQEAADiEwAgVgAA5BMAIFcAAOMTACDJBgAA2QsAIArSBQAA9AoAMNMFAACBAgAQ1AUAAPQKADDVBQEAmwkAIdsFQACdCQAh3AVAAJ0JACGoBgEAmwkAIakGAQCbCQAhqwYBAJsJACHJBgEAnAkAIQMAAADwAQAgAQAAgAIAMFUAAIECACADAAAA8AEAIAEAAPEBADACAADtAQAgDAYAAPAKACAlAADzCgAgRAAA8QoAIEUAAPIKACDSBQAA7QoAMNMFAACHAgAQ1AUAAO0KADDVBQEAAAAB_wUAAO4K-gYiggYAAO8K-wYi9wYBAAAAAfgGAQCqCQAhAQAAAIQCACABAAAAhAIAIAwGAADwCgAgJQAA8woAIEQAAPEKACBFAADyCgAg0gUAAO0KADDTBQAAhwIAENQFAADtCgAw1QUBAKoJACH_BQAA7gr6BiKCBgAA7wr7BiL3BgEAqgkAIfgGAQCqCQAhBQYAAN4TACAlAADEEQAgRAAA3xMAIEUAAOATACCSBwAA4RMAIAMAAACHAgAgAQAAiAIAMAIAAIQCACADAAAAhwIAIAEAAIgCADACAACEAgAgAwAAAIcCACABAACIAgAwAgAAhAIAIAkGAADaEwAgJQAA3RMAIEQAANsTACBFAADcEwAg1QUBAAAAAf8FAAAA-gYCggYAAAD7BgL3BgEAAAAB-AYBAAAAAQFLAACMAgAgBdUFAQAAAAH_BQAAAPoGAoIGAAAA-wYC9wYBAAAAAfgGAQAAAAEBSwAAjgIAMAkGAADAEwAgJQAAwxMAIEQAAMETACBFAADCEwAg1QUBAN0LACH_BQAAvhP6BiKCBgAAvxP7BiL3BgEA3QsAIfgGAQDdCwAhAgAAAIQCACBLAACQAgAgBdUFAQDdCwAh_wUAAL4T-gYiggYAAL8T-wYi9wYBAN0LACH4BgEA3QsAIQIAAACHAgAgSwAAkgIAIAMAAACEAgAgUAAAjAIAIFEAAJACACABAAAAhAIAIAEAAACHAgAgAwQAALsTACBWAAC9EwAgVwAAvBMAIAjSBQAA5goAMNMFAACYAgAQ1AUAAOYKADDVBQEAmwkAIf8FAADnCvoGIoIGAADoCvsGIvcGAQCbCQAh-AYBAJsJACEDAAAAhwIAIAEAAJcCADBVAACYAgAgAwAAAIcCACABAACIAgAwAgAAhAIAIAgSAADlCgAg0gUAAOQKADDTBQAAngIAENQFAADkCgAw1QUBAAAAAdYFAQCqCQAh2wVAAKwJACHcBUAArAkAIQEAAACbAgAgAQAAAJsCACAIEgAA5QoAINIFAADkCgAw0wUAAJ4CABDUBQAA5AoAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAhAhIAALkTACCSBwAAuhMAIAMAAACeAgAgAQAAnwIAMAIAAJsCACADAAAAngIAIAEAAJ8CADACAACbAgAgAwAAAJ4CACABAACfAgAwAgAAmwIAIAUSAAC4EwAg1QUBAAAAAdYFAQAAAAHbBUAAAAAB3AVAAAAAAQFLAACjAgAgBNUFAQAAAAHWBQEAAAAB2wVAAAAAAdwFQAAAAAEBSwAApQIAMAUSAACrEwAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACECAAAAmwIAIEsAAKcCACAE1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACECAAAAngIAIEsAAKkCACADAAAAmwIAIFAAAKMCACBRAACnAgAgAQAAAJsCACABAAAAngIAIAMEAACoEwAgVgAAqhMAIFcAAKkTACAH0gUAAOMKADDTBQAArwIAENQFAADjCgAw1QUBAJsJACHWBQEAmwkAIdsFQACdCQAh3AVAAJ0JACEDAAAAngIAIAEAAK4CADBVAACvAgAgAwAAAJ4CACABAACfAgAwAgAAmwIAIAEAAADLAQAgAQAAAMsBACADAAAAyAEAIAEAAMoBADACAADLAQAgAwAAAMgBACABAADKAQAwAgAAywEAIAMAAADIAQAgAQAAygEAMAIAAMsBACAIPwAAphMAIEAAAKcTACDVBQEAAAAB1gUBAAAAAdsFQAAAAAHcBUAAAAAB2gYBAAAAAfYGAQAAAAEBSwAAtwIAIAbVBQEAAAAB1gUBAAAAAdsFQAAAAAHcBUAAAAAB2gYBAAAAAfYGAQAAAAEBSwAAuQIAMAg_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_hIAIFcAAP0SACCeAQAA_BIAIJ8BAAD_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-ADACAAA_ACADAAAAPQAgAQAAPgAwAgAAPwAgAwAAAD0AIAEAAD4AMAIAAD8AIAgTAADoEgAgFAAA1hIAINUFAQAAAAHZBQEAAAAB2wVAAAAAAdwFQAAAAAHIBgEAAAABzQYAAADrBgIBSwAA7QMAIAbVBQEAAAAB2QUBAAAAAdsFQAAAAAHcBUAAAAAByAYBAAAAAc0GAAAA6wYCAUsAAO8DADAIEwAA5xIAIBQAANQSACDVBQEA3QsAIdkFAQDdCwAh2wVAAN8LACHcBUAA3wsAIcgGAQDdCwAhzQYAANIS6wYiAgAAAD8AIEsAAPEDACAG1QUBAN0LACHZBQEA3QsAIdsFQADfCwAh3AVAAN8LACHIBgEA3QsAIc0GAADSEusGIgIAAAA9ACBLAADzAwAgAwAAAD8AIFAAAO0DACBRAADxAwAgAQAAAD8AIAEAAAA9ACADBAAA5BIAIFYAAOYSACBXAADlEgAgCdIFAADRCgAw0wUAAPkDABDUBQAA0QoAMNUFAQCbCQAh2QUBAJsJACHbBUAAnQkAIdwFQACdCQAhyAYBAJsJACHNBgAA0grrBiIDAAAAPQAgAQAA-AMAMFUAAPkDACADAAAAPQAgAQAAPgAwAgAAPwAgEQMAAMsKACAVAADMCgAgFgAAzQoAICEAAM4KACAiAADPCgAgIwAA0AoAINIFAADJCgAw0wUAAP8DABDUBQAAyQoAMNUFAQAAAAHWBQEAqgkAIdsFQACsCQAh3AVAAKwJACH_BQAArArhBiKbBgEAAAAB6AYAAMoK6AYi6QYBAKsJACEBAAAA_AMAIAEAAAD8AwAgEQMAAMsKACAVAADMCgAgFgAAzQoAICEAAM4KACAiAADPCgAgIwAA0AoAINIFAADJCgAw0wUAAP8DABDUBQAAyQoAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAh_wUAAKwK4QYimwYBAKoJACHoBgAAygroBiLpBgEAqwkAIQgDAADdEgAgFQAA3hIAIBYAAN8SACAhAADgEgAgIgAA4RIAICMAAOISACDpBgAA2QsAIJIHAADjEgAgAwAAAP8DACABAACABAAwAgAA_AMAIAMAAAD_AwAgAQAAgAQAMAIAAPwDACADAAAA_wMAIAEAAIAEADACAAD8AwAgDgMAANcSACAVAADYEgAgFgAA2RIAICEAANoSACAiAADbEgAgIwAA3BIAINUFAQAAAAHWBQEAAAAB2wVAAAAAAdwFQAAAAAH_BQAAAOEGApsGAQAAAAHoBgAAAOgGAukGAQAAAAEBSwAAhAQAIAjVBQEAAAAB1gUBAAAAAdsFQAAAAAHcBUAAAAAB_wUAAADhBgKbBgEAAAAB6AYAAADoBgLpBgEAAAABAUsAAIYEADAOAwAAzREAIBUAAM4RACAWAADPEQAgIQAA0BEAICIAANERACAjAADSEQAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAAkRHhBiKbBgEA3QsAIegGAADMEegGIukGAQDeCwAhAgAAAPwDACBLAACIBAAgCNUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAJER4QYimwYBAN0LACHoBgAAzBHoBiLpBgEA3gsAIQIAAAD_AwAgSwAAigQAIAMAAAD8AwAgUAAAhAQAIFEAAIgEACABAAAA_AMAIAEAAAD_AwAgBAQAAMkRACBWAADLEQAgVwAAyhEAIOkGAADZCwAgC9IFAADFCgAw0wUAAJAEABDUBQAAxQoAMNUFAQCbCQAh1gUBAJsJACHbBUAAnQkAIdwFQACdCQAh_wUAAKgK4QYimwYBAJsJACHoBgAAxgroBiLpBgEAnAkAIQMAAAD_AwAgAQAAjwQAMFUAAJAEACADAAAA_wMAIAEAAIAEADACAAD8AwAgCSUAAMEKACAnAADCCgAgKQAAwwoAICsAAMQKACDSBQAAwAoAMNMFAAB9ABDUBQAAwAoAMNUFAQAAAAGgBgEAAAABAQAAAJMEACABAAAAkwQAIAUlAADEEQAgJwAAxREAICkAAMYRACArAADHEQAgkgcAAMgRACADAAAAfQAgAQAAlgQAMAIAAJMEACADAAAAfQAgAQAAlgQAMAIAAJMEACADAAAAfQAgAQAAlgQAMAIAAJMEACAGJQAAwxEAICcAAOYQACApAADnEAAgKwAA6BAAINUFAQAAAAGgBgEAAAABAUsAAJoEACAC1QUBAAAAAaAGAQAAAAEBSwAAnAQAMAYlAADCEQAgJwAAwhAAICkAAMMQACArAADEEAAg1QUBAN0LACGgBgEA3QsAIQIAAACTBAAgSwAAngQAIALVBQEA3QsAIaAGAQDdCwAhAgAAAH0AIEsAAKAEACADAAAAkwQAIFAAAJoEACBRAACeBAAgAQAAAJMEACABAAAAfQAgAwQAAL8RACBWAADBEQAgVwAAwBEAIAXSBQAAvwoAMNMFAACmBAAQ1AUAAL8KADDVBQEAmwkAIaAGAQCbCQAhAwAAAH0AIAEAAKUEADBVAACmBAAgAwAAAH0AIAEAAJYEADACAACTBAAgAQAAAIEBACABAAAAgQEAIAMAAAB_ACABAACAAQAwAgAAgQEAIAMAAAB_ACABAACAAQAwAgAAgQEAIAMAAAB_ACABAACAAQAwAgAAgQEAIAYkAADlEAAgJgAAtg4AINUFAQAAAAGhBgEAAAABzQYAAADnBgLkBgEAAAABAUsAAK4EACAE1QUBAAAAAaEGAQAAAAHNBgAAAOcGAuQGAQAAAAEBSwAAsAQAMAYkAADjEAAgJgAAtA4AINUFAQDdCwAhoQYBAN0LACHNBgAAsg7nBiLkBgEA3QsAIQIAAACBAQAgSwAAsgQAIATVBQEA3QsAIaEGAQDdCwAhzQYAALIO5wYi5AYBAN0LACECAAAAfwAgSwAAtAQAIAMAAACBAQAgUAAArgQAIFEAALIEACABAAAAgQEAIAEAAAB_ACADBAAAvBEAIFYAAL4RACBXAAC9EQAgB9IFAAC7CgAw0wUAALoEABDUBQAAuwoAMNUFAQCbCQAhoQYBAJsJACHNBgAAvArnBiLkBgEAmwkAIQMAAAB_ACABAAC5BAAwVQAAugQAIAMAAAB_ACABAACAAQAwAgAAgQEAIAEAAACFAQAgAQAAAIUBACADAAAAgwEAIAEAAIQBADACAACFAQAgAwAAAIMBACABAACEAQAwAgAAhQEAIAMAAACDAQAgAQAAhAEAMAIAAIUBACAGJgAA_g0AICgAANoQACDVBQEAAAAB2gUBAAAAAc0GAAAA5gYC5AYBAAAAAQFLAADCBAAgBNUFAQAAAAHaBQEAAAABzQYAAADmBgLkBgEAAAABAUsAAMQEADAGJgAA_A0AICgAANgQACDVBQEA3QsAIdoFAQDdCwAhzQYAAPoN5gYi5AYBAN0LACECAAAAhQEAIEsAAMYEACAE1QUBAN0LACHaBQEA3QsAIc0GAAD6DeYGIuQGAQDdCwAhAgAAAIMBACBLAADIBAAgAwAAAIUBACBQAADCBAAgUQAAxgQAIAEAAACFAQAgAQAAAIMBACADBAAAuREAIFYAALsRACBXAAC6EQAgB9IFAAC3CgAw0wUAAM4EABDUBQAAtwoAMNUFAQCbCQAh2gUBAJsJACHNBgAAuArmBiLkBgEAmwkAIQMAAACDAQAgAQAAzQQAMFUAAM4EACADAAAAgwEAIAEAAIQBADACAACFAQAgAQAAAIkBACABAAAAiQEAIAMAAACHAQAgAQAAiAEAMAIAAIkBACADAAAAhwEAIAEAAIgBADACAACJAQAgAwAAAIcBACABAACIAQAwAgAAiQEAIAYmAADhDQAgKgAAzxAAINUFAQAAAAHNBgAAAOMGAuMGAQAAAAHkBgEAAAABAUsAANYEACAE1QUBAAAAAc0GAAAA4wYC4wYBAAAAAeQGAQAAAAEBSwAA2AQAMAYmAADfDQAgKgAAzRAAINUFAQDdCwAhzQYAAN0N4wYi4wYBAN0LACHkBgEA3QsAIQIAAACJAQAgSwAA2gQAIATVBQEA3QsAIc0GAADdDeMGIuMGAQDdCwAh5AYBAN0LACECAAAAhwEAIEsAANwEACADAAAAiQEAIFAAANYEACBRAADaBAAgAQAAAIkBACABAAAAhwEAIAMEAAC2EQAgVgAAuBEAIFcAALcRACAH0gUAALMKADDTBQAA4gQAENQFAACzCgAw1QUBAJsJACHNBgAAtArjBiLjBgEAmwkAIeQGAQCbCQAhAwAAAIcBACABAADhBAAwVQAA4gQAIAMAAACHAQAgAQAAiAEAMAIAAIkBACABAAAACwAgAQAAAAsAIAMAAAAIACABAAAKADACAAALACADAAAACAAgAQAACgAwAgAACwAgAwAAAAgAIAEAAAoAMAIAAAsAIAgUAACrEQAgQgAAtREAINUFAQAAAAHZBQEAAAAB2wVAAAAAAdwFQAAAAAHABgEAAAABzQYAAADiBgIBSwAA6gQAIAbVBQEAAAAB2QUBAAAAAdsFQAAAAAHcBUAAAAABwAYBAAAAAc0GAAAA4gYCAUsAAOwEADAIFAAAqREAIEIAALQRACDVBQEA3QsAIdkFAQDdCwAh2wVAAN8LACHcBUAA3wsAIcAGAQDdCwAhzQYAAKcR4gYiAgAAAAsAIEsAAO4EACAG1QUBAN0LACHZBQEA3QsAIdsFQADfCwAh3AVAAN8LACHABgEA3QsAIc0GAACnEeIGIgIAAAAIACBLAADwBAAgAwAAAAsAIFAAAOoEACBRAADuBAAgAQAAAAsAIAEAAAAIACADBAAAsREAIFYAALMRACBXAACyEQAgCdIFAACvCgAw0wUAAPYEABDUBQAArwoAMNUFAQCbCQAh2QUBAJsJACHbBUAAnQkAIdwFQACdCQAhwAYBAJsJACHNBgAAsAriBiIDAAAACAAgAQAA9QQAMFUAAPYEACADAAAACAAgAQAACgAwAgAACwAgCwMAAK0KACA9AACuCgAg0gUAAKsKADDTBQAA0AEAENQFAACrCgAw1QUBAAAAAdYFAQCqCQAh2wVAAKwJACHcBUAArAkAIf8FAACsCuEGIpsGAQAAAAEBAAAA-QQAIAEAAAD5BAAgAwMAAK4RACA9AACvEQAgkgcAALARACADAAAA0AEAIAEAAPwEADACAAD5BAAgAwAAANABACABAAD8BAAwAgAA-QQAIAMAAADQAQAgAQAA_AQAMAIAAPkEACAIAwAArBEAID0AAK0RACDVBQEAAAAB1gUBAAAAAdsFQAAAAAHcBUAAAAAB_wUAAADhBgKbBgEAAAABAUsAAIAFACAG1QUBAAAAAdYFAQAAAAHbBUAAAAAB3AVAAAAAAf8FAAAA4QYCmwYBAAAAAQFLAACCBQAwCAMAAJIRACA9AACTEQAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAAkRHhBiKbBgEA3QsAIQIAAAD5BAAgSwAAhAUAIAbVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIf8FAACREeEGIpsGAQDdCwAhAgAAANABACBLAACGBQAgAwAAAPkEACBQAACABQAgUQAAhAUAIAEAAAD5BAAgAQAAANABACADBAAAjhEAIFYAAJARACBXAACPEQAgCdIFAACnCgAw0wUAAIwFABDUBQAApwoAMNUFAQCbCQAh1gUBAJsJACHbBUAAnQkAIdwFQACdCQAh_wUAAKgK4QYimwYBAJsJACEDAAAA0AEAIAEAAIsFADBVAACMBQAgAwAAANABACABAAD8BAAwAgAA-QQAIAEAAAA5ACABAAAAOQAgAwAAADcAIAEAADgAMAIAADkAIAMAAAA3ACABAAA4ADACAAA5ACADAAAANwAgAQAAOAAwAgAAOQAgEhEAAI0RACA_AQAAAAFBAQAAAAHbBUAAAAAB3AVAAAAAAboGAQAAAAHGBgEAAAABzwYBAAAAAdQGAQAAAAHWBgEAAAAB1wYBAAAAAdkGAAAA2QYC2gYBAAAAAdsGAQAAAAHcBgEAAAAB3QYBAAAAAd4GAQAAAAHfBgEAAAABAUsAAJQFACARPwEAAAABQQEAAAAB2wVAAAAAAdwFQAAAAAG6BgEAAAABxgYBAAAAAc8GAQAAAAHUBgEAAAAB1gYBAAAAAdcGAQAAAAHZBgAAANkGAtoGAQAAAAHbBgEAAAAB3AYBAAAAAd0GAQAAAAHeBgEAAAAB3wYBAAAAAQFLAACWBQAwEhEAAIwRACA_AQDdCwAhQQEA3QsAIdsFQADfCwAh3AVAAN8LACG6BgEA3QsAIcYGAQDdCwAhzwYBAN0LACHUBgEA3QsAIdYGAQDdCwAh1wYBAN0LACHZBgAAkBDZBiLaBgEA3QsAIdsGAQDdCwAh3AYBAN0LACHdBgEA3gsAId4GAQDeCwAh3wYBAN4LACECAAAAOQAgSwAAmAUAIBE_AQDdCwAhQQEA3QsAIdsFQADfCwAh3AVAAN8LACG6BgEA3QsAIcYGAQDdCwAhzwYBAN0LACHUBgEA3QsAIdYGAQDdCwAh1wYBAN0LACHZBgAAkBDZBiLaBgEA3QsAIdsGAQDdCwAh3AYBAN0LACHdBgEA3gsAId4GAQDeCwAh3wYBAN4LACECAAAANwAgSwAAmgUAIAMAAAA5ACBQAACUBQAgUQAAmAUAIAEAAAA5ACABAAAANwAgBgQAAIkRACBWAACLEQAgVwAAihEAIN0GAADZCwAg3gYAANkLACDfBgAA2QsAIBQ_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_BQAAjwrMBiKCBgAAjgrLBiIGAwAA-RAAIAcAAPQOACAOAAD7EAAgDwAA_BAAIBIAAPoQACCSBwAA_RAAIAMAAADRBQAgAQAA0gUAMAIAAM4FACADAAAA0QUAIAEAANIFADACAADOBQAgAwAAANEFACABAADSBQAwAgAAzgUAIAoDAAD0EAAgBwAA9RAAIA4AAPcQACAPAAD4EAAgEgAA9hAAINUFAQAAAAHbBUAAAAAB3AVAAAAAAf8FAAAAzAYCggYAAADLBgIBSwAA1gUAIAXVBQEAAAAB2wVAAAAAAdwFQAAAAAH_BQAAAMwGAoIGAAAAywYCAUsAANgFADAKAwAA9w8AIAcAAPgPACAOAAD6DwAgDwAA-w8AIBIAAPkPACDVBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAA9g_MBiKCBgAA9Q_LBiICAAAAzgUAIEsAANoFACAF1QUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAPYPzAYiggYAAPUPywYiAgAAANEFACBLAADcBQAgAwAAAM4FACBQAADWBQAgUQAA2gUAIAEAAADOBQAgAQAAANEFACADBAAA8g8AIFYAAPQPACBXAADzDwAgCNIFAACGCgAw0wUAAOIFABDUBQAAhgoAMNUFAQCbCQAh2wVAAJ0JACHcBUAAnQkAIf8FAACICswGIoIGAACHCssGIgMAAADRBQAgAQAA4QUAMFUAAOIFACADAAAA0QUAIAEAANIFADACAADOBQAgAQAAAEIAIAEAAABCACADAAAAOwAgAQAAQQAwAgAAQgAgAwAAADsAIAEAAEEAMAIAAEIAIAMAAAA7ACABAABBADACAABCACAKEQAA8Q8AIBMAAPAPACDbBUAAAAAB3AVAAAAAAagGAQAAAAGpBgEAAAABqwYBAAAAAcYGAQAAAAHIBgEAAAAByQYBAAAAAQFLAADqBQAgCNsFQAAAAAHcBUAAAAABqAYBAAAAAakGAQAAAAGrBgEAAAABxgYBAAAAAcgGAQAAAAHJBgEAAAABAUsAAOwFADAKEQAA7w8AIBMAAO4PACDbBUAA3wsAIdwFQADfCwAhqAYBAN0LACGpBgEA3QsAIasGAQDdCwAhxgYBAN0LACHIBgEA3QsAIckGAQDdCwAhAgAAAEIAIEsAAO4FACAI2wVAAN8LACHcBUAA3wsAIagGAQDdCwAhqQYBAN0LACGrBgEA3QsAIcYGAQDdCwAhyAYBAN0LACHJBgEA3QsAIQIAAAA7ACBLAADwBQAgAwAAAEIAIFAAAOoFACBRAADuBQAgAQAAAEIAIAEAAAA7ACADBAAA6w8AIFYAAO0PACBXAADsDwAgC9IFAACFCgAw0wUAAPYFABDUBQAAhQoAMNsFQACdCQAh3AVAAJ0JACGoBgEAmwkAIakGAQCbCQAhqwYBAJsJACHGBgEAmwkAIcgGAQCbCQAhyQYBAJsJACEDAAAAOwAgAQAA9QUAMFUAAPYFACADAAAAOwAgAQAAQQAwAgAAQgAgAQAAAEYAIAEAAABGACADAAAARAAgAQAARQAwAgAARgAgAwAAAEQAIAEAAEUAMAIAAEYAIAMAAABEACABAABFADACAABGACAIEQAA6g8AIBMAAOkPACDWBQEAAAAB2wVAAAAAAdwFQAAAAAHGBgEAAAABxwYBAAAAAcgGAQAAAAEBSwAA_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_wUAAAC9BgK6BgEAAAABuwYBAAAAAb4GAAAAvgYCvwYBAAAAAcAGAQAAAAEBSwAAvAYAMBIQAACbDgAgFAAAmQ4AICgAANYPACBBAACXDgAgQgAAmA4AIEMAAJoOACDVBQEA3QsAIdYFAQDdCwAh2QUBAN0LACHaBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAAlA69BiK6BgEA3gsAIbsGAQDeCwAhvgYAAJUOvgYivwYBAN4LACHABgEA3gsAIQIAAAAPACBLAAC-BgAgDNUFAQDdCwAh1gUBAN0LACHZBQEA3QsAIdoFAQDdCwAh2wVAAN8LACHcBUAA3wsAIf8FAACUDr0GIroGAQDeCwAhuwYBAN4LACG-BgAAlQ6-BiK_BgEA3gsAIcAGAQDeCwAhAgAAAA0AIEsAAMAGACADAAAADwAgUAAAugYAIFEAAL4GACABAAAADwAgAQAAAA0AIAcEAADTDwAgVgAA1Q8AIFcAANQPACC6BgAA2QsAILsGAADZCwAgvwYAANkLACDABgAA2QsAIA_SBQAA-wkAMNMFAADGBgAQ1AUAAPsJADDVBQEAmwkAIdYFAQCbCQAh2QUBAJsJACHaBQEAmwkAIdsFQACdCQAh3AVAAJ0JACH_BQAA_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-wYAMAYIAAC_DwAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACGbBgEA3QsAIQIAAADxBgAgSwAA_QYAIAXVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIZsGAQDdCwAhAgAAAPQGACBLAAD_BgAgAwAAAPEGACBQAAD5BgAgUQAA_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_w4AIA0AAMUNACCfBgEA3QsAIaQGAQDeCwAhpgYBAN0LACGnBgEA3QsAIagGAQDdCwAhqQYBAN0LACGqBgEA3QsAIasGAQDdCwAhAgAAALgBACBLAADVBwAgCJ8GAQDdCwAhpAYBAN4LACGmBgEA3QsAIacGAQDdCwAhqAYBAN0LACGpBgEA3QsAIaoGAQDdCwAhqwYBAN0LACECAAAAKQAgSwAA1wcAIAMAAAC4AQAgUAAA0QcAIFEAANUHACABAAAAuAEAIAEAAAApACAEBAAA_A4AIFYAAP4OACBXAAD9DgAgpAYAANkLACAL0gUAANQJADDTBQAA3QcAENQFAADUCQAwnwYBAJsJACGkBgEAnAkAIaYGAQCbCQAhpwYBAJsJACGoBgEAmwkAIakGAQCbCQAhqgYBAJsJACGrBgEAmwkAIQMAAAApACABAADcBwAwVQAA3QcAIAMAAAApACABAAC3AQAwAgAAuAEAIAEAAAC7AQAgAQAAALsBACADAAAAKwAgAQAAugEAMAIAALsBACADAAAAKwAgAQAAugEAMAIAALsBACADAAAAKwAgAQAAugEAMAIAALsBACAIDAAA-w4AIA0AALkNACDWBQEAAAABnwYBAAAAAaQGAQAAAAGlBgEAAAABpgYBAAAAAacGAQAAAAEBSwAA5QcAIAbWBQEAAAABnwYBAAAAAaQGAQAAAAGlBgEAAAABpgYBAAAAAacGAQAAAAEBSwAA5wcAMAgMAAD6DgAgDQAAtw0AINYFAQDdCwAhnwYBAN0LACGkBgEA3QsAIaUGAQDeCwAhpgYBAN0LACGnBgEA3QsAIQIAAAC7AQAgSwAA6QcAIAbWBQEA3QsAIZ8GAQDdCwAhpAYBAN0LACGlBgEA3gsAIaYGAQDdCwAhpwYBAN0LACECAAAAKwAgSwAA6wcAIAMAAAC7AQAgUAAA5QcAIFEAAOkHACABAAAAuwEAIAEAAAArACAEBAAA9w4AIFYAAPkOACBXAAD4DgAgpQYAANkLACAJ0gUAANMJADDTBQAA8QcAENQFAADTCQAw1gUBAJsJACGfBgEAmwkAIaQGAQCbCQAhpQYBAJwJACGmBgEAmwkAIacGAQCbCQAhAwAAACsAIAEAAPAHADBVAADxBwAgAwAAACsAIAEAALoBADACAAC7AQAgCwcAANEJACA4AADSCQAg0gUAAM8JADDTBQAAqgEAENQFAADPCQAw1QUBAAAAAdYFAQCqCQAh2wVAAKwJACHcBUAArAkAIZsGAQCrCQAhowYAANAJowYiAQAAAPQHACABAAAA9AcAIAQHAAD0DgAgOAAA9Q4AIJsGAADZCwAgkgcAAPYOACADAAAAqgEAIAEAAPcHADACAAD0BwAgAwAAAKoBACABAAD3BwAwAgAA9AcAIAMAAACqAQAgAQAA9wcAMAIAAPQHACAIBwAA8g4AIDgAAPMOACDVBQEAAAAB1gUBAAAAAdsFQAAAAAHcBUAAAAABmwYBAAAAAaMGAAAAowYCAUsAAPsHACAG1QUBAAAAAdYFAQAAAAHbBUAAAAAB3AVAAAAAAZsGAQAAAAGjBgAAAKMGAgFLAAD9BwAwCAcAAOgMACA4AADpDAAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACGbBgEA3gsAIaMGAADnDKMGIgIAAAD0BwAgSwAA_wcAIAbVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIZsGAQDeCwAhowYAAOcMowYiAgAAAKoBACBLAACBCAAgAwAAAPQHACBQAAD7BwAgUQAA_wcAIAEAAAD0BwAgAQAAAKoBACAEBAAA5AwAIFYAAOYMACBXAADlDAAgmwYAANkLACAJ0gUAAMsJADDTBQAAhwgAENQFAADLCQAw1QUBAJsJACHWBQEAmwkAIdsFQACdCQAh3AVAAJ0JACGbBgEAnAkAIaMGAADMCaMGIgMAAACqAQAgAQAAhggAMFUAAIcIACADAAAAqgEAIAEAAPcHADACAAD0BwAgAQAAAC8AIAEAAAAvACADAAAALQAgAQAALgAwAgAALwAgAwAAAC0AIAEAAC4AMAIAAC8AIAMAAAAtACABAAAuADACAAAvACASDQAA3gwAICQAAOAMACAlAADfDAAgLQAA4QwAIDEAAOIMACAyAADjDAAg1QUBAAAAAdsFQAAAAAHcBUAAAAABlAYQAAAAAZYGAQAAAAGbBgEAAAABnAYCAAAAAZ0GQAAAAAGeBoAAAAABnwYBAAAAAaAGAQAAAAGhBgEAAAABAUsAAI8IACAM1QUBAAAAAdsFQAAAAAHcBUAAAAABlAYQAAAAAZYGAQAAAAGbBgEAAAABnAYCAAAAAZ0GQAAAAAGeBoAAAAABnwYBAAAAAaAGAQAAAAGhBgEAAAABAUsAAJEIADASDQAAtwwAICQAALkMACAlAAC4DAAgLQAAugwAIDEAALsMACAyAAC8DAAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhlAYQAOwLACGWBgEA3gsAIZsGAQDdCwAhnAYCAKYMACGdBkAA3wsAIZ4GgAAAAAGfBgEA3gsAIaAGAQDdCwAhoQYBAN0LACECAAAALwAgSwAAkwgAIAzVBQEA3QsAIdsFQADfCwAh3AVAAN8LACGUBhAA7AsAIZYGAQDeCwAhmwYBAN0LACGcBgIApgwAIZ0GQADfCwAhngaAAAAAAZ8GAQDeCwAhoAYBAN0LACGhBgEA3QsAIQIAAAAtACBLAACVCAAgAwAAAC8AIFAAAI8IACBRAACTCAAgAQAAAC8AIAEAAAAtACAIBAAAsgwAIFYAALUMACBXAAC0DAAgngEAALMMACCfAQAAtgwAIJYGAADZCwAgngYAANkLACCfBgAA2QsAIA_SBQAAygkAMNMFAACbCAAQ1AUAAMoJADDVBQEAmwkAIdsFQACdCQAh3AVAAJ0JACGUBhAAsAkAIZYGAQCcCQAhmwYBAJsJACGcBgIAvAkAIZ0GQACdCQAhngYAAL8JACCfBgEAnAkAIaAGAQCbCQAhoQYBAJsJACEDAAAALQAgAQAAmggAMFUAAJsIACADAAAALQAgAQAALgAwAgAALwAgAQAAACUAIAEAAAAlACADAAAAIwAgAQAAJAAwAgAAJQAgAwAAACMAIAEAACQAMAIAACUAIAMAAAAjACABAAAkADACAAAlACATLgAA_QsAIDMAAP4LACA2AACxDAAg1QUBAAAAAdsFQAAAAAH8BQEAAAABjgYQAAAAAY8GAQAAAAGQBgEAAAABkQYBAAAAAZIGEAAAAAGTBhAAAAABlAYQAAAAAZUGEAAAAAGWBgEAAAABlwaAAAAAAZgGgAAAAAGZBgEAAAABmgYBAAAAAQFLAACjCAAgENUFAQAAAAHbBUAAAAAB_AUBAAAAAY4GEAAAAAGPBgEAAAABkAYBAAAAAZEGAQAAAAGSBhAAAAABkwYQAAAAAZQGEAAAAAGVBhAAAAABlgYBAAAAAZcGgAAAAAGYBoAAAAABmQYBAAAAAZoGAQAAAAEBSwAApQgAMBMuAAD6CwAgMwAA-wsAIDYAALAMACDVBQEA3QsAIdsFQADfCwAh_AUBAN0LACGOBhAA7AsAIY8GAQDdCwAhkAYBAN0LACGRBgEA3QsAIZIGEADsCwAhkwYQAOwLACGUBhAA7AsAIZUGEADsCwAhlgYBAN4LACGXBoAAAAABmAaAAAAAAZkGAQDdCwAhmgYBAN4LACECAAAAJQAgSwAApwgAIBDVBQEA3QsAIdsFQADfCwAh_AUBAN0LACGOBhAA7AsAIY8GAQDdCwAhkAYBAN0LACGRBgEA3QsAIZIGEADsCwAhkwYQAOwLACGUBhAA7AsAIZUGEADsCwAhlgYBAN4LACGXBoAAAAABmAaAAAAAAZkGAQDdCwAhmgYBAN4LACECAAAAIwAgSwAAqQgAIAMAAAAlACBQAACjCAAgUQAApwgAIAEAAAAlACABAAAAIwAgCAQAAKsMACBWAACuDAAgVwAArQwAIJ4BAACsDAAgnwEAAK8MACCWBgAA2QsAIJcGAADZCwAgmgYAANkLACAT0gUAAMcJADDTBQAArwgAENQFAADHCQAw1QUBAJsJACHbBUAAnQkAIfwFAQCbCQAhjgYQALAJACGPBgEAmwkAIZAGAQCbCQAhkQYBAJsJACGSBhAAsAkAIZMGEACwCQAhlAYQALAJACGVBhAAsAkAIZYGAQCcCQAhlwYAAL8JACCYBgAAyAkAIJkGAQCbCQAhmgYBAJwJACEDAAAAIwAgAQAArggAMFUAAK8IACADAAAAIwAgAQAAJAAwAgAAJQAgAQAAAJoBACABAAAAmgEAIAMAAACYAQAgAQAAmQEAMAIAAJoBACADAAAAmAEAIAEAAJkBADACAACaAQAgAwAAAJgBACABAACZAQAwAgAAmgEAIA0uAACqDAAg1QUBAAAAAdsFQAAAAAH8BQEAAAAB_QUCAAAAAf8FAAAA_wUCgAYBAAAAAYIGAAAAggYCgwaAAAAAAYQGgAAAAAGFBgEAAAABhgZAAAAAAYcGQAAAAAEBSwAAtwgAIAzVBQEAAAAB2wVAAAAAAfwFAQAAAAH9BQIAAAAB_wUAAAD_BQKABgEAAAABggYAAACCBgKDBoAAAAABhAaAAAAAAYUGAQAAAAGGBkAAAAABhwZAAAAAAQFLAAC5CAAwDS4AAKkMACDVBQEA3QsAIdsFQADfCwAh_AUBAN0LACH9BQIApgwAIf8FAACnDP8FIoAGAQDeCwAhggYAAKgMggYigwaAAAAAAYQGgAAAAAGFBgEA3gsAIYYGQADgCwAhhwZAAOALACECAAAAmgEAIEsAALsIACAM1QUBAN0LACHbBUAA3wsAIfwFAQDdCwAh_QUCAKYMACH_BQAApwz_BSKABgEA3gsAIYIGAACoDIIGIoMGgAAAAAGEBoAAAAABhQYBAN4LACGGBkAA4AsAIYcGQADgCwAhAgAAAJgBACBLAAC9CAAgAwAAAJoBACBQAAC3CAAgUQAAuwgAIAEAAACaAQAgAQAAAJgBACALBAAAoQwAIFYAAKQMACBXAACjDAAgngEAAKIMACCfAQAApQwAIIAGAADZCwAggwYAANkLACCEBgAA2QsAIIUGAADZCwAghgYAANkLACCHBgAA2QsAIA_SBQAAuwkAMNMFAADDCAAQ1AUAALsJADDVBQEAmwkAIdsFQACdCQAh_AUBAJsJACH9BQIAvAkAIf8FAAC9Cf8FIoAGAQCcCQAhggYAAL4JggYigwYAAL8JACCEBgAAvwkAIIUGAQCcCQAhhgZAAJ4JACGHBkAAngkAIQMAAACYAQAgAQAAwggAMFUAAMMIACADAAAAmAEAIAEAAJkBADACAACaAQAgAQAAAJQBACABAAAAlAEAIAMAAACSAQAgAQAAkwEAMAIAAJQBACADAAAAkgEAIAEAAJMBADACAACUAQAgAwAAAJIBACABAACTAQAwAgAAlAEAIAguAACfDAAgMAAAoAwAINUFAQAAAAHbBUAAAAAB-AUQAAAAAfoFAAAA-gUC-wVAAAAAAfwFAQAAAAEBSwAAywgAIAbVBQEAAAAB2wVAAAAAAfgFEAAAAAH6BQAAAPoFAvsFQAAAAAH8BQEAAAABAUsAAM0IADAILgAAmAwAIDAAAJkMACDVBQEA3QsAIdsFQADfCwAh-AUQAOwLACH6BQAAlwz6BSL7BUAA3wsAIfwFAQDdCwAhAgAAAJQBACBLAADPCAAgBtUFAQDdCwAh2wVAAN8LACH4BRAA7AsAIfoFAACXDPoFIvsFQADfCwAh_AUBAN0LACECAAAAkgEAIEsAANEIACADAAAAlAEAIFAAAMsIACBRAADPCAAgAQAAAJQBACABAAAAkgEAIAUEAACSDAAgVgAAlQwAIFcAAJQMACCeAQAAkwwAIJ8BAACWDAAgCdIFAAC3CQAw0wUAANcIABDUBQAAtwkAMNUFAQCbCQAh2wVAAJ0JACH4BRAAsAkAIfoFAAC4CfoFIvsFQACdCQAh_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-gUAAIkL-gUi-wVAAKwJACH8BQEAqgkAIYcHAACSAQAgiAcAAJIBACAJ0gUAALcJADDTBQAA1wgAENQFAAC3CQAw1QUBAJsJACHbBUAAnQkAIfgFEACwCQAh-gUAALgJ-gUi-wVAAJ0JACH8BQEAmwkAIQcEAACjCQAgVgAAugkAIFcAALoJACDeBQAAAPoFAt8FAAAA-gUI4AUAAAD6BQjlBQAAuQn6BSIHBAAAowkAIFYAALoJACBXAAC6CQAg3gUAAAD6BQLfBQAAAPoFCOAFAAAA-gUI5QUAALkJ-gUiBN4FAAAA-gUC3wUAAAD6BQjgBQAAAPoFCOUFAAC6CfoFIg_SBQAAuwkAMNMFAADDCAAQ1AUAALsJADDVBQEAmwkAIdsFQACdCQAh_AUBAJsJACH9BQIAvAkAIf8FAAC9Cf8FIoAGAQCcCQAhggYAAL4JggYigwYAAL8JACCEBgAAvwkAIIUGAQCcCQAhhgZAAJ4JACGHBkAAngkAIQ0EAACjCQAgVgAAowkAIFcAAKMJACCeAQAAxgkAIJ8BAACjCQAg3gUCAAAAAd8FAgAAAATgBQIAAAAE4QUCAAAAAeIFAgAAAAHjBQIAAAAB5AUCAAAAAeUFAgDFCQAhBwQAAKMJACBWAADECQAgVwAAxAkAIN4FAAAA_wUC3wUAAAD_BQjgBQAAAP8FCOUFAADDCf8FIgcEAACjCQAgVgAAwgkAIFcAAMIJACDeBQAAAIIGAt8FAAAAggYI4AUAAACCBgjlBQAAwQmCBiIPBAAAoAkAIFYAAMAJACBXAADACQAg3gWAAAAAAeEFgAAAAAHiBYAAAAAB4wWAAAAAAeQFgAAAAAHlBYAAAAABiAYBAAAAAYkGAQAAAAGKBgEAAAABiwaAAAAAAYwGgAAAAAGNBoAAAAABDN4FgAAAAAHhBYAAAAAB4gWAAAAAAeMFgAAAAAHkBYAAAAAB5QWAAAAAAYgGAQAAAAGJBgEAAAABigYBAAAAAYsGgAAAAAGMBoAAAAABjQaAAAAAAQcEAACjCQAgVgAAwgkAIFcAAMIJACDeBQAAAIIGAt8FAAAAggYI4AUAAACCBgjlBQAAwQmCBiIE3gUAAACCBgLfBQAAAIIGCOAFAAAAggYI5QUAAMIJggYiBwQAAKMJACBWAADECQAgVwAAxAkAIN4FAAAA_wUC3wUAAAD_BQjgBQAAAP8FCOUFAADDCf8FIgTeBQAAAP8FAt8FAAAA_wUI4AUAAAD_BQjlBQAAxAn_BSINBAAAowkAIFYAAKMJACBXAACjCQAgngEAAMYJACCfAQAAowkAIN4FAgAAAAHfBQIAAAAE4AUCAAAABOEFAgAAAAHiBQIAAAAB4wUCAAAAAeQFAgAAAAHlBQIAxQkAIQjeBQgAAAAB3wUIAAAABOAFCAAAAAThBQgAAAAB4gUIAAAAAeMFCAAAAAHkBQgAAAAB5QUIAMYJACET0gUAAMcJADDTBQAArwgAENQFAADHCQAw1QUBAJsJACHbBUAAnQkAIfwFAQCbCQAhjgYQALAJACGPBgEAmwkAIZAGAQCbCQAhkQYBAJsJACGSBhAAsAkAIZMGEACwCQAhlAYQALAJACGVBhAAsAkAIZYGAQCcCQAhlwYAAL8JACCYBgAAyAkAIJkGAQCbCQAhmgYBAJwJACEPBAAAowkAIFYAAMkJACBXAADJCQAg3gWAAAAAAeEFgAAAAAHiBYAAAAAB4wWAAAAAAeQFgAAAAAHlBYAAAAABiAYBAAAAAYkGAQAAAAGKBgEAAAABiwaAAAAAAYwGgAAAAAGNBoAAAAABDN4FgAAAAAHhBYAAAAAB4gWAAAAAAeMFgAAAAAHkBYAAAAAB5QWAAAAAAYgGAQAAAAGJBgEAAAABigYBAAAAAYsGgAAAAAGMBoAAAAABjQaAAAAAAQ_SBQAAygkAMNMFAACbCAAQ1AUAAMoJADDVBQEAmwkAIdsFQACdCQAh3AVAAJ0JACGUBhAAsAkAIZYGAQCcCQAhmwYBAJsJACGcBgIAvAkAIZ0GQACdCQAhngYAAL8JACCfBgEAnAkAIaAGAQCbCQAhoQYBAJsJACEJ0gUAAMsJADDTBQAAhwgAENQFAADLCQAw1QUBAJsJACHWBQEAmwkAIdsFQACdCQAh3AVAAJ0JACGbBgEAnAkAIaMGAADMCaMGIgcEAACjCQAgVgAAzgkAIFcAAM4JACDeBQAAAKMGAt8FAAAAowYI4AUAAACjBgjlBQAAzQmjBiIHBAAAowkAIFYAAM4JACBXAADOCQAg3gUAAACjBgLfBQAAAKMGCOAFAAAAowYI5QUAAM0JowYiBN4FAAAAowYC3wUAAACjBgjgBQAAAKMGCOUFAADOCaMGIgsHAADRCQAgOAAA0gkAINIFAADPCQAw0wUAAKoBABDUBQAAzwkAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAhmwYBAKsJACGjBgAA0AmjBiIE3gUAAACjBgLfBQAAAKMGCOAFAAAAowYI5QUAAM4JowYiA-oFAAARACDrBQAAEQAg7AUAABEAIAPqBQAAFQAg6wUAABUAIOwFAAAVACAJ0gUAANMJADDTBQAA8QcAENQFAADTCQAw1gUBAJsJACGfBgEAmwkAIaQGAQCbCQAhpQYBAJwJACGmBgEAmwkAIacGAQCbCQAhC9IFAADUCQAw0wUAAN0HABDUBQAA1AkAMJ8GAQCbCQAhpAYBAJwJACGmBgEAmwkAIacGAQCbCQAhqAYBAJsJACGpBgEAmwkAIaoGAQCbCQAhqwYBAJsJACEJ0gUAANUJADDTBQAAyQcAENQFAADVCQAw1QUBAJsJACHbBUAAnQkAIdwFQACdCQAh3QVAAJ4JACGCBgAA1wmuBiKsBiAA1gkAIQUEAACgCQAgVgAA2wkAIFcAANsJACDeBSAAAAAB5QUgANoJACEHBAAAowkAIFYAANkJACBXAADZCQAg3gUAAACuBgLfBQAAAK4GCOAFAAAArgYI5QUAANgJrgYiBwQAAKMJACBWAADZCQAgVwAA2QkAIN4FAAAArgYC3wUAAACuBgjgBQAAAK4GCOUFAADYCa4GIgTeBQAAAK4GAt8FAAAArgYI4AUAAACuBgjlBQAA2QmuBiIFBAAAoAkAIFYAANsJACBXAADbCQAg3gUgAAAAAeUFIADaCQAhAt4FIAAAAAHlBSAA2wkAIQwOAADfCQAgDwAA4AkAIBAAAOEJACDSBQAA3AkAMNMFAAAnABDUBQAA3AkAMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAId0FQACtCQAhggYAAN4JrgYirAYgAN0JACEC3gUgAAAAAeUFIADbCQAhBN4FAAAArgYC3wUAAACuBgjgBQAAAK4GCOUFAADZCa4GIg8MAADdCgAgDQAA_AoAINIFAAD-CgAw0wUAACkAENQFAAD-CgAwnwYBAKoJACGkBgEAqwkAIaYGAQCqCQAhpwYBAKoJACGoBgEAqgkAIakGAQCqCQAhqgYBAKoJACGrBgEAqgkAIYcHAAApACCIBwAAKQAgDQwAAN0KACANAAD8CgAg0gUAAPsKADDTBQAAKwAQ1AUAAPsKADDWBQEAqgkAIZ8GAQCqCQAhpAYBAKoJACGlBgEAqwkAIaYGAQCqCQAhpwYBAKoJACGHBwAAKwAgiAcAACsAIAPqBQAALQAg6wUAAC0AIOwFAAAtACAH0gUAAOIJADDTBQAAswcAENQFAADiCQAw1QUCALwJACHWBQEAmwkAIa4GAQCbCQAhrwZAAJ0JACEH0gUAAOMJADDTBQAAogcAENQFAADjCQAw1QUCAOQJACHWBQEAqgkAIa4GAQCqCQAhrwZAAKwJACEI3gUCAAAAAd8FAgAAAATgBQIAAAAE4QUCAAAAAeIFAgAAAAHjBQIAAAAB5AUCAAAAAeUFAgCjCQAhDNIFAADlCQAw0wUAAJwHABDUBQAA5QkAMNUFAQCbCQAh1gUBAJsJACHbBUAAnQkAIdwFQACdCQAhggYAAOYJsgYimwYBAJsJACGwBhAAsAkAIbIGIADnCQAhswYgAOcJACEHBAAAowkAIFYAAOsJACBXAADrCQAg3gUAAACyBgLfBQAAALIGCOAFAAAAsgYI5QUAAOoJsgYiBQQAAKMJACBWAADpCQAgVwAA6QkAIN4FIAAAAAHlBSAA6AkAIQUEAACjCQAgVgAA6QkAIFcAAOkJACDeBSAAAAAB5QUgAOgJACEC3gUgAAAAAeUFIADpCQAhBwQAAKMJACBWAADrCQAgVwAA6wkAIN4FAAAAsgYC3wUAAACyBgjgBQAAALIGCOUFAADqCbIGIgTeBQAAALIGAt8FAAAAsgYI4AUAAACyBgjlBQAA6wmyBiINCAAA8AkAINIFAADsCQAw0wUAAIsHABDUBQAA7AkAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAhggYAAO4JsgYimwYBAKoJACGwBhAA7QkAIbIGIADvCQAhswYgAO8JACEI3gUQAAAAAd8FEAAAAATgBRAAAAAE4QUQAAAAAeIFEAAAAAHjBRAAAAAB5AUQAAAAAeUFEACyCQAhBN4FAAAAsgYC3wUAAACyBgjgBQAAALIGCOUFAADrCbIGIgLeBSAAAAAB5QUgAOkJACED6gUAABkAIOsFAAAZACDsBQAAGQAgCNIFAADxCQAw0wUAAIUHABDUBQAA8QkAMNUFAQCbCQAh1gUBAJsJACHbBUAAnQkAIdwFQACdCQAhmwYBAJsJACEJCAAA8AkAINIFAADyCQAw0wUAAPQGABDUBQAA8gkAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAhmwYBAKoJACEN0gUAAPMJADDTBQAA7gYAENQFAADzCQAw1QUBAJsJACHWBQEAmwkAIdcFAQCcCQAh2AUBAJwJACHaBQEAnAkAIdsFQACdCQAh3AVAAJ0JACHdBUAAngkAIbQGIADnCQAhtQYBAJwJACET0gUAAPQJADDTBQAA2gYAENQFAAD0CQAw1QUBAJsJACHWBQEAmwkAIdcFAQCcCQAh2AUBAJwJACHbBUAAnQkAIdwFQACdCQAh3QVAAJ4JACHtBQEAnAkAIe4FAQCcCQAh7wUBAJwJACHwBRAA9gkAIacGAQCcCQAhtAYgAOcJACG3BgAA9Qm3BiK4BgEAmwkAIbkGAQCbCQAhBwQAAKMJACBWAAD6CQAgVwAA-gkAIN4FAAAAtwYC3wUAAAC3BgjgBQAAALcGCOUFAAD5CbcGIg0EAACgCQAgVgAA-AkAIFcAAPgJACCeAQAA-AkAIJ8BAAD4CQAg3gUQAAAAAd8FEAAAAAXgBRAAAAAF4QUQAAAAAeIFEAAAAAHjBRAAAAAB5AUQAAAAAeUFEAD3CQAhDQQAAKAJACBWAAD4CQAgVwAA-AkAIJ4BAAD4CQAgnwEAAPgJACDeBRAAAAAB3wUQAAAABeAFEAAAAAXhBRAAAAAB4gUQAAAAAeMFEAAAAAHkBRAAAAAB5QUQAPcJACEI3gUQAAAAAd8FEAAAAAXgBRAAAAAF4QUQAAAAAeIFEAAAAAHjBRAAAAAB5AUQAAAAAeUFEAD4CQAhBwQAAKMJACBWAAD6CQAgVwAA-gkAIN4FAAAAtwYC3wUAAAC3BgjgBQAAALcGCOUFAAD5CbcGIgTeBQAAALcGAt8FAAAAtwYI4AUAAAC3BgjlBQAA-gm3BiIP0gUAAPsJADDTBQAAxgYAENQFAAD7CQAw1QUBAJsJACHWBQEAmwkAIdkFAQCbCQAh2gUBAJsJACHbBUAAnQkAIdwFQACdCQAh_wUAAPwJvQYiugYBAJwJACG7BgEAnAkAIb4GAAD9Cb4GIr8GAQCcCQAhwAYBAJwJACEHBAAAowkAIFYAAIEKACBXAACBCgAg3gUAAAC9BgLfBQAAAL0GCOAFAAAAvQYI5QUAAIAKvQYiBwQAAKMJACBWAAD_CQAgVwAA_wkAIN4FAAAAvgYC3wUAAAC-BgjgBQAAAL4GCOUFAAD-Cb4GIgcEAACjCQAgVgAA_wkAIFcAAP8JACDeBQAAAL4GAt8FAAAAvgYI4AUAAAC-BgjlBQAA_gm-BiIE3gUAAAC-BgLfBQAAAL4GCOAFAAAAvgYI5QUAAP8JvgYiBwQAAKMJACBWAACBCgAgVwAAgQoAIN4FAAAAvQYC3wUAAAC9BgjgBQAAAL0GCOUFAACACr0GIgTeBQAAAL0GAt8FAAAAvQYI4AUAAAC9BgjlBQAAgQq9BiIK0gUAAIIKADDTBQAAsgYAENQFAACCCgAw1QUBAJsJACHWBQEAmwkAIdsFQACdCQAh3AVAAJ0JACGnBgEAmwkAIcEGAQCbCQAhwgYBAJwJACEN0gUAAIMKADDTBQAAngYAENQFAACDCgAw1QUBAJsJACHWBQEAmwkAIdsFQACdCQAh3AVAAJ0JACGkBgEAmwkAIbUGAQCbCQAhwwYBAJsJACHEBgEAmwkAIcUGEACwCQAhxgYBAJsJACEJ0gUAAIQKADDTBQAAigYAENQFAACECgAw1gUBAJsJACHbBUAAnQkAIdwFQACdCQAhxgYBAJsJACHHBgEAmwkAIcgGAQCbCQAhC9IFAACFCgAw0wUAAPYFABDUBQAAhQoAMNsFQACdCQAh3AVAAJ0JACGoBgEAmwkAIakGAQCbCQAhqwYBAJsJACHGBgEAmwkAIcgGAQCbCQAhyQYBAJsJACEI0gUAAIYKADDTBQAA4gUAENQFAACGCgAw1QUBAJsJACHbBUAAnQkAIdwFQACdCQAh_wUAAIgKzAYiggYAAIcKywYiBwQAAKMJACBWAACMCgAgVwAAjAoAIN4FAAAAywYC3wUAAADLBgjgBQAAAMsGCOUFAACLCssGIgcEAACjCQAgVgAAigoAIFcAAIoKACDeBQAAAMwGAt8FAAAAzAYI4AUAAADMBgjlBQAAiQrMBiIHBAAAowkAIFYAAIoKACBXAACKCgAg3gUAAADMBgLfBQAAAMwGCOAFAAAAzAYI5QUAAIkKzAYiBN4FAAAAzAYC3wUAAADMBgjgBQAAAMwGCOUFAACKCswGIgcEAACjCQAgVgAAjAoAIFcAAIwKACDeBQAAAMsGAt8FAAAAywYI4AUAAADLBgjlBQAAiwrLBiIE3gUAAADLBgLfBQAAAMsGCOAFAAAAywYI5QUAAIwKywYiDQMAAJAKACAHAADRCQAgDgAAkgoAIA8AAJMKACASAACRCgAg0gUAAI0KADDTBQAA0QUAENQFAACNCgAw1QUBAKoJACHbBUAArAkAIdwFQACsCQAh_wUAAI8KzAYiggYAAI4KywYiBN4FAAAAywYC3wUAAADLBgjgBQAAAMsGCOUFAACMCssGIgTeBQAAAMwGAt8FAAAAzAYI4AUAAADMBgjlBQAAigrMBiID6gUAADIAIOsFAAAyACDsBQAAMgAgA-oFAAA3ACDrBQAANwAg7AUAADcAIA8RAACpCwAgEwAAmAsAINIFAACsCwAw0wUAADsAENQFAACsCwAw2wVAAKwJACHcBUAArAkAIagGAQCqCQAhqQYBAKoJACGrBgEAqgkAIcYGAQCqCQAhyAYBAKoJACHJBgEAqgkAIYcHAAA7ACCIBwAAOwAgDREAAKkLACATAACYCwAg0gUAAKgLADDTBQAARAAQ1AUAAKgLADDWBQEAqgkAIdsFQACsCQAh3AVAAKwJACHGBgEAqgkAIccGAQCqCQAhyAYBAKoJACGHBwAARAAgiAcAAEQAIAnSBQAAlAoAMNMFAADLBQAQ1AUAAJQKADDVBQEAmwkAIdkFAQCbCQAh2wVAAJ0JACHcBUAAnQkAIcYGAQCbCQAhzQYAAJUKzQYiBwQAAKMJACBWAACXCgAgVwAAlwoAIN4FAAAAzQYC3wUAAADNBgjgBQAAAM0GCOUFAACWCs0GIgcEAACjCQAgVgAAlwoAIFcAAJcKACDeBQAAAM0GAt8FAAAAzQYI4AUAAADNBgjlBQAAlgrNBiIE3gUAAADNBgLfBQAAAM0GCOAFAAAAzQYI5QUAAJcKzQYiDdIFAACYCgAw0wUAALcFABDUBQAAmAoAMNUFAQCbCQAh2wVAAJ0JACHcBUAAnQkAIZYGAAC_CQAgzgYBAJsJACHPBgEAmwkAIdAGIADnCQAh0gYAAJkK0gYi1AYAAJoK1AYi1QZAAJ0JACEHBAAAowkAIFYAAJ4KACBXAACeCgAg3gUAAADSBgLfBQAAANIGCOAFAAAA0gYI5QUAAJ0K0gYiBwQAAKMJACBWAACcCgAgVwAAnAoAIN4FAAAA1AYC3wUAAADUBgjgBQAAANQGCOUFAACbCtQGIgcEAACjCQAgVgAAnAoAIFcAAJwKACDeBQAAANQGAt8FAAAA1AYI4AUAAADUBgjlBQAAmwrUBiIE3gUAAADUBgLfBQAAANQGCOAFAAAA1AYI5QUAAJwK1AYiBwQAAKMJACBWAACeCgAgVwAAngoAIN4FAAAA0gYC3wUAAADSBgjgBQAAANIGCOUFAACdCtIGIgTeBQAAANIGAt8FAAAA0gYI4AUAAADSBgjlBQAAngrSBiIN0gUAAJ8KADDTBQAApgUAENQFAACfCgAw1QUBAKoJACHbBUAArAkAIdwFQACsCQAhlgYAAKIKACDOBgEAqgkAIc8GAQCqCQAh0AYgAO8JACHSBgAAoArSBiLUBgAAoQrUBiLVBkAArAkAIQTeBQAAANIGAt8FAAAA0gYI4AUAAADSBgjlBQAAngrSBiIE3gUAAADUBgLfBQAAANQGCOAFAAAA1AYI5QUAAJwK1AYiDN4FgAAAAAHhBYAAAAAB4gWAAAAAAeMFgAAAAAHkBYAAAAAB5QWAAAAAAYgGAQAAAAGJBgEAAAABigYBAAAAAYsGgAAAAAGMBoAAAAABjQaAAAAAARQ_AQCbCQAhQQEAmwkAIdIFAACjCgAw0wUAAKAFABDUBQAAowoAMNsFQACdCQAh3AVAAJ0JACG6BgEAmwkAIcYGAQCbCQAhzwYBAJsJACHUBgEAmwkAIdYGAQCbCQAh1wYBAJsJACHZBgAApArZBiLaBgEAmwkAIdsGAQCbCQAh3AYBAJsJACHdBgEAnAkAId4GAQCcCQAh3wYBAJwJACEHBAAAowkAIFYAAKYKACBXAACmCgAg3gUAAADZBgLfBQAAANkGCOAFAAAA2QYI5QUAAKUK2QYiBwQAAKMJACBWAACmCgAgVwAApgoAIN4FAAAA2QYC3wUAAADZBgjgBQAAANkGCOUFAAClCtkGIgTeBQAAANkGAt8FAAAA2QYI4AUAAADZBgjlBQAApgrZBiIJ0gUAAKcKADDTBQAAjAUAENQFAACnCgAw1QUBAJsJACHWBQEAmwkAIdsFQACdCQAh3AVAAJ0JACH_BQAAqArhBiKbBgEAmwkAIQcEAACjCQAgVgAAqgoAIFcAAKoKACDeBQAAAOEGAt8FAAAA4QYI4AUAAADhBgjlBQAAqQrhBiIHBAAAowkAIFYAAKoKACBXAACqCgAg3gUAAADhBgLfBQAAAOEGCOAFAAAA4QYI5QUAAKkK4QYiBN4FAAAA4QYC3wUAAADhBgjgBQAAAOEGCOUFAACqCuEGIgsDAACtCgAgPQAArgoAINIFAACrCgAw0wUAANABABDUBQAAqwoAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAh_wUAAKwK4QYimwYBAKoJACEE3gUAAADhBgLfBQAAAOEGCOAFAAAA4QYI5QUAAKoK4QYiA-oFAAAIACDrBQAACAAg7AUAAAgAIAPqBQAADQAg6wUAAA0AIOwFAAANACAJ0gUAAK8KADDTBQAA9gQAENQFAACvCgAw1QUBAJsJACHZBQEAmwkAIdsFQACdCQAh3AVAAJ0JACHABgEAmwkAIc0GAACwCuIGIgcEAACjCQAgVgAAsgoAIFcAALIKACDeBQAAAOIGAt8FAAAA4gYI4AUAAADiBgjlBQAAsQriBiIHBAAAowkAIFYAALIKACBXAACyCgAg3gUAAADiBgLfBQAAAOIGCOAFAAAA4gYI5QUAALEK4gYiBN4FAAAA4gYC3wUAAADiBgjgBQAAAOIGCOUFAACyCuIGIgfSBQAAswoAMNMFAADiBAAQ1AUAALMKADDVBQEAmwkAIc0GAAC0CuMGIuMGAQCbCQAh5AYBAJsJACEHBAAAowkAIFYAALYKACBXAAC2CgAg3gUAAADjBgLfBQAAAOMGCOAFAAAA4wYI5QUAALUK4wYiBwQAAKMJACBWAAC2CgAgVwAAtgoAIN4FAAAA4wYC3wUAAADjBgjgBQAAAOMGCOUFAAC1CuMGIgTeBQAAAOMGAt8FAAAA4wYI4AUAAADjBgjlBQAAtgrjBiIH0gUAALcKADDTBQAAzgQAENQFAAC3CgAw1QUBAJsJACHaBQEAmwkAIc0GAAC4CuYGIuQGAQCbCQAhBwQAAKMJACBWAAC6CgAgVwAAugoAIN4FAAAA5gYC3wUAAADmBgjgBQAAAOYGCOUFAAC5CuYGIgcEAACjCQAgVgAAugoAIFcAALoKACDeBQAAAOYGAt8FAAAA5gYI4AUAAADmBgjlBQAAuQrmBiIE3gUAAADmBgLfBQAAAOYGCOAFAAAA5gYI5QUAALoK5gYiB9IFAAC7CgAw0wUAALoEABDUBQAAuwoAMNUFAQCbCQAhoQYBAJsJACHNBgAAvArnBiLkBgEAmwkAIQcEAACjCQAgVgAAvgoAIFcAAL4KACDeBQAAAOcGAt8FAAAA5wYI4AUAAADnBgjlBQAAvQrnBiIHBAAAowkAIFYAAL4KACBXAAC-CgAg3gUAAADnBgLfBQAAAOcGCOAFAAAA5wYI5QUAAL0K5wYiBN4FAAAA5wYC3wUAAADnBgjgBQAAAOcGCOUFAAC-CucGIgXSBQAAvwoAMNMFAACmBAAQ1AUAAL8KADDVBQEAmwkAIaAGAQCbCQAhCSUAAMEKACAnAADCCgAgKQAAwwoAICsAAMQKACDSBQAAwAoAMNMFAAB9ABDUBQAAwAoAMNUFAQCqCQAhoAYBAKoJACEREAAA4QkAIBEAAKkLACAUAACvCwAgJAAAtAsAICYAALULACAsAACdCwAg0gUAALILADDTBQAAMgAQ1AUAALILADDVBQEAqgkAIdkFAQCqCQAh2wVAAKwJACHcBUAArAkAIcYGAQCqCQAhzQYAALMLzQYihwcAADIAIIgHAAAyACAD6gUAAH8AIOsFAAB_ACDsBQAAfwAgA-oFAACDAQAg6wUAAIMBACDsBQAAgwEAIAPqBQAAhwEAIOsFAACHAQAg7AUAAIcBACAL0gUAAMUKADDTBQAAkAQAENQFAADFCgAw1QUBAJsJACHWBQEAmwkAIdsFQACdCQAh3AVAAJ0JACH_BQAAqArhBiKbBgEAmwkAIegGAADGCugGIukGAQCcCQAhBwQAAKMJACBWAADICgAgVwAAyAoAIN4FAAAA6AYC3wUAAADoBgjgBQAAAOgGCOUFAADHCugGIgcEAACjCQAgVgAAyAoAIFcAAMgKACDeBQAAAOgGAt8FAAAA6AYI4AUAAADoBgjlBQAAxwroBiIE3gUAAADoBgLfBQAAAOgGCOAFAAAA6AYI5QUAAMgK6AYiEQMAAMsKACAVAADMCgAgFgAAzQoAICEAAM4KACAiAADPCgAgIwAA0AoAINIFAADJCgAw0wUAAP8DABDUBQAAyQoAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAh_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_wUAAOcK-gYiggYAAOgK-wYi9wYBAJsJACH4BgEAmwkAIQcEAACjCQAgVgAA7AoAIFcAAOwKACDeBQAAAPoGAt8FAAAA-gYI4AUAAAD6BgjlBQAA6wr6BiIHBAAAowkAIFYAAOoKACBXAADqCgAg3gUAAAD7BgLfBQAAAPsGCOAFAAAA-wYI5QUAAOkK-wYiBwQAAKMJACBWAADqCgAgVwAA6goAIN4FAAAA-wYC3wUAAAD7BgjgBQAAAPsGCOUFAADpCvsGIgTeBQAAAPsGAt8FAAAA-wYI4AUAAAD7BgjlBQAA6gr7BiIHBAAAowkAIFYAAOwKACBXAADsCgAg3gUAAAD6BgLfBQAAAPoGCOAFAAAA-gYI5QUAAOsK-gYiBN4FAAAA-gYC3wUAAAD6BgjgBQAAAPoGCOUFAADsCvoGIgwGAADwCgAgJQAA8woAIEQAAPEKACBFAADyCgAg0gUAAO0KADDTBQAAhwIAENQFAADtCgAw1QUBAKoJACH_BQAA7gr6BiKCBgAA7wr7BiL3BgEAqgkAIfgGAQCqCQAhBN4FAAAA-gYC3wUAAAD6BgjgBQAAAPoGCOUFAADsCvoGIgTeBQAAAPsGAt8FAAAA-wYI4AUAAAD7BgjlBQAA6gr7BiIMBQAA2AsAIBQAAK8LACDSBQAA1wsAMNMFAAADABDUBQAA1wsAMNUFAQCqCQAh2QUBAKoJACHbBUAArAkAIdwFQACsCQAh-wYBAKoJACGHBwAAAwAgiAcAAAMAIA0UAACvCwAgQgAA1gsAINIFAADUCwAw0wUAAAgAENQFAADUCwAw1QUBAKoJACHZBQEAqgkAIdsFQACsCQAh3AVAAKwJACHABgEAqgkAIc0GAADVC-IGIocHAAAIACCIBwAACAAgDRMAAJgLACAUAACvCwAg0gUAAK0LADDTBQAAPQAQ1AUAAK0LADDVBQEAqgkAIdkFAQCqCQAh2wVAAKwJACHcBUAArAkAIcgGAQCqCQAhzQYAAK4L6wYihwcAAD0AIIgHAAA9ACAREAAA4QkAIBEAAKkLACAUAACvCwAgJAAAtAsAICYAALULACAsAACdCwAg0gUAALILADDTBQAAMgAQ1AUAALILADDVBQEAqgkAIdkFAQCqCQAh2wVAAKwJACHcBUAArAkAIcYGAQCqCQAhzQYAALMLzQYihwcAADIAIIgHAAAyACAK0gUAAPQKADDTBQAAgQIAENQFAAD0CgAw1QUBAJsJACHbBUAAnQkAIdwFQACdCQAhqAYBAJsJACGpBgEAmwkAIasGAQCbCQAhyQYBAJwJACELAwAA9goAINIFAAD1CgAw0wUAAPABABDUBQAA9QoAMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAIagGAQCqCQAhqQYBAKoJACGrBgEAqgkAIckGAQCrCQAhA-oFAAADACDrBQAAAwAg7AUAAAMAIAjSBQAA9woAMNMFAADqAQAQ1AUAAPcKADDVBQEAmwkAIdkFAQCbCQAh2wVAAJ0JACHcBUAAnQkAIfsGAQCbCQAhCz8AAPkKACBAAACuCgAg0gUAAPgKADDTBQAAyAEAENQFAAD4CgAw1QUBAKoJACHWBQEAqgkAIdsFQACsCQAh3AVAAKwJACHaBgEAqwkAIfYGAQCqCQAhChIAAOUKACDSBQAA5AoAMNMFAACeAgAQ1AUAAOQKADDVBQEAqgkAIdYFAQCqCQAh2wVAAKwJACHcBUAArAkAIYcHAACeAgAgiAcAAJ4CACACpAYBAAAAAacGAQAAAAELDAAA3QoAIA0AAPwKACDSBQAA-woAMNMFAAArABDUBQAA-woAMNYFAQCqCQAhnwYBAKoJACGkBgEAqgkAIaUGAQCrCQAhpgYBAKoJACGnBgEAqgkAIQ4OAADfCQAgDwAA4AkAIBAAAOEJACDSBQAA3AkAMNMFAAAnABDUBQAA3AkAMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAId0FQACtCQAhggYAAN4JrgYirAYgAN0JACGHBwAAJwAgiAcAACcAIAKnBgEAAAABqgYBAAAAAQ0MAADdCgAgDQAA_AoAINIFAAD-CgAw0wUAACkAENQFAAD-CgAwnwYBAKoJACGkBgEAqwkAIaYGAQCqCQAhpwYBAKoJACGoBgEAqgkAIakGAQCqCQAhqgYBAKoJACGrBgEAqgkAIQ4MAADdCgAgOAAA0gkAID0AAK4KACA-AADDCgAg0gUAAP8KADDTBQAArAEAENQFAAD_CgAw1QUBAKoJACHWBQEAqgkAIdsFQACsCQAh3AVAAKwJACGnBgEAqgkAIcEGAQCqCQAhwgYBAKsJACESCQEAqgkAIQsAAIELACA1AACCCwAg0gUAAIALADDTBQAAnwEAENQFAACACwAw1QUBAKoJACHWBQEAqgkAIdcFAQCrCQAh2QUBAKoJACHaBQEAqgkAIdsFQACsCQAh3AVAAKwJACHdBUAArQkAIe0FAQCrCQAh7gUBAKsJACHvBQEAqwkAIfAFEADtCQAhDzQAAK4JACDSBQAAqQkAMNMFAAChAQAQ1AUAAKkJADDVBQEAqgkAIdYFAQCqCQAh1wUBAKsJACHYBQEAqwkAIdkFAQCqCQAh2gUBAKoJACHbBUAArAkAIdwFQACsCQAh3QVAAK0JACGHBwAAoQEAIIgHAAChAQAgA-oFAAAjACDrBQAAIwAg7AUAACMAIAL8BQEAAAAB_QUCAAAAARAuAACHCwAg0gUAAIQLADDTBQAAmAEAENQFAACECwAw1QUBAKoJACHbBUAArAkAIfwFAQCqCQAh_QUCAOQJACH_BQAAhQv_BSKABgEAqwkAIYIGAACGC4IGIoMGAACiCgAghAYAAKIKACCFBgEAqwkAIYYGQACtCQAhhwZAAK0JACEE3gUAAAD_BQLfBQAAAP8FCOAFAAAA_wUI5QUAAMQJ_wUiBN4FAAAAggYC3wUAAACCBgjgBQAAAIIGCOUFAADCCYIGIhcNAAC4CwAgJAAAlgsAICUAAMEKACAtAACCCwAgMQAAuQsAIDIAALoLACDSBQAAtwsAMNMFAAAtABDUBQAAtwsAMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAIZQGEADtCQAhlgYBAKsJACGbBgEAqgkAIZwGAgDkCQAhnQZAAKwJACGeBgAAogoAIJ8GAQCrCQAhoAYBAKoJACGhBgEAqgkAIYcHAAAtACCIBwAALQAgCy4AAIcLACAwAACKCwAg0gUAAIgLADDTBQAAkgEAENQFAACICwAw1QUBAKoJACHbBUAArAkAIfgFEADtCQAh-gUAAIkL-gUi-wVAAKwJACH8BQEAqgkAIQTeBQAAAPoFAt8FAAAA-gUI4AUAAAD6BQjlBQAAugn6BSIPLwAAtgkAINIFAAC1CQAw0wUAAJYBABDUBQAAtQkAMNUFAQCqCQAh1wUBAKsJACHbBUAArAkAIfEFAQCqCQAh8gUBAKoJACHzBQEAqgkAIfQFQACsCQAh9QUBAKsJACH2BQEAqgkAIYcHAACWAQAgiAcAAJYBACAC4wYBAAAAAeQGAQAAAAEJJgAAjgsAICoAAN0KACDSBQAAjAsAMNMFAACHAQAQ1AUAAIwLADDVBQEAqgkAIc0GAACNC-MGIuMGAQCqCQAh5AYBAKoJACEE3gUAAADjBgLfBQAAAOMGCOAFAAAA4wYI5QUAALYK4wYiCyUAAMEKACAnAADCCgAgKQAAwwoAICsAAMQKACDSBQAAwAoAMNMFAAB9ABDUBQAAwAoAMNUFAQCqCQAhoAYBAKoJACGHBwAAfQAgiAcAAH0AIALaBQEAAAAB5AYBAAAAAQkmAACOCwAgKAAAkgsAINIFAACQCwAw0wUAAIMBABDUBQAAkAsAMNUFAQCqCQAh2gUBAKoJACHNBgAAkQvmBiLkBgEAqgkAIQTeBQAAAOYGAt8FAAAA5gYI4AUAAADmBgjlBQAAugrmBiIQDAAA3QoAIDgAANIJACA9AACuCgAgPgAAwwoAINIFAAD_CgAw0wUAAKwBABDUBQAA_woAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAhpwYBAKoJACHBBgEAqgkAIcIGAQCrCQAhhwcAAKwBACCIBwAArAEAIAKhBgEAAAAB5AYBAAAAAQkkAACWCwAgJgAAjgsAINIFAACUCwAw0wUAAH8AENQFAACUCwAw1QUBAKoJACGhBgEAqgkAIc0GAACVC-cGIuQGAQCqCQAhBN4FAAAA5wYC3wUAAADnBgjgBQAAAOcGCOUFAAC-CucGIhcQAADhCQAgFAAAwQoAICgAAJILACBBAADSCwAgQgAA0wsAIEMAAMIKACDSBQAAzwsAMNMFAAANABDUBQAAzwsAMNUFAQCqCQAh1gUBAKoJACHZBQEAqgkAIdoFAQCqCQAh2wVAAKwJACHcBUAArAkAIf8FAADQC70GIroGAQCrCQAhuwYBAKsJACG-BgAA0Qu-BiK_BgEAqwkAIcAGAQCrCQAhhwcAAA0AIIgHAAANACAMEwAAmAsAIBkAAN4KACDSBQAAlwsAMNMFAABuABDUBQAAlwsAMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAIcgGAQCqCQAh7gZAAKwJACHvBgEAqgkAIfAGAgDkCQAhEwMAAMsKACAVAADMCgAgFgAAzQoAICEAAM4KACAiAADPCgAgIwAA0AoAINIFAADJCgAw0wUAAP8DABDUBQAAyQoAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAh_wUAAKwK4QYimwYBAKoJACHoBgAAygroBiLpBgEAqwkAIYcHAAD_AwAgiAcAAP8DACAMEwAAmAsAIBwAAJoLACDSBQAAmQsAMNMFAABhABDUBQAAmQsAMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAIcgGAQCqCQAh7gZAAKwJACHvBgEAqgkAIfAGAgDkCQAhA-oFAABfACDrBQAAXwAg7AUAAF8AIAkXAACcCwAgHQAAnQsAINIFAACbCwAw0wUAAF8AENQFAACbCwAw1QUBAKoJACHbBUAArAkAIdwFQACsCQAh7QYBAKsJACEOEwAAmAsAIBwAAJoLACDSBQAAmQsAMNMFAABhABDUBQAAmQsAMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAIcgGAQCqCQAh7gZAAKwJACHvBgEAqgkAIfAGAgDkCQAhhwcAAGEAIIgHAABhACAOFAAA8woAIBsAAJ8LACAeAACgCwAg0gUAAJ4LADDTBQAAWQAQ1AUAAJ4LADDVBQEAqgkAIdkFAQCrCQAh2wVAAKwJACHcBUAArAkAIesGAQCrCQAh7AYBAKsJACGHBwAAWQAgiAcAAFkAIAwUAADzCgAgGwAAnwsAIB4AAKALACDSBQAAngsAMNMFAABZABDUBQAAngsAMNUFAQCqCQAh2QUBAKsJACHbBUAArAkAIdwFQACsCQAh6wYBAKsJACHsBgEAqwkAIRAMAADdCgAgGAAA3AoAIBkAAN4KACAfAADfCgAg0gUAANsKADDTBQAAUAAQ1AUAANsKADDVBQEAqgkAIdsFQACsCQAh3AVAAKwJACGnBgEAqgkAIfEGQACsCQAh8wZAAKwJACH0BgEAqgkAIYcHAABQACCIBwAAUAAgCxcAAJwLACAdAACdCwAg0gUAAJsLADDTBQAAXwAQ1AUAAJsLADDVBQEAqgkAIdsFQACsCQAh3AVAAKwJACHtBgEAqwkAIYcHAABfACCIBwAAXwAgCxcAAKILACAaAACfCwAg0gUAAKELADDTBQAAUgAQ1AUAAKELADDVBQEAqgkAIdsFQACsCQAh3AVAAKwJACHtBgEAqgkAIfEGQACsCQAh8gYBAKsJACEOEwAAmAsAIBkAAN4KACDSBQAAlwsAMNMFAABuABDUBQAAlwsAMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAIcgGAQCqCQAh7gZAAKwJACHvBgEAqgkAIfAGAgDkCQAhhwcAAG4AIIgHAABuACAKFwAApAsAIBoAAJ8LACDSBQAAowsAMNMFAABMABDUBQAAowsAMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAIe0GAQCqCQAh9QYCAOQJACEOEwAAmAsAICAAAKYLACDSBQAApQsAMNMFAABIABDUBQAApQsAMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAIcgGAQCqCQAh7gZAAKwJACHvBgEAqgkAIfAGAgDkCQAhhwcAAEgAIIgHAABIACAMEwAAmAsAICAAAKYLACDSBQAApQsAMNMFAABIABDUBQAApQsAMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAIcgGAQCqCQAh7gZAAKwJACHvBgEAqgkAIfAGAgDkCQAhA-oFAABMACDrBQAATAAg7AUAAEwAIALHBgEAAAAByAYBAAAAAQsRAACpCwAgEwAAmAsAINIFAACoCwAw0wUAAEQAENQFAACoCwAw1gUBAKoJACHbBUAArAkAIdwFQACsCQAhxgYBAKoJACHHBgEAqgkAIcgGAQCqCQAhDwMAAJAKACAHAADRCQAgDgAAkgoAIA8AAJMKACASAACRCgAg0gUAAI0KADDTBQAA0QUAENQFAACNCgAw1QUBAKoJACHbBUAArAkAIdwFQACsCQAh_wUAAI8KzAYiggYAAI4KywYihwcAANEFACCIBwAA0QUAIAKrBgEAAAABxgYBAAAAAQLIBgEAAAAByQYBAAAAAQ0RAACpCwAgEwAAmAsAINIFAACsCwAw0wUAADsAENQFAACsCwAw2wVAAKwJACHcBUAArAkAIagGAQCqCQAhqQYBAKoJACGrBgEAqgkAIcYGAQCqCQAhyAYBAKoJACHJBgEAqgkAIQsTAACYCwAgFAAArwsAINIFAACtCwAw0wUAAD0AENQFAACtCwAw1QUBAKoJACHZBQEAqgkAIdsFQACsCQAh3AVAAKwJACHIBgEAqgkAIc0GAACuC-sGIgTeBQAAAOsGAt8FAAAA6wYI4AUAAADrBgjlBQAA1ArrBiIOBgAA8AoAICUAAPMKACBEAADxCgAgRQAA8goAINIFAADtCgAw0wUAAIcCABDUBQAA7QoAMNUFAQCqCQAh_wUAAO4K-gYiggYAAO8K-wYi9wYBAKoJACH4BgEAqgkAIYcHAACHAgAgiAcAAIcCACAVEQAAqQsAID8BAKoJACFBAQCqCQAh0gUAALALADDTBQAANwAQ1AUAALALADDbBUAArAkAIdwFQACsCQAhugYBAKoJACHGBgEAqgkAIc8GAQCqCQAh1AYBAKoJACHWBgEAqgkAIdcGAQCqCQAh2QYAALEL2QYi2gYBAKoJACHbBgEAqgkAIdwGAQCqCQAh3QYBAKsJACHeBgEAqwkAId8GAQCrCQAhBN4FAAAA2QYC3wUAAADZBgjgBQAAANkGCOUFAACmCtkGIg8QAADhCQAgEQAAqQsAIBQAAK8LACAkAAC0CwAgJgAAtQsAICwAAJ0LACDSBQAAsgsAMNMFAAAyABDUBQAAsgsAMNUFAQCqCQAh2QUBAKoJACHbBUAArAkAIdwFQACsCQAhxgYBAKoJACHNBgAAswvNBiIE3gUAAADNBgLfBQAAAM0GCOAFAAAAzQYI5QUAAJcKzQYiFxAAAOEJACAUAADBCgAgKAAAkgsAIEEAANILACBCAADTCwAgQwAAwgoAINIFAADPCwAw0wUAAA0AENQFAADPCwAw1QUBAKoJACHWBQEAqgkAIdkFAQCqCQAh2gUBAKoJACHbBUAArAkAIdwFQACsCQAh_wUAANALvQYiugYBAKsJACG7BgEAqwkAIb4GAADRC74GIr8GAQCrCQAhwAYBAKsJACGHBwAADQAgiAcAAA0AIAslAADBCgAgJwAAwgoAICkAAMMKACArAADECgAg0gUAAMAKADDTBQAAfQAQ1AUAAMAKADDVBQEAqgkAIaAGAQCqCQAhhwcAAH0AIIgHAAB9ACACnAYCAAAAAaEGAQAAAAEVDQAAuAsAICQAAJYLACAlAADBCgAgLQAAggsAIDEAALkLACAyAAC6CwAg0gUAALcLADDTBQAALQAQ1AUAALcLADDVBQEAqgkAIdsFQACsCQAh3AVAAKwJACGUBhAA7QkAIZYGAQCrCQAhmwYBAKoJACGcBgIA5AkAIZ0GQACsCQAhngYAAKIKACCfBgEAqwkAIaAGAQCqCQAhoQYBAKoJACEODgAA3wkAIA8AAOAJACAQAADhCQAg0gUAANwJADDTBQAAJwAQ1AUAANwJADDVBQEAqgkAIdsFQACsCQAh3AVAAKwJACHdBUAArQkAIYIGAADeCa4GIqwGIADdCQAhhwcAACcAIIgHAAAnACAD6gUAAJIBACDrBQAAkgEAIOwFAACSAQAgA-oFAACYAQAg6wUAAJgBACDsBQAAmAEAIBYuAACHCwAgMwAAvQsAIDYAAL4LACDSBQAAuwsAMNMFAAAjABDUBQAAuwsAMNUFAQCqCQAh2wVAAKwJACH8BQEAqgkAIY4GEADtCQAhjwYBAKoJACGQBgEAqgkAIZEGAQCqCQAhkgYQAO0JACGTBhAA7QkAIZQGEADtCQAhlQYQAO0JACGWBgEAqwkAIZcGAACiCgAgmAYAALwLACCZBgEAqgkAIZoGAQCrCQAhDN4FgAAAAAHhBYAAAAAB4gWAAAAAAeMFgAAAAAHkBYAAAAAB5QWAAAAAAYgGAQAAAAGJBgEAAAABigYBAAAAAYsGgAAAAAGMBoAAAAABjQaAAAAAARoJAADCCwAgCgAAwwsAIAsAAMQLACAMAADFCwAgNQAAggsAINIFAAC_CwAw0wUAABkAENQFAAC_CwAw1QUBAKoJACHWBQEAqgkAIdcFAQCrCQAh2AUBAKsJACHbBUAArAkAIdwFQACsCQAh3QVAAK0JACHtBQEAqwkAIe4FAQCrCQAh7wUBAKsJACHwBRAAwQsAIacGAQCrCQAhtAYgAO8JACG3BgAAwAu3BiK4BgEAqgkAIbkGAQCqCQAhhwcAABkAIIgHAAAZACAUCQEAqgkAIQsAAIELACA1AACCCwAg0gUAAIALADDTBQAAnwEAENQFAACACwAw1QUBAKoJACHWBQEAqgkAIdcFAQCrCQAh2QUBAKoJACHaBQEAqgkAIdsFQACsCQAh3AVAAKwJACHdBUAArQkAIe0FAQCrCQAh7gUBAKsJACHvBQEAqwkAIfAFEADtCQAhhwcAAJ8BACCIBwAAnwEAIBgJAADCCwAgCgAAwwsAIAsAAMQLACAMAADFCwAgNQAAggsAINIFAAC_CwAw0wUAABkAENQFAAC_CwAw1QUBAKoJACHWBQEAqgkAIdcFAQCrCQAh2AUBAKsJACHbBUAArAkAIdwFQACsCQAh3QVAAK0JACHtBQEAqwkAIe4FAQCrCQAh7wUBAKsJACHwBRAAwQsAIacGAQCrCQAhtAYgAO8JACG3BgAAwAu3BiK4BgEAqgkAIbkGAQCqCQAhBN4FAAAAtwYC3wUAAAC3BgjgBQAAALcGCOUFAAD6CbcGIgjeBRAAAAAB3wUQAAAABeAFEAAAAAXhBRAAAAAB4gUQAAAAAeMFEAAAAAHkBRAAAAAB5QUQAPgJACEPCAAA8AkAINIFAADsCQAw0wUAAIsHABDUBQAA7AkAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAhggYAAO4JsgYimwYBAKoJACGwBhAA7QkAIbIGIADvCQAhswYgAO8JACGHBwAAiwcAIIgHAACLBwAgCwgAAPAJACDSBQAA8gkAMNMFAAD0BgAQ1AUAAPIJADDVBQEAqgkAIdYFAQCqCQAh2wVAAKwJACHcBUAArAkAIZsGAQCqCQAhhwcAAPQGACCIBwAA9AYAIBIIAADwCQAgKAAAyAsAIDcAAMcLACDSBQAAxgsAMNMFAAAVABDUBQAAxgsAMNUFAQCqCQAh1gUBAKoJACHXBQEAqwkAIdgFAQCrCQAh2gUBAKsJACHbBUAArAkAIdwFQACsCQAh3QVAAK0JACG0BiAA7wkAIbUGAQCrCQAhhwcAABUAIIgHAAAVACAXCAAA8AkAIBEAAKkLACAbAACfCwAgNwAAywsAIDkAAMwLACA6AADECgAgOwAAzQsAIDwAAM4LACDSBQAAygsAMNMFAAARABDUBQAAygsAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAhpAYBAKoJACG1BgEAqgkAIcMGAQCqCQAhxAYBAKoJACHFBhAA7QkAIcYGAQCqCQAhhwcAABEAIIgHAAARACAQCAAA8AkAICgAAMgLACA3AADHCwAg0gUAAMYLADDTBQAAFQAQ1AUAAMYLADDVBQEAqgkAIdYFAQCqCQAh1wUBAKsJACHYBQEAqwkAIdoFAQCrCQAh2wVAAKwJACHcBUAArAkAId0FQACtCQAhtAYgAO8JACG1BgEAqwkAIQ0HAADRCQAgOAAA0gkAINIFAADPCQAw0wUAAKoBABDUBQAAzwkAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAhmwYBAKsJACGjBgAA0AmjBiKHBwAAqgEAIIgHAACqAQAgEAwAAN0KACA4AADSCQAgPQAArgoAID4AAMMKACDSBQAA_woAMNMFAACsAQAQ1AUAAP8KADDVBQEAqgkAIdYFAQCqCQAh2wVAAKwJACHcBUAArAkAIacGAQCqCQAhwQYBAKoJACHCBgEAqwkAIYcHAACsAQAgiAcAAKwBACACpAYBAAAAAcYGAQAAAAEVCAAA8AkAIBEAAKkLACAbAACfCwAgNwAAywsAIDkAAMwLACA6AADECgAgOwAAzQsAIDwAAM4LACDSBQAAygsAMNMFAAARABDUBQAAygsAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAhpAYBAKoJACG1BgEAqgkAIcMGAQCqCQAhxAYBAKoJACHFBhAA7QkAIcYGAQCqCQAhDQcAANEJACA4AADSCQAg0gUAAM8JADDTBQAAqgEAENQFAADPCQAw1QUBAKoJACHWBQEAqgkAIdsFQACsCQAh3AVAAKwJACGbBgEAqwkAIaMGAADQCaMGIocHAACqAQAgiAcAAKoBACAD6gUAAKwBACDrBQAArAEAIOwFAACsAQAgA-oFAAApACDrBQAAKQAg7AUAACkAIAPqBQAAKwAg6wUAACsAIOwFAAArACAVEAAA4QkAIBQAAMEKACAoAACSCwAgQQAA0gsAIEIAANMLACBDAADCCgAg0gUAAM8LADDTBQAADQAQ1AUAAM8LADDVBQEAqgkAIdYFAQCqCQAh2QUBAKoJACHaBQEAqgkAIdsFQACsCQAh3AVAAKwJACH_BQAA0Au9BiK6BgEAqwkAIbsGAQCrCQAhvgYAANELvgYivwYBAKsJACHABgEAqwkAIQTeBQAAAL0GAt8FAAAAvQYI4AUAAAC9BgjlBQAAgQq9BiIE3gUAAAC-BgLfBQAAAL4GCOAFAAAAvgYI5QUAAP8JvgYiDT8AAPkKACBAAACuCgAg0gUAAPgKADDTBQAAyAEAENQFAAD4CgAw1QUBAKoJACHWBQEAqgkAIdsFQACsCQAh3AVAAKwJACHaBgEAqwkAIfYGAQCqCQAhhwcAAMgBACCIBwAAyAEAIA0DAACtCgAgPQAArgoAINIFAACrCgAw0wUAANABABDUBQAAqwoAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAh_wUAAKwK4QYimwYBAKoJACGHBwAA0AEAIIgHAADQAQAgCxQAAK8LACBCAADWCwAg0gUAANQLADDTBQAACAAQ1AUAANQLADDVBQEAqgkAIdkFAQCqCQAh2wVAAKwJACHcBUAArAkAIcAGAQCqCQAhzQYAANUL4gYiBN4FAAAA4gYC3wUAAADiBgjgBQAAAOIGCOUFAACyCuIGIg0DAACtCgAgPQAArgoAINIFAACrCgAw0wUAANABABDUBQAAqwoAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAh_wUAAKwK4QYimwYBAKoJACGHBwAA0AEAIIgHAADQAQAgCgUAANgLACAUAACvCwAg0gUAANcLADDTBQAAAwAQ1AUAANcLADDVBQEAqgkAIdkFAQCqCQAh2wVAAKwJACHcBUAArAkAIfsGAQCqCQAhDQMAAPYKACDSBQAA9QoAMNMFAADwAQAQ1AUAAPUKADDVBQEAqgkAIdsFQACsCQAh3AVAAKwJACGoBgEAqgkAIakGAQCqCQAhqwYBAKoJACHJBgEAqwkAIYcHAADwAQAgiAcAAPABACAAAAAAAYwHAQAAAAEBjAcBAAAAAQGMB0AAAAABAYwHQAAAAAELUAAA4gsAMFEAAOcLADCJBwAA4wsAMIoHAADkCwAwiwcAAOULACCMBwAA5gsAMI0HAADmCwAwjgcAAOYLADCPBwAA5gsAMJAHAADoCwAwkQcAAOkLADANCQEAAAABNQAAgAwAINUFAQAAAAHWBQEAAAAB1wUBAAAAAdkFAQAAAAHaBQEAAAAB2wVAAAAAAdwFQAAAAAHdBUAAAAAB7QUBAAAAAe4FAQAAAAHwBRAAAAABAgAAAKQBACBQAAD_CwAgAwAAAKQBACBQAAD_CwAgUQAA7QsAIAFLAACSFwAwEgkBAAAAAQsAAIELACA1AACCCwAg0gUAAIALADDTBQAAnwEAENQFAACACwAw1QUBAAAAAdYFAQCqCQAh1wUBAKsJACHZBQEAqgkAIdoFAQCqCQAh2wVAAKwJACHcBUAArAkAId0FQACtCQAh7QUBAAAAAe4FAQAAAAHvBQEAqwkAIfAFEADtCQAhAgAAAKQBACBLAADtCwAgAgAAAOoLACBLAADrCwAgEAkBAKoJACHSBQAA6QsAMNMFAADqCwAQ1AUAAOkLADDVBQEAqgkAIdYFAQCqCQAh1wUBAKsJACHZBQEAqgkAIdoFAQCqCQAh2wVAAKwJACHcBUAArAkAId0FQACtCQAh7QUBAKsJACHuBQEAqwkAIe8FAQCrCQAh8AUQAO0JACEQCQEAqgkAIdIFAADpCwAw0wUAAOoLABDUBQAA6QsAMNUFAQCqCQAh1gUBAKoJACHXBQEAqwkAIdkFAQCqCQAh2gUBAKoJACHbBUAArAkAIdwFQACsCQAh3QVAAK0JACHtBQEAqwkAIe4FAQCrCQAh7wUBAKsJACHwBRAA7QkAIQwJAQDdCwAh1QUBAN0LACHWBQEA3QsAIdcFAQDeCwAh2QUBAN0LACHaBQEA3QsAIdsFQADfCwAh3AVAAN8LACHdBUAA4AsAIe0FAQDeCwAh7gUBAN4LACHwBRAA7AsAIQWMBxAAAAABkwcQAAAAAZQHEAAAAAGVBxAAAAABlgcQAAAAAQ0JAQDdCwAhNQAA7gsAINUFAQDdCwAh1gUBAN0LACHXBQEA3gsAIdkFAQDdCwAh2gUBAN0LACHbBUAA3wsAIdwFQADfCwAh3QVAAOALACHtBQEA3gsAIe4FAQDeCwAh8AUQAOwLACELUAAA7wsAMFEAAPQLADCJBwAA8AsAMIoHAADxCwAwiwcAAPILACCMBwAA8wsAMI0HAADzCwAwjgcAAPMLADCPBwAA8wsAMJAHAAD1CwAwkQcAAPYLADARLgAA_QsAIDMAAP4LACDVBQEAAAAB2wVAAAAAAfwFAQAAAAGOBhAAAAABjwYBAAAAAZAGAQAAAAGRBgEAAAABkgYQAAAAAZMGEAAAAAGUBhAAAAABlQYQAAAAAZYGAQAAAAGXBoAAAAABmAaAAAAAAZkGAQAAAAECAAAAJQAgUAAA_AsAIAMAAAAlACBQAAD8CwAgUQAA-QsAIAFLAACRFwAwFi4AAIcLACAzAAC9CwAgNgAAvgsAINIFAAC7CwAw0wUAACMAENQFAAC7CwAw1QUBAAAAAdsFQACsCQAh_AUBAKoJACGOBhAA7QkAIY8GAQCqCQAhkAYBAKoJACGRBgEAqgkAIZIGEADtCQAhkwYQAO0JACGUBhAA7QkAIZUGEADtCQAhlgYBAKsJACGXBgAAogoAIJgGAAC8CwAgmQYBAKoJACGaBgEAqwkAIQIAAAAlACBLAAD5CwAgAgAAAPcLACBLAAD4CwAgE9IFAAD2CwAw0wUAAPcLABDUBQAA9gsAMNUFAQCqCQAh2wVAAKwJACH8BQEAqgkAIY4GEADtCQAhjwYBAKoJACGQBgEAqgkAIZEGAQCqCQAhkgYQAO0JACGTBhAA7QkAIZQGEADtCQAhlQYQAO0JACGWBgEAqwkAIZcGAACiCgAgmAYAALwLACCZBgEAqgkAIZoGAQCrCQAhE9IFAAD2CwAw0wUAAPcLABDUBQAA9gsAMNUFAQCqCQAh2wVAAKwJACH8BQEAqgkAIY4GEADtCQAhjwYBAKoJACGQBgEAqgkAIZEGAQCqCQAhkgYQAO0JACGTBhAA7QkAIZQGEADtCQAhlQYQAO0JACGWBgEAqwkAIZcGAACiCgAgmAYAALwLACCZBgEAqgkAIZoGAQCrCQAhD9UFAQDdCwAh2wVAAN8LACH8BQEA3QsAIY4GEADsCwAhjwYBAN0LACGQBgEA3QsAIZEGAQDdCwAhkgYQAOwLACGTBhAA7AsAIZQGEADsCwAhlQYQAOwLACGWBgEA3gsAIZcGgAAAAAGYBoAAAAABmQYBAN0LACERLgAA-gsAIDMAAPsLACDVBQEA3QsAIdsFQADfCwAh_AUBAN0LACGOBhAA7AsAIY8GAQDdCwAhkAYBAN0LACGRBgEA3QsAIZIGEADsCwAhkwYQAOwLACGUBhAA7AsAIZUGEADsCwAhlgYBAN4LACGXBoAAAAABmAaAAAAAAZkGAQDdCwAhBVAAAIkXACBRAACPFwAgiQcAAIoXACCKBwAAjhcAII8HAAAvACAFUAAAhxcAIFEAAIwXACCJBwAAiBcAIIoHAACLFwAgjwcAABsAIBEuAAD9CwAgMwAA_gsAINUFAQAAAAHbBUAAAAAB_AUBAAAAAY4GEAAAAAGPBgEAAAABkAYBAAAAAZEGAQAAAAGSBhAAAAABkwYQAAAAAZQGEAAAAAGVBhAAAAABlgYBAAAAAZcGgAAAAAGYBoAAAAABmQYBAAAAAQNQAACJFwAgiQcAAIoXACCPBwAALwAgA1AAAIcXACCJBwAAiBcAII8HAAAbACANCQEAAAABNQAAgAwAINUFAQAAAAHWBQEAAAAB1wUBAAAAAdkFAQAAAAHaBQEAAAAB2wVAAAAAAdwFQAAAAAHdBUAAAAAB7QUBAAAAAe4FAQAAAAHwBRAAAAABBFAAAO8LADCJBwAA8AsAMIsHAADyCwAgjwcAAPMLADAEUAAA4gsAMIkHAADjCwAwiwcAAOULACCPBwAA5gsAMAAB6QUBAAAAAQAAAAAAB1AAAIIXACBRAACFFwAgiQcAAIMXACCKBwAAhBcAII0HAAChAQAgjgcAAKEBACCPBwAAhAkAIANQAACCFwAgiQcAAIMXACCPBwAAhAkAIAAAAAVQAAD9FgAgUQAAgBcAIIkHAAD-FgAgigcAAP8WACCPBwAAlAEAIANQAAD9FgAgiQcAAP4WACCPBwAAlAEAIAMuAACDFAAgMAAAhRQAIJIHAACGFAAgAekFAQAAAAEAAAAAAAGMBwAAAPoFAgVQAAD4FgAgUQAA-xYAIIkHAAD5FgAgigcAAPoWACCPBwAALwAgB1AAAJoMACBRAACdDAAgiQcAAJsMACCKBwAAnAwAII0HAACWAQAgjgcAAJYBACCPBwAA2ggAIAjVBQEAAAAB1wUBAAAAAdsFQAAAAAHxBQEAAAAB8gUBAAAAAfMFAQAAAAH0BUAAAAAB9QUBAAAAAQIAAADaCAAgUAAAmgwAIAMAAACWAQAgUAAAmgwAIFEAAJ4MACAKAAAAlgEAIEsAAJ4MACDVBQEA3QsAIdcFAQDeCwAh2wVAAN8LACHxBQEA3QsAIfIFAQDdCwAh8wUBAN0LACH0BUAA3wsAIfUFAQDeCwAhCNUFAQDdCwAh1wUBAN4LACHbBUAA3wsAIfEFAQDdCwAh8gUBAN0LACHzBQEA3QsAIfQFQADfCwAh9QUBAN4LACEDUAAA-BYAIIkHAAD5FgAgjwcAAC8AIANQAACaDAAgiQcAAJsMACCPBwAA2ggAIAAAAAAABYwHAgAAAAGTBwIAAAABlAcCAAAAAZUHAgAAAAGWBwIAAAABAYwHAAAA_wUCAYwHAAAAggYCBVAAAPMWACBRAAD2FgAgiQcAAPQWACCKBwAA9RYAII8HAAAvACADUAAA8xYAIIkHAAD0FgAgjwcAAC8AIAAAAAAAB1AAAO4WACBRAADxFgAgiQcAAO8WACCKBwAA8BYAII0HAACfAQAgjgcAAJ8BACCPBwAApAEAIANQAADuFgAgiQcAAO8WACCPBwAApAEAIAAAAAAAB1AAAOAWACBRAADsFgAgiQcAAOEWACCKBwAA6xYAII0HAAAnACCOBwAAJwAgjwcAALYHACAFUAAA3hYAIFEAAOkWACCJBwAA3xYAIIoHAADoFgAgjwcAADQAIAVQAADcFgAgUQAA5hYAIIkHAADdFgAgigcAAOUWACCPBwAADwAgC1AAANUMADBRAADZDAAwiQcAANYMADCKBwAA1wwAMIsHAADYDAAgjAcAAPMLADCNBwAA8wsAMI4HAADzCwAwjwcAAPMLADCQBwAA2gwAMJEHAAD2CwAwC1AAAMkMADBRAADODAAwiQcAAMoMADCKBwAAywwAMIsHAADMDAAgjAcAAM0MADCNBwAAzQwAMI4HAADNDAAwjwcAAM0MADCQBwAAzwwAMJEHAADQDAAwC1AAAL0MADBRAADCDAAwiQcAAL4MADCKBwAAvwwAMIsHAADADAAgjAcAAMEMADCNBwAAwQwAMI4HAADBDAAwjwcAAMEMADCQBwAAwwwAMJEHAADEDAAwC9UFAQAAAAHbBUAAAAAB_QUCAAAAAf8FAAAA_wUCgAYBAAAAAYIGAAAAggYCgwaAAAAAAYQGgAAAAAGFBgEAAAABhgZAAAAAAYcGQAAAAAECAAAAmgEAIFAAAMgMACADAAAAmgEAIFAAAMgMACBRAADHDAAgAUsAAOQWADARLgAAhwsAINIFAACECwAw0wUAAJgBABDUBQAAhAsAMNUFAQAAAAHbBUAArAkAIfwFAQAAAAH9BQIA5AkAIf8FAACFC_8FIoAGAQAAAAGCBgAAhguCBiKDBgAAogoAIIQGAACiCgAghQYBAKsJACGGBkAArQkAIYcGQACtCQAh_gYAAIMLACACAAAAmgEAIEsAAMcMACACAAAAxQwAIEsAAMYMACAP0gUAAMQMADDTBQAAxQwAENQFAADEDAAw1QUBAKoJACHbBUAArAkAIfwFAQCqCQAh_QUCAOQJACH_BQAAhQv_BSKABgEAqwkAIYIGAACGC4IGIoMGAACiCgAghAYAAKIKACCFBgEAqwkAIYYGQACtCQAhhwZAAK0JACEP0gUAAMQMADDTBQAAxQwAENQFAADEDAAw1QUBAKoJACHbBUAArAkAIfwFAQCqCQAh_QUCAOQJACH_BQAAhQv_BSKABgEAqwkAIYIGAACGC4IGIoMGAACiCgAghAYAAKIKACCFBgEAqwkAIYYGQACtCQAhhwZAAK0JACEL1QUBAN0LACHbBUAA3wsAIf0FAgCmDAAh_wUAAKcM_wUigAYBAN4LACGCBgAAqAyCBiKDBoAAAAABhAaAAAAAAYUGAQDeCwAhhgZAAOALACGHBkAA4AsAIQvVBQEA3QsAIdsFQADfCwAh_QUCAKYMACH_BQAApwz_BSKABgEA3gsAIYIGAACoDIIGIoMGgAAAAAGEBoAAAAABhQYBAN4LACGGBkAA4AsAIYcGQADgCwAhC9UFAQAAAAHbBUAAAAAB_QUCAAAAAf8FAAAA_wUCgAYBAAAAAYIGAAAAggYCgwaAAAAAAYQGgAAAAAGFBgEAAAABhgZAAAAAAYcGQAAAAAEGMAAAoAwAINUFAQAAAAHbBUAAAAAB-AUQAAAAAfoFAAAA-gUC-wVAAAAAAQIAAACUAQAgUAAA1AwAIAMAAACUAQAgUAAA1AwAIFEAANMMACABSwAA4xYAMAsuAACHCwAgMAAAigsAINIFAACICwAw0wUAAJIBABDUBQAAiAsAMNUFAQAAAAHbBUAArAkAIfgFEADtCQAh-gUAAIkL-gUi-wVAAKwJACH8BQEAqgkAIQIAAACUAQAgSwAA0wwAIAIAAADRDAAgSwAA0gwAIAnSBQAA0AwAMNMFAADRDAAQ1AUAANAMADDVBQEAqgkAIdsFQACsCQAh-AUQAO0JACH6BQAAiQv6BSL7BUAArAkAIfwFAQCqCQAhCdIFAADQDAAw0wUAANEMABDUBQAA0AwAMNUFAQCqCQAh2wVAAKwJACH4BRAA7QkAIfoFAACJC_oFIvsFQACsCQAh_AUBAKoJACEF1QUBAN0LACHbBUAA3wsAIfgFEADsCwAh-gUAAJcM-gUi-wVAAN8LACEGMAAAmQwAINUFAQDdCwAh2wVAAN8LACH4BRAA7AsAIfoFAACXDPoFIvsFQADfCwAhBjAAAKAMACDVBQEAAAAB2wVAAAAAAfgFEAAAAAH6BQAAAPoFAvsFQAAAAAERMwAA_gsAIDYAALEMACDVBQEAAAAB2wVAAAAAAY4GEAAAAAGPBgEAAAABkAYBAAAAAZEGAQAAAAGSBhAAAAABkwYQAAAAAZQGEAAAAAGVBhAAAAABlgYBAAAAAZcGgAAAAAGYBoAAAAABmQYBAAAAAZoGAQAAAAECAAAAJQAgUAAA3QwAIAMAAAAlACBQAADdDAAgUQAA3AwAIAFLAADiFgAwAgAAACUAIEsAANwMACACAAAA9wsAIEsAANsMACAP1QUBAN0LACHbBUAA3wsAIY4GEADsCwAhjwYBAN0LACGQBgEA3QsAIZEGAQDdCwAhkgYQAOwLACGTBhAA7AsAIZQGEADsCwAhlQYQAOwLACGWBgEA3gsAIZcGgAAAAAGYBoAAAAABmQYBAN0LACGaBgEA3gsAIREzAAD7CwAgNgAAsAwAINUFAQDdCwAh2wVAAN8LACGOBhAA7AsAIY8GAQDdCwAhkAYBAN0LACGRBgEA3QsAIZIGEADsCwAhkwYQAOwLACGUBhAA7AsAIZUGEADsCwAhlgYBAN4LACGXBoAAAAABmAaAAAAAAZkGAQDdCwAhmgYBAN4LACERMwAA_gsAIDYAALEMACDVBQEAAAAB2wVAAAAAAY4GEAAAAAGPBgEAAAABkAYBAAAAAZEGAQAAAAGSBhAAAAABkwYQAAAAAZQGEAAAAAGVBhAAAAABlgYBAAAAAZcGgAAAAAGYBoAAAAABmQYBAAAAAZoGAQAAAAEDUAAA4BYAIIkHAADhFgAgjwcAALYHACADUAAA3hYAIIkHAADfFgAgjwcAADQAIANQAADcFgAgiQcAAN0WACCPBwAADwAgBFAAANUMADCJBwAA1gwAMIsHAADYDAAgjwcAAPMLADAEUAAAyQwAMIkHAADKDAAwiwcAAMwMACCPBwAAzQwAMARQAAC9DAAwiQcAAL4MADCLBwAAwAwAII8HAADBDAAwAAAAAYwHAAAAowYCC1AAAJoNADBRAACfDQAwiQcAAJsNADCKBwAAnA0AMIsHAACdDQAgjAcAAJ4NADCNBwAAng0AMI4HAACeDQAwjwcAAJ4NADCQBwAAoA0AMJEHAAChDQAwC1AAAOoMADBRAADvDAAwiQcAAOsMADCKBwAA7AwAMIsHAADtDAAgjAcAAO4MADCNBwAA7gwAMI4HAADuDAAwjwcAAO4MADCQBwAA8AwAMJEHAADxDAAwCwgAAJgNACAoAACZDQAg1QUBAAAAAdYFAQAAAAHXBQEAAAAB2AUBAAAAAdoFAQAAAAHbBUAAAAAB3AVAAAAAAd0FQAAAAAG0BiAAAAABAgAAABcAIFAAAJcNACADAAAAFwAgUAAAlw0AIFEAAPUMACABSwAA2xYAMBAIAADwCQAgKAAAyAsAIDcAAMcLACDSBQAAxgsAMNMFAAAVABDUBQAAxgsAMNUFAQAAAAHWBQEAqgkAIdcFAQCrCQAh2AUBAKsJACHaBQEAqwkAIdsFQACsCQAh3AVAAKwJACHdBUAArQkAIbQGIADvCQAhtQYBAKsJACECAAAAFwAgSwAA9QwAIAIAAADyDAAgSwAA8wwAIA3SBQAA8QwAMNMFAADyDAAQ1AUAAPEMADDVBQEAqgkAIdYFAQCqCQAh1wUBAKsJACHYBQEAqwkAIdoFAQCrCQAh2wVAAKwJACHcBUAArAkAId0FQACtCQAhtAYgAO8JACG1BgEAqwkAIQ3SBQAA8QwAMNMFAADyDAAQ1AUAAPEMADDVBQEAqgkAIdYFAQCqCQAh1wUBAKsJACHYBQEAqwkAIdoFAQCrCQAh2wVAAKwJACHcBUAArAkAId0FQACtCQAhtAYgAO8JACG1BgEAqwkAIQnVBQEA3QsAIdYFAQDdCwAh1wUBAN4LACHYBQEA3gsAIdoFAQDeCwAh2wVAAN8LACHcBUAA3wsAId0FQADgCwAhtAYgAPQMACEBjAcgAAAAAQsIAAD2DAAgKAAA9wwAINUFAQDdCwAh1gUBAN0LACHXBQEA3gsAIdgFAQDeCwAh2gUBAN4LACHbBUAA3wsAIdwFQADfCwAh3QVAAOALACG0BiAA9AwAIQtQAAD4DAAwUQAA_QwAMIkHAAD5DAAwigcAAPoMADCLBwAA-wwAIIwHAAD8DAAwjQcAAPwMADCOBwAA_AwAMI8HAAD8DAAwkAcAAP4MADCRBwAA_wwAMAdQAADFFgAgUQAA2RYAIIkHAADGFgAgigcAANgWACCNBwAArAEAII4HAACsAQAgjwcAALMBACATCQAAkw0AIAoAAJQNACAMAACVDQAgNQAAlg0AINUFAQAAAAHWBQEAAAAB1wUBAAAAAdgFAQAAAAHbBUAAAAAB3AVAAAAAAd0FQAAAAAHtBQEAAAAB7gUBAAAAAfAFEAAAAAGnBgEAAAABtAYgAAAAAbcGAAAAtwYCuAYBAAAAAbkGAQAAAAECAAAAGwAgUAAAkg0AIAMAAAAbACBQAACSDQAgUQAAhA0AIAFLAADXFgAwGAkAAMILACAKAADDCwAgCwAAxAsAIAwAAMULACA1AACCCwAg0gUAAL8LADDTBQAAGQAQ1AUAAL8LADDVBQEAAAAB1gUBAKoJACHXBQEAqwkAIdgFAQCrCQAh2wVAAKwJACHcBUAArAkAId0FQACtCQAh7QUBAAAAAe4FAQAAAAHvBQEAqwkAIfAFEADBCwAhpwYBAKsJACG0BiAA7wkAIbcGAADAC7cGIrgGAQCqCQAhuQYBAKoJACECAAAAGwAgSwAAhA0AIAIAAACADQAgSwAAgQ0AIBPSBQAA_wwAMNMFAACADQAQ1AUAAP8MADDVBQEAqgkAIdYFAQCqCQAh1wUBAKsJACHYBQEAqwkAIdsFQACsCQAh3AVAAKwJACHdBUAArQkAIe0FAQCrCQAh7gUBAKsJACHvBQEAqwkAIfAFEADBCwAhpwYBAKsJACG0BiAA7wkAIbcGAADAC7cGIrgGAQCqCQAhuQYBAKoJACET0gUAAP8MADDTBQAAgA0AENQFAAD_DAAw1QUBAKoJACHWBQEAqgkAIdcFAQCrCQAh2AUBAKsJACHbBUAArAkAIdwFQACsCQAh3QVAAK0JACHtBQEAqwkAIe4FAQCrCQAh7wUBAKsJACHwBRAAwQsAIacGAQCrCQAhtAYgAO8JACG3BgAAwAu3BiK4BgEAqgkAIbkGAQCqCQAhD9UFAQDdCwAh1gUBAN0LACHXBQEA3gsAIdgFAQDeCwAh2wVAAN8LACHcBUAA3wsAId0FQADgCwAh7QUBAN4LACHuBQEA3gsAIfAFEACDDQAhpwYBAN4LACG0BiAA9AwAIbcGAACCDbcGIrgGAQDdCwAhuQYBAN0LACEBjAcAAAC3BgIFjAcQAAAAAZMHEAAAAAGUBxAAAAABlQcQAAAAAZYHEAAAAAETCQAAhQ0AIAoAAIYNACAMAACHDQAgNQAAiA0AINUFAQDdCwAh1gUBAN0LACHXBQEA3gsAIdgFAQDeCwAh2wVAAN8LACHcBUAA3wsAId0FQADgCwAh7QUBAN4LACHuBQEA3gsAIfAFEACDDQAhpwYBAN4LACG0BiAA9AwAIbcGAACCDbcGIrgGAQDdCwAhuQYBAN0LACEFUAAAyxYAIFEAANUWACCJBwAAzBYAIIoHAADUFgAgjwcAAIgHACAFUAAAyRYAIFEAANIWACCJBwAAyhYAIIoHAADRFgAgjwcAAPEGACAHUAAAxxYAIFEAAM8WACCJBwAAyBYAIIoHAADOFgAgjQcAABEAII4HAAARACCPBwAAEwAgC1AAAIkNADBRAACNDQAwiQcAAIoNADCKBwAAiw0AMIsHAACMDQAgjAcAAPMLADCNBwAA8wsAMI4HAADzCwAwjwcAAPMLADCQBwAAjg0AMJEHAAD2CwAwES4AAP0LACA2AACxDAAg1QUBAAAAAdsFQAAAAAH8BQEAAAABjgYQAAAAAY8GAQAAAAGQBgEAAAABkQYBAAAAAZIGEAAAAAGTBhAAAAABlAYQAAAAAZUGEAAAAAGWBgEAAAABlwaAAAAAAZgGgAAAAAGaBgEAAAABAgAAACUAIFAAAJENACADAAAAJQAgUAAAkQ0AIFEAAJANACABSwAAzRYAMAIAAAAlACBLAACQDQAgAgAAAPcLACBLAACPDQAgD9UFAQDdCwAh2wVAAN8LACH8BQEA3QsAIY4GEADsCwAhjwYBAN0LACGQBgEA3QsAIZEGAQDdCwAhkgYQAOwLACGTBhAA7AsAIZQGEADsCwAhlQYQAOwLACGWBgEA3gsAIZcGgAAAAAGYBoAAAAABmgYBAN4LACERLgAA-gsAIDYAALAMACDVBQEA3QsAIdsFQADfCwAh_AUBAN0LACGOBhAA7AsAIY8GAQDdCwAhkAYBAN0LACGRBgEA3QsAIZIGEADsCwAhkwYQAOwLACGUBhAA7AsAIZUGEADsCwAhlgYBAN4LACGXBoAAAAABmAaAAAAAAZoGAQDeCwAhES4AAP0LACA2AACxDAAg1QUBAAAAAdsFQAAAAAH8BQEAAAABjgYQAAAAAY8GAQAAAAGQBgEAAAABkQYBAAAAAZIGEAAAAAGTBhAAAAABlAYQAAAAAZUGEAAAAAGWBgEAAAABlwaAAAAAAZgGgAAAAAGaBgEAAAABEwkAAJMNACAKAACUDQAgDAAAlQ0AIDUAAJYNACDVBQEAAAAB1gUBAAAAAdcFAQAAAAHYBQEAAAAB2wVAAAAAAdwFQAAAAAHdBUAAAAAB7QUBAAAAAe4FAQAAAAHwBRAAAAABpwYBAAAAAbQGIAAAAAG3BgAAALcGArgGAQAAAAG5BgEAAAABA1AAAMsWACCJBwAAzBYAII8HAACIBwAgA1AAAMkWACCJBwAAyhYAII8HAADxBgAgA1AAAMcWACCJBwAAyBYAII8HAAATACAEUAAAiQ0AMIkHAACKDQAwiwcAAIwNACCPBwAA8wsAMAsIAACYDQAgKAAAmQ0AINUFAQAAAAHWBQEAAAAB1wUBAAAAAdgFAQAAAAHaBQEAAAAB2wVAAAAAAdwFQAAAAAHdBUAAAAABtAYgAAAAAQRQAAD4DAAwiQcAAPkMADCLBwAA-wwAII8HAAD8DAAwA1AAAMUWACCJBwAAxhYAII8HAACzAQAgEAgAAO8OACARAADrDgAgGwAA7A4AIDkAAO0OACA6AADuDgAgOwAA8A4AIDwAAPEOACDVBQEAAAAB1gUBAAAAAdsFQAAAAAHcBUAAAAABpAYBAAAAAcMGAQAAAAHEBgEAAAABxQYQAAAAAcYGAQAAAAECAAAAEwAgUAAA6g4AIAMAAAATACBQAADqDgAgUQAApA0AIAFLAADEFgAwFggAAPAJACARAACpCwAgGwAAnwsAIDcAAMsLACA5AADMCwAgOgAAxAoAIDsAAM0LACA8AADOCwAg0gUAAMoLADDTBQAAEQAQ1AUAAMoLADDVBQEAAAAB1gUBAKoJACHbBUAArAkAIdwFQACsCQAhpAYBAKoJACG1BgEAqgkAIcMGAQCqCQAhxAYBAKoJACHFBhAA7QkAIcYGAQCqCQAhhgcAAMkLACACAAAAEwAgSwAApA0AIAIAAACiDQAgSwAAow0AIA3SBQAAoQ0AMNMFAACiDQAQ1AUAAKENADDVBQEAqgkAIdYFAQCqCQAh2wVAAKwJACHcBUAArAkAIaQGAQCqCQAhtQYBAKoJACHDBgEAqgkAIcQGAQCqCQAhxQYQAO0JACHGBgEAqgkAIQ3SBQAAoQ0AMNMFAACiDQAQ1AUAAKENADDVBQEAqgkAIdYFAQCqCQAh2wVAAKwJACHcBUAArAkAIaQGAQCqCQAhtQYBAKoJACHDBgEAqgkAIcQGAQCqCQAhxQYQAO0JACHGBgEAqgkAIQnVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIaQGAQDdCwAhwwYBAN0LACHEBgEA3QsAIcUGEADsCwAhxgYBAN0LACEQCAAAqQ0AIBEAAKUNACAbAACmDQAgOQAApw0AIDoAAKgNACA7AACqDQAgPAAAqw0AINUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAhpAYBAN0LACHDBgEA3QsAIcQGAQDdCwAhxQYQAOwLACHGBgEA3QsAIQVQAADtFQAgUQAAwhYAIIkHAADuFQAgigcAAMEWACCPBwAAzgUAIAdQAADBDgAgUQAAxA4AIIkHAADCDgAgigcAAMMOACCNBwAAUAAgjgcAAFAAII8HAADuAgAgC1AAAOINADBRAADnDQAwiQcAAOMNADCKBwAA5A0AMIsHAADlDQAgjAcAAOYNADCNBwAA5g0AMI4HAADmDQAwjwcAAOYNADCQBwAA6A0AMJEHAADpDQAwC1AAANMNADBRAADYDQAwiQcAANQNADCKBwAA1Q0AMIsHAADWDQAgjAcAANcNADCNBwAA1w0AMI4HAADXDQAwjwcAANcNADCQBwAA2Q0AMJEHAADaDQAwC1AAAMgNADBRAADMDQAwiQcAAMkNADCKBwAAyg0AMIsHAADLDQAgjAcAAPwMADCNBwAA_AwAMI4HAAD8DAAwjwcAAPwMADCQBwAAzQ0AMJEHAAD_DAAwC1AAALoNADBRAAC_DQAwiQcAALsNADCKBwAAvA0AMIsHAAC9DQAgjAcAAL4NADCNBwAAvg0AMI4HAAC-DQAwjwcAAL4NADCQBwAAwA0AMJEHAADBDQAwC1AAAKwNADBRAACxDQAwiQcAAK0NADCKBwAArg0AMIsHAACvDQAgjAcAALANADCNBwAAsA0AMI4HAACwDQAwjwcAALANADCQBwAAsg0AMJEHAACzDQAwBg0AALkNACDWBQEAAAABnwYBAAAAAaQGAQAAAAGlBgEAAAABpgYBAAAAAQIAAAC7AQAgUAAAuA0AIAMAAAC7AQAgUAAAuA0AIFEAALYNACABSwAAwBYAMAwMAADdCgAgDQAA_AoAINIFAAD7CgAw0wUAACsAENQFAAD7CgAw1gUBAKoJACGfBgEAAAABpAYBAKoJACGlBgEAqwkAIaYGAQCqCQAhpwYBAKoJACH8BgAA-goAIAIAAAC7AQAgSwAAtg0AIAIAAAC0DQAgSwAAtQ0AIAnSBQAAsw0AMNMFAAC0DQAQ1AUAALMNADDWBQEAqgkAIZ8GAQCqCQAhpAYBAKoJACGlBgEAqwkAIaYGAQCqCQAhpwYBAKoJACEJ0gUAALMNADDTBQAAtA0AENQFAACzDQAw1gUBAKoJACGfBgEAqgkAIaQGAQCqCQAhpQYBAKsJACGmBgEAqgkAIacGAQCqCQAhBdYFAQDdCwAhnwYBAN0LACGkBgEA3QsAIaUGAQDeCwAhpgYBAN0LACEGDQAAtw0AINYFAQDdCwAhnwYBAN0LACGkBgEA3QsAIaUGAQDeCwAhpgYBAN0LACEFUAAAuxYAIFEAAL4WACCJBwAAvBYAIIoHAAC9FgAgjwcAALYHACAGDQAAuQ0AINYFAQAAAAGfBgEAAAABpAYBAAAAAaUGAQAAAAGmBgEAAAABA1AAALsWACCJBwAAvBYAII8HAAC2BwAgCA0AAMcNACCfBgEAAAABpAYBAAAAAaYGAQAAAAGoBgEAAAABqQYBAAAAAaoGAQAAAAGrBgEAAAABAgAAALgBACBQAADGDQAgAwAAALgBACBQAADGDQAgUQAAxA0AIAFLAAC6FgAwDgwAAN0KACANAAD8CgAg0gUAAP4KADDTBQAAKQAQ1AUAAP4KADCfBgEAAAABpAYBAKsJACGmBgEAqgkAIacGAQCqCQAhqAYBAKoJACGpBgEAqgkAIaoGAQCqCQAhqwYBAKoJACH9BgAA_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_DgAgPQAAvg4AID4AAMAOACDVBQEAAAAB1gUBAAAAAdsFQAAAAAHcBUAAAAABwQYBAAAAAcIGAQAAAAECAAAAswEAIFAAAL0OACADAAAAswEAIFAAAL0OACBRAADsDQAgAUsAAKgWADAODAAA3QoAIDgAANIJACA9AACuCgAgPgAAwwoAINIFAAD_CgAw0wUAAKwBABDUBQAA_woAMNUFAQAAAAHWBQEAqgkAIdsFQACsCQAh3AVAAKwJACGnBgEAqgkAIcEGAQCqCQAhwgYBAKsJACECAAAAswEAIEsAAOwNACACAAAA6g0AIEsAAOsNACAK0gUAAOkNADDTBQAA6g0AENQFAADpDQAw1QUBAKoJACHWBQEAqgkAIdsFQACsCQAh3AVAAKwJACGnBgEAqgkAIcEGAQCqCQAhwgYBAKsJACEK0gUAAOkNADDTBQAA6g0AENQFAADpDQAw1QUBAKoJACHWBQEAqgkAIdsFQACsCQAh3AVAAKwJACGnBgEAqgkAIcEGAQCqCQAhwgYBAKsJACEG1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACHBBgEA3QsAIcIGAQDeCwAhCTgAAO4NACA9AADtDQAgPgAA7w0AINUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAhwQYBAN0LACHCBgEA3gsAIQtQAACKDgAwUQAAjw4AMIkHAACLDgAwigcAAIwOADCLBwAAjQ4AIIwHAACODgAwjQcAAI4OADCOBwAAjg4AMI8HAACODgAwkAcAAJAOADCRBwAAkQ4AMAtQAAD_DQAwUQAAgw4AMIkHAACADgAwigcAAIEOADCLBwAAgg4AIIwHAADuDAAwjQcAAO4MADCOBwAA7gwAMI8HAADuDAAwkAcAAIQOADCRBwAA8QwAMAtQAADwDQAwUQAA9Q0AMIkHAADxDQAwigcAAPINADCLBwAA8w0AIIwHAAD0DQAwjQcAAPQNADCOBwAA9A0AMI8HAAD0DQAwkAcAAPYNADCRBwAA9w0AMAQmAAD-DQAg1QUBAAAAAc0GAAAA5gYC5AYBAAAAAQIAAACFAQAgUAAA_Q0AIAMAAACFAQAgUAAA_Q0AIFEAAPsNACABSwAApxYAMAomAACOCwAgKAAAkgsAINIFAACQCwAw0wUAAIMBABDUBQAAkAsAMNUFAQAAAAHaBQEAqgkAIc0GAACRC-YGIuQGAQCqCQAhgAcAAI8LACACAAAAhQEAIEsAAPsNACACAAAA-A0AIEsAAPkNACAH0gUAAPcNADDTBQAA-A0AENQFAAD3DQAw1QUBAKoJACHaBQEAqgkAIc0GAACRC-YGIuQGAQCqCQAhB9IFAAD3DQAw0wUAAPgNABDUBQAA9w0AMNUFAQCqCQAh2gUBAKoJACHNBgAAkQvmBiLkBgEAqgkAIQPVBQEA3QsAIc0GAAD6DeYGIuQGAQDdCwAhAYwHAAAA5gYCBCYAAPwNACDVBQEA3QsAIc0GAAD6DeYGIuQGAQDdCwAhBVAAAKIWACBRAAClFgAgiQcAAKMWACCKBwAApBYAII8HAACTBAAgBCYAAP4NACDVBQEAAAABzQYAAADmBgLkBgEAAAABA1AAAKIWACCJBwAAoxYAII8HAACTBAAgCwgAAJgNACA3AACJDgAg1QUBAAAAAdYFAQAAAAHXBQEAAAAB2AUBAAAAAdsFQAAAAAHcBUAAAAAB3QVAAAAAAbQGIAAAAAG1BgEAAAABAgAAABcAIFAAAIgOACADAAAAFwAgUAAAiA4AIFEAAIYOACABSwAAoRYAMAIAAAAXACBLAACGDgAgAgAAAPIMACBLAACFDgAgCdUFAQDdCwAh1gUBAN0LACHXBQEA3gsAIdgFAQDeCwAh2wVAAN8LACHcBUAA3wsAId0FQADgCwAhtAYgAPQMACG1BgEA3gsAIQsIAAD2DAAgNwAAhw4AINUFAQDdCwAh1gUBAN0LACHXBQEA3gsAIdgFAQDeCwAh2wVAAN8LACHcBUAA3wsAId0FQADgCwAhtAYgAPQMACG1BgEA3gsAIQdQAACcFgAgUQAAnxYAIIkHAACdFgAgigcAAJ4WACCNBwAAqgEAII4HAACqAQAgjwcAAPQHACALCAAAmA0AIDcAAIkOACDVBQEAAAAB1gUBAAAAAdcFAQAAAAHYBQEAAAAB2wVAAAAAAdwFQAAAAAHdBUAAAAABtAYgAAAAAbUGAQAAAAEDUAAAnBYAIIkHAACdFgAgjwcAAPQHACAQEAAAvA4AIBQAALoOACBBAAC4DgAgQgAAuQ4AIEMAALsOACDVBQEAAAAB1gUBAAAAAdkFAQAAAAHbBUAAAAAB3AVAAAAAAf8FAAAAvQYCugYBAAAAAbsGAQAAAAG-BgAAAL4GAr8GAQAAAAHABgEAAAABAgAAAA8AIFAAALcOACADAAAADwAgUAAAtw4AIFEAAJYOACABSwAAmxYAMBUQAADhCQAgFAAAwQoAICgAAJILACBBAADSCwAgQgAA0wsAIEMAAMIKACDSBQAAzwsAMNMFAAANABDUBQAAzwsAMNUFAQAAAAHWBQEAqgkAIdkFAQAAAAHaBQEAqgkAIdsFQACsCQAh3AVAAKwJACH_BQAA0Au9BiK6BgEAqwkAIbsGAQAAAAG-BgAA0Qu-BiK_BgEAqwkAIcAGAQCrCQAhAgAAAA8AIEsAAJYOACACAAAAkg4AIEsAAJMOACAP0gUAAJEOADDTBQAAkg4AENQFAACRDgAw1QUBAKoJACHWBQEAqgkAIdkFAQCqCQAh2gUBAKoJACHbBUAArAkAIdwFQACsCQAh_wUAANALvQYiugYBAKsJACG7BgEAqwkAIb4GAADRC74GIr8GAQCrCQAhwAYBAKsJACEP0gUAAJEOADDTBQAAkg4AENQFAACRDgAw1QUBAKoJACHWBQEAqgkAIdkFAQCqCQAh2gUBAKoJACHbBUAArAkAIdwFQACsCQAh_wUAANALvQYiugYBAKsJACG7BgEAqwkAIb4GAADRC74GIr8GAQCrCQAhwAYBAKsJACEL1QUBAN0LACHWBQEA3QsAIdkFAQDdCwAh2wVAAN8LACHcBUAA3wsAIf8FAACUDr0GIroGAQDeCwAhuwYBAN4LACG-BgAAlQ6-BiK_BgEA3gsAIcAGAQDeCwAhAYwHAAAAvQYCAYwHAAAAvgYCEBAAAJsOACAUAACZDgAgQQAAlw4AIEIAAJgOACBDAACaDgAg1QUBAN0LACHWBQEA3QsAIdkFAQDdCwAh2wVAAN8LACHcBUAA3wsAIf8FAACUDr0GIroGAQDeCwAhuwYBAN4LACG-BgAAlQ6-BiK_BgEA3gsAIcAGAQDeCwAhB1AAAIkWACBRAACZFgAgiQcAAIoWACCKBwAAmBYAII0HAADIAQAgjgcAAMgBACCPBwAAywEAIAdQAACHFgAgUQAAlhYAIIkHAACIFgAgigcAAJUWACCNBwAA0AEAII4HAADQAQAgjwcAAPkEACAFUAAAhRYAIFEAAJMWACCJBwAAhhYAIIoHAACSFgAgjwcAADQAIAtQAACoDgAwUQAArQ4AMIkHAACpDgAwigcAAKoOADCLBwAAqw4AIIwHAACsDgAwjQcAAKwOADCOBwAArA4AMI8HAACsDgAwkAcAAK4OADCRBwAArw4AMAtQAACcDgAwUQAAoQ4AMIkHAACdDgAwigcAAJ4OADCLBwAAnw4AIIwHAACgDgAwjQcAAKAOADCOBwAAoA4AMI8HAACgDgAwkAcAAKIOADCRBwAAow4AMBANAADeDAAgJQAA3wwAIC0AAOEMACAxAADiDAAgMgAA4wwAINUFAQAAAAHbBUAAAAAB3AVAAAAAAZQGEAAAAAGWBgEAAAABmwYBAAAAAZwGAgAAAAGdBkAAAAABngaAAAAAAZ8GAQAAAAGgBgEAAAABAgAAAC8AIFAAAKcOACADAAAALwAgUAAApw4AIFEAAKYOACABSwAAkRYAMBYNAAC4CwAgJAAAlgsAICUAAMEKACAtAACCCwAgMQAAuQsAIDIAALoLACDSBQAAtwsAMNMFAAAtABDUBQAAtwsAMNUFAQAAAAHbBUAArAkAIdwFQACsCQAhlAYQAO0JACGWBgEAqwkAIZsGAQAAAAGcBgIA5AkAIZ0GQACsCQAhngYAAKIKACCfBgEAqwkAIaAGAQCqCQAhoQYBAKoJACGFBwAAtgsAIAIAAAAvACBLAACmDgAgAgAAAKQOACBLAAClDgAgD9IFAACjDgAw0wUAAKQOABDUBQAAow4AMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAIZQGEADtCQAhlgYBAKsJACGbBgEAqgkAIZwGAgDkCQAhnQZAAKwJACGeBgAAogoAIJ8GAQCrCQAhoAYBAKoJACGhBgEAqgkAIQ_SBQAAow4AMNMFAACkDgAQ1AUAAKMOADDVBQEAqgkAIdsFQACsCQAh3AVAAKwJACGUBhAA7QkAIZYGAQCrCQAhmwYBAKoJACGcBgIA5AkAIZ0GQACsCQAhngYAAKIKACCfBgEAqwkAIaAGAQCqCQAhoQYBAKoJACEL1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhlAYQAOwLACGWBgEA3gsAIZsGAQDdCwAhnAYCAKYMACGdBkAA3wsAIZ4GgAAAAAGfBgEA3gsAIaAGAQDdCwAhEA0AALcMACAlAAC4DAAgLQAAugwAIDEAALsMACAyAAC8DAAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhlAYQAOwLACGWBgEA3gsAIZsGAQDdCwAhnAYCAKYMACGdBkAA3wsAIZ4GgAAAAAGfBgEA3gsAIaAGAQDdCwAhEA0AAN4MACAlAADfDAAgLQAA4QwAIDEAAOIMACAyAADjDAAg1QUBAAAAAdsFQAAAAAHcBUAAAAABlAYQAAAAAZYGAQAAAAGbBgEAAAABnAYCAAAAAZ0GQAAAAAGeBoAAAAABnwYBAAAAAaAGAQAAAAEEJgAAtg4AINUFAQAAAAHNBgAAAOcGAuQGAQAAAAECAAAAgQEAIFAAALUOACADAAAAgQEAIFAAALUOACBRAACzDgAgAUsAAJAWADAKJAAAlgsAICYAAI4LACDSBQAAlAsAMNMFAAB_ABDUBQAAlAsAMNUFAQAAAAGhBgEAqgkAIc0GAACVC-cGIuQGAQCqCQAhgQcAAJMLACACAAAAgQEAIEsAALMOACACAAAAsA4AIEsAALEOACAH0gUAAK8OADDTBQAAsA4AENQFAACvDgAw1QUBAKoJACGhBgEAqgkAIc0GAACVC-cGIuQGAQCqCQAhB9IFAACvDgAw0wUAALAOABDUBQAArw4AMNUFAQCqCQAhoQYBAKoJACHNBgAAlQvnBiLkBgEAqgkAIQPVBQEA3QsAIc0GAACyDucGIuQGAQDdCwAhAYwHAAAA5wYCBCYAALQOACDVBQEA3QsAIc0GAACyDucGIuQGAQDdCwAhBVAAAIsWACBRAACOFgAgiQcAAIwWACCKBwAAjRYAII8HAACTBAAgBCYAALYOACDVBQEAAAABzQYAAADnBgLkBgEAAAABA1AAAIsWACCJBwAAjBYAII8HAACTBAAgEBAAALwOACAUAAC6DgAgQQAAuA4AIEIAALkOACBDAAC7DgAg1QUBAAAAAdYFAQAAAAHZBQEAAAAB2wVAAAAAAdwFQAAAAAH_BQAAAL0GAroGAQAAAAG7BgEAAAABvgYAAAC-BgK_BgEAAAABwAYBAAAAAQNQAACJFgAgiQcAAIoWACCPBwAAywEAIANQAACHFgAgiQcAAIgWACCPBwAA-QQAIANQAACFFgAgiQcAAIYWACCPBwAANAAgBFAAAKgOADCJBwAAqQ4AMIsHAACrDgAgjwcAAKwOADAEUAAAnA4AMIkHAACdDgAwiwcAAJ8OACCPBwAAoA4AMAk4AAC_DgAgPQAAvg4AID4AAMAOACDVBQEAAAAB1gUBAAAAAdsFQAAAAAHcBUAAAAABwQYBAAAAAcIGAQAAAAEEUAAAig4AMIkHAACLDgAwiwcAAI0OACCPBwAAjg4AMARQAAD_DQAwiQcAAIAOADCLBwAAgg4AII8HAADuDAAwBFAAAPANADCJBwAA8Q0AMIsHAADzDQAgjwcAAPQNADAJGAAA5w4AIBkAAOgOACAfAADpDgAg1QUBAAAAAdsFQAAAAAHcBUAAAAAB8QZAAAAAAfMGQAAAAAH0BgEAAAABAgAAAO4CACBQAADBDgAgAwAAAFAAIFAAAMEOACBRAADFDgAgCwAAAFAAIBgAAMYOACAZAADHDgAgHwAAyA4AIEsAAMUOACDVBQEA3QsAIdsFQADfCwAh3AVAAN8LACHxBkAA3wsAIfMGQADfCwAh9AYBAN0LACEJGAAAxg4AIBkAAMcOACAfAADIDgAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAh8QZAAN8LACHzBkAA3wsAIfQGAQDdCwAhBVAAAO8VACBRAACDFgAgiQcAAPAVACCKBwAAghYAII8HAABOACALUAAA2Q4AMFEAAN4OADCJBwAA2g4AMIoHAADbDgAwiwcAANwOACCMBwAA3Q4AMI0HAADdDgAwjgcAAN0OADCPBwAA3Q4AMJAHAADfDgAwkQcAAOAOADALUAAAyQ4AMFEAAM4OADCJBwAAyg4AMIoHAADLDgAwiwcAAMwOACCMBwAAzQ4AMI0HAADNDgAwjgcAAM0OADCPBwAAzQ4AMJAHAADPDgAwkQcAANAOADAHFAAA1w4AIB4AANgOACDVBQEAAAAB2QUBAAAAAdsFQAAAAAHcBUAAAAAB7AYBAAAAAQIAAABbACBQAADWDgAgAwAAAFsAIFAAANYOACBRAADTDgAgAUsAAIEWADAMFAAA8woAIBsAAJ8LACAeAACgCwAg0gUAAJ4LADDTBQAAWQAQ1AUAAJ4LADDVBQEAAAAB2QUBAAAAAdsFQACsCQAh3AVAAKwJACHrBgEAqwkAIewGAQAAAAECAAAAWwAgSwAA0w4AIAIAAADRDgAgSwAA0g4AIAnSBQAA0A4AMNMFAADRDgAQ1AUAANAOADDVBQEAqgkAIdkFAQCrCQAh2wVAAKwJACHcBUAArAkAIesGAQCrCQAh7AYBAKsJACEJ0gUAANAOADDTBQAA0Q4AENQFAADQDgAw1QUBAKoJACHZBQEAqwkAIdsFQACsCQAh3AVAAKwJACHrBgEAqwkAIewGAQCrCQAhBdUFAQDdCwAh2QUBAN4LACHbBUAA3wsAIdwFQADfCwAh7AYBAN4LACEHFAAA1A4AIB4AANUOACDVBQEA3QsAIdkFAQDeCwAh2wVAAN8LACHcBUAA3wsAIewGAQDeCwAhB1AAAPkVACBRAAD_FQAgiQcAAPoVACCKBwAA_hUAII0HAAAyACCOBwAAMgAgjwcAADQAIAdQAAD3FQAgUQAA_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_w4AIKQGAQDeCwAhpgYBAN0LACGnBgEA3QsAIagGAQDdCwAhqQYBAN0LACGqBgEA3QsAIasGAQDdCwAhA1AAAJcPACCJBwAAmA8AII8HAAC4AQAgA1AAAJIPACCJBwAAkw8AII8HAAC7AQAgBFAAAIkPADCJBwAAig8AMIsHAACMDwAgjwcAAKAOADAEDAAAhhMAIA0AAPwTACCkBgAA2QsAIJIHAAD-EwAgBAwAAIYTACANAAD8EwAgpQYAANkLACCSBwAA_RMAIAAB6QUBAAAAAQAAAAAAAekFAQAAAAEAAAAAAAGMBwAAALIGAgtQAACwDwAwUQAAtA8AMIkHAACxDwAwigcAALIPADCLBwAAsw8AIIwHAAD8DAAwjQcAAPwMADCOBwAA_AwAMI8HAAD8DAAwkAcAALUPADCRBwAA_wwAMBMKAACUDQAgCwAA0g0AIAwAAJUNACA1AACWDQAg1QUBAAAAAdYFAQAAAAHXBQEAAAAB2AUBAAAAAdsFQAAAAAHcBUAAAAAB3QVAAAAAAe0FAQAAAAHuBQEAAAAB7wUBAAAAAfAFEAAAAAGnBgEAAAABtAYgAAAAAbcGAAAAtwYCuQYBAAAAAQIAAAAbACBQAAC4DwAgAwAAABsAIFAAALgPACBRAAC3DwAgAUsAAOEVADACAAAAGwAgSwAAtw8AIAIAAACADQAgSwAAtg8AIA_VBQEA3QsAIdYFAQDdCwAh1wUBAN4LACHYBQEA3gsAIdsFQADfCwAh3AVAAN8LACHdBUAA4AsAIe0FAQDeCwAh7gUBAN4LACHvBQEA3gsAIfAFEACDDQAhpwYBAN4LACG0BiAA9AwAIbcGAACCDbcGIrkGAQDdCwAhEwoAAIYNACALAADQDQAgDAAAhw0AIDUAAIgNACDVBQEA3QsAIdYFAQDdCwAh1wUBAN4LACHYBQEA3gsAIdsFQADfCwAh3AVAAN8LACHdBUAA4AsAIe0FAQDeCwAh7gUBAN4LACHvBQEA3gsAIfAFEACDDQAhpwYBAN4LACG0BiAA9AwAIbcGAACCDbcGIrkGAQDdCwAhEwoAAJQNACALAADSDQAgDAAAlQ0AIDUAAJYNACDVBQEAAAAB1gUBAAAAAdcFAQAAAAHYBQEAAAAB2wVAAAAAAdwFQAAAAAHdBUAAAAAB7QUBAAAAAe4FAQAAAAHvBQEAAAAB8AUQAAAAAacGAQAAAAG0BiAAAAABtwYAAAC3BgK5BgEAAAABBFAAALAPADCJBwAAsQ8AMIsHAACzDwAgjwcAAPwMADAAAekFAQAAAAEAAAALUAAAwA8AMFEAAMQPADCJBwAAwQ8AMIoHAADCDwAwiwcAAMMPACCMBwAA_AwAMI0HAAD8DAAwjgcAAPwMADCPBwAA_AwAMJAHAADFDwAwkQcAAP8MADATCQAAkw0AIAsAANINACAMAACVDQAgNQAAlg0AINUFAQAAAAHWBQEAAAAB1wUBAAAAAdgFAQAAAAHbBUAAAAAB3AVAAAAAAd0FQAAAAAHtBQEAAAAB7gUBAAAAAe8FAQAAAAHwBRAAAAABpwYBAAAAAbQGIAAAAAG3BgAAALcGArgGAQAAAAECAAAAGwAgUAAAyA8AIAMAAAAbACBQAADIDwAgUQAAxw8AIAFLAADgFQAwAgAAABsAIEsAAMcPACACAAAAgA0AIEsAAMYPACAP1QUBAN0LACHWBQEA3QsAIdcFAQDeCwAh2AUBAN4LACHbBUAA3wsAIdwFQADfCwAh3QVAAOALACHtBQEA3gsAIe4FAQDeCwAh7wUBAN4LACHwBRAAgw0AIacGAQDeCwAhtAYgAPQMACG3BgAAgg23BiK4BgEA3QsAIRMJAACFDQAgCwAA0A0AIAwAAIcNACA1AACIDQAg1QUBAN0LACHWBQEA3QsAIdcFAQDeCwAh2AUBAN4LACHbBUAA3wsAIdwFQADfCwAh3QVAAOALACHtBQEA3gsAIe4FAQDeCwAh7wUBAN4LACHwBRAAgw0AIacGAQDeCwAhtAYgAPQMACG3BgAAgg23BiK4BgEA3QsAIRMJAACTDQAgCwAA0g0AIAwAAJUNACA1AACWDQAg1QUBAAAAAdYFAQAAAAHXBQEAAAAB2AUBAAAAAdsFQAAAAAHcBUAAAAAB3QVAAAAAAe0FAQAAAAHuBQEAAAAB7wUBAAAAAfAFEAAAAAGnBgEAAAABtAYgAAAAAbcGAAAAtwYCuAYBAAAAAQRQAADADwAwiQcAAMEPADCLBwAAww8AII8HAAD8DAAwAekFAQAAAAEAAAAAAAAAAAAAAAVQAADbFQAgUQAA3hUAIIkHAADcFQAgigcAAN0VACCPBwAAswEAIANQAADbFQAgiQcAANwVACCPBwAAswEAIAAAAAVQAADWFQAgUQAA2RUAIIkHAADXFQAgigcAANgVACCPBwAAEwAgA1AAANYVACCJBwAA1xUAII8HAAATACAAAAAAAAVQAADRFQAgUQAA1BUAIIkHAADSFQAgigcAANMVACCPBwAA9AcAIANQAADRFQAgiQcAANIVACCPBwAA9AcAIAAAAAVQAADJFQAgUQAAzxUAIIkHAADKFQAgigcAAM4VACCPBwAA_AMAIAVQAADHFQAgUQAAzBUAIIkHAADIFQAgigcAAMsVACCPBwAAzgUAIANQAADJFQAgiQcAAMoVACCPBwAA_AMAIANQAADHFQAgiQcAAMgVACCPBwAAzgUAIAAAAAVQAAC_FQAgUQAAxRUAIIkHAADAFQAgigcAAMQVACCPBwAA_AMAIAVQAAC9FQAgUQAAwhUAIIkHAAC-FQAgigcAAMEVACCPBwAAzgUAIANQAAC_FQAgiQcAAMAVACCPBwAA_AMAIANQAAC9FQAgiQcAAL4VACCPBwAAzgUAIAAAAAGMBwAAAMsGAgGMBwAAAMwGAgtQAACcEAAwUQAAoRAAMIkHAACdEAAwigcAAJ4QADCLBwAAnxAAIIwHAACgEAAwjQcAAKAQADCOBwAAoBAAMI8HAACgEAAwkAcAAKIQADCRBwAAoxAAMAtQAACTEAAwUQAAlxAAMIkHAACUEAAwigcAAJUQADCLBwAAlhAAIIwHAACeDQAwjQcAAJ4NADCOBwAAng0AMI8HAACeDQAwkAcAAJgQADCRBwAAoQ0AMAtQAACGEAAwUQAAixAAMIkHAACHEAAwigcAAIgQADCLBwAAiRAAIIwHAACKEAAwjQcAAIoQADCOBwAAihAAMI8HAACKEAAwkAcAAIwQADCRBwAAjRAAMAdQAACBEAAgUQAAhBAAIIkHAACCEAAgigcAAIMQACCNBwAAOwAgjgcAADsAII8HAABCACAHUAAA_A8AIFEAAP8PACCJBwAA_Q8AIIoHAAD-DwAgjQcAAEQAII4HAABEACCPBwAARgAgBhMAAOkPACDWBQEAAAAB2wVAAAAAAdwFQAAAAAHHBgEAAAAByAYBAAAAAQIAAABGACBQAAD8DwAgAwAAAEQAIFAAAPwPACBRAACAEAAgCAAAAEQAIBMAAOcPACBLAACAEAAg1gUBAN0LACHbBUAA3wsAIdwFQADfCwAhxwYBAN0LACHIBgEA3QsAIQYTAADnDwAg1gUBAN0LACHbBUAA3wsAIdwFQADfCwAhxwYBAN0LACHIBgEA3QsAIQgTAADwDwAg2wVAAAAAAdwFQAAAAAGoBgEAAAABqQYBAAAAAasGAQAAAAHIBgEAAAAByQYBAAAAAQIAAABCACBQAACBEAAgAwAAADsAIFAAAIEQACBRAACFEAAgCgAAADsAIBMAAO4PACBLAACFEAAg2wVAAN8LACHcBUAA3wsAIagGAQDdCwAhqQYBAN0LACGrBgEA3QsAIcgGAQDdCwAhyQYBAN0LACEIEwAA7g8AINsFQADfCwAh3AVAAN8LACGoBgEA3QsAIakGAQDdCwAhqwYBAN0LACHIBgEA3QsAIckGAQDdCwAhED8BAAAAAUEBAAAAAdsFQAAAAAHcBUAAAAABugYBAAAAAc8GAQAAAAHUBgEAAAAB1gYBAAAAAdcGAQAAAAHZBgAAANkGAtoGAQAAAAHbBgEAAAAB3AYBAAAAAd0GAQAAAAHeBgEAAAAB3wYBAAAAAQIAAAA5ACBQAACSEAAgAwAAADkAIFAAAJIQACBRAACREAAgAUsAALwVADAVEQAAqQsAID8BAKoJACFBAQCqCQAh0gUAALALADDTBQAANwAQ1AUAALALADDbBUAArAkAIdwFQACsCQAhugYBAKoJACHGBgEAqgkAIc8GAQCqCQAh1AYBAKoJACHWBgEAAAAB1wYBAKoJACHZBgAAsQvZBiLaBgEAqgkAIdsGAQCqCQAh3AYBAKoJACHdBgEAqwkAId4GAQCrCQAh3wYBAKsJACECAAAAOQAgSwAAkRAAIAIAAACOEAAgSwAAjxAAIBQ_AQCqCQAhQQEAqgkAIdIFAACNEAAw0wUAAI4QABDUBQAAjRAAMNsFQACsCQAh3AVAAKwJACG6BgEAqgkAIcYGAQCqCQAhzwYBAKoJACHUBgEAqgkAIdYGAQCqCQAh1wYBAKoJACHZBgAAsQvZBiLaBgEAqgkAIdsGAQCqCQAh3AYBAKoJACHdBgEAqwkAId4GAQCrCQAh3wYBAKsJACEUPwEAqgkAIUEBAKoJACHSBQAAjRAAMNMFAACOEAAQ1AUAAI0QADDbBUAArAkAIdwFQACsCQAhugYBAKoJACHGBgEAqgkAIc8GAQCqCQAh1AYBAKoJACHWBgEAqgkAIdcGAQCqCQAh2QYAALEL2QYi2gYBAKoJACHbBgEAqgkAIdwGAQCqCQAh3QYBAKsJACHeBgEAqwkAId8GAQCrCQAhED8BAN0LACFBAQDdCwAh2wVAAN8LACHcBUAA3wsAIboGAQDdCwAhzwYBAN0LACHUBgEA3QsAIdYGAQDdCwAh1wYBAN0LACHZBgAAkBDZBiLaBgEA3QsAIdsGAQDdCwAh3AYBAN0LACHdBgEA3gsAId4GAQDeCwAh3wYBAN4LACEBjAcAAADZBgIQPwEA3QsAIUEBAN0LACHbBUAA3wsAIdwFQADfCwAhugYBAN0LACHPBgEA3QsAIdQGAQDdCwAh1gYBAN0LACHXBgEA3QsAIdkGAACQENkGItoGAQDdCwAh2wYBAN0LACHcBgEA3QsAId0GAQDeCwAh3gYBAN4LACHfBgEA3gsAIRA_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_wUAAAC9BgK6BgEAAAABuwYBAAAAAb4GAAAAvgYCvwYBAAAAAcAGAQAAAAECAAAADwAgUAAA6RAAIAMAAAANACBQAADpEAAgUQAA7RAAIBIAAAANACAQAACbDgAgKAAA1g8AIEEAAJcOACBCAACYDgAgQwAAmg4AIEsAAO0QACDVBQEA3QsAIdYFAQDdCwAh2gUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAJQOvQYiugYBAN4LACG7BgEA3gsAIb4GAACVDr4GIr8GAQDeCwAhwAYBAN4LACEQEAAAmw4AICgAANYPACBBAACXDgAgQgAAmA4AIEMAAJoOACDVBQEA3QsAIdYFAQDdCwAh2gUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAJQOvQYiugYBAN4LACG7BgEA3gsAIb4GAACVDr4GIr8GAQDeCwAhwAYBAN4LACEKEAAA8xAAIBQAAO8QACAkAADwEAAgJgAA8RAAICwAAPIQACDVBQEAAAAB2QUBAAAAAdsFQAAAAAHcBUAAAAABzQYAAADNBgIDUAAAnRUAIIkHAACeFQAgjwcAAIQCACADUAAA6RAAIIkHAADqEAAgjwcAAA8AIANQAAC9EAAgiQcAAL4QACCPBwAAkwQAIANQAAC2EAAgiQcAALcQACCPBwAAWwAgBFAAAK0QADCJBwAArhAAMIsHAACwEAAgjwcAAKAOADAEUAAAnBAAMIkHAACdEAAwiwcAAJ8QACCPBwAAoBAAMARQAACTEAAwiQcAAJQQADCLBwAAlhAAII8HAACeDQAwBFAAAIYQADCJBwAAhxAAMIsHAACJEAAgjwcAAIoQADADUAAAgRAAIIkHAACCEAAgjwcAAEIAIANQAAD8DwAgiQcAAP0PACCPBwAARgAgAAADEQAAnRQAIBMAAI0UACCSBwAAnxQAIAMRAACdFAAgEwAAjRQAIJIHAACeFAAgAekFAQAAAAEAAAAFUAAAmBUAIFEAAJsVACCJBwAAmRUAIIoHAACaFQAgjwcAAM4FACADUAAAmBUAIIkHAACZFQAgjwcAAM4FACAAAAABjAcAAADSBgIBjAcAAADUBgIB6QUBAAAAAQAAAAVQAACTFQAgUQAAlhUAIIkHAACUFQAgigcAAJUVACCPBwAAzgUAIANQAACTFQAgiQcAAJQVACCPBwAAzgUAIAAAAAGMBwAAAOEGAgtQAACdEQAwUQAAohEAMIkHAACeEQAwigcAAJ8RADCLBwAAoBEAIIwHAAChEQAwjQcAAKERADCOBwAAoREAMI8HAAChEQAwkAcAAKMRADCRBwAApBEAMAtQAACUEQAwUQAAmBEAMIkHAACVEQAwigcAAJYRADCLBwAAlxEAIIwHAACODgAwjQcAAI4OADCOBwAAjg4AMI8HAACODgAwkAcAAJkRADCRBwAAkQ4AMBAQAAC8DgAgFAAAug4AICgAANcPACBBAAC4DgAgQwAAuw4AINUFAQAAAAHWBQEAAAAB2QUBAAAAAdoFAQAAAAHbBUAAAAAB3AVAAAAAAf8FAAAAvQYCugYBAAAAAbsGAQAAAAG-BgAAAL4GAr8GAQAAAAECAAAADwAgUAAAnBEAIAMAAAAPACBQAACcEQAgUQAAmxEAIAFLAACSFQAwAgAAAA8AIEsAAJsRACACAAAAkg4AIEsAAJoRACAL1QUBAN0LACHWBQEA3QsAIdkFAQDdCwAh2gUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAJQOvQYiugYBAN4LACG7BgEA3gsAIb4GAACVDr4GIr8GAQDeCwAhEBAAAJsOACAUAACZDgAgKAAA1g8AIEEAAJcOACBDAACaDgAg1QUBAN0LACHWBQEA3QsAIdkFAQDdCwAh2gUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAJQOvQYiugYBAN4LACG7BgEA3gsAIb4GAACVDr4GIr8GAQDeCwAhEBAAALwOACAUAAC6DgAgKAAA1w8AIEEAALgOACBDAAC7DgAg1QUBAAAAAdYFAQAAAAHZBQEAAAAB2gUBAAAAAdsFQAAAAAHcBUAAAAAB_wUAAAC9BgK6BgEAAAABuwYBAAAAAb4GAAAAvgYCvwYBAAAAAQYUAACrEQAg1QUBAAAAAdkFAQAAAAHbBUAAAAAB3AVAAAAAAc0GAAAA4gYCAgAAAAsAIFAAAKoRACADAAAACwAgUAAAqhEAIFEAAKgRACABSwAAkRUAMAsUAACvCwAgQgAA1gsAINIFAADUCwAw0wUAAAgAENQFAADUCwAw1QUBAAAAAdkFAQAAAAHbBUAArAkAIdwFQACsCQAhwAYBAKoJACHNBgAA1QviBiICAAAACwAgSwAAqBEAIAIAAAClEQAgSwAAphEAIAnSBQAApBEAMNMFAAClEQAQ1AUAAKQRADDVBQEAqgkAIdkFAQCqCQAh2wVAAKwJACHcBUAArAkAIcAGAQCqCQAhzQYAANUL4gYiCdIFAACkEQAw0wUAAKURABDUBQAApBEAMNUFAQCqCQAh2QUBAKoJACHbBUAArAkAIdwFQACsCQAhwAYBAKoJACHNBgAA1QviBiIF1QUBAN0LACHZBQEA3QsAIdsFQADfCwAh3AVAAN8LACHNBgAApxHiBiIBjAcAAADiBgIGFAAAqREAINUFAQDdCwAh2QUBAN0LACHbBUAA3wsAIdwFQADfCwAhzQYAAKcR4gYiBVAAAIwVACBRAACPFQAgiQcAAI0VACCKBwAAjhUAII8HAACEAgAgBhQAAKsRACDVBQEAAAAB2QUBAAAAAdsFQAAAAAHcBUAAAAABzQYAAADiBgIDUAAAjBUAIIkHAACNFQAgjwcAAIQCACAEUAAAnREAMIkHAACeEQAwiwcAAKARACCPBwAAoREAMARQAACUEQAwiQcAAJURADCLBwAAlxEAII8HAACODgAwAAAB6QUBAAAAAQAAAAVQAACHFQAgUQAAihUAIIkHAACIFQAgigcAAIkVACCPBwAA-QQAIANQAACHFQAgiQcAAIgVACCPBwAA-QQAIAAAAAAAAAAAAAAAAAVQAACCFQAgUQAAhRUAIIkHAACDFQAgigcAAIQVACCPBwAANAAgA1AAAIIVACCJBwAAgxUAII8HAAA0ACAHEAAAoQ8AIBEAAJ0UACAUAACgFAAgJAAAixQAICYAAIcUACAsAACSFAAgkgcAAKMUACAAAAAB6QUBAAAAAQAAAAGMBwAAAOgGAgtQAADIEgAwUQAAzRIAMIkHAADJEgAwigcAAMoSADCLBwAAyxIAIIwHAADMEgAwjQcAAMwSADCOBwAAzBIAMI8HAADMEgAwkAcAAM4SADCRBwAAzxIAMAtQAAC8EgAwUQAAwRIAMIkHAAC9EgAwigcAAL4SADCLBwAAvxIAIIwHAADAEgAwjQcAAMASADCOBwAAwBIAMI8HAADAEgAwkAcAAMISADCRBwAAwxIAMAtQAACwEgAwUQAAtRIAMIkHAACxEgAwigcAALISADCLBwAAsxIAIIwHAAC0EgAwjQcAALQSADCOBwAAtBIAMI8HAAC0EgAwkAcAALYSADCRBwAAtxIAMAtQAACNEgAwUQAAkhIAMIkHAACOEgAwigcAAI8SADCLBwAAkBIAIIwHAACREgAwjQcAAJESADCOBwAAkRIAMI8HAACREgAwkAcAAJMSADCRBwAAlBIAMAtQAADsEQAwUQAA8REAMIkHAADtEQAwigcAAO4RADCLBwAA7xEAIIwHAADwEQAwjQcAAPARADCOBwAA8BEAMI8HAADwEQAwkAcAAPIRADCRBwAA8xEAMAtQAADTEQAwUQAA2BEAMIkHAADUEQAwigcAANURADCLBwAA1hEAIIwHAADXEQAwjQcAANcRADCOBwAA1xEAMI8HAADXEQAwkAcAANkRADCRBwAA2hEAMAcZAADrEQAg1QUBAAAAAdsFQAAAAAHcBUAAAAAB7gZAAAAAAe8GAQAAAAHwBgIAAAABAgAAAHAAIFAAAOoRACADAAAAcAAgUAAA6hEAIFEAAN0RACABSwAAgRUAMAwTAACYCwAgGQAA3goAINIFAACXCwAw0wUAAG4AENQFAACXCwAw1QUBAAAAAdsFQACsCQAh3AVAAKwJACHIBgEAqgkAIe4GQACsCQAh7wYBAAAAAfAGAgDkCQAhAgAAAHAAIEsAAN0RACACAAAA2xEAIEsAANwRACAK0gUAANoRADDTBQAA2xEAENQFAADaEQAw1QUBAKoJACHbBUAArAkAIdwFQACsCQAhyAYBAKoJACHuBkAArAkAIe8GAQCqCQAh8AYCAOQJACEK0gUAANoRADDTBQAA2xEAENQFAADaEQAw1QUBAKoJACHbBUAArAkAIdwFQACsCQAhyAYBAKoJACHuBkAArAkAIe8GAQCqCQAh8AYCAOQJACEG1QUBAN0LACHbBUAA3wsAIdwFQADfCwAh7gZAAN8LACHvBgEA3QsAIfAGAgCmDAAhBxkAAN4RACDVBQEA3QsAIdsFQADfCwAh3AVAAN8LACHuBkAA3wsAIe8GAQDdCwAh8AYCAKYMACELUAAA3xEAMFEAAOMRADCJBwAA4BEAMIoHAADhEQAwiwcAAOIRACCMBwAA3Q4AMI0HAADdDgAwjgcAAN0OADCPBwAA3Q4AMJAHAADkEQAwkQcAAOAOADAGGgAA6REAINUFAQAAAAHbBUAAAAAB3AVAAAAAAfEGQAAAAAHyBgEAAAABAgAAAFQAIFAAAOgRACADAAAAVAAgUAAA6BEAIFEAAOYRACABSwAAgBUAMAIAAABUACBLAADmEQAgAgAAAOEOACBLAADlEQAgBdUFAQDdCwAh2wVAAN8LACHcBUAA3wsAIfEGQADfCwAh8gYBAN4LACEGGgAA5xEAINUFAQDdCwAh2wVAAN8LACHcBUAA3wsAIfEGQADfCwAh8gYBAN4LACEHUAAA-xQAIFEAAP4UACCJBwAA_BQAIIoHAAD9FAAgjQcAAFAAII4HAABQACCPBwAA7gIAIAYaAADpEQAg1QUBAAAAAdsFQAAAAAHcBUAAAAAB8QZAAAAAAfIGAQAAAAEDUAAA-xQAIIkHAAD8FAAgjwcAAO4CACAHGQAA6xEAINUFAQAAAAHbBUAAAAAB3AVAAAAAAe4GQAAAAAHvBgEAAAAB8AYCAAAAAQRQAADfEQAwiQcAAOARADCLBwAA4hEAII8HAADdDgAwBxwAAIwSACDVBQEAAAAB2wVAAAAAAdwFQAAAAAHuBkAAAAAB7wYBAAAAAfAGAgAAAAECAAAAbAAgUAAAixIAIAMAAABsACBQAACLEgAgUQAA9hEAIAFLAAD6FAAwDBMAAJgLACAcAACaCwAg0gUAAJkLADDTBQAAYQAQ1AUAAJkLADDVBQEAAAAB2wVAAKwJACHcBUAArAkAIcgGAQCqCQAh7gZAAKwJACHvBgEAAAAB8AYCAOQJACECAAAAbAAgSwAA9hEAIAIAAAD0EQAgSwAA9REAIArSBQAA8xEAMNMFAAD0EQAQ1AUAAPMRADDVBQEAqgkAIdsFQACsCQAh3AVAAKwJACHIBgEAqgkAIe4GQACsCQAh7wYBAKoJACHwBgIA5AkAIQrSBQAA8xEAMNMFAAD0EQAQ1AUAAPMRADDVBQEAqgkAIdsFQACsCQAh3AVAAKwJACHIBgEAqgkAIe4GQACsCQAh7wYBAKoJACHwBgIA5AkAIQbVBQEA3QsAIdsFQADfCwAh3AVAAN8LACHuBkAA3wsAIe8GAQDdCwAh8AYCAKYMACEHHAAA9xEAINUFAQDdCwAh2wVAAN8LACHcBUAA3wsAIe4GQADfCwAh7wYBAN0LACHwBgIApgwAIQtQAAD4EQAwUQAA_REAMIkHAAD5EQAwigcAAPoRADCLBwAA-xEAIIwHAAD8EQAwjQcAAPwRADCOBwAA_BEAMI8HAAD8EQAwkAcAAP4RADCRBwAA_xEAMAQdAACKEgAg1QUBAAAAAdsFQAAAAAHcBUAAAAABAgAAAGQAIFAAAIkSACADAAAAZAAgUAAAiRIAIFEAAIISACABSwAA-RQAMAkXAACcCwAgHQAAnQsAINIFAACbCwAw0wUAAF8AENQFAACbCwAw1QUBAAAAAdsFQACsCQAh3AVAAKwJACHtBgEAqwkAIQIAAABkACBLAACCEgAgAgAAAIASACBLAACBEgAgB9IFAAD_EQAw0wUAAIASABDUBQAA_xEAMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAIe0GAQCrCQAhB9IFAAD_EQAw0wUAAIASABDUBQAA_xEAMNUFAQCqCQAh2wVAAKwJACHcBUAArAkAIe0GAQCrCQAhA9UFAQDdCwAh2wVAAN8LACHcBUAA3wsAIQQdAACDEgAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhB1AAAIQSACBRAACHEgAgiQcAAIUSACCKBwAAhhIAII0HAABZACCOBwAAWQAgjwcAAFsAIAcUAADXDgAgGwAAvBAAINUFAQAAAAHZBQEAAAAB2wVAAAAAAdwFQAAAAAHrBgEAAAABAgAAAFsAIFAAAIQSACADAAAAWQAgUAAAhBIAIFEAAIgSACAJAAAAWQAgFAAA1A4AIBsAALsQACBLAACIEgAg1QUBAN0LACHZBQEA3gsAIdsFQADfCwAh3AVAAN8LACHrBgEA3gsAIQcUAADUDgAgGwAAuxAAINUFAQDdCwAh2QUBAN4LACHbBUAA3wsAIdwFQADfCwAh6wYBAN4LACEEHQAAihIAINUFAQAAAAHbBUAAAAAB3AVAAAAAAQNQAACEEgAgiQcAAIUSACCPBwAAWwAgBxwAAIwSACDVBQEAAAAB2wVAAAAAAdwFQAAAAAHuBkAAAAAB7wYBAAAAAfAGAgAAAAEEUAAA-BEAMIkHAAD5EQAwiwcAAPsRACCPBwAA_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_AMAIANQAADlFAAgiQcAAOYUACCPBwAA_AMAIAAAAAAAAAdQAADgFAAgUQAA4xQAIIkHAADhFAAgigcAAOIUACCNBwAAYQAgjgcAAGEAII8HAABsACADUAAA4BQAIIkHAADhFAAgjwcAAGwAIAAAAAAABVAAANsUACBRAADeFAAgiQcAANwUACCKBwAA3RQAII8HAAD8AwAgA1AAANsUACCJBwAA3BQAII8HAAD8AwAgAAAAAAAAAAAFUAAA1hQAIFEAANkUACCJBwAA1xQAIIoHAADYFAAgjwcAAPwDACADUAAA1hQAIIkHAADXFAAgjwcAAPwDACAAAAADFwAAmRQAIBoAAJQUACCSBwAAmhQAIAkIAAC6DwAgEQAAnRQAIBsAAJQUACA3AACuFAAgOQAAsBQAIDoAAMcRACA7AACxFAAgPAAAshQAIJIHAACzFAAgAAAB6QUBAAAAAQAAAAAABVAAANEUACBRAADUFAAgiQcAANIUACCKBwAA0xQAII8HAABKACADUAAA0RQAIIkHAADSFAAgjwcAAEoAIAAAAAAABVAAAMwUACBRAADPFAAgiQcAAM0UACCKBwAAzhQAII8HAAD8AwAgA1AAAMwUACCJBwAAzRQAII8HAAD8AwAgAAAABVAAAMYUACBRAADKFAAgiQcAAMcUACCKBwAAyRQAII8HAACbAgAgC1AAAJ0TADBRAAChEwAwiQcAAJ4TADCKBwAAnxMAMIsHAACgEwAgjAcAAI4OADCNBwAAjg4AMI4HAACODgAwjwcAAI4OADCQBwAAohMAMJEHAACRDgAwEBAAALwOACAUAAC6DgAgKAAA1w8AIEIAALkOACBDAAC7DgAg1QUBAAAAAdYFAQAAAAHZBQEAAAAB2gUBAAAAAdsFQAAAAAHcBUAAAAAB_wUAAAC9BgK6BgEAAAABuwYBAAAAAb4GAAAAvgYCwAYBAAAAAQIAAAAPACBQAAClEwAgAwAAAA8AIFAAAKUTACBRAACkEwAgAUsAAMgUADACAAAADwAgSwAApBMAIAIAAACSDgAgSwAAoxMAIAvVBQEA3QsAIdYFAQDdCwAh2QUBAN0LACHaBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAAlA69BiK6BgEA3gsAIbsGAQDeCwAhvgYAAJUOvgYiwAYBAN4LACEQEAAAmw4AIBQAAJkOACAoAADWDwAgQgAAmA4AIEMAAJoOACDVBQEA3QsAIdYFAQDdCwAh2QUBAN0LACHaBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAAlA69BiK6BgEA3gsAIbsGAQDeCwAhvgYAAJUOvgYiwAYBAN4LACEQEAAAvA4AIBQAALoOACAoAADXDwAgQgAAuQ4AIEMAALsOACDVBQEAAAAB1gUBAAAAAdkFAQAAAAHaBQEAAAAB2wVAAAAAAdwFQAAAAAH_BQAAAL0GAroGAQAAAAG7BgEAAAABvgYAAAC-BgLABgEAAAABA1AAAMYUACCJBwAAxxQAII8HAACbAgAgBFAAAJ0TADCJBwAAnhMAMIsHAACgEwAgjwcAAI4OADAAAAALUAAArBMAMFEAALETADCJBwAArRMAMIoHAACuEwAwiwcAAK8TACCMBwAAsBMAMI0HAACwEwAwjgcAALATADCPBwAAsBMAMJAHAACyEwAwkQcAALMTADAGQAAApxMAINUFAQAAAAHWBQEAAAAB2wVAAAAAAdwFQAAAAAHaBgEAAAABAgAAAMsBACBQAAC3EwAgAwAAAMsBACBQAAC3EwAgUQAAthMAIAFLAADFFAAwCz8AAPkKACBAAACuCgAg0gUAAPgKADDTBQAAyAEAENQFAAD4CgAw1QUBAAAAAdYFAQCqCQAh2wVAAKwJACHcBUAArAkAIdoGAQCrCQAh9gYBAKoJACECAAAAywEAIEsAALYTACACAAAAtBMAIEsAALUTACAJ0gUAALMTADDTBQAAtBMAENQFAACzEwAw1QUBAKoJACHWBQEAqgkAIdsFQACsCQAh3AVAAKwJACHaBgEAqwkAIfYGAQCqCQAhCdIFAACzEwAw0wUAALQTABDUBQAAsxMAMNUFAQCqCQAh1gUBAKoJACHbBUAArAkAIdwFQACsCQAh2gYBAKsJACH2BgEAqgkAIQXVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIdoGAQDeCwAhBkAAAJwTACDVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIdoGAQDeCwAhBkAAAKcTACDVBQEAAAAB1gUBAAAAAdsFQAAAAAHcBUAAAAAB2gYBAAAAAQRQAACsEwAwiQcAAK0TADCLBwAArxMAII8HAACwEwAwAAHpBQEAAAABAAAAAYwHAAAA-gYCAYwHAAAA-wYCB1AAANMTACBRAADWEwAgiQcAANQTACCKBwAA1RMAII0HAAADACCOBwAAAwAgjwcAAAEAIAdQAADOEwAgUQAA0RMAIIkHAADPEwAgigcAANATACCNBwAACAAgjgcAAAgAII8HAAALACAHUAAAyRMAIFEAAMwTACCJBwAAyhMAIIoHAADLEwAgjQcAAD0AII4HAAA9ACCPBwAAPwAgB1AAAMQTACBRAADHEwAgiQcAAMUTACCKBwAAxhMAII0HAAAyACCOBwAAMgAgjwcAADQAIAoQAADzEAAgEQAAghEAICQAAPAQACAmAADxEAAgLAAA8hAAINUFAQAAAAHbBUAAAAAB3AVAAAAAAcYGAQAAAAHNBgAAAM0GAgIAAAA0ACBQAADEEwAgAwAAADIAIFAAAMQTACBRAADIEwAgDAAAADIAIBAAAKwQACARAACBEQAgJAAAqRAAICYAAKoQACAsAACrEAAgSwAAyBMAINUFAQDdCwAh2wVAAN8LACHcBUAA3wsAIcYGAQDdCwAhzQYAAKYQzQYiChAAAKwQACARAACBEQAgJAAAqRAAICYAAKoQACAsAACrEAAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhxgYBAN0LACHNBgAAphDNBiIGEwAA6BIAINUFAQAAAAHbBUAAAAAB3AVAAAAAAcgGAQAAAAHNBgAAAOsGAgIAAAA_ACBQAADJEwAgAwAAAD0AIFAAAMkTACBRAADNEwAgCAAAAD0AIBMAAOcSACBLAADNEwAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhyAYBAN0LACHNBgAA0hLrBiIGEwAA5xIAINUFAQDdCwAh2wVAAN8LACHcBUAA3wsAIcgGAQDdCwAhzQYAANIS6wYiBkIAALURACDVBQEAAAAB2wVAAAAAAdwFQAAAAAHABgEAAAABzQYAAADiBgICAAAACwAgUAAAzhMAIAMAAAAIACBQAADOEwAgUQAA0hMAIAgAAAAIACBCAAC0EQAgSwAA0hMAINUFAQDdCwAh2wVAAN8LACHcBUAA3wsAIcAGAQDdCwAhzQYAAKcR4gYiBkIAALQRACDVBQEA3QsAIdsFQADfCwAh3AVAAN8LACHABgEA3QsAIc0GAACnEeIGIgUFAADZEwAg1QUBAAAAAdsFQAAAAAHcBUAAAAAB-wYBAAAAAQIAAAABACBQAADTEwAgAwAAAAMAIFAAANMTACBRAADXEwAgBwAAAAMAIAUAANgTACBLAADXEwAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAh-wYBAN0LACEFBQAA2BMAINUFAQDdCwAh2wVAAN8LACHcBUAA3wsAIfsGAQDdCwAhBVAAAMAUACBRAADDFAAgiQcAAMEUACCKBwAAwhQAII8HAADtAQAgA1AAAMAUACCJBwAAwRQAII8HAADtAQAgA1AAANMTACCJBwAA1BMAII8HAAABACADUAAAzhMAIIkHAADPEwAgjwcAAAsAIANQAADJEwAgiQcAAMoTACCPBwAAPwAgA1AAAMQTACCJBwAAxRMAII8HAAA0ACADBQAAuBQAIBQAAKAUACCSBwAAuRQAIAMUAACgFAAgQgAAtRQAIJIHAAC3FAAgAxMAAI0UACAUAACgFAAgkgcAAKEUACAB6QUBAAAAAQAAAAtQAADmEwAwUQAA6xMAMIkHAADnEwAwigcAAOgTADCLBwAA6RMAIIwHAADqEwAwjQcAAOoTADCOBwAA6hMAMI8HAADqEwAwkAcAAOwTADCRBwAA7RMAMAUUAADzEwAg1QUBAAAAAdkFAQAAAAHbBUAAAAAB3AVAAAAAAQIAAAABACBQAADyEwAgAwAAAAEAIFAAAPITACBRAADwEwAgAUsAAL8UADAKBQAA2AsAIBQAAK8LACDSBQAA1wsAMNMFAAADABDUBQAA1wsAMNUFAQAAAAHZBQEAAAAB2wVAAKwJACHcBUAArAkAIfsGAQCqCQAhAgAAAAEAIEsAAPATACACAAAA7hMAIEsAAO8TACAI0gUAAO0TADDTBQAA7hMAENQFAADtEwAw1QUBAKoJACHZBQEAqgkAIdsFQACsCQAh3AVAAKwJACH7BgEAqgkAIQjSBQAA7RMAMNMFAADuEwAQ1AUAAO0TADDVBQEAqgkAIdkFAQCqCQAh2wVAAKwJACHcBUAArAkAIfsGAQCqCQAhBNUFAQDdCwAh2QUBAN0LACHbBUAA3wsAIdwFQADfCwAhBRQAAPETACDVBQEA3QsAIdkFAQDdCwAh2wVAAN8LACHcBUAA3wsAIQVQAAC6FAAgUQAAvRQAIIkHAAC7FAAgigcAALwUACCPBwAAhAIAIAUUAADzEwAg1QUBAAAAAdkFAQAAAAHbBUAAAAAB3AVAAAAAAQNQAAC6FAAgiQcAALsUACCPBwAAhAIAIARQAADmEwAwiQcAAOcTADCLBwAA6RMAII8HAADqEwAwAAHpBQEAAAABAAAAAhIAALkTACCSBwAAuhMAIAHpBQEAAAABBg4AAJ8PACAPAACgDwAgEAAAoQ8AIN0FAADZCwAgrAYAANkLACCSBwAAog8AIAHpBQEAAAABAekFAQAAAAEB6QUBAAAAAQU0AACCDAAg1wUAANkLACDYBQAA2QsAIN0FAADZCwAgkgcAAIMMACAAAekFAQAAAAEKDQAA_BMAICQAAIsUACAlAADEEQAgLQAAgRQAIDEAAKQUACAyAAClFAAglgYAANkLACCeBgAA2QsAIJ8GAADZCwAgkgcAAKYUACAB6QUBAAAAAQQvAACQDAAg1wUAANkLACD1BQAA2QsAIJIHAACRDAAgAekFAQAAAAEFJQAAxBEAICcAAMURACApAADGEQAgKwAAxxEAIJIHAADIEQAgAekFAQAAAAEGDAAAhhMAIDgAAPUOACA9AACvEQAgPgAAxhEAIMIGAADZCwAgkgcAAP8TACAB6QUBAAAAAQsQAAChDwAgFAAAxBEAICgAAIkUACBBAAC0FAAgQgAAtRQAIEMAAMURACC6BgAA2QsAILsGAADZCwAgvwYAANkLACDABgAA2QsAIJIHAAC2FAAgAekFAQAAAAEIAwAA3RIAIBUAAN4SACAWAADfEgAgIQAA4BIAICIAAOESACAjAADiEgAg6QYAANkLACCSBwAA4xIAIAHpBQEAAAABAAHpBQEAAAABAxMAAI0UACAcAACPFAAgkgcAAJAUACAHFAAAxBEAIBsAAJQUACAeAACVFAAg2QUAANkLACDrBgAA2QsAIOwGAADZCwAgkgcAAJYUACAB6QUBAAAAAQUMAACGEwAgGAAAhRMAIBkAAIcTACAfAACIEwAgkgcAAIkTACAEFwAAkRQAIB0AAJIUACDtBgAA2QsAIJIHAACTFAAgAekFAQAAAAEDEwAAjRQAIBkAAIcTACCSBwAAjhQAIAHpBQEAAAABAxMAAI0UACAgAACbFAAgkgcAAJwUACAB6QUBAAAAAQAB6QUBAAAAAQYDAAD5EAAgBwAA9A4AIA4AAPsQACAPAAD8EAAgEgAA-hAAIJIHAAD9EAAgAekFAQAAAAEB6QUBAAAAAQUGAADeEwAgJQAAxBEAIEQAAN8TACBFAADgEwAgkgcAAOETACAB6QUBAAAAAQHpBQEAAAABAekFAQAAAAEAAAHpBQEAAAABDgkAAKoUACAKAACrFAAgCwAArBQAIAwAAIYTACA1AACBFAAg1wUAANkLACDYBQAA2QsAIN0FAADZCwAg7QUAANkLACDuBQAA2QsAIO8FAADZCwAg8AUAANkLACCnBgAA2QsAIJIHAACtFAAgCAsAAIAUACA1AACBFAAg1wUAANkLACDdBQAA2QsAIO0FAADZCwAg7gUAANkLACDvBQAA2QsAIJIHAACCFAAgAekFAQAAAAECCAAAug8AIJIHAAC7DwAgAggAALoPACCSBwAAyg8AIAkIAAC6DwAgKAAAiRQAIDcAAK4UACDXBQAA2QsAINgFAADZCwAg2gUAANkLACDdBQAA2QsAILUGAADZCwAgkgcAAK8UACAB6QUBAAAAAQQHAAD0DgAgOAAA9Q4AIJsGAADZCwAgkgcAAPYOACAB6QUBAAAAAQAAAAHpBQEAAAABBD8AAPoTACBAAACvEQAg2gYAANkLACCSBwAA-xMAIAMDAACuEQAgPQAArxEAIJIHAACwEQAgAekFAQAAAAEB6QUBAAAAAQMDAAD1EwAgyQYAANkLACCSBwAA9hMAIAHpBQEAAAABCCUAAN0TACBEAADbEwAgRQAA3BMAINUFAQAAAAH_BQAAAPoGAoIGAAAA-wYC9wYBAAAAAfgGAQAAAAECAAAAhAIAIFAAALoUACADAAAAhwIAIFAAALoUACBRAAC-FAAgCgAAAIcCACAlAADDEwAgRAAAwRMAIEUAAMITACBLAAC-FAAg1QUBAN0LACH_BQAAvhP6BiKCBgAAvxP7BiL3BgEA3QsAIfgGAQDdCwAhCCUAAMMTACBEAADBEwAgRQAAwhMAINUFAQDdCwAh_wUAAL4T-gYiggYAAL8T-wYi9wYBAN0LACH4BgEA3QsAIQTVBQEAAAAB2QUBAAAAAdsFQAAAAAHcBUAAAAABB9UFAQAAAAHbBUAAAAAB3AVAAAAAAagGAQAAAAGpBgEAAAABqwYBAAAAAckGAQAAAAECAAAA7QEAIFAAAMAUACADAAAA8AEAIFAAAMAUACBRAADEFAAgCQAAAPABACBLAADEFAAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhqAYBAN0LACGpBgEA3QsAIasGAQDdCwAhyQYBAN4LACEH1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhqAYBAN0LACGpBgEA3QsAIasGAQDdCwAhyQYBAN4LACEF1QUBAAAAAdYFAQAAAAHbBUAAAAAB3AVAAAAAAdoGAQAAAAEE1QUBAAAAAdYFAQAAAAHbBUAAAAAB3AVAAAAAAQIAAACbAgAgUAAAxhQAIAvVBQEAAAAB1gUBAAAAAdkFAQAAAAHaBQEAAAAB2wVAAAAAAdwFQAAAAAH_BQAAAL0GAroGAQAAAAG7BgEAAAABvgYAAAC-BgLABgEAAAABAwAAAJ4CACBQAADGFAAgUQAAyxQAIAYAAACeAgAgSwAAyxQAINUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAhBNUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAhDQMAANcSACAVAADYEgAgFgAA2RIAICIAANsSACAjAADcEgAg1QUBAAAAAdYFAQAAAAHbBUAAAAAB3AVAAAAAAf8FAAAA4QYCmwYBAAAAAegGAAAA6AYC6QYBAAAAAQIAAAD8AwAgUAAAzBQAIAMAAAD_AwAgUAAAzBQAIFEAANAUACAPAAAA_wMAIAMAAM0RACAVAADOEQAgFgAAzxEAICIAANERACAjAADSEQAgSwAA0BQAINUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAJER4QYimwYBAN0LACHoBgAAzBHoBiLpBgEA3gsAIQ0DAADNEQAgFQAAzhEAIBYAAM8RACAiAADREQAgIwAA0hEAINUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAJER4QYimwYBAN0LACHoBgAAzBHoBiLpBgEA3gsAIQgTAACXEwAg1QUBAAAAAdsFQAAAAAHcBUAAAAAByAYBAAAAAe4GQAAAAAHvBgEAAAAB8AYCAAAAAQIAAABKACBQAADRFAAgAwAAAEgAIFAAANEUACBRAADVFAAgCgAAAEgAIBMAAJYTACBLAADVFAAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhyAYBAN0LACHuBkAA3wsAIe8GAQDdCwAh8AYCAKYMACEIEwAAlhMAINUFAQDdCwAh2wVAAN8LACHcBUAA3wsAIcgGAQDdCwAh7gZAAN8LACHvBgEA3QsAIfAGAgCmDAAhDQMAANcSACAVAADYEgAgFgAA2RIAICEAANoSACAiAADbEgAg1QUBAAAAAdYFAQAAAAHbBUAAAAAB3AVAAAAAAf8FAAAA4QYCmwYBAAAAAegGAAAA6AYC6QYBAAAAAQIAAAD8AwAgUAAA1hQAIAMAAAD_AwAgUAAA1hQAIFEAANoUACAPAAAA_wMAIAMAAM0RACAVAADOEQAgFgAAzxEAICEAANARACAiAADREQAgSwAA2hQAINUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAJER4QYimwYBAN0LACHoBgAAzBHoBiLpBgEA3gsAIQ0DAADNEQAgFQAAzhEAIBYAAM8RACAhAADQEQAgIgAA0REAINUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAJER4QYimwYBAN0LACHoBgAAzBHoBiLpBgEA3gsAIQ0DAADXEgAgFQAA2BIAIBYAANkSACAhAADaEgAgIwAA3BIAINUFAQAAAAHWBQEAAAAB2wVAAAAAAdwFQAAAAAH_BQAAAOEGApsGAQAAAAHoBgAAAOgGAukGAQAAAAECAAAA_AMAIFAAANsUACADAAAA_wMAIFAAANsUACBRAADfFAAgDwAAAP8DACADAADNEQAgFQAAzhEAIBYAAM8RACAhAADQEQAgIwAA0hEAIEsAAN8UACDVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIf8FAACREeEGIpsGAQDdCwAh6AYAAMwR6AYi6QYBAN4LACENAwAAzREAIBUAAM4RACAWAADPEQAgIQAA0BEAICMAANIRACDVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIf8FAACREeEGIpsGAQDdCwAh6AYAAMwR6AYi6QYBAN4LACEIEwAA9xIAINUFAQAAAAHbBUAAAAAB3AVAAAAAAcgGAQAAAAHuBkAAAAAB7wYBAAAAAfAGAgAAAAECAAAAbAAgUAAA4BQAIAMAAABhACBQAADgFAAgUQAA5BQAIAoAAABhACATAAD2EgAgSwAA5BQAINUFAQDdCwAh2wVAAN8LACHcBUAA3wsAIcgGAQDdCwAh7gZAAN8LACHvBgEA3QsAIfAGAgCmDAAhCBMAAPYSACDVBQEA3QsAIdsFQADfCwAh3AVAAN8LACHIBgEA3QsAIe4GQADfCwAh7wYBAN0LACHwBgIApgwAIQ0VAADYEgAgFgAA2RIAICEAANoSACAiAADbEgAgIwAA3BIAINUFAQAAAAHWBQEAAAAB2wVAAAAAAdwFQAAAAAH_BQAAAOEGApsGAQAAAAHoBgAAAOgGAukGAQAAAAECAAAA_AMAIFAAAOUUACADAAAA_wMAIFAAAOUUACBRAADpFAAgDwAAAP8DACAVAADOEQAgFgAAzxEAICEAANARACAiAADREQAgIwAA0hEAIEsAAOkUACDVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIf8FAACREeEGIpsGAQDdCwAh6AYAAMwR6AYi6QYBAN4LACENFQAAzhEAIBYAAM8RACAhAADQEQAgIgAA0REAICMAANIRACDVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIf8FAACREeEGIpsGAQDdCwAh6AYAAMwR6AYi6QYBAN4LACEIBgAA2hMAICUAAN0TACBEAADbEwAg1QUBAAAAAf8FAAAA-gYCggYAAAD7BgL3BgEAAAAB-AYBAAAAAQIAAACEAgAgUAAA6hQAIAMAAACHAgAgUAAA6hQAIFEAAO4UACAKAAAAhwIAIAYAAMATACAlAADDEwAgRAAAwRMAIEsAAO4UACDVBQEA3QsAIf8FAAC-E_oGIoIGAAC_E_sGIvcGAQDdCwAh-AYBAN0LACEIBgAAwBMAICUAAMMTACBEAADBEwAg1QUBAN0LACH_BQAAvhP6BiKCBgAAvxP7BiL3BgEA3QsAIfgGAQDdCwAhBdUFAQAAAAHZBQEAAAAB2wVAAAAAAdwFQAAAAAHNBgAAAOsGAgfbBUAAAAAB3AVAAAAAAagGAQAAAAGpBgEAAAABqwYBAAAAAcYGAQAAAAHJBgEAAAABBdYFAQAAAAHbBUAAAAAB3AVAAAAAAcYGAQAAAAHHBgEAAAABEQgAAO8OACARAADrDgAgNwAA4w8AIDkAAO0OACA6AADuDgAgOwAA8A4AIDwAAPEOACDVBQEAAAAB1gUBAAAAAdsFQAAAAAHcBUAAAAABpAYBAAAAAbUGAQAAAAHDBgEAAAABxAYBAAAAAcUGEAAAAAHGBgEAAAABAgAAABMAIFAAAPIUACADAAAAEQAgUAAA8hQAIFEAAPYUACATAAAAEQAgCAAAqQ0AIBEAAKUNACA3AADiDwAgOQAApw0AIDoAAKgNACA7AACqDQAgPAAAqw0AIEsAAPYUACDVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIaQGAQDdCwAhtQYBAN0LACHDBgEA3QsAIcQGAQDdCwAhxQYQAOwLACHGBgEA3QsAIREIAACpDQAgEQAApQ0AIDcAAOIPACA5AACnDQAgOgAAqA0AIDsAAKoNACA8AACrDQAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACGkBgEA3QsAIbUGAQDdCwAhwwYBAN0LACHEBgEA3QsAIcUGEADsCwAhxgYBAN0LACEE1QUBAAAAAdsFQAAAAAHcBUAAAAAB9QYCAAAAAQbVBQEAAAAB2wVAAAAAAdwFQAAAAAHuBkAAAAAB7wYBAAAAAfAGAgAAAAED1QUBAAAAAdsFQAAAAAHcBUAAAAABBtUFAQAAAAHbBUAAAAAB3AVAAAAAAe4GQAAAAAHvBgEAAAAB8AYCAAAAAQoMAACrEgAgGAAA5w4AIB8AAOkOACDVBQEAAAAB2wVAAAAAAdwFQAAAAAGnBgEAAAAB8QZAAAAAAfMGQAAAAAH0BgEAAAABAgAAAO4CACBQAAD7FAAgAwAAAFAAIFAAAPsUACBRAAD_FAAgDAAAAFAAIAwAAKoSACAYAADGDgAgHwAAyA4AIEsAAP8UACDVBQEA3QsAIdsFQADfCwAh3AVAAN8LACGnBgEA3QsAIfEGQADfCwAh8wZAAN8LACH0BgEA3QsAIQoMAACqEgAgGAAAxg4AIB8AAMgOACDVBQEA3QsAIdsFQADfCwAh3AVAAN8LACGnBgEA3QsAIfEGQADfCwAh8wZAAN8LACH0BgEA3QsAIQXVBQEAAAAB2wVAAAAAAdwFQAAAAAHxBkAAAAAB8gYBAAAAAQbVBQEAAAAB2wVAAAAAAdwFQAAAAAHuBkAAAAAB7wYBAAAAAfAGAgAAAAELEAAA8xAAIBEAAIIRACAUAADvEAAgJAAA8BAAICwAAPIQACDVBQEAAAAB2QUBAAAAAdsFQAAAAAHcBUAAAAABxgYBAAAAAc0GAAAAzQYCAgAAADQAIFAAAIIVACADAAAAMgAgUAAAghUAIFEAAIYVACANAAAAMgAgEAAArBAAIBEAAIERACAUAACoEAAgJAAAqRAAICwAAKsQACBLAACGFQAg1QUBAN0LACHZBQEA3QsAIdsFQADfCwAh3AVAAN8LACHGBgEA3QsAIc0GAACmEM0GIgsQAACsEAAgEQAAgREAIBQAAKgQACAkAACpEAAgLAAAqxAAINUFAQDdCwAh2QUBAN0LACHbBUAA3wsAIdwFQADfCwAhxgYBAN0LACHNBgAAphDNBiIHPQAArREAINUFAQAAAAHWBQEAAAAB2wVAAAAAAdwFQAAAAAH_BQAAAOEGApsGAQAAAAECAAAA-QQAIFAAAIcVACADAAAA0AEAIFAAAIcVACBRAACLFQAgCQAAANABACA9AACTEQAgSwAAixUAINUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAJER4QYimwYBAN0LACEHPQAAkxEAINUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAJER4QYimwYBAN0LACEIBgAA2hMAICUAAN0TACBFAADcEwAg1QUBAAAAAf8FAAAA-gYCggYAAAD7BgL3BgEAAAAB-AYBAAAAAQIAAACEAgAgUAAAjBUAIAMAAACHAgAgUAAAjBUAIFEAAJAVACAKAAAAhwIAIAYAAMATACAlAADDEwAgRQAAwhMAIEsAAJAVACDVBQEA3QsAIf8FAAC-E_oGIoIGAAC_E_sGIvcGAQDdCwAh-AYBAN0LACEIBgAAwBMAICUAAMMTACBFAADCEwAg1QUBAN0LACH_BQAAvhP6BiKCBgAAvxP7BiL3BgEA3QsAIfgGAQDdCwAhBdUFAQAAAAHZBQEAAAAB2wVAAAAAAdwFQAAAAAHNBgAAAOIGAgvVBQEAAAAB1gUBAAAAAdkFAQAAAAHaBQEAAAAB2wVAAAAAAdwFQAAAAAH_BQAAAL0GAroGAQAAAAG7BgEAAAABvgYAAAC-BgK_BgEAAAABCQMAAPQQACAHAAD1EAAgDgAA9xAAIA8AAPgQACDVBQEAAAAB2wVAAAAAAdwFQAAAAAH_BQAAAMwGAoIGAAAAywYCAgAAAM4FACBQAACTFQAgAwAAANEFACBQAACTFQAgUQAAlxUAIAsAAADRBQAgAwAA9w8AIAcAAPgPACAOAAD6DwAgDwAA-w8AIEsAAJcVACDVBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAA9g_MBiKCBgAA9Q_LBiIJAwAA9w8AIAcAAPgPACAOAAD6DwAgDwAA-w8AINUFAQDdCwAh2wVAAN8LACHcBUAA3wsAIf8FAAD2D8wGIoIGAAD1D8sGIgkHAAD1EAAgDgAA9xAAIA8AAPgQACASAAD2EAAg1QUBAAAAAdsFQAAAAAHcBUAAAAAB_wUAAADMBgKCBgAAAMsGAgIAAADOBQAgUAAAmBUAIAMAAADRBQAgUAAAmBUAIFEAAJwVACALAAAA0QUAIAcAAPgPACAOAAD6DwAgDwAA-w8AIBIAAPkPACBLAACcFQAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAPYPzAYiggYAAPUPywYiCQcAAPgPACAOAAD6DwAgDwAA-w8AIBIAAPkPACDVBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAA9g_MBiKCBgAA9Q_LBiIIBgAA2hMAIEQAANsTACBFAADcEwAg1QUBAAAAAf8FAAAA-gYCggYAAAD7BgL3BgEAAAAB-AYBAAAAAQIAAACEAgAgUAAAnRUAIBEQAAC8DgAgFAAAug4AICgAANcPACBBAAC4DgAgQgAAuQ4AINUFAQAAAAHWBQEAAAAB2QUBAAAAAdoFAQAAAAHbBUAAAAAB3AVAAAAAAf8FAAAAvQYCugYBAAAAAbsGAQAAAAG-BgAAAL4GAr8GAQAAAAHABgEAAAABAgAAAA8AIFAAAJ8VACADAAAADQAgUAAAnxUAIFEAAKMVACATAAAADQAgEAAAmw4AIBQAAJkOACAoAADWDwAgQQAAlw4AIEIAAJgOACBLAACjFQAg1QUBAN0LACHWBQEA3QsAIdkFAQDdCwAh2gUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAJQOvQYiugYBAN4LACG7BgEA3gsAIb4GAACVDr4GIr8GAQDeCwAhwAYBAN4LACEREAAAmw4AIBQAAJkOACAoAADWDwAgQQAAlw4AIEIAAJgOACDVBQEA3QsAIdYFAQDdCwAh2QUBAN0LACHaBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAAlA69BiK6BgEA3gsAIbsGAQDeCwAhvgYAAJUOvgYivwYBAN4LACHABgEA3gsAIQPVBQEAAAABoQYBAAAAAc0GAAAA5wYCCgwAANwPACA4AAC_DgAgPQAAvg4AINUFAQAAAAHWBQEAAAAB2wVAAAAAAdwFQAAAAAGnBgEAAAABwQYBAAAAAcIGAQAAAAECAAAAswEAIFAAAKUVACADAAAArAEAIFAAAKUVACBRAACpFQAgDAAAAKwBACAMAADbDwAgOAAA7g0AID0AAO0NACBLAACpFQAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACGnBgEA3QsAIcEGAQDdCwAhwgYBAN4LACEKDAAA2w8AIDgAAO4NACA9AADtDQAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACGnBgEA3QsAIcEGAQDdCwAhwgYBAN4LACED1QUBAAAAAdoFAQAAAAHNBgAAAOYGAhEIAADvDgAgEQAA6w4AIBsAAOwOACA3AADjDwAgOQAA7Q4AIDsAAPAOACA8AADxDgAg1QUBAAAAAdYFAQAAAAHbBUAAAAAB3AVAAAAAAaQGAQAAAAG1BgEAAAABwwYBAAAAAcQGAQAAAAHFBhAAAAABxgYBAAAAAQIAAAATACBQAACrFQAgAwAAABEAIFAAAKsVACBRAACvFQAgEwAAABEAIAgAAKkNACARAAClDQAgGwAApg0AIDcAAOIPACA5AACnDQAgOwAAqg0AIDwAAKsNACBLAACvFQAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACGkBgEA3QsAIbUGAQDdCwAhwwYBAN0LACHEBgEA3QsAIcUGEADsCwAhxgYBAN0LACERCAAAqQ0AIBEAAKUNACAbAACmDQAgNwAA4g8AIDkAAKcNACA7AACqDQAgPAAAqw0AINUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAhpAYBAN0LACG1BgEA3QsAIcMGAQDdCwAhxAYBAN0LACHFBhAA7AsAIcYGAQDdCwAhA9UFAQAAAAHNBgAAAOMGAuMGAQAAAAEKDAAAqxIAIBgAAOcOACAZAADoDgAg1QUBAAAAAdsFQAAAAAHcBUAAAAABpwYBAAAAAfEGQAAAAAHzBkAAAAAB9AYBAAAAAQIAAADuAgAgUAAAsRUAIAMAAABQACBQAACxFQAgUQAAtRUAIAwAAABQACAMAACqEgAgGAAAxg4AIBkAAMcOACBLAAC1FQAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhpwYBAN0LACHxBkAA3wsAIfMGQADfCwAh9AYBAN0LACEKDAAAqhIAIBgAAMYOACAZAADHDgAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhpwYBAN0LACHxBkAA3wsAIfMGQADfCwAh9AYBAN0LACEL1QUBAAAAAdsFQAAAAAHcBUAAAAABlAYQAAAAAZYGAQAAAAGbBgEAAAABnAYCAAAAAZ0GQAAAAAGeBoAAAAABnwYBAAAAAaEGAQAAAAEDAAAAhwIAIFAAAJ0VACBRAAC5FQAgCgAAAIcCACAGAADAEwAgRAAAwRMAIEUAAMITACBLAAC5FQAg1QUBAN0LACH_BQAAvhP6BiKCBgAAvxP7BiL3BgEA3QsAIfgGAQDdCwAhCAYAAMATACBEAADBEwAgRQAAwhMAINUFAQDdCwAh_wUAAL4T-gYiggYAAL8T-wYi9wYBAN0LACH4BgEA3QsAIQXVBQEAAAAB2QUBAAAAAdsFQAAAAAHcBUAAAAABzQYAAADNBgIJ1QUBAAAAAdYFAQAAAAHbBUAAAAAB3AVAAAAAAaQGAQAAAAG1BgEAAAABwwYBAAAAAcQGAQAAAAHFBhAAAAABED8BAAAAAUEBAAAAAdsFQAAAAAHcBUAAAAABugYBAAAAAc8GAQAAAAHUBgEAAAAB1gYBAAAAAdcGAQAAAAHZBgAAANkGAtoGAQAAAAHbBgEAAAAB3AYBAAAAAd0GAQAAAAHeBgEAAAAB3wYBAAAAAQkDAAD0EAAgBwAA9RAAIA8AAPgQACASAAD2EAAg1QUBAAAAAdsFQAAAAAHcBUAAAAAB_wUAAADMBgKCBgAAAMsGAgIAAADOBQAgUAAAvRUAIA0DAADXEgAgFgAA2RIAICEAANoSACAiAADbEgAgIwAA3BIAINUFAQAAAAHWBQEAAAAB2wVAAAAAAdwFQAAAAAH_BQAAAOEGApsGAQAAAAHoBgAAAOgGAukGAQAAAAECAAAA_AMAIFAAAL8VACADAAAA0QUAIFAAAL0VACBRAADDFQAgCwAAANEFACADAAD3DwAgBwAA-A8AIA8AAPsPACASAAD5DwAgSwAAwxUAINUFAQDdCwAh2wVAAN8LACHcBUAA3wsAIf8FAAD2D8wGIoIGAAD1D8sGIgkDAAD3DwAgBwAA-A8AIA8AAPsPACASAAD5DwAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAPYPzAYiggYAAPUPywYiAwAAAP8DACBQAAC_FQAgUQAAxhUAIA8AAAD_AwAgAwAAzREAIBYAAM8RACAhAADQEQAgIgAA0REAICMAANIRACBLAADGFQAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAAkRHhBiKbBgEA3QsAIegGAADMEegGIukGAQDeCwAhDQMAAM0RACAWAADPEQAgIQAA0BEAICIAANERACAjAADSEQAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAAkRHhBiKbBgEA3QsAIegGAADMEegGIukGAQDeCwAhCQMAAPQQACAHAAD1EAAgDgAA9xAAIBIAAPYQACDVBQEAAAAB2wVAAAAAAdwFQAAAAAH_BQAAAMwGAoIGAAAAywYCAgAAAM4FACBQAADHFQAgDQMAANcSACAVAADYEgAgIQAA2hIAICIAANsSACAjAADcEgAg1QUBAAAAAdYFAQAAAAHbBUAAAAAB3AVAAAAAAf8FAAAA4QYCmwYBAAAAAegGAAAA6AYC6QYBAAAAAQIAAAD8AwAgUAAAyRUAIAMAAADRBQAgUAAAxxUAIFEAAM0VACALAAAA0QUAIAMAAPcPACAHAAD4DwAgDgAA-g8AIBIAAPkPACBLAADNFQAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAPYPzAYiggYAAPUPywYiCQMAAPcPACAHAAD4DwAgDgAA-g8AIBIAAPkPACDVBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAA9g_MBiKCBgAA9Q_LBiIDAAAA_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_AACmEwAg1QUBAAAAAdYFAQAAAAHbBUAAAAAB3AVAAAAAAdoGAQAAAAH2BgEAAAABAgAAAMsBACBQAACJFgAgBSUAAMMRACApAADnEAAgKwAA6BAAINUFAQAAAAGgBgEAAAABAgAAAJMEACBQAACLFgAgAwAAAH0AIFAAAIsWACBRAACPFgAgBwAAAH0AICUAAMIRACApAADDEAAgKwAAxBAAIEsAAI8WACDVBQEA3QsAIaAGAQDdCwAhBSUAAMIRACApAADDEAAgKwAAxBAAINUFAQDdCwAhoAYBAN0LACED1QUBAAAAAc0GAAAA5wYC5AYBAAAAAQvVBQEAAAAB2wVAAAAAAdwFQAAAAAGUBhAAAAABlgYBAAAAAZsGAQAAAAGcBgIAAAABnQZAAAAAAZ4GgAAAAAGfBgEAAAABoAYBAAAAAQMAAAAyACBQAACFFgAgUQAAlBYAIA0AAAAyACAQAACsEAAgEQAAgREAIBQAAKgQACAmAACqEAAgLAAAqxAAIEsAAJQWACDVBQEA3QsAIdkFAQDdCwAh2wVAAN8LACHcBUAA3wsAIcYGAQDdCwAhzQYAAKYQzQYiCxAAAKwQACARAACBEQAgFAAAqBAAICYAAKoQACAsAACrEAAg1QUBAN0LACHZBQEA3QsAIdsFQADfCwAh3AVAAN8LACHGBgEA3QsAIc0GAACmEM0GIgMAAADQAQAgUAAAhxYAIFEAAJcWACAJAAAA0AEAIAMAAJIRACBLAACXFgAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAAkRHhBiKbBgEA3QsAIQcDAACSEQAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAAkRHhBiKbBgEA3QsAIQMAAADIAQAgUAAAiRYAIFEAAJoWACAJAAAAyAEAID8AAJsTACBLAACaFgAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACHaBgEA3gsAIfYGAQDdCwAhBz8AAJsTACDVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIdoGAQDeCwAh9gYBAN0LACEL1QUBAAAAAdYFAQAAAAHZBQEAAAAB2wVAAAAAAdwFQAAAAAH_BQAAAL0GAroGAQAAAAG7BgEAAAABvgYAAAC-BgK_BgEAAAABwAYBAAAAAQcHAADyDgAg1QUBAAAAAdYFAQAAAAHbBUAAAAAB3AVAAAAAAZsGAQAAAAGjBgAAAKMGAgIAAAD0BwAgUAAAnBYAIAMAAACqAQAgUAAAnBYAIFEAAKAWACAJAAAAqgEAIAcAAOgMACBLAACgFgAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACGbBgEA3gsAIaMGAADnDKMGIgcHAADoDAAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACGbBgEA3gsAIaMGAADnDKMGIgnVBQEAAAAB1gUBAAAAAdcFAQAAAAHYBQEAAAAB2wVAAAAAAdwFQAAAAAHdBUAAAAABtAYgAAAAAbUGAQAAAAEFJQAAwxEAICcAAOYQACArAADoEAAg1QUBAAAAAaAGAQAAAAECAAAAkwQAIFAAAKIWACADAAAAfQAgUAAAohYAIFEAAKYWACAHAAAAfQAgJQAAwhEAICcAAMIQACArAADEEAAgSwAAphYAINUFAQDdCwAhoAYBAN0LACEFJQAAwhEAICcAAMIQACArAADEEAAg1QUBAN0LACGgBgEA3QsAIQPVBQEAAAABzQYAAADmBgLkBgEAAAABBtUFAQAAAAHWBQEAAAAB2wVAAAAAAdwFQAAAAAHBBgEAAAABwgYBAAAAAQUlAADDEQAgJwAA5hAAICkAAOcQACDVBQEAAAABoAYBAAAAAQIAAACTBAAgUAAAqRYAIAMAAAB9ACBQAACpFgAgUQAArRYAIAcAAAB9ACAlAADCEQAgJwAAwhAAICkAAMMQACBLAACtFgAg1QUBAN0LACGgBgEA3QsAIQUlAADCEQAgJwAAwhAAICkAAMMQACDVBQEA3QsAIaAGAQDdCwAhA9UFAQAAAAHNBgAAAOMGAuQGAQAAAAEMKAAAmQ0AIDcAAIkOACDVBQEAAAAB1gUBAAAAAdcFAQAAAAHYBQEAAAAB2gUBAAAAAdsFQAAAAAHcBUAAAAAB3QVAAAAAAbQGIAAAAAG1BgEAAAABAgAAABcAIFAAAK8WACADAAAAFQAgUAAArxYAIFEAALMWACAOAAAAFQAgKAAA9wwAIDcAAIcOACBLAACzFgAg1QUBAN0LACHWBQEA3QsAIdcFAQDeCwAh2AUBAN4LACHaBQEA3gsAIdsFQADfCwAh3AVAAN8LACHdBUAA4AsAIbQGIAD0DAAhtQYBAN4LACEMKAAA9wwAIDcAAIcOACDVBQEA3QsAIdYFAQDdCwAh1wUBAN4LACHYBQEA3gsAIdoFAQDeCwAh2wVAAN8LACHcBUAA3wsAId0FQADgCwAhtAYgAPQMACG1BgEA3gsAIQ_VBQEAAAAB1gUBAAAAAdcFAQAAAAHYBQEAAAAB2wVAAAAAAdwFQAAAAAHdBUAAAAAB7QUBAAAAAe4FAQAAAAHvBQEAAAAB8AUQAAAAAbQGIAAAAAG3BgAAALcGArgGAQAAAAG5BgEAAAABCA8AAJ0PACAQAACeDwAg1QUBAAAAAdsFQAAAAAHcBUAAAAAB3QVAAAAAAYIGAAAArgYCrAYgAAAAAQIAAAC2BwAgUAAAtRYAIAMAAAAnACBQAAC1FgAgUQAAuRYAIAoAAAAnACAPAACHDwAgEAAAiA8AIEsAALkWACDVBQEA3QsAIdsFQADfCwAh3AVAAN8LACHdBUAA4AsAIYIGAACFD64GIqwGIACEDwAhCA8AAIcPACAQAACIDwAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAh3QVAAOALACGCBgAAhQ-uBiKsBiAAhA8AIQefBgEAAAABpAYBAAAAAaYGAQAAAAGoBgEAAAABqQYBAAAAAaoGAQAAAAGrBgEAAAABCA4AAJwPACAQAACeDwAg1QUBAAAAAdsFQAAAAAHcBUAAAAAB3QVAAAAAAYIGAAAArgYCrAYgAAAAAQIAAAC2BwAgUAAAuxYAIAMAAAAnACBQAAC7FgAgUQAAvxYAIAoAAAAnACAOAACGDwAgEAAAiA8AIEsAAL8WACDVBQEA3QsAIdsFQADfCwAh3AVAAN8LACHdBUAA4AsAIYIGAACFD64GIqwGIACEDwAhCA4AAIYPACAQAACIDwAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAh3QVAAOALACGCBgAAhQ-uBiKsBiAAhA8AIQXWBQEAAAABnwYBAAAAAaQGAQAAAAGlBgEAAAABpgYBAAAAAQMAAADRBQAgUAAA7RUAIFEAAMMWACALAAAA0QUAIAMAAPcPACAOAAD6DwAgDwAA-w8AIBIAAPkPACBLAADDFgAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAPYPzAYiggYAAPUPywYiCQMAAPcPACAOAAD6DwAgDwAA-w8AIBIAAPkPACDVBQEA3QsAIdsFQADfCwAh3AVAAN8LACH_BQAA9g_MBiKCBgAA9Q_LBiIJ1QUBAAAAAdYFAQAAAAHbBUAAAAAB3AVAAAAAAaQGAQAAAAHDBgEAAAABxAYBAAAAAcUGEAAAAAHGBgEAAAABCgwAANwPACA9AAC-DgAgPgAAwA4AINUFAQAAAAHWBQEAAAAB2wVAAAAAAdwFQAAAAAGnBgEAAAABwQYBAAAAAcIGAQAAAAECAAAAswEAIFAAAMUWACAREQAA6w4AIBsAAOwOACA3AADjDwAgOQAA7Q4AIDoAAO4OACA7AADwDgAgPAAA8Q4AINUFAQAAAAHWBQEAAAAB2wVAAAAAAdwFQAAAAAGkBgEAAAABtQYBAAAAAcMGAQAAAAHEBgEAAAABxQYQAAAAAcYGAQAAAAECAAAAEwAgUAAAxxYAIAXVBQEAAAAB1gUBAAAAAdsFQAAAAAHcBUAAAAABmwYBAAAAAQIAAADxBgAgUAAAyRYAIAnVBQEAAAAB1gUBAAAAAdsFQAAAAAHcBUAAAAABggYAAACyBgKbBgEAAAABsAYQAAAAAbIGIAAAAAGzBiAAAAABAgAAAIgHACBQAADLFgAgD9UFAQAAAAHbBUAAAAAB_AUBAAAAAY4GEAAAAAGPBgEAAAABkAYBAAAAAZEGAQAAAAGSBhAAAAABkwYQAAAAAZQGEAAAAAGVBhAAAAABlgYBAAAAAZcGgAAAAAGYBoAAAAABmgYBAAAAAQMAAAARACBQAADHFgAgUQAA0BYAIBMAAAARACARAAClDQAgGwAApg0AIDcAAOIPACA5AACnDQAgOgAAqA0AIDsAAKoNACA8AACrDQAgSwAA0BYAINUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAhpAYBAN0LACG1BgEA3QsAIcMGAQDdCwAhxAYBAN0LACHFBhAA7AsAIcYGAQDdCwAhEREAAKUNACAbAACmDQAgNwAA4g8AIDkAAKcNACA6AACoDQAgOwAAqg0AIDwAAKsNACDVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIaQGAQDdCwAhtQYBAN0LACHDBgEA3QsAIcQGAQDdCwAhxQYQAOwLACHGBgEA3QsAIQMAAAD0BgAgUAAAyRYAIFEAANMWACAHAAAA9AYAIEsAANMWACDVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIZsGAQDdCwAhBdUFAQDdCwAh1gUBAN0LACHbBUAA3wsAIdwFQADfCwAhmwYBAN0LACEDAAAAiwcAIFAAAMsWACBRAADWFgAgCwAAAIsHACBLAADWFgAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACGCBgAArg-yBiKbBgEA3QsAIbAGEADsCwAhsgYgAPQMACGzBiAA9AwAIQnVBQEA3QsAIdYFAQDdCwAh2wVAAN8LACHcBUAA3wsAIYIGAACuD7IGIpsGAQDdCwAhsAYQAOwLACGyBiAA9AwAIbMGIAD0DAAhD9UFAQAAAAHWBQEAAAAB1wUBAAAAAdgFAQAAAAHbBUAAAAAB3AVAAAAAAd0FQAAAAAHtBQEAAAAB7gUBAAAAAfAFEAAAAAGnBgEAAAABtAYgAAAAAbcGAAAAtwYCuAYBAAAAAbkGAQAAAAEDAAAArAEAIFAAAMUWACBRAADaFgAgDAAAAKwBACAMAADbDwAgPQAA7Q0AID4AAO8NACBLAADaFgAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACGnBgEA3QsAIcEGAQDdCwAhwgYBAN4LACEKDAAA2w8AID0AAO0NACA-AADvDQAg1QUBAN0LACHWBQEA3QsAIdsFQADfCwAh3AVAAN8LACGnBgEA3QsAIcEGAQDdCwAhwgYBAN4LACEJ1QUBAAAAAdYFAQAAAAHXBQEAAAAB2AUBAAAAAdoFAQAAAAHbBUAAAAAB3AVAAAAAAd0FQAAAAAG0BiAAAAABERQAALoOACAoAADXDwAgQQAAuA4AIEIAALkOACBDAAC7DgAg1QUBAAAAAdYFAQAAAAHZBQEAAAAB2gUBAAAAAdsFQAAAAAHcBUAAAAAB_wUAAAC9BgK6BgEAAAABuwYBAAAAAb4GAAAAvgYCvwYBAAAAAcAGAQAAAAECAAAADwAgUAAA3BYAIAsRAACCEQAgFAAA7xAAICQAAPAQACAmAADxEAAgLAAA8hAAINUFAQAAAAHZBQEAAAAB2wVAAAAAAdwFQAAAAAHGBgEAAAABzQYAAADNBgICAAAANAAgUAAA3hYAIAgOAACcDwAgDwAAnQ8AINUFAQAAAAHbBUAAAAAB3AVAAAAAAd0FQAAAAAGCBgAAAK4GAqwGIAAAAAECAAAAtgcAIFAAAOAWACAP1QUBAAAAAdsFQAAAAAGOBhAAAAABjwYBAAAAAZAGAQAAAAGRBgEAAAABkgYQAAAAAZMGEAAAAAGUBhAAAAABlQYQAAAAAZYGAQAAAAGXBoAAAAABmAaAAAAAAZkGAQAAAAGaBgEAAAABBdUFAQAAAAHbBUAAAAAB-AUQAAAAAfoFAAAA-gUC-wVAAAAAAQvVBQEAAAAB2wVAAAAAAf0FAgAAAAH_BQAAAP8FAoAGAQAAAAGCBgAAAIIGAoMGgAAAAAGEBoAAAAABhQYBAAAAAYYGQAAAAAGHBkAAAAABAwAAAA0AIFAAANwWACBRAADnFgAgEwAAAA0AIBQAAJkOACAoAADWDwAgQQAAlw4AIEIAAJgOACBDAACaDgAgSwAA5xYAINUFAQDdCwAh1gUBAN0LACHZBQEA3QsAIdoFAQDdCwAh2wVAAN8LACHcBUAA3wsAIf8FAACUDr0GIroGAQDeCwAhuwYBAN4LACG-BgAAlQ6-BiK_BgEA3gsAIcAGAQDeCwAhERQAAJkOACAoAADWDwAgQQAAlw4AIEIAAJgOACBDAACaDgAg1QUBAN0LACHWBQEA3QsAIdkFAQDdCwAh2gUBAN0LACHbBUAA3wsAIdwFQADfCwAh_wUAAJQOvQYiugYBAN4LACG7BgEA3gsAIb4GAACVDr4GIr8GAQDeCwAhwAYBAN4LACEDAAAAMgAgUAAA3hYAIFEAAOoWACANAAAAMgAgEQAAgREAIBQAAKgQACAkAACpEAAgJgAAqhAAICwAAKsQACBLAADqFgAg1QUBAN0LACHZBQEA3QsAIdsFQADfCwAh3AVAAN8LACHGBgEA3QsAIc0GAACmEM0GIgsRAACBEQAgFAAAqBAAICQAAKkQACAmAACqEAAgLAAAqxAAINUFAQDdCwAh2QUBAN0LACHbBUAA3wsAIdwFQADfCwAhxgYBAN0LACHNBgAAphDNBiIDAAAAJwAgUAAA4BYAIFEAAO0WACAKAAAAJwAgDgAAhg8AIA8AAIcPACBLAADtFgAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAh3QVAAOALACGCBgAAhQ-uBiKsBiAAhA8AIQgOAACGDwAgDwAAhw8AINUFAQDdCwAh2wVAAN8LACHcBUAA3wsAId0FQADgCwAhggYAAIUPrgYirAYgAIQPACEOCQEAAAABCwAAigwAINUFAQAAAAHWBQEAAAAB1wUBAAAAAdkFAQAAAAHaBQEAAAAB2wVAAAAAAdwFQAAAAAHdBUAAAAAB7QUBAAAAAe4FAQAAAAHvBQEAAAAB8AUQAAAAAQIAAACkAQAgUAAA7hYAIAMAAACfAQAgUAAA7hYAIFEAAPIWACAQAAAAnwEAIAkBAN0LACELAACJDAAgSwAA8hYAINUFAQDdCwAh1gUBAN0LACHXBQEA3gsAIdkFAQDdCwAh2gUBAN0LACHbBUAA3wsAIdwFQADfCwAh3QVAAOALACHtBQEA3gsAIe4FAQDeCwAh7wUBAN4LACHwBRAA7AsAIQ4JAQDdCwAhCwAAiQwAINUFAQDdCwAh1gUBAN0LACHXBQEA3gsAIdkFAQDdCwAh2gUBAN0LACHbBUAA3wsAIdwFQADfCwAh3QVAAOALACHtBQEA3gsAIe4FAQDeCwAh7wUBAN4LACHwBRAA7AsAIRENAADeDAAgJAAA4AwAICUAAN8MACAtAADhDAAgMQAA4gwAINUFAQAAAAHbBUAAAAAB3AVAAAAAAZQGEAAAAAGWBgEAAAABmwYBAAAAAZwGAgAAAAGdBkAAAAABngaAAAAAAZ8GAQAAAAGgBgEAAAABoQYBAAAAAQIAAAAvACBQAADzFgAgAwAAAC0AIFAAAPMWACBRAAD3FgAgEwAAAC0AIA0AALcMACAkAAC5DAAgJQAAuAwAIC0AALoMACAxAAC7DAAgSwAA9xYAINUFAQDdCwAh2wVAAN8LACHcBUAA3wsAIZQGEADsCwAhlgYBAN4LACGbBgEA3QsAIZwGAgCmDAAhnQZAAN8LACGeBoAAAAABnwYBAN4LACGgBgEA3QsAIaEGAQDdCwAhEQ0AALcMACAkAAC5DAAgJQAAuAwAIC0AALoMACAxAAC7DAAg1QUBAN0LACHbBUAA3wsAIdwFQADfCwAhlAYQAOwLACGWBgEA3gsAIZsGAQDdCwAhnAYCAKYMACGdBkAA3wsAIZ4GgAAAAAGfBgEA3gsAIaAGAQDdCwAhoQYBAN0LACERDQAA3gwAICQAAOAMACAlAADfDAAgLQAA4QwAIDIAAOMMACDVBQEAAAAB2wVAAAAAAdwFQAAAAAGUBhAAAAABlgYBAAAAAZsGAQAAAAGcBgIAAAABnQZAAAAAAZ4GgAAAAAGfBgEAAAABoAYBAAAAAaEGAQAAAAECAAAALwAgUAAA-BYAIAMAAAAtACBQAAD4FgAgUQAA_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_AUBAAAAAY4GEAAAAAGPBgEAAAABkAYBAAAAAZEGAQAAAAGSBhAAAAABkwYQAAAAAZQGEAAAAAGVBhAAAAABlgYBAAAAAZcGgAAAAAGYBoAAAAABmQYBAAAAAQwJAQAAAAHVBQEAAAAB1gUBAAAAAdcFAQAAAAHZBQEAAAAB2gUBAAAAAdsFQAAAAAHcBUAAAAAB3QVAAAAAAe0FAQAAAAHuBQEAAAAB8AUQAAAAAQIFAAIUAAQCAwUBBAADAQMGAAQGBwEl2QEXRAkFRdgBHAIUAARCAAYDAwwFBABEPRAHBwQAQxDTARIUABcoAAhByQE_QtEBBkPSAS0FBAA-DAAJOMMBCz3CAQc-xAEuCQQAPQi2AQwRABgbsQEgNwAKObQBCDq1AS87uQEUPLwBFQMEADwHFAk4GAsEBAA7CBwMKK0BCDerAQoGBAA6CQANCgAPCyELDCIJNSYRAgQADggdDAEIHgACBAAQCB8MAQggAAMuABIzAAw2oAE2BwQANQ0oEyQAByUAFy2RARExlQEyMpsBNAQEABYOKhQPLBUQMBICDAAJDQATAgwACQ0AEwEQMQAHBAAxEI8BEhEAGBQABCR8ByZ-LCyOASQGAzUXBAArBzYJDjwaD3gdEjoZAREAGAIRABgTABsHA0AcBAAqFUMaFkcdIUseIm0mI3EiAhMAGxQABAIRABgTABsDBAApEwAbIE8fAhcAHhpRIAUEACgMAAkYAB8ZVSEfXCQCFwAiGlggAwQAIxMAGxlWIQEZVwADFF4XG10gHmAlAhdiJh1nJAMEACcTABscZSUBHGYAAhloAB9pAAEgagAGA3IAFXMAFnQAIXUAInYAI3cAAwN5AAd6ABJ7AAUEADAlABcnggEtKYYBLiuKAS8CJAAHJgAsAiYALCgACAImACwqAAkDJ4sBACmMAQArjQEAARCQAQACLgASMJcBMwEvADIBLgASAy2cAQAxnQEAMp4BAAMEADkLogE3NacBEQIEADg0pQE2ATSmAQABNagBAAE1qQEAAQiuAQACB68BADiwAQAFCL8BADm9AQA6vgEAO8ABADzBAQADOMYBAD3FAQA-xwEAAwQAQj8AQEDOAQcCBABBEswBPwESzQEAAUDPAQACENUBAEPUAQACA9YBAD3XAQAAAwQAR1YASFcASQAAAAMEAEdWAEhXAEkDBABMVgBNVwBOAAAAAwQATFYATVcATgMEAFFWAFJXAFMAAAADBABRVgBSVwBTAwQAVlYAV1cAWAAAAAMEAFZWAFdXAFgDBABbVgBcVwBdAAAAAwQAW1YAXFcAXQUEAGBWAGNXAGSeAQBhnwEAYgAAAAAABQQAYFYAY1cAZJ4BAGGfAQBiBQQAZ1YAalcAa54BAGifAQBpAAAAAAAFBABnVgBqVwBrngEAaJ8BAGkDBABuVgBvVwBwAAAAAwQAblYAb1cAcAUEAHNWAHZXAHeeAQB0nwEAdQAAAAAABQQAc1YAdlcAd54BAHSfAQB1AwQAelYAe1cAfAAAAAMEAHpWAHtXAHwFBAB_VgCCAVcAgwGeAQCAAZ8BAIEBAAAAAAAFBAB_VgCCAVcAgwGeAQCAAZ8BAIEBAwQAhgFWAIcBVwCIAQAAAAMEAIYBVgCHAVcAiAEDBACLAVYAjAFXAI0BAAAAAwQAiwFWAIwBVwCNAQMEAJABVgCRAVcAkgEAAAADBACQAVYAkQFXAJIBAwQAlQFWAJYBVwCXAQAAAAMEAJUBVgCWAVcAlwEDBACaAVYAmwFXAJwBAAAAAwQAmgFWAJsBVwCcAQMEAJ8BVgCgAVcAoQEAAAADBACfAVYAoAFXAKEBAwQApAFWAKUBVwCmAQAAAAMEAKQBVgClAVcApgEDBACpAVYAqgFXAKsBAAAAAwQAqQFWAKoBVwCrAQMEAK4BVgCvAVcAsAEAAAADBACuAVYArwFXALABAwQAswFWALQBVwC1AQAAAAMEALMBVgC0AVcAtQEDBAC4AVYAuQFXALoBAAAAAwQAuAFWALkBVwC6AQADBAC-AVYAvwFXAMABAAAAAwQAvgFWAL8BVwDAAQMEAMMBVgDEAVcAxQEAAAADBADDAVYAxAFXAMUBAwQAyAFWAMkBVwDKAQAAAAMEAMgBVgDJAVcAygEDBADNAVYAzgFXAM8BAAAAAwQAzQFWAM4BVwDPAQMEANIBVgDTAVcA1AEAAAADBADSAVYA0wFXANQBBQQA1wFWANoBVwDbAZ4BANgBnwEA2QEAAAAAAAUEANcBVgDaAVcA2wGeAQDYAZ8BANkBAwQA3gFWAN8BVwDgAQAAAAMEAN4BVgDfAVcA4AEDBADjAVYA5AFXAOUBAAAAAwQA4wFWAOQBVwDlAQUEAOgBVgDrAVcA7AGeAQDpAZ8BAOoBAAAAAAAFBADoAVYA6wFXAOwBngEA6QGfAQDqAQMEAO8BVgDwAVcA8QEAAAADBADvAVYA8AFXAPEBAwQA9AFWAPUBVwD2AQAAAAMEAPQBVgD1AVcA9gEFBAD5AVYA_AFXAP0BngEA-gGfAQD7AQAAAAAABQQA-QFWAPwBVwD9AZ4BAPoBnwEA-wEABQQAgQJWAIQCVwCFAp4BAIICnwEAgwIAAAAAAAUEAIECVgCEAlcAhQKeAQCCAp8BAIMCAwQAiAJWAIkCVwCKAgAAAAMEAIgCVgCJAlcAigIDBACNAlYAjgJXAI8CAAAAAwQAjQJWAI4CVwCPAgMEAJICVgCTAlcAlAIAAAADBACSAlYAkwJXAJQCAwQAlwJWAJgCVwCZAgAAAAMEAJcCVgCYAlcAmQIFBACcAlYAnwJXAKACngEAnQKfAQCeAgAAAAAABQQAnAJWAJ8CVwCgAp4BAJ0CnwEAngIFBACjAlYApgJXAKcCngEApAKfAQClAgAAAAAABQQAowJWAKYCVwCnAp4BAKQCnwEApQIFBACqAlYArQJXAK4CngEAqwKfAQCsAgAAAAAABQQAqgJWAK0CVwCuAp4BAKsCnwEArAIFBACxAlYAtAJXALUCngEAsgKfAQCzAgAAAAAABQQAsQJWALQCVwC1Ap4BALICnwEAswIDBAC4AlYAuQJXALoCAAAAAwQAuAJWALkCVwC6AgUEAL0CVgDAAlcAwQKeAQC-Ap8BAL8CAAAAAAAFBAC9AlYAwAJXAMECngEAvgKfAQC_AgMEAMQCVgDFAlcAxgIAAAADBADEAlYAxQJXAMYCRgIBR9oBAUjbAQFJ3AEBSt0BAUzfAQFN4QFFTuMBAU_lAUVS5gEBU-cBAVToAUVY6wFGWewBSlruAQJb7wECXPIBAl3zAQJe9AECX_YBAmD4AUVh-gECYvwBRWP9AQJk_gECZf8BRWaCAktngwJPaIUCBGmGAgRqiQIEa4oCBGyLAgRtjQIEbo8CRW-RAgRwkwJFcZQCBHKVAgRzlgJFdJkCUHWaAlR2nAJAd50CQHigAkB5oQJAeqICQHukAkB8pgJFfagCQH6qAkV_qwJAgAGsAkCBAa0CRYIBsAJVgwGxAlmEAbICP4UBswI_hgG0Aj-HAbUCP4gBtgI_iQG4Aj-KAboCRYsBvAI_jAG-AkWNAb8CP44BwAI_jwHBAkWQAcQCWpEBxQJekgHGAh6TAccCHpQByAIelQHJAh6WAcoCHpcBzAIemAHOAkWZAdACHpoB0gJFmwHTAh6cAdQCHp0B1QJFoAHYAl-hAdkCZaIB2gIfowHbAh-kAdwCH6UB3QIfpgHeAh-nAeACH6gB4gJFqQHkAh-qAeYCRasB5wIfrAHoAh-tAekCRa4B7AJmrwHtAmywAe8CILEB8AIgsgHyAiCzAfMCILQB9AIgtQH2AiC2AfgCRbcB-gIguAH8AkW5Af0CILoB_gIguwH_AkW8AYIDbb0BgwNxvgGEAyK_AYUDIsABhgMiwQGHAyLCAYgDIsMBigMixAGMA0XFAY4DIsYBkANFxwGRAyLIAZIDIskBkwNFygGWA3LLAZcDeMwBmAMhzQGZAyHOAZoDIc8BmwMh0AGcAyHRAZ4DIdIBoANF0wGiAyHUAaQDRdUBpQMh1gGmAyHXAacDRdgBqgN52QGrA33aAawDJtsBrQMm3AGuAybdAa8DJt4BsAMm3wGyAybgAbQDReEBtgMm4gG4A0XjAbkDJuQBugMm5QG7A0XmAb4DfucBvwOEAegBwAMl6QHBAyXqAcIDJesBwwMl7AHEAyXtAcYDJe4ByANF7wHKAyXwAcwDRfEBzQMl8gHOAyXzAc8DRfQB0gOFAfUB0wOJAfYB1AMk9wHVAyT4AdYDJPkB1wMk-gHYAyT7AdoDJPwB3ANF_QHeAyT-AeADRf8B4QMkgALiAySBAuMDRYIC5gOKAYMC5wOOAYQC6AMchQLpAxyGAuoDHIcC6wMciALsAxyJAu4DHIoC8ANFiwLyAxyMAvQDRY0C9QMcjgL2AxyPAvcDRZAC-gOPAZEC-wOTAZIC_QMbkwL-AxuUAoEEG5UCggQblgKDBBuXAoUEG5gChwRFmQKJBBuaAosERZsCjAQbnAKNBBudAo4ERZ4CkQSUAZ8CkgSYAaAClAQsoQKVBCyiApcELKMCmAQspAKZBCylApsELKYCnQRFpwKfBCyoAqEERakCogQsqgKjBCyrAqQERawCpwSZAa0CqASdAa4CqQQtrwKqBC2wAqsELbECrAQtsgKtBC2zAq8ELbQCsQRFtQKzBC22ArUERbcCtgQtuAK3BC25ArgERboCuwSeAbsCvASiAbwCvQQuvQK-BC6-Ar8ELr8CwAQuwALBBC7BAsMELsICxQRFwwLHBC7EAskERcUCygQuxgLLBC7HAswERcgCzwSjAckC0ASnAcoC0QQvywLSBC_MAtMEL80C1AQvzgLVBC_PAtcEL9AC2QRF0QLbBC_SAt0ERdMC3gQv1ALfBC_VAuAERdYC4wSoAdcC5ASsAdgC5QQF2QLmBAXaAucEBdsC6AQF3ALpBAXdAusEBd4C7QRF3wLvBAXgAvEEReEC8gQF4gLzBAXjAvQEReQC9wStAeUC-ASxAeYC-gQG5wL7BAboAv0EBukC_gQG6gL_BAbrAoEFBuwCgwVF7QKFBQbuAocFRe8CiAUG8AKJBQbxAooFRfICjQWyAfMCjgW2AfQCjwUZ9QKQBRn2ApEFGfcCkgUZ-AKTBRn5ApUFGfoClwVF-wKZBRn8ApsFRf0CnAUZ_gKdBRn_Ap4FRYADoQW3AYEDogW7AYIDpAW8AYMDpQW8AYQDqAW8AYUDqQW8AYYDqgW8AYcDrAW8AYgDrgVFiQOwBbwBigOyBUWLA7MFvAGMA7QFvAGNA7UFRY4DuAW9AY8DuQXBAZADugUXkQO7BReSA7wFF5MDvQUXlAO-BReVA8AFF5YDwgVFlwPEBReYA8YFRZkDxwUXmgPIBRebA8kFRZwDzAXCAZ0DzQXGAZ4DzwUYnwPQBRigA9MFGKED1AUYogPVBRijA9cFGKQD2QVFpQPbBRimA90FRacD3gUYqAPfBRipA-AFRaoD4wXHAasD5AXLAawD5QUarQPmBRquA-cFGq8D6AUasAPpBRqxA-sFGrID7QVFswPvBRq0A_EFRbUD8gUatgPzBRq3A_QFRbgD9wXMAbkD-AXQAboD-QUduwP6BR28A_sFHb0D_AUdvgP9BR2_A_8FHcADgQZFwQODBh3CA4UGRcMDhgYdxAOHBh3FA4gGRcYDiwbRAccDjAbVAcgDjQYJyQOOBgnKA48GCcsDkAYJzAORBgnNA5MGCc4DlQZFzwOXBgnQA5kGRdEDmgYJ0gObBgnTA5wGRdQDnwbWAdUDoAbcAdYDoQYI1wOiBgjYA6MGCNkDpAYI2gOlBgjbA6cGCNwDqQZF3QOrBgjeA60GRd8DrgYI4AOvBgjhA7AGReIDswbdAeMDtAbhAeQDtQYH5QO2BgfmA7cGB-cDuAYH6AO5BgfpA7sGB-oDvQZF6wO_BgfsA8EGRe0DwgYH7gPDBgfvA8QGRfADxwbiAfEDyAbmAfIDyQYM8wPKBgz0A8sGDPUDzAYM9gPNBgz3A88GDPgD0QZF-QPTBgz6A9UGRfsD1gYM_APXBgz9A9gGRf4D2wbnAf8D3AbtAYAE3QYLgQTeBguCBN8GC4ME4AYLhAThBguFBOMGC4YE5QZFhwTnBguIBOkGRYkE6gYLigTrBguLBOwGRYwE7wbuAY0E8AbyAY4E8gYPjwTzBg-QBPYGD5EE9wYPkgT4Bg-TBPoGD5QE_AZFlQT-Bg-WBIAHRZcEgQcPmASCBw-ZBIMHRZoEhgfzAZsEhwf3AZwEiQcNnQSKBw2eBI0HDZ8EjgcNoASPBw2hBJEHDaIEkwdFowSVBw2kBJcHRaUEmAcNpgSZBw2nBJoHRagEnQf4AakEngf-AaoEoAf_AasEoQf_AawEpAf_Aa0EpQf_Aa4Epgf_Aa8EqAf_AbAEqgdFsQSsB_8BsgSuB0WzBK8H_wG0BLAH_wG1BLEHRbYEtAeAArcEtQeGArgEtwcTuQS4BxO6BLoHE7sEuwcTvAS8BxO9BL4HE74EwAdFvwTCBxPABMQHRcEExQcTwgTGBxPDBMcHRcQEygeHAsUEyweLAsYEzAcUxwTNBxTIBM4HFMkEzwcUygTQBxTLBNIHFMwE1AdFzQTWBxTOBNgHRc8E2QcU0ATaBxTRBNsHRdIE3geMAtME3weQAtQE4AcV1QThBxXWBOIHFdcE4wcV2ATkBxXZBOYHFdoE6AdF2wTqBxXcBOwHRd0E7QcV3gTuBxXfBO8HReAE8geRAuEE8weVAuIE9QcK4wT2BwrkBPgHCuUE-QcK5gT6BwrnBPwHCugE_gdF6QSACArqBIIIResEgwgK7ASECArtBIUIRe4EiAiWAu8EiQiaAvAEiggS8QSLCBLyBIwIEvMEjQgS9ASOCBL1BJAIEvYEkghF9wSUCBL4BJYIRfkElwgS-gSYCBL7BJkIRfwEnAibAv0EnQihAv4EnggR_wSfCBGABaAIEYEFoQgRggWiCBGDBaQIEYQFpghFhQWoCBGGBaoIRYcFqwgRiAWsCBGJBa0IRYoFsAiiAosFsQioAowFsgg0jQWzCDSOBbQINI8FtQg0kAW2CDSRBbgINJIFughFkwW8CDSUBb4IRZUFvwg0lgXACDSXBcEIRZgFxAipApkFxQivApoFxggymwXHCDKcBcgIMp0FyQgyngXKCDKfBcwIMqAFzghFoQXQCDKiBdIIRaMF0wgypAXUCDKlBdUIRaYF2AiwAqcF2Qi2AqgF2wgzqQXcCDOqBd4IM6sF3wgzrAXgCDOtBeIIM64F5AhFrwXmCDOwBegIRbEF6QgzsgXqCDOzBesIRbQF7gi3ArUF7wi7ArYF8Ag2twXxCDa4BfIINrkF8wg2ugX0CDa7BfYINrwF-AhFvQX6CDa-BfwIRb8F_Qg2wAX-CDbBBf8IRcIFggm8AsMFgwnCAsQFhQk3xQWGCTfGBYgJN8cFiQk3yAWKCTfJBYwJN8oFjglFywWQCTfMBZIJRc0Fkwk3zgWUCTfPBZUJRdAFmAnDAtEFmQnHAg" } async function decodeBase64AsWasm(wasmBase64: string): Promise { @@ -601,24 +601,14 @@ export interface PrismaClient< get salesInvoiceItem(): Prisma.SalesInvoiceItemDelegate; /** - * `prisma.saleInvoiceFiscals`: Exposes CRUD operations for the **SaleInvoiceFiscals** model. + * `prisma.saleInvoiceTspAttempts`: Exposes CRUD operations for the **SaleInvoiceTspAttempts** model. * Example usage: * ```ts - * // Fetch zero or more SaleInvoiceFiscals - * const saleInvoiceFiscals = await prisma.saleInvoiceFiscals.findMany() + * // Fetch zero or more SaleInvoiceTspAttempts + * const saleInvoiceTspAttempts = await prisma.saleInvoiceTspAttempts.findMany() * ``` */ - get saleInvoiceFiscals(): Prisma.SaleInvoiceFiscalsDelegate; - - /** - * `prisma.saleInvoiceFiscalAttempts`: Exposes CRUD operations for the **SaleInvoiceFiscalAttempts** model. - * Example usage: - * ```ts - * // Fetch zero or more SaleInvoiceFiscalAttempts - * const saleInvoiceFiscalAttempts = await prisma.saleInvoiceFiscalAttempts.findMany() - * ``` - */ - get saleInvoiceFiscalAttempts(): Prisma.SaleInvoiceFiscalAttemptsDelegate; + get saleInvoiceTspAttempts(): Prisma.SaleInvoiceTspAttemptsDelegate; /** * `prisma.salesInvoicePayment`: Exposes CRUD operations for the **SalesInvoicePayment** model. diff --git a/src/generated/prisma/internal/prismaNamespace.ts b/src/generated/prisma/internal/prismaNamespace.ts index 00e4e40..85d71c2 100644 --- a/src/generated/prisma/internal/prismaNamespace.ts +++ b/src/generated/prisma/internal/prismaNamespace.ts @@ -425,8 +425,7 @@ export const ModelName = { Guild: 'Guild', SalesInvoice: 'SalesInvoice', SalesInvoiceItem: 'SalesInvoiceItem', - SaleInvoiceFiscals: 'SaleInvoiceFiscals', - SaleInvoiceFiscalAttempts: 'SaleInvoiceFiscalAttempts', + SaleInvoiceTspAttempts: 'SaleInvoiceTspAttempts', SalesInvoicePayment: 'SalesInvoicePayment', SalesInvoicePaymentTerminalInfo: 'SalesInvoicePaymentTerminalInfo', Service: 'Service', @@ -446,7 +445,7 @@ export type TypeMap - fields: Prisma.SaleInvoiceFiscalsFieldRefs + SaleInvoiceTspAttempts: { + payload: Prisma.$SaleInvoiceTspAttemptsPayload + fields: Prisma.SaleInvoiceTspAttemptsFieldRefs operations: { findUnique: { - args: Prisma.SaleInvoiceFiscalsFindUniqueArgs - result: runtime.Types.Utils.PayloadToResult | null + args: Prisma.SaleInvoiceTspAttemptsFindUniqueArgs + result: runtime.Types.Utils.PayloadToResult | null } findUniqueOrThrow: { - args: Prisma.SaleInvoiceFiscalsFindUniqueOrThrowArgs - result: runtime.Types.Utils.PayloadToResult + args: Prisma.SaleInvoiceTspAttemptsFindUniqueOrThrowArgs + result: runtime.Types.Utils.PayloadToResult } findFirst: { - args: Prisma.SaleInvoiceFiscalsFindFirstArgs - result: runtime.Types.Utils.PayloadToResult | null + args: Prisma.SaleInvoiceTspAttemptsFindFirstArgs + result: runtime.Types.Utils.PayloadToResult | null } findFirstOrThrow: { - args: Prisma.SaleInvoiceFiscalsFindFirstOrThrowArgs - result: runtime.Types.Utils.PayloadToResult + args: Prisma.SaleInvoiceTspAttemptsFindFirstOrThrowArgs + result: runtime.Types.Utils.PayloadToResult } findMany: { - args: Prisma.SaleInvoiceFiscalsFindManyArgs - result: runtime.Types.Utils.PayloadToResult[] + args: Prisma.SaleInvoiceTspAttemptsFindManyArgs + result: runtime.Types.Utils.PayloadToResult[] } create: { - args: Prisma.SaleInvoiceFiscalsCreateArgs - result: runtime.Types.Utils.PayloadToResult + args: Prisma.SaleInvoiceTspAttemptsCreateArgs + result: runtime.Types.Utils.PayloadToResult } createMany: { - args: Prisma.SaleInvoiceFiscalsCreateManyArgs + args: Prisma.SaleInvoiceTspAttemptsCreateManyArgs result: BatchPayload } delete: { - args: Prisma.SaleInvoiceFiscalsDeleteArgs - result: runtime.Types.Utils.PayloadToResult + args: Prisma.SaleInvoiceTspAttemptsDeleteArgs + result: runtime.Types.Utils.PayloadToResult } update: { - args: Prisma.SaleInvoiceFiscalsUpdateArgs - result: runtime.Types.Utils.PayloadToResult + args: Prisma.SaleInvoiceTspAttemptsUpdateArgs + result: runtime.Types.Utils.PayloadToResult } deleteMany: { - args: Prisma.SaleInvoiceFiscalsDeleteManyArgs + args: Prisma.SaleInvoiceTspAttemptsDeleteManyArgs result: BatchPayload } updateMany: { - args: Prisma.SaleInvoiceFiscalsUpdateManyArgs + args: Prisma.SaleInvoiceTspAttemptsUpdateManyArgs result: BatchPayload } upsert: { - args: Prisma.SaleInvoiceFiscalsUpsertArgs - result: runtime.Types.Utils.PayloadToResult + args: Prisma.SaleInvoiceTspAttemptsUpsertArgs + result: runtime.Types.Utils.PayloadToResult } aggregate: { - args: Prisma.SaleInvoiceFiscalsAggregateArgs - result: runtime.Types.Utils.Optional + args: Prisma.SaleInvoiceTspAttemptsAggregateArgs + result: runtime.Types.Utils.Optional } groupBy: { - args: Prisma.SaleInvoiceFiscalsGroupByArgs - result: runtime.Types.Utils.Optional[] + args: Prisma.SaleInvoiceTspAttemptsGroupByArgs + result: runtime.Types.Utils.Optional[] } count: { - args: Prisma.SaleInvoiceFiscalsCountArgs - result: runtime.Types.Utils.Optional | number - } - } - } - SaleInvoiceFiscalAttempts: { - payload: Prisma.$SaleInvoiceFiscalAttemptsPayload - fields: Prisma.SaleInvoiceFiscalAttemptsFieldRefs - operations: { - findUnique: { - args: Prisma.SaleInvoiceFiscalAttemptsFindUniqueArgs - result: runtime.Types.Utils.PayloadToResult | null - } - findUniqueOrThrow: { - args: Prisma.SaleInvoiceFiscalAttemptsFindUniqueOrThrowArgs - result: runtime.Types.Utils.PayloadToResult - } - findFirst: { - args: Prisma.SaleInvoiceFiscalAttemptsFindFirstArgs - result: runtime.Types.Utils.PayloadToResult | null - } - findFirstOrThrow: { - args: Prisma.SaleInvoiceFiscalAttemptsFindFirstOrThrowArgs - result: runtime.Types.Utils.PayloadToResult - } - findMany: { - args: Prisma.SaleInvoiceFiscalAttemptsFindManyArgs - result: runtime.Types.Utils.PayloadToResult[] - } - create: { - args: Prisma.SaleInvoiceFiscalAttemptsCreateArgs - result: runtime.Types.Utils.PayloadToResult - } - createMany: { - args: Prisma.SaleInvoiceFiscalAttemptsCreateManyArgs - result: BatchPayload - } - delete: { - args: Prisma.SaleInvoiceFiscalAttemptsDeleteArgs - result: runtime.Types.Utils.PayloadToResult - } - update: { - args: Prisma.SaleInvoiceFiscalAttemptsUpdateArgs - result: runtime.Types.Utils.PayloadToResult - } - deleteMany: { - args: Prisma.SaleInvoiceFiscalAttemptsDeleteManyArgs - result: BatchPayload - } - updateMany: { - args: Prisma.SaleInvoiceFiscalAttemptsUpdateManyArgs - result: BatchPayload - } - upsert: { - args: Prisma.SaleInvoiceFiscalAttemptsUpsertArgs - result: runtime.Types.Utils.PayloadToResult - } - aggregate: { - args: Prisma.SaleInvoiceFiscalAttemptsAggregateArgs - result: runtime.Types.Utils.Optional - } - groupBy: { - args: Prisma.SaleInvoiceFiscalAttemptsGroupByArgs - result: runtime.Types.Utils.Optional[] - } - count: { - args: Prisma.SaleInvoiceFiscalAttemptsCountArgs - result: runtime.Types.Utils.Optional | number + args: Prisma.SaleInvoiceTspAttemptsCountArgs + result: runtime.Types.Utils.Optional | number } } } @@ -3762,7 +3695,7 @@ export const PartnerScalarFieldEnum = { name: 'name', code: 'code', status: 'status', - fiscal_switch_type: 'fiscal_switch_type', + tsp_provider: 'tsp_provider', logo_url: 'logo_url', created_at: 'created_at', updated_at: 'updated_at' @@ -3927,6 +3860,7 @@ export const BusinessActivityScalarFieldEnum = { name: 'name', fiscal_id: 'fiscal_id', partner_token: 'partner_token', + invoice_number_sequence: 'invoice_number_sequence', created_at: 'created_at', updated_at: 'updated_at', guild_id: 'guild_id', @@ -4082,6 +4016,7 @@ export type CustomerLegalScalarFieldEnum = (typeof CustomerLegalScalarFieldEnum) export const GuildScalarFieldEnum = { id: 'id', name: 'name', + invoice_template: 'invoice_template', code: 'code', created_at: 'created_at', updated_at: 'updated_at' @@ -4130,19 +4065,7 @@ export const SalesInvoiceItemScalarFieldEnum = { export type SalesInvoiceItemScalarFieldEnum = (typeof SalesInvoiceItemScalarFieldEnum)[keyof typeof SalesInvoiceItemScalarFieldEnum] -export const SaleInvoiceFiscalsScalarFieldEnum = { - id: 'id', - retry_count: 'retry_count', - last_attempt_at: 'last_attempt_at', - created_at: 'created_at', - updated_at: 'updated_at', - invoice_id: 'invoice_id' -} as const - -export type SaleInvoiceFiscalsScalarFieldEnum = (typeof SaleInvoiceFiscalsScalarFieldEnum)[keyof typeof SaleInvoiceFiscalsScalarFieldEnum] - - -export const SaleInvoiceFiscalAttemptsScalarFieldEnum = { +export const SaleInvoiceTspAttemptsScalarFieldEnum = { id: 'id', attempt_no: 'attempt_no', status: 'status', @@ -4154,10 +4077,10 @@ export const SaleInvoiceFiscalAttemptsScalarFieldEnum = { sent_at: 'sent_at', received_at: 'received_at', created_at: 'created_at', - fiscal_id: 'fiscal_id' + invoice_id: 'invoice_id' } as const -export type SaleInvoiceFiscalAttemptsScalarFieldEnum = (typeof SaleInvoiceFiscalAttemptsScalarFieldEnum)[keyof typeof SaleInvoiceFiscalAttemptsScalarFieldEnum] +export type SaleInvoiceTspAttemptsScalarFieldEnum = (typeof SaleInvoiceTspAttemptsScalarFieldEnum)[keyof typeof SaleInvoiceTspAttemptsScalarFieldEnum] export const SalesInvoicePaymentScalarFieldEnum = { @@ -4237,6 +4160,13 @@ export const NullableJsonNullValueInput = { export type NullableJsonNullValueInput = (typeof NullableJsonNullValueInput)[keyof typeof NullableJsonNullValueInput] +export const JsonNullValueInput = { + JsonNull: JsonNull +} as const + +export type JsonNullValueInput = (typeof JsonNullValueInput)[keyof typeof JsonNullValueInput] + + export const AdminAccountOrderByRelevanceFieldEnum = { id: 'id', admin_id: 'admin_id', @@ -4679,22 +4609,14 @@ export const SalesInvoiceItemOrderByRelevanceFieldEnum = { export type SalesInvoiceItemOrderByRelevanceFieldEnum = (typeof SalesInvoiceItemOrderByRelevanceFieldEnum)[keyof typeof SalesInvoiceItemOrderByRelevanceFieldEnum] -export const SaleInvoiceFiscalsOrderByRelevanceFieldEnum = { - id: 'id', - invoice_id: 'invoice_id' -} as const - -export type SaleInvoiceFiscalsOrderByRelevanceFieldEnum = (typeof SaleInvoiceFiscalsOrderByRelevanceFieldEnum)[keyof typeof SaleInvoiceFiscalsOrderByRelevanceFieldEnum] - - -export const SaleInvoiceFiscalAttemptsOrderByRelevanceFieldEnum = { +export const SaleInvoiceTspAttemptsOrderByRelevanceFieldEnum = { id: 'id', tax_id: 'tax_id', error_message: 'error_message', - fiscal_id: 'fiscal_id' + invoice_id: 'invoice_id' } as const -export type SaleInvoiceFiscalAttemptsOrderByRelevanceFieldEnum = (typeof SaleInvoiceFiscalAttemptsOrderByRelevanceFieldEnum)[keyof typeof SaleInvoiceFiscalAttemptsOrderByRelevanceFieldEnum] +export type SaleInvoiceTspAttemptsOrderByRelevanceFieldEnum = (typeof SaleInvoiceTspAttemptsOrderByRelevanceFieldEnum)[keyof typeof SaleInvoiceTspAttemptsOrderByRelevanceFieldEnum] export const SalesInvoicePaymentOrderByRelevanceFieldEnum = { @@ -4801,9 +4723,9 @@ export type EnumPartnerStatusFieldRefInput<$PrismaModel> = FieldRefInputType<$Pr /** - * Reference to a field of type 'PartnerFiscalSwitchType' + * Reference to a field of type 'TspProviderType' */ -export type EnumPartnerFiscalSwitchTypeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'PartnerFiscalSwitchType'> +export type EnumTspProviderTypeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'TspProviderType'> @@ -4898,6 +4820,13 @@ export type EnumConsumerStatusFieldRefInput<$PrismaModel> = FieldRefInputType<$P +/** + * Reference to a field of type 'Decimal' + */ +export type DecimalFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Decimal'> + + + /** * Reference to a field of type 'POSStatus' */ @@ -4919,13 +4848,6 @@ export type EnumGoodPricingModelFieldRefInput<$PrismaModel> = FieldRefInputType< -/** - * Reference to a field of type 'Decimal' - */ -export type DecimalFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'Decimal'> - - - /** * Reference to a field of type 'SKUGuildType' */ @@ -4941,16 +4863,23 @@ export type EnumCustomerTypeFieldRefInput<$PrismaModel> = FieldRefInputType<$Pri /** - * Reference to a field of type 'FiscalResponseStatus' + * Reference to a field of type 'InvoiceTemplateType' */ -export type EnumFiscalResponseStatusFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'FiscalResponseStatus'> +export type EnumInvoiceTemplateTypeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'InvoiceTemplateType'> /** - * Reference to a field of type 'FiscalRequestType' + * Reference to a field of type 'TspProviderResponseStatus' */ -export type EnumFiscalRequestTypeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'FiscalRequestType'> +export type EnumTspProviderResponseStatusFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'TspProviderResponseStatus'> + + + +/** + * Reference to a field of type 'TspProviderRequestType' + */ +export type EnumTspProviderRequestTypeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'TspProviderRequestType'> @@ -5103,8 +5032,7 @@ export type GlobalOmitConfig = { guild?: Prisma.GuildOmit salesInvoice?: Prisma.SalesInvoiceOmit salesInvoiceItem?: Prisma.SalesInvoiceItemOmit - saleInvoiceFiscals?: Prisma.SaleInvoiceFiscalsOmit - saleInvoiceFiscalAttempts?: Prisma.SaleInvoiceFiscalAttemptsOmit + saleInvoiceTspAttempts?: Prisma.SaleInvoiceTspAttemptsOmit salesInvoicePayment?: Prisma.SalesInvoicePaymentOmit salesInvoicePaymentTerminalInfo?: Prisma.SalesInvoicePaymentTerminalInfoOmit service?: Prisma.ServiceOmit diff --git a/src/generated/prisma/internal/prismaNamespaceBrowser.ts b/src/generated/prisma/internal/prismaNamespaceBrowser.ts index 58e6847..a464b72 100644 --- a/src/generated/prisma/internal/prismaNamespaceBrowser.ts +++ b/src/generated/prisma/internal/prismaNamespaceBrowser.ts @@ -92,8 +92,7 @@ export const ModelName = { Guild: 'Guild', SalesInvoice: 'SalesInvoice', SalesInvoiceItem: 'SalesInvoiceItem', - SaleInvoiceFiscals: 'SaleInvoiceFiscals', - SaleInvoiceFiscalAttempts: 'SaleInvoiceFiscalAttempts', + SaleInvoiceTspAttempts: 'SaleInvoiceTspAttempts', SalesInvoicePayment: 'SalesInvoicePayment', SalesInvoicePaymentTerminalInfo: 'SalesInvoicePaymentTerminalInfo', Service: 'Service', @@ -287,7 +286,7 @@ export const PartnerScalarFieldEnum = { name: 'name', code: 'code', status: 'status', - fiscal_switch_type: 'fiscal_switch_type', + tsp_provider: 'tsp_provider', logo_url: 'logo_url', created_at: 'created_at', updated_at: 'updated_at' @@ -452,6 +451,7 @@ export const BusinessActivityScalarFieldEnum = { name: 'name', fiscal_id: 'fiscal_id', partner_token: 'partner_token', + invoice_number_sequence: 'invoice_number_sequence', created_at: 'created_at', updated_at: 'updated_at', guild_id: 'guild_id', @@ -607,6 +607,7 @@ export type CustomerLegalScalarFieldEnum = (typeof CustomerLegalScalarFieldEnum) export const GuildScalarFieldEnum = { id: 'id', name: 'name', + invoice_template: 'invoice_template', code: 'code', created_at: 'created_at', updated_at: 'updated_at' @@ -655,19 +656,7 @@ export const SalesInvoiceItemScalarFieldEnum = { export type SalesInvoiceItemScalarFieldEnum = (typeof SalesInvoiceItemScalarFieldEnum)[keyof typeof SalesInvoiceItemScalarFieldEnum] -export const SaleInvoiceFiscalsScalarFieldEnum = { - id: 'id', - retry_count: 'retry_count', - last_attempt_at: 'last_attempt_at', - created_at: 'created_at', - updated_at: 'updated_at', - invoice_id: 'invoice_id' -} as const - -export type SaleInvoiceFiscalsScalarFieldEnum = (typeof SaleInvoiceFiscalsScalarFieldEnum)[keyof typeof SaleInvoiceFiscalsScalarFieldEnum] - - -export const SaleInvoiceFiscalAttemptsScalarFieldEnum = { +export const SaleInvoiceTspAttemptsScalarFieldEnum = { id: 'id', attempt_no: 'attempt_no', status: 'status', @@ -679,10 +668,10 @@ export const SaleInvoiceFiscalAttemptsScalarFieldEnum = { sent_at: 'sent_at', received_at: 'received_at', created_at: 'created_at', - fiscal_id: 'fiscal_id' + invoice_id: 'invoice_id' } as const -export type SaleInvoiceFiscalAttemptsScalarFieldEnum = (typeof SaleInvoiceFiscalAttemptsScalarFieldEnum)[keyof typeof SaleInvoiceFiscalAttemptsScalarFieldEnum] +export type SaleInvoiceTspAttemptsScalarFieldEnum = (typeof SaleInvoiceTspAttemptsScalarFieldEnum)[keyof typeof SaleInvoiceTspAttemptsScalarFieldEnum] export const SalesInvoicePaymentScalarFieldEnum = { @@ -762,6 +751,13 @@ export const NullableJsonNullValueInput = { export type NullableJsonNullValueInput = (typeof NullableJsonNullValueInput)[keyof typeof NullableJsonNullValueInput] +export const JsonNullValueInput = { + JsonNull: JsonNull +} as const + +export type JsonNullValueInput = (typeof JsonNullValueInput)[keyof typeof JsonNullValueInput] + + export const AdminAccountOrderByRelevanceFieldEnum = { id: 'id', admin_id: 'admin_id', @@ -1204,22 +1200,14 @@ export const SalesInvoiceItemOrderByRelevanceFieldEnum = { export type SalesInvoiceItemOrderByRelevanceFieldEnum = (typeof SalesInvoiceItemOrderByRelevanceFieldEnum)[keyof typeof SalesInvoiceItemOrderByRelevanceFieldEnum] -export const SaleInvoiceFiscalsOrderByRelevanceFieldEnum = { - id: 'id', - invoice_id: 'invoice_id' -} as const - -export type SaleInvoiceFiscalsOrderByRelevanceFieldEnum = (typeof SaleInvoiceFiscalsOrderByRelevanceFieldEnum)[keyof typeof SaleInvoiceFiscalsOrderByRelevanceFieldEnum] - - -export const SaleInvoiceFiscalAttemptsOrderByRelevanceFieldEnum = { +export const SaleInvoiceTspAttemptsOrderByRelevanceFieldEnum = { id: 'id', tax_id: 'tax_id', error_message: 'error_message', - fiscal_id: 'fiscal_id' + invoice_id: 'invoice_id' } as const -export type SaleInvoiceFiscalAttemptsOrderByRelevanceFieldEnum = (typeof SaleInvoiceFiscalAttemptsOrderByRelevanceFieldEnum)[keyof typeof SaleInvoiceFiscalAttemptsOrderByRelevanceFieldEnum] +export type SaleInvoiceTspAttemptsOrderByRelevanceFieldEnum = (typeof SaleInvoiceTspAttemptsOrderByRelevanceFieldEnum)[keyof typeof SaleInvoiceTspAttemptsOrderByRelevanceFieldEnum] export const SalesInvoicePaymentOrderByRelevanceFieldEnum = { diff --git a/src/generated/prisma/models.ts b/src/generated/prisma/models.ts index 0c18db5..5fa72bd 100644 --- a/src/generated/prisma/models.ts +++ b/src/generated/prisma/models.ts @@ -49,8 +49,7 @@ export type * from './models/CustomerLegal.js' export type * from './models/Guild.js' export type * from './models/SalesInvoice.js' export type * from './models/SalesInvoiceItem.js' -export type * from './models/SaleInvoiceFiscals.js' -export type * from './models/SaleInvoiceFiscalAttempts.js' +export type * from './models/SaleInvoiceTspAttempts.js' export type * from './models/SalesInvoicePayment.js' export type * from './models/SalesInvoicePaymentTerminalInfo.js' export type * from './models/Service.js' diff --git a/src/generated/prisma/models/BusinessActivity.ts b/src/generated/prisma/models/BusinessActivity.ts index b7bccfc..468a85b 100644 --- a/src/generated/prisma/models/BusinessActivity.ts +++ b/src/generated/prisma/models/BusinessActivity.ts @@ -20,16 +20,27 @@ export type BusinessActivityModel = runtime.Types.Result.DefaultSelection | string fiscal_id?: Prisma.StringFilter<"BusinessActivity"> | string partner_token?: Prisma.StringFilter<"BusinessActivity"> | string + invoice_number_sequence?: Prisma.DecimalFilter<"BusinessActivity"> | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFilter<"BusinessActivity"> | Date | string updated_at?: Prisma.DateTimeFilter<"BusinessActivity"> | Date | string guild_id?: Prisma.StringFilter<"BusinessActivity"> | string @@ -230,6 +272,7 @@ export type BusinessActivityOrderByWithRelationInput = { name?: Prisma.SortOrder fiscal_id?: Prisma.SortOrder partner_token?: Prisma.SortOrder + invoice_number_sequence?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder guild_id?: Prisma.SortOrder @@ -255,6 +298,7 @@ export type BusinessActivityWhereUniqueInput = Prisma.AtLeast<{ name?: Prisma.StringFilter<"BusinessActivity"> | string fiscal_id?: Prisma.StringFilter<"BusinessActivity"> | string partner_token?: Prisma.StringFilter<"BusinessActivity"> | string + invoice_number_sequence?: Prisma.DecimalFilter<"BusinessActivity"> | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFilter<"BusinessActivity"> | Date | string updated_at?: Prisma.DateTimeFilter<"BusinessActivity"> | Date | string guild_id?: Prisma.StringFilter<"BusinessActivity"> | string @@ -275,13 +319,16 @@ export type BusinessActivityOrderByWithAggregationInput = { name?: Prisma.SortOrder fiscal_id?: Prisma.SortOrder partner_token?: Prisma.SortOrder + invoice_number_sequence?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder guild_id?: Prisma.SortOrder consumer_id?: Prisma.SortOrder _count?: Prisma.BusinessActivityCountOrderByAggregateInput + _avg?: Prisma.BusinessActivityAvgOrderByAggregateInput _max?: Prisma.BusinessActivityMaxOrderByAggregateInput _min?: Prisma.BusinessActivityMinOrderByAggregateInput + _sum?: Prisma.BusinessActivitySumOrderByAggregateInput } export type BusinessActivityScalarWhereWithAggregatesInput = { @@ -293,6 +340,7 @@ export type BusinessActivityScalarWhereWithAggregatesInput = { name?: Prisma.StringWithAggregatesFilter<"BusinessActivity"> | string fiscal_id?: Prisma.StringWithAggregatesFilter<"BusinessActivity"> | string partner_token?: Prisma.StringWithAggregatesFilter<"BusinessActivity"> | string + invoice_number_sequence?: Prisma.DecimalWithAggregatesFilter<"BusinessActivity"> | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeWithAggregatesFilter<"BusinessActivity"> | Date | string updated_at?: Prisma.DateTimeWithAggregatesFilter<"BusinessActivity"> | Date | string guild_id?: Prisma.StringWithAggregatesFilter<"BusinessActivity"> | string @@ -305,6 +353,7 @@ export type BusinessActivityCreateInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild: Prisma.GuildCreateNestedOneWithoutBusiness_activitiesInput @@ -323,6 +372,7 @@ export type BusinessActivityUncheckedCreateInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild_id: string @@ -341,6 +391,7 @@ export type BusinessActivityUpdateInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild?: Prisma.GuildUpdateOneRequiredWithoutBusiness_activitiesNestedInput @@ -359,6 +410,7 @@ export type BusinessActivityUncheckedUpdateInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild_id?: Prisma.StringFieldUpdateOperationsInput | string @@ -377,6 +429,7 @@ export type BusinessActivityCreateManyInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild_id: string @@ -389,6 +442,7 @@ export type BusinessActivityUpdateManyMutationInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string } @@ -399,6 +453,7 @@ export type BusinessActivityUncheckedUpdateManyInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild_id?: Prisma.StringFieldUpdateOperationsInput | string @@ -437,18 +492,24 @@ export type BusinessActivityCountOrderByAggregateInput = { name?: Prisma.SortOrder fiscal_id?: Prisma.SortOrder partner_token?: Prisma.SortOrder + invoice_number_sequence?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder guild_id?: Prisma.SortOrder consumer_id?: Prisma.SortOrder } +export type BusinessActivityAvgOrderByAggregateInput = { + invoice_number_sequence?: Prisma.SortOrder +} + export type BusinessActivityMaxOrderByAggregateInput = { id?: Prisma.SortOrder economic_code?: Prisma.SortOrder name?: Prisma.SortOrder fiscal_id?: Prisma.SortOrder partner_token?: Prisma.SortOrder + invoice_number_sequence?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder guild_id?: Prisma.SortOrder @@ -461,12 +522,17 @@ export type BusinessActivityMinOrderByAggregateInput = { name?: Prisma.SortOrder fiscal_id?: Prisma.SortOrder partner_token?: Prisma.SortOrder + invoice_number_sequence?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder guild_id?: Prisma.SortOrder consumer_id?: Prisma.SortOrder } +export type BusinessActivitySumOrderByAggregateInput = { + invoice_number_sequence?: Prisma.SortOrder +} + export type BusinessActivityNullableScalarRelationFilter = { is?: Prisma.BusinessActivityWhereInput | null isNot?: Prisma.BusinessActivityWhereInput | null @@ -542,6 +608,14 @@ export type BusinessActivityUncheckedUpdateManyWithoutConsumerNestedInput = { deleteMany?: Prisma.BusinessActivityScalarWhereInput | Prisma.BusinessActivityScalarWhereInput[] } +export type DecimalFieldUpdateOperationsInput = { + set?: runtime.Decimal | runtime.DecimalJsLike | number | string + increment?: runtime.Decimal | runtime.DecimalJsLike | number | string + decrement?: runtime.Decimal | runtime.DecimalJsLike | number | string + multiply?: runtime.Decimal | runtime.DecimalJsLike | number | string + divide?: runtime.Decimal | runtime.DecimalJsLike | number | string +} + export type BusinessActivityCreateNestedOneWithoutComplexesInput = { create?: Prisma.XOR connectOrCreate?: Prisma.BusinessActivityCreateOrConnectWithoutComplexesInput @@ -648,6 +722,7 @@ export type BusinessActivityCreateWithoutLicense_activationInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild: Prisma.GuildCreateNestedOneWithoutBusiness_activitiesInput @@ -665,6 +740,7 @@ export type BusinessActivityUncheckedCreateWithoutLicense_activationInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild_id: string @@ -698,6 +774,7 @@ export type BusinessActivityUpdateWithoutLicense_activationInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild?: Prisma.GuildUpdateOneRequiredWithoutBusiness_activitiesNestedInput @@ -715,6 +792,7 @@ export type BusinessActivityUncheckedUpdateWithoutLicense_activationInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild_id?: Prisma.StringFieldUpdateOperationsInput | string @@ -732,6 +810,7 @@ export type BusinessActivityCreateWithoutPermission_businessesInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild: Prisma.GuildCreateNestedOneWithoutBusiness_activitiesInput @@ -749,6 +828,7 @@ export type BusinessActivityUncheckedCreateWithoutPermission_businessesInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild_id: string @@ -782,6 +862,7 @@ export type BusinessActivityUpdateWithoutPermission_businessesInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild?: Prisma.GuildUpdateOneRequiredWithoutBusiness_activitiesNestedInput @@ -799,6 +880,7 @@ export type BusinessActivityUncheckedUpdateWithoutPermission_businessesInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild_id?: Prisma.StringFieldUpdateOperationsInput | string @@ -816,6 +898,7 @@ export type BusinessActivityCreateWithoutConsumerInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild: Prisma.GuildCreateNestedOneWithoutBusiness_activitiesInput @@ -833,6 +916,7 @@ export type BusinessActivityUncheckedCreateWithoutConsumerInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild_id: string @@ -879,6 +963,7 @@ export type BusinessActivityScalarWhereInput = { name?: Prisma.StringFilter<"BusinessActivity"> | string fiscal_id?: Prisma.StringFilter<"BusinessActivity"> | string partner_token?: Prisma.StringFilter<"BusinessActivity"> | string + invoice_number_sequence?: Prisma.DecimalFilter<"BusinessActivity"> | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFilter<"BusinessActivity"> | Date | string updated_at?: Prisma.DateTimeFilter<"BusinessActivity"> | Date | string guild_id?: Prisma.StringFilter<"BusinessActivity"> | string @@ -891,6 +976,7 @@ export type BusinessActivityCreateWithoutComplexesInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild: Prisma.GuildCreateNestedOneWithoutBusiness_activitiesInput @@ -908,6 +994,7 @@ export type BusinessActivityUncheckedCreateWithoutComplexesInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild_id: string @@ -941,6 +1028,7 @@ export type BusinessActivityUpdateWithoutComplexesInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild?: Prisma.GuildUpdateOneRequiredWithoutBusiness_activitiesNestedInput @@ -958,6 +1046,7 @@ export type BusinessActivityUncheckedUpdateWithoutComplexesInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild_id?: Prisma.StringFieldUpdateOperationsInput | string @@ -975,6 +1064,7 @@ export type BusinessActivityCreateWithoutGoodsInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild: Prisma.GuildCreateNestedOneWithoutBusiness_activitiesInput @@ -992,6 +1082,7 @@ export type BusinessActivityUncheckedCreateWithoutGoodsInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild_id: string @@ -1025,6 +1116,7 @@ export type BusinessActivityUpdateWithoutGoodsInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild?: Prisma.GuildUpdateOneRequiredWithoutBusiness_activitiesNestedInput @@ -1042,6 +1134,7 @@ export type BusinessActivityUncheckedUpdateWithoutGoodsInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild_id?: Prisma.StringFieldUpdateOperationsInput | string @@ -1059,6 +1152,7 @@ export type BusinessActivityCreateWithoutCustomer_individualsInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild: Prisma.GuildCreateNestedOneWithoutBusiness_activitiesInput @@ -1076,6 +1170,7 @@ export type BusinessActivityUncheckedCreateWithoutCustomer_individualsInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild_id: string @@ -1109,6 +1204,7 @@ export type BusinessActivityUpdateWithoutCustomer_individualsInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild?: Prisma.GuildUpdateOneRequiredWithoutBusiness_activitiesNestedInput @@ -1126,6 +1222,7 @@ export type BusinessActivityUncheckedUpdateWithoutCustomer_individualsInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild_id?: Prisma.StringFieldUpdateOperationsInput | string @@ -1143,6 +1240,7 @@ export type BusinessActivityCreateWithoutCustomer_legalsInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild: Prisma.GuildCreateNestedOneWithoutBusiness_activitiesInput @@ -1160,6 +1258,7 @@ export type BusinessActivityUncheckedCreateWithoutCustomer_legalsInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild_id: string @@ -1193,6 +1292,7 @@ export type BusinessActivityUpdateWithoutCustomer_legalsInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild?: Prisma.GuildUpdateOneRequiredWithoutBusiness_activitiesNestedInput @@ -1210,6 +1310,7 @@ export type BusinessActivityUncheckedUpdateWithoutCustomer_legalsInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild_id?: Prisma.StringFieldUpdateOperationsInput | string @@ -1227,6 +1328,7 @@ export type BusinessActivityCreateWithoutGuildInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string consumer: Prisma.ConsumerCreateNestedOneWithoutBusiness_activitiesInput @@ -1244,6 +1346,7 @@ export type BusinessActivityUncheckedCreateWithoutGuildInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string consumer_id: string @@ -1287,6 +1390,7 @@ export type BusinessActivityCreateManyConsumerInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string guild_id: string @@ -1298,6 +1402,7 @@ export type BusinessActivityUpdateWithoutConsumerInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild?: Prisma.GuildUpdateOneRequiredWithoutBusiness_activitiesNestedInput @@ -1315,6 +1420,7 @@ export type BusinessActivityUncheckedUpdateWithoutConsumerInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild_id?: Prisma.StringFieldUpdateOperationsInput | string @@ -1332,6 +1438,7 @@ export type BusinessActivityUncheckedUpdateManyWithoutConsumerInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string guild_id?: Prisma.StringFieldUpdateOperationsInput | string @@ -1343,6 +1450,7 @@ export type BusinessActivityCreateManyGuildInput = { name: string fiscal_id: string partner_token: string + invoice_number_sequence?: runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Date | string updated_at?: Date | string consumer_id: string @@ -1354,6 +1462,7 @@ export type BusinessActivityUpdateWithoutGuildInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string consumer?: Prisma.ConsumerUpdateOneRequiredWithoutBusiness_activitiesNestedInput @@ -1371,6 +1480,7 @@ export type BusinessActivityUncheckedUpdateWithoutGuildInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string consumer_id?: Prisma.StringFieldUpdateOperationsInput | string @@ -1388,6 +1498,7 @@ export type BusinessActivityUncheckedUpdateManyWithoutGuildInput = { name?: Prisma.StringFieldUpdateOperationsInput | string fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string partner_token?: Prisma.StringFieldUpdateOperationsInput | string + invoice_number_sequence?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string consumer_id?: Prisma.StringFieldUpdateOperationsInput | string @@ -1466,6 +1577,7 @@ export type BusinessActivitySelect = runtime.Types.Extensions.GetOmit<"id" | "economic_code" | "name" | "fiscal_id" | "partner_token" | "created_at" | "updated_at" | "guild_id" | "consumer_id", ExtArgs["result"]["businessActivity"]> +export type BusinessActivityOmit = runtime.Types.Extensions.GetOmit<"id" | "economic_code" | "name" | "fiscal_id" | "partner_token" | "invoice_number_sequence" | "created_at" | "updated_at" | "guild_id" | "consumer_id", ExtArgs["result"]["businessActivity"]> export type BusinessActivityInclude = { guild?: boolean | Prisma.GuildDefaultArgs consumer?: boolean | Prisma.ConsumerDefaultArgs @@ -1526,6 +1639,7 @@ export type $BusinessActivityPayload readonly fiscal_id: Prisma.FieldRef<"BusinessActivity", 'String'> readonly partner_token: Prisma.FieldRef<"BusinessActivity", 'String'> + readonly invoice_number_sequence: Prisma.FieldRef<"BusinessActivity", 'Decimal'> readonly created_at: Prisma.FieldRef<"BusinessActivity", 'DateTime'> readonly updated_at: Prisma.FieldRef<"BusinessActivity", 'DateTime'> readonly guild_id: Prisma.FieldRef<"BusinessActivity", 'String'> diff --git a/src/generated/prisma/models/Good.ts b/src/generated/prisma/models/Good.ts index e57477e..07ff975 100644 --- a/src/generated/prisma/models/Good.ts +++ b/src/generated/prisma/models/Good.ts @@ -623,9 +623,9 @@ export type GoodSumOrderByAggregateInput = { base_sale_price?: Prisma.SortOrder } -export type GoodNullableScalarRelationFilter = { - is?: Prisma.GoodWhereInput | null - isNot?: Prisma.GoodWhereInput | null +export type GoodScalarRelationFilter = { + is?: Prisma.GoodWhereInput + isNot?: Prisma.GoodWhereInput } export type GoodCreateNestedManyWithoutBusiness_activityInput = { @@ -818,12 +818,10 @@ export type GoodCreateNestedOneWithoutSales_invoice_itemsInput = { connect?: Prisma.GoodWhereUniqueInput } -export type GoodUpdateOneWithoutSales_invoice_itemsNestedInput = { +export type GoodUpdateOneRequiredWithoutSales_invoice_itemsNestedInput = { create?: Prisma.XOR connectOrCreate?: Prisma.GoodCreateOrConnectWithoutSales_invoice_itemsInput upsert?: Prisma.GoodUpsertWithoutSales_invoice_itemsInput - disconnect?: Prisma.GoodWhereInput | boolean - delete?: Prisma.GoodWhereInput | boolean connect?: Prisma.GoodWhereUniqueInput update?: Prisma.XOR, Prisma.GoodUncheckedUpdateWithoutSales_invoice_itemsInput> } diff --git a/src/generated/prisma/models/Guild.ts b/src/generated/prisma/models/Guild.ts index 9183622..3db4e76 100644 --- a/src/generated/prisma/models/Guild.ts +++ b/src/generated/prisma/models/Guild.ts @@ -27,6 +27,7 @@ export type AggregateGuild = { export type GuildMinAggregateOutputType = { id: string | null name: string | null + invoice_template: $Enums.InvoiceTemplateType | null code: string | null created_at: Date | null updated_at: Date | null @@ -35,6 +36,7 @@ export type GuildMinAggregateOutputType = { export type GuildMaxAggregateOutputType = { id: string | null name: string | null + invoice_template: $Enums.InvoiceTemplateType | null code: string | null created_at: Date | null updated_at: Date | null @@ -43,6 +45,7 @@ export type GuildMaxAggregateOutputType = { export type GuildCountAggregateOutputType = { id: number name: number + invoice_template: number code: number created_at: number updated_at: number @@ -53,6 +56,7 @@ export type GuildCountAggregateOutputType = { export type GuildMinAggregateInputType = { id?: true name?: true + invoice_template?: true code?: true created_at?: true updated_at?: true @@ -61,6 +65,7 @@ export type GuildMinAggregateInputType = { export type GuildMaxAggregateInputType = { id?: true name?: true + invoice_template?: true code?: true created_at?: true updated_at?: true @@ -69,6 +74,7 @@ export type GuildMaxAggregateInputType = { export type GuildCountAggregateInputType = { id?: true name?: true + invoice_template?: true code?: true created_at?: true updated_at?: true @@ -150,6 +156,7 @@ export type GuildGroupByArgs | string name?: Prisma.StringFilter<"Guild"> | string + invoice_template?: Prisma.EnumInvoiceTemplateTypeFilter<"Guild"> | $Enums.InvoiceTemplateType code?: Prisma.StringNullableFilter<"Guild"> | string | null created_at?: Prisma.DateTimeFilter<"Guild"> | Date | string updated_at?: Prisma.DateTimeFilter<"Guild"> | Date | string @@ -189,6 +197,7 @@ export type GuildWhereInput = { export type GuildOrderByWithRelationInput = { id?: Prisma.SortOrder name?: Prisma.SortOrder + invoice_template?: Prisma.SortOrder code?: Prisma.SortOrderInput | Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder @@ -203,6 +212,7 @@ export type GuildWhereUniqueInput = Prisma.AtLeast<{ OR?: Prisma.GuildWhereInput[] NOT?: Prisma.GuildWhereInput | Prisma.GuildWhereInput[] name?: Prisma.StringFilter<"Guild"> | string + invoice_template?: Prisma.EnumInvoiceTemplateTypeFilter<"Guild"> | $Enums.InvoiceTemplateType code?: Prisma.StringNullableFilter<"Guild"> | string | null created_at?: Prisma.DateTimeFilter<"Guild"> | Date | string updated_at?: Prisma.DateTimeFilter<"Guild"> | Date | string @@ -213,6 +223,7 @@ export type GuildWhereUniqueInput = Prisma.AtLeast<{ export type GuildOrderByWithAggregationInput = { id?: Prisma.SortOrder name?: Prisma.SortOrder + invoice_template?: Prisma.SortOrder code?: Prisma.SortOrderInput | Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder @@ -227,6 +238,7 @@ export type GuildScalarWhereWithAggregatesInput = { NOT?: Prisma.GuildScalarWhereWithAggregatesInput | Prisma.GuildScalarWhereWithAggregatesInput[] id?: Prisma.StringWithAggregatesFilter<"Guild"> | string name?: Prisma.StringWithAggregatesFilter<"Guild"> | string + invoice_template?: Prisma.EnumInvoiceTemplateTypeWithAggregatesFilter<"Guild"> | $Enums.InvoiceTemplateType code?: Prisma.StringNullableWithAggregatesFilter<"Guild"> | string | null created_at?: Prisma.DateTimeWithAggregatesFilter<"Guild"> | Date | string updated_at?: Prisma.DateTimeWithAggregatesFilter<"Guild"> | Date | string @@ -235,6 +247,7 @@ export type GuildScalarWhereWithAggregatesInput = { export type GuildCreateInput = { id?: string name: string + invoice_template: $Enums.InvoiceTemplateType code?: string | null created_at?: Date | string updated_at?: Date | string @@ -245,6 +258,7 @@ export type GuildCreateInput = { export type GuildUncheckedCreateInput = { id?: string name: string + invoice_template: $Enums.InvoiceTemplateType code?: string | null created_at?: Date | string updated_at?: Date | string @@ -255,6 +269,7 @@ export type GuildUncheckedCreateInput = { export type GuildUpdateInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string + invoice_template?: Prisma.EnumInvoiceTemplateTypeFieldUpdateOperationsInput | $Enums.InvoiceTemplateType code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -265,6 +280,7 @@ export type GuildUpdateInput = { export type GuildUncheckedUpdateInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string + invoice_template?: Prisma.EnumInvoiceTemplateTypeFieldUpdateOperationsInput | $Enums.InvoiceTemplateType code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -275,6 +291,7 @@ export type GuildUncheckedUpdateInput = { export type GuildCreateManyInput = { id?: string name: string + invoice_template: $Enums.InvoiceTemplateType code?: string | null created_at?: Date | string updated_at?: Date | string @@ -283,6 +300,7 @@ export type GuildCreateManyInput = { export type GuildUpdateManyMutationInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string + invoice_template?: Prisma.EnumInvoiceTemplateTypeFieldUpdateOperationsInput | $Enums.InvoiceTemplateType code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -291,6 +309,7 @@ export type GuildUpdateManyMutationInput = { export type GuildUncheckedUpdateManyInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string + invoice_template?: Prisma.EnumInvoiceTemplateTypeFieldUpdateOperationsInput | $Enums.InvoiceTemplateType code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -315,6 +334,7 @@ export type GuildOrderByRelevanceInput = { export type GuildCountOrderByAggregateInput = { id?: Prisma.SortOrder name?: Prisma.SortOrder + invoice_template?: Prisma.SortOrder code?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder @@ -323,6 +343,7 @@ export type GuildCountOrderByAggregateInput = { export type GuildMaxOrderByAggregateInput = { id?: Prisma.SortOrder name?: Prisma.SortOrder + invoice_template?: Prisma.SortOrder code?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder @@ -331,6 +352,7 @@ export type GuildMaxOrderByAggregateInput = { export type GuildMinOrderByAggregateInput = { id?: Prisma.SortOrder name?: Prisma.SortOrder + invoice_template?: Prisma.SortOrder code?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder @@ -366,9 +388,14 @@ export type GuildUpdateOneWithoutGood_categoriesNestedInput = { update?: Prisma.XOR, Prisma.GuildUncheckedUpdateWithoutGood_categoriesInput> } +export type EnumInvoiceTemplateTypeFieldUpdateOperationsInput = { + set?: $Enums.InvoiceTemplateType +} + export type GuildCreateWithoutBusiness_activitiesInput = { id?: string name: string + invoice_template: $Enums.InvoiceTemplateType code?: string | null created_at?: Date | string updated_at?: Date | string @@ -378,6 +405,7 @@ export type GuildCreateWithoutBusiness_activitiesInput = { export type GuildUncheckedCreateWithoutBusiness_activitiesInput = { id?: string name: string + invoice_template: $Enums.InvoiceTemplateType code?: string | null created_at?: Date | string updated_at?: Date | string @@ -403,6 +431,7 @@ export type GuildUpdateToOneWithWhereWithoutBusiness_activitiesInput = { export type GuildUpdateWithoutBusiness_activitiesInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string + invoice_template?: Prisma.EnumInvoiceTemplateTypeFieldUpdateOperationsInput | $Enums.InvoiceTemplateType code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -412,6 +441,7 @@ export type GuildUpdateWithoutBusiness_activitiesInput = { export type GuildUncheckedUpdateWithoutBusiness_activitiesInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string + invoice_template?: Prisma.EnumInvoiceTemplateTypeFieldUpdateOperationsInput | $Enums.InvoiceTemplateType code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -421,6 +451,7 @@ export type GuildUncheckedUpdateWithoutBusiness_activitiesInput = { export type GuildCreateWithoutGood_categoriesInput = { id?: string name: string + invoice_template: $Enums.InvoiceTemplateType code?: string | null created_at?: Date | string updated_at?: Date | string @@ -430,6 +461,7 @@ export type GuildCreateWithoutGood_categoriesInput = { export type GuildUncheckedCreateWithoutGood_categoriesInput = { id?: string name: string + invoice_template: $Enums.InvoiceTemplateType code?: string | null created_at?: Date | string updated_at?: Date | string @@ -455,6 +487,7 @@ export type GuildUpdateToOneWithWhereWithoutGood_categoriesInput = { export type GuildUpdateWithoutGood_categoriesInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string + invoice_template?: Prisma.EnumInvoiceTemplateTypeFieldUpdateOperationsInput | $Enums.InvoiceTemplateType code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -464,6 +497,7 @@ export type GuildUpdateWithoutGood_categoriesInput = { export type GuildUncheckedUpdateWithoutGood_categoriesInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string + invoice_template?: Prisma.EnumInvoiceTemplateTypeFieldUpdateOperationsInput | $Enums.InvoiceTemplateType code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -513,6 +547,7 @@ export type GuildCountOutputTypeCountGood_categoriesArgs = runtime.Types.Extensions.GetSelect<{ id?: boolean name?: boolean + invoice_template?: boolean code?: boolean created_at?: boolean updated_at?: boolean @@ -526,12 +561,13 @@ export type GuildSelect = runtime.Types.Extensions.GetOmit<"id" | "name" | "code" | "created_at" | "updated_at", ExtArgs["result"]["guild"]> +export type GuildOmit = runtime.Types.Extensions.GetOmit<"id" | "name" | "invoice_template" | "code" | "created_at" | "updated_at", ExtArgs["result"]["guild"]> export type GuildInclude = { business_activities?: boolean | Prisma.Guild$business_activitiesArgs good_categories?: boolean | Prisma.Guild$good_categoriesArgs @@ -547,6 +583,7 @@ export type $GuildPayload readonly name: Prisma.FieldRef<"Guild", 'String'> + readonly invoice_template: Prisma.FieldRef<"Guild", 'InvoiceTemplateType'> readonly code: Prisma.FieldRef<"Guild", 'String'> readonly created_at: Prisma.FieldRef<"Guild", 'DateTime'> readonly updated_at: Prisma.FieldRef<"Guild", 'DateTime'> diff --git a/src/generated/prisma/models/Partner.ts b/src/generated/prisma/models/Partner.ts index 7ae9a4a..de2d324 100644 --- a/src/generated/prisma/models/Partner.ts +++ b/src/generated/prisma/models/Partner.ts @@ -29,7 +29,7 @@ export type PartnerMinAggregateOutputType = { name: string | null code: string | null status: $Enums.PartnerStatus | null - fiscal_switch_type: $Enums.PartnerFiscalSwitchType | null + tsp_provider: $Enums.TspProviderType | null logo_url: string | null created_at: Date | null updated_at: Date | null @@ -40,7 +40,7 @@ export type PartnerMaxAggregateOutputType = { name: string | null code: string | null status: $Enums.PartnerStatus | null - fiscal_switch_type: $Enums.PartnerFiscalSwitchType | null + tsp_provider: $Enums.TspProviderType | null logo_url: string | null created_at: Date | null updated_at: Date | null @@ -51,7 +51,7 @@ export type PartnerCountAggregateOutputType = { name: number code: number status: number - fiscal_switch_type: number + tsp_provider: number logo_url: number created_at: number updated_at: number @@ -64,7 +64,7 @@ export type PartnerMinAggregateInputType = { name?: true code?: true status?: true - fiscal_switch_type?: true + tsp_provider?: true logo_url?: true created_at?: true updated_at?: true @@ -75,7 +75,7 @@ export type PartnerMaxAggregateInputType = { name?: true code?: true status?: true - fiscal_switch_type?: true + tsp_provider?: true logo_url?: true created_at?: true updated_at?: true @@ -86,7 +86,7 @@ export type PartnerCountAggregateInputType = { name?: true code?: true status?: true - fiscal_switch_type?: true + tsp_provider?: true logo_url?: true created_at?: true updated_at?: true @@ -170,7 +170,7 @@ export type PartnerGroupByOutputType = { name: string code: string status: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider: $Enums.TspProviderType logo_url: string | null created_at: Date updated_at: Date @@ -202,7 +202,7 @@ export type PartnerWhereInput = { name?: Prisma.StringFilter<"Partner"> | string code?: Prisma.StringFilter<"Partner"> | string status?: Prisma.EnumPartnerStatusFilter<"Partner"> | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFilter<"Partner"> | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFilter<"Partner"> | $Enums.TspProviderType logo_url?: Prisma.StringNullableFilter<"Partner"> | string | null created_at?: Prisma.DateTimeFilter<"Partner"> | Date | string updated_at?: Prisma.DateTimeFilter<"Partner"> | Date | string @@ -219,7 +219,7 @@ export type PartnerOrderByWithRelationInput = { name?: Prisma.SortOrder code?: Prisma.SortOrder status?: Prisma.SortOrder - fiscal_switch_type?: Prisma.SortOrder + tsp_provider?: Prisma.SortOrder logo_url?: Prisma.SortOrderInput | Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder @@ -240,7 +240,7 @@ export type PartnerWhereUniqueInput = Prisma.AtLeast<{ NOT?: Prisma.PartnerWhereInput | Prisma.PartnerWhereInput[] name?: Prisma.StringFilter<"Partner"> | string status?: Prisma.EnumPartnerStatusFilter<"Partner"> | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFilter<"Partner"> | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFilter<"Partner"> | $Enums.TspProviderType logo_url?: Prisma.StringNullableFilter<"Partner"> | string | null created_at?: Prisma.DateTimeFilter<"Partner"> | Date | string updated_at?: Prisma.DateTimeFilter<"Partner"> | Date | string @@ -257,7 +257,7 @@ export type PartnerOrderByWithAggregationInput = { name?: Prisma.SortOrder code?: Prisma.SortOrder status?: Prisma.SortOrder - fiscal_switch_type?: Prisma.SortOrder + tsp_provider?: Prisma.SortOrder logo_url?: Prisma.SortOrderInput | Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder @@ -274,7 +274,7 @@ export type PartnerScalarWhereWithAggregatesInput = { name?: Prisma.StringWithAggregatesFilter<"Partner"> | string code?: Prisma.StringWithAggregatesFilter<"Partner"> | string status?: Prisma.EnumPartnerStatusWithAggregatesFilter<"Partner"> | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeWithAggregatesFilter<"Partner"> | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeWithAggregatesFilter<"Partner"> | $Enums.TspProviderType logo_url?: Prisma.StringNullableWithAggregatesFilter<"Partner"> | string | null created_at?: Prisma.DateTimeWithAggregatesFilter<"Partner"> | Date | string updated_at?: Prisma.DateTimeWithAggregatesFilter<"Partner"> | Date | string @@ -285,7 +285,7 @@ export type PartnerCreateInput = { name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -302,7 +302,7 @@ export type PartnerUncheckedCreateInput = { name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -319,7 +319,7 @@ export type PartnerUpdateInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -336,7 +336,7 @@ export type PartnerUncheckedUpdateInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -353,7 +353,7 @@ export type PartnerCreateManyInput = { name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -364,7 +364,7 @@ export type PartnerUpdateManyMutationInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -375,7 +375,7 @@ export type PartnerUncheckedUpdateManyInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -397,7 +397,7 @@ export type PartnerCountOrderByAggregateInput = { name?: Prisma.SortOrder code?: Prisma.SortOrder status?: Prisma.SortOrder - fiscal_switch_type?: Prisma.SortOrder + tsp_provider?: Prisma.SortOrder logo_url?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder @@ -408,7 +408,7 @@ export type PartnerMaxOrderByAggregateInput = { name?: Prisma.SortOrder code?: Prisma.SortOrder status?: Prisma.SortOrder - fiscal_switch_type?: Prisma.SortOrder + tsp_provider?: Prisma.SortOrder logo_url?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder @@ -419,7 +419,7 @@ export type PartnerMinOrderByAggregateInput = { name?: Prisma.SortOrder code?: Prisma.SortOrder status?: Prisma.SortOrder - fiscal_switch_type?: Prisma.SortOrder + tsp_provider?: Prisma.SortOrder logo_url?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder @@ -485,8 +485,8 @@ export type EnumPartnerStatusFieldUpdateOperationsInput = { set?: $Enums.PartnerStatus } -export type EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput = { - set?: $Enums.PartnerFiscalSwitchType +export type EnumTspProviderTypeFieldUpdateOperationsInput = { + set?: $Enums.TspProviderType } export type PartnerCreateNestedOneWithoutConsumers_individualInput = { @@ -522,7 +522,7 @@ export type PartnerCreateWithoutLicense_charge_transactionsInput = { name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -538,7 +538,7 @@ export type PartnerUncheckedCreateWithoutLicense_charge_transactionsInput = { name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -570,7 +570,7 @@ export type PartnerUpdateWithoutLicense_charge_transactionsInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -586,7 +586,7 @@ export type PartnerUncheckedUpdateWithoutLicense_charge_transactionsInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -602,7 +602,7 @@ export type PartnerCreateWithoutLicense_renew_charge_transactionsInput = { name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -618,7 +618,7 @@ export type PartnerUncheckedCreateWithoutLicense_renew_charge_transactionsInput name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -650,7 +650,7 @@ export type PartnerUpdateWithoutLicense_renew_charge_transactionsInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -666,7 +666,7 @@ export type PartnerUncheckedUpdateWithoutLicense_renew_charge_transactionsInput name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -682,7 +682,7 @@ export type PartnerCreateWithoutAccount_quota_charge_transactionsInput = { name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -698,7 +698,7 @@ export type PartnerUncheckedCreateWithoutAccount_quota_charge_transactionsInput name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -730,7 +730,7 @@ export type PartnerUpdateWithoutAccount_quota_charge_transactionsInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -746,7 +746,7 @@ export type PartnerUncheckedUpdateWithoutAccount_quota_charge_transactionsInput name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -762,7 +762,7 @@ export type PartnerCreateWithoutAccountsInput = { name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -778,7 +778,7 @@ export type PartnerUncheckedCreateWithoutAccountsInput = { name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -810,7 +810,7 @@ export type PartnerUpdateWithoutAccountsInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -826,7 +826,7 @@ export type PartnerUncheckedUpdateWithoutAccountsInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -842,7 +842,7 @@ export type PartnerCreateWithoutConsumers_individualInput = { name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -858,7 +858,7 @@ export type PartnerUncheckedCreateWithoutConsumers_individualInput = { name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -890,7 +890,7 @@ export type PartnerUpdateWithoutConsumers_individualInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -906,7 +906,7 @@ export type PartnerUncheckedUpdateWithoutConsumers_individualInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -922,7 +922,7 @@ export type PartnerCreateWithoutConsumers_legalInput = { name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -938,7 +938,7 @@ export type PartnerUncheckedCreateWithoutConsumers_legalInput = { name: string code: string status?: $Enums.PartnerStatus - fiscal_switch_type: $Enums.PartnerFiscalSwitchType + tsp_provider?: $Enums.TspProviderType logo_url?: string | null created_at?: Date | string updated_at?: Date | string @@ -970,7 +970,7 @@ export type PartnerUpdateWithoutConsumers_legalInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -986,7 +986,7 @@ export type PartnerUncheckedUpdateWithoutConsumers_legalInput = { name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus - fiscal_switch_type?: Prisma.EnumPartnerFiscalSwitchTypeFieldUpdateOperationsInput | $Enums.PartnerFiscalSwitchType + tsp_provider?: Prisma.EnumTspProviderTypeFieldUpdateOperationsInput | $Enums.TspProviderType logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -1078,7 +1078,7 @@ export type PartnerSelect = runtime.Types.Extensions.GetOmit<"id" | "name" | "code" | "status" | "fiscal_switch_type" | "logo_url" | "created_at" | "updated_at", ExtArgs["result"]["partner"]> +export type PartnerOmit = runtime.Types.Extensions.GetOmit<"id" | "name" | "code" | "status" | "tsp_provider" | "logo_url" | "created_at" | "updated_at", ExtArgs["result"]["partner"]> export type PartnerInclude = { accounts?: boolean | Prisma.Partner$accountsArgs consumers_individual?: boolean | Prisma.Partner$consumers_individualArgs @@ -1130,7 +1130,7 @@ export type $PartnerPayload readonly code: Prisma.FieldRef<"Partner", 'String'> readonly status: Prisma.FieldRef<"Partner", 'PartnerStatus'> - readonly fiscal_switch_type: Prisma.FieldRef<"Partner", 'PartnerFiscalSwitchType'> + readonly tsp_provider: Prisma.FieldRef<"Partner", 'TspProviderType'> readonly logo_url: Prisma.FieldRef<"Partner", 'String'> readonly created_at: Prisma.FieldRef<"Partner", 'DateTime'> readonly updated_at: Prisma.FieldRef<"Partner", 'DateTime'> diff --git a/src/generated/prisma/models/SaleInvoiceFiscalAttempts.ts b/src/generated/prisma/models/SaleInvoiceFiscalAttempts.ts deleted file mode 100644 index 68ceb5d..0000000 --- a/src/generated/prisma/models/SaleInvoiceFiscalAttempts.ts +++ /dev/null @@ -1,1500 +0,0 @@ - -/* !!! This is code generated by Prisma. Do not edit directly. !!! */ -/* eslint-disable */ -// biome-ignore-all lint: generated file -// @ts-nocheck -/* - * This file exports the `SaleInvoiceFiscalAttempts` 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.js" -import type * as Prisma from "../internal/prismaNamespace.js" - -/** - * Model SaleInvoiceFiscalAttempts - * - */ -export type SaleInvoiceFiscalAttemptsModel = runtime.Types.Result.DefaultSelection - -export type AggregateSaleInvoiceFiscalAttempts = { - _count: SaleInvoiceFiscalAttemptsCountAggregateOutputType | null - _avg: SaleInvoiceFiscalAttemptsAvgAggregateOutputType | null - _sum: SaleInvoiceFiscalAttemptsSumAggregateOutputType | null - _min: SaleInvoiceFiscalAttemptsMinAggregateOutputType | null - _max: SaleInvoiceFiscalAttemptsMaxAggregateOutputType | null -} - -export type SaleInvoiceFiscalAttemptsAvgAggregateOutputType = { - attempt_no: number | null -} - -export type SaleInvoiceFiscalAttemptsSumAggregateOutputType = { - attempt_no: number | null -} - -export type SaleInvoiceFiscalAttemptsMinAggregateOutputType = { - id: string | null - attempt_no: number | null - status: $Enums.FiscalResponseStatus | null - tax_id: string | null - type: $Enums.FiscalRequestType | null - error_message: string | null - sent_at: Date | null - received_at: Date | null - created_at: Date | null - fiscal_id: string | null -} - -export type SaleInvoiceFiscalAttemptsMaxAggregateOutputType = { - id: string | null - attempt_no: number | null - status: $Enums.FiscalResponseStatus | null - tax_id: string | null - type: $Enums.FiscalRequestType | null - error_message: string | null - sent_at: Date | null - received_at: Date | null - created_at: Date | null - fiscal_id: string | null -} - -export type SaleInvoiceFiscalAttemptsCountAggregateOutputType = { - id: number - attempt_no: number - status: number - tax_id: number - type: number - request_payload: number - response_payload: number - error_message: number - sent_at: number - received_at: number - created_at: number - fiscal_id: number - _all: number -} - - -export type SaleInvoiceFiscalAttemptsAvgAggregateInputType = { - attempt_no?: true -} - -export type SaleInvoiceFiscalAttemptsSumAggregateInputType = { - attempt_no?: true -} - -export type SaleInvoiceFiscalAttemptsMinAggregateInputType = { - id?: true - attempt_no?: true - status?: true - tax_id?: true - type?: true - error_message?: true - sent_at?: true - received_at?: true - created_at?: true - fiscal_id?: true -} - -export type SaleInvoiceFiscalAttemptsMaxAggregateInputType = { - id?: true - attempt_no?: true - status?: true - tax_id?: true - type?: true - error_message?: true - sent_at?: true - received_at?: true - created_at?: true - fiscal_id?: true -} - -export type SaleInvoiceFiscalAttemptsCountAggregateInputType = { - id?: true - attempt_no?: true - status?: true - tax_id?: true - type?: true - request_payload?: true - response_payload?: true - error_message?: true - sent_at?: true - received_at?: true - created_at?: true - fiscal_id?: true - _all?: true -} - -export type SaleInvoiceFiscalAttemptsAggregateArgs = { - /** - * Filter which SaleInvoiceFiscalAttempts to aggregate. - */ - where?: Prisma.SaleInvoiceFiscalAttemptsWhereInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * - * Determine the order of SaleInvoiceFiscalAttempts to fetch. - */ - orderBy?: Prisma.SaleInvoiceFiscalAttemptsOrderByWithRelationInput | Prisma.SaleInvoiceFiscalAttemptsOrderByWithRelationInput[] - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * - * Sets the start position - */ - cursor?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Take `±n` SaleInvoiceFiscalAttempts 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` SaleInvoiceFiscalAttempts. - */ - skip?: number - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Count returned SaleInvoiceFiscalAttempts - **/ - _count?: true | SaleInvoiceFiscalAttemptsCountAggregateInputType - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Select which fields to average - **/ - _avg?: SaleInvoiceFiscalAttemptsAvgAggregateInputType - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Select which fields to sum - **/ - _sum?: SaleInvoiceFiscalAttemptsSumAggregateInputType - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Select which fields to find the minimum value - **/ - _min?: SaleInvoiceFiscalAttemptsMinAggregateInputType - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Select which fields to find the maximum value - **/ - _max?: SaleInvoiceFiscalAttemptsMaxAggregateInputType -} - -export type GetSaleInvoiceFiscalAttemptsAggregateType = { - [P in keyof T & keyof AggregateSaleInvoiceFiscalAttempts]: P extends '_count' | 'count' - ? T[P] extends true - ? number - : Prisma.GetScalarType - : Prisma.GetScalarType -} - - - - -export type SaleInvoiceFiscalAttemptsGroupByArgs = { - where?: Prisma.SaleInvoiceFiscalAttemptsWhereInput - orderBy?: Prisma.SaleInvoiceFiscalAttemptsOrderByWithAggregationInput | Prisma.SaleInvoiceFiscalAttemptsOrderByWithAggregationInput[] - by: Prisma.SaleInvoiceFiscalAttemptsScalarFieldEnum[] | Prisma.SaleInvoiceFiscalAttemptsScalarFieldEnum - having?: Prisma.SaleInvoiceFiscalAttemptsScalarWhereWithAggregatesInput - take?: number - skip?: number - _count?: SaleInvoiceFiscalAttemptsCountAggregateInputType | true - _avg?: SaleInvoiceFiscalAttemptsAvgAggregateInputType - _sum?: SaleInvoiceFiscalAttemptsSumAggregateInputType - _min?: SaleInvoiceFiscalAttemptsMinAggregateInputType - _max?: SaleInvoiceFiscalAttemptsMaxAggregateInputType -} - -export type SaleInvoiceFiscalAttemptsGroupByOutputType = { - id: string - attempt_no: number - status: $Enums.FiscalResponseStatus - tax_id: string | null - type: $Enums.FiscalRequestType - request_payload: runtime.JsonValue | null - response_payload: runtime.JsonValue | null - error_message: string | null - sent_at: Date | null - received_at: Date | null - created_at: Date - fiscal_id: string - _count: SaleInvoiceFiscalAttemptsCountAggregateOutputType | null - _avg: SaleInvoiceFiscalAttemptsAvgAggregateOutputType | null - _sum: SaleInvoiceFiscalAttemptsSumAggregateOutputType | null - _min: SaleInvoiceFiscalAttemptsMinAggregateOutputType | null - _max: SaleInvoiceFiscalAttemptsMaxAggregateOutputType | null -} - -export type GetSaleInvoiceFiscalAttemptsGroupByPayload = Prisma.PrismaPromise< - Array< - Prisma.PickEnumerable & - { - [P in ((keyof T) & (keyof SaleInvoiceFiscalAttemptsGroupByOutputType))]: P extends '_count' - ? T[P] extends boolean - ? number - : Prisma.GetScalarType - : Prisma.GetScalarType - } - > - > - - - -export type SaleInvoiceFiscalAttemptsWhereInput = { - AND?: Prisma.SaleInvoiceFiscalAttemptsWhereInput | Prisma.SaleInvoiceFiscalAttemptsWhereInput[] - OR?: Prisma.SaleInvoiceFiscalAttemptsWhereInput[] - NOT?: Prisma.SaleInvoiceFiscalAttemptsWhereInput | Prisma.SaleInvoiceFiscalAttemptsWhereInput[] - id?: Prisma.StringFilter<"SaleInvoiceFiscalAttempts"> | string - attempt_no?: Prisma.IntFilter<"SaleInvoiceFiscalAttempts"> | number - status?: Prisma.EnumFiscalResponseStatusFilter<"SaleInvoiceFiscalAttempts"> | $Enums.FiscalResponseStatus - tax_id?: Prisma.StringNullableFilter<"SaleInvoiceFiscalAttempts"> | string | null - type?: Prisma.EnumFiscalRequestTypeFilter<"SaleInvoiceFiscalAttempts"> | $Enums.FiscalRequestType - request_payload?: Prisma.JsonNullableFilter<"SaleInvoiceFiscalAttempts"> - response_payload?: Prisma.JsonNullableFilter<"SaleInvoiceFiscalAttempts"> - error_message?: Prisma.StringNullableFilter<"SaleInvoiceFiscalAttempts"> | string | null - sent_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceFiscalAttempts"> | Date | string | null - received_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceFiscalAttempts"> | Date | string | null - created_at?: Prisma.DateTimeFilter<"SaleInvoiceFiscalAttempts"> | Date | string - fiscal_id?: Prisma.StringFilter<"SaleInvoiceFiscalAttempts"> | string - fiscal?: Prisma.XOR -} - -export type SaleInvoiceFiscalAttemptsOrderByWithRelationInput = { - id?: Prisma.SortOrder - attempt_no?: Prisma.SortOrder - status?: Prisma.SortOrder - tax_id?: Prisma.SortOrderInput | Prisma.SortOrder - type?: Prisma.SortOrder - request_payload?: Prisma.SortOrderInput | Prisma.SortOrder - response_payload?: Prisma.SortOrderInput | Prisma.SortOrder - error_message?: Prisma.SortOrderInput | Prisma.SortOrder - sent_at?: Prisma.SortOrderInput | Prisma.SortOrder - received_at?: Prisma.SortOrderInput | Prisma.SortOrder - created_at?: Prisma.SortOrder - fiscal_id?: Prisma.SortOrder - fiscal?: Prisma.SaleInvoiceFiscalsOrderByWithRelationInput - _relevance?: Prisma.SaleInvoiceFiscalAttemptsOrderByRelevanceInput -} - -export type SaleInvoiceFiscalAttemptsWhereUniqueInput = Prisma.AtLeast<{ - id?: string - tax_id?: string - fiscal_id_attempt_no?: Prisma.SaleInvoiceFiscalAttemptsFiscal_idAttempt_noCompoundUniqueInput - AND?: Prisma.SaleInvoiceFiscalAttemptsWhereInput | Prisma.SaleInvoiceFiscalAttemptsWhereInput[] - OR?: Prisma.SaleInvoiceFiscalAttemptsWhereInput[] - NOT?: Prisma.SaleInvoiceFiscalAttemptsWhereInput | Prisma.SaleInvoiceFiscalAttemptsWhereInput[] - attempt_no?: Prisma.IntFilter<"SaleInvoiceFiscalAttempts"> | number - status?: Prisma.EnumFiscalResponseStatusFilter<"SaleInvoiceFiscalAttempts"> | $Enums.FiscalResponseStatus - type?: Prisma.EnumFiscalRequestTypeFilter<"SaleInvoiceFiscalAttempts"> | $Enums.FiscalRequestType - request_payload?: Prisma.JsonNullableFilter<"SaleInvoiceFiscalAttempts"> - response_payload?: Prisma.JsonNullableFilter<"SaleInvoiceFiscalAttempts"> - error_message?: Prisma.StringNullableFilter<"SaleInvoiceFiscalAttempts"> | string | null - sent_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceFiscalAttempts"> | Date | string | null - received_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceFiscalAttempts"> | Date | string | null - created_at?: Prisma.DateTimeFilter<"SaleInvoiceFiscalAttempts"> | Date | string - fiscal_id?: Prisma.StringFilter<"SaleInvoiceFiscalAttempts"> | string - fiscal?: Prisma.XOR -}, "id" | "tax_id" | "fiscal_id_attempt_no"> - -export type SaleInvoiceFiscalAttemptsOrderByWithAggregationInput = { - id?: Prisma.SortOrder - attempt_no?: Prisma.SortOrder - status?: Prisma.SortOrder - tax_id?: Prisma.SortOrderInput | Prisma.SortOrder - type?: Prisma.SortOrder - request_payload?: Prisma.SortOrderInput | Prisma.SortOrder - response_payload?: Prisma.SortOrderInput | Prisma.SortOrder - error_message?: Prisma.SortOrderInput | Prisma.SortOrder - sent_at?: Prisma.SortOrderInput | Prisma.SortOrder - received_at?: Prisma.SortOrderInput | Prisma.SortOrder - created_at?: Prisma.SortOrder - fiscal_id?: Prisma.SortOrder - _count?: Prisma.SaleInvoiceFiscalAttemptsCountOrderByAggregateInput - _avg?: Prisma.SaleInvoiceFiscalAttemptsAvgOrderByAggregateInput - _max?: Prisma.SaleInvoiceFiscalAttemptsMaxOrderByAggregateInput - _min?: Prisma.SaleInvoiceFiscalAttemptsMinOrderByAggregateInput - _sum?: Prisma.SaleInvoiceFiscalAttemptsSumOrderByAggregateInput -} - -export type SaleInvoiceFiscalAttemptsScalarWhereWithAggregatesInput = { - AND?: Prisma.SaleInvoiceFiscalAttemptsScalarWhereWithAggregatesInput | Prisma.SaleInvoiceFiscalAttemptsScalarWhereWithAggregatesInput[] - OR?: Prisma.SaleInvoiceFiscalAttemptsScalarWhereWithAggregatesInput[] - NOT?: Prisma.SaleInvoiceFiscalAttemptsScalarWhereWithAggregatesInput | Prisma.SaleInvoiceFiscalAttemptsScalarWhereWithAggregatesInput[] - id?: Prisma.StringWithAggregatesFilter<"SaleInvoiceFiscalAttempts"> | string - attempt_no?: Prisma.IntWithAggregatesFilter<"SaleInvoiceFiscalAttempts"> | number - status?: Prisma.EnumFiscalResponseStatusWithAggregatesFilter<"SaleInvoiceFiscalAttempts"> | $Enums.FiscalResponseStatus - tax_id?: Prisma.StringNullableWithAggregatesFilter<"SaleInvoiceFiscalAttempts"> | string | null - type?: Prisma.EnumFiscalRequestTypeWithAggregatesFilter<"SaleInvoiceFiscalAttempts"> | $Enums.FiscalRequestType - request_payload?: Prisma.JsonNullableWithAggregatesFilter<"SaleInvoiceFiscalAttempts"> - response_payload?: Prisma.JsonNullableWithAggregatesFilter<"SaleInvoiceFiscalAttempts"> - error_message?: Prisma.StringNullableWithAggregatesFilter<"SaleInvoiceFiscalAttempts"> | string | null - sent_at?: Prisma.DateTimeNullableWithAggregatesFilter<"SaleInvoiceFiscalAttempts"> | Date | string | null - received_at?: Prisma.DateTimeNullableWithAggregatesFilter<"SaleInvoiceFiscalAttempts"> | Date | string | null - created_at?: Prisma.DateTimeWithAggregatesFilter<"SaleInvoiceFiscalAttempts"> | Date | string - fiscal_id?: Prisma.StringWithAggregatesFilter<"SaleInvoiceFiscalAttempts"> | string -} - -export type SaleInvoiceFiscalAttemptsCreateInput = { - id?: string - attempt_no: number - status: $Enums.FiscalResponseStatus - tax_id?: string | null - type: $Enums.FiscalRequestType - request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - error_message?: string | null - sent_at?: Date | string | null - received_at?: Date | string | null - created_at?: Date | string - fiscal: Prisma.SaleInvoiceFiscalsCreateNestedOneWithoutAttemptsInput -} - -export type SaleInvoiceFiscalAttemptsUncheckedCreateInput = { - id?: string - attempt_no: number - status: $Enums.FiscalResponseStatus - tax_id?: string | null - type: $Enums.FiscalRequestType - request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - error_message?: string | null - sent_at?: Date | string | null - received_at?: Date | string | null - created_at?: Date | string - fiscal_id: string -} - -export type SaleInvoiceFiscalAttemptsUpdateInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - attempt_no?: Prisma.IntFieldUpdateOperationsInput | number - status?: Prisma.EnumFiscalResponseStatusFieldUpdateOperationsInput | $Enums.FiscalResponseStatus - tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - type?: Prisma.EnumFiscalRequestTypeFieldUpdateOperationsInput | $Enums.FiscalRequestType - request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - fiscal?: Prisma.SaleInvoiceFiscalsUpdateOneRequiredWithoutAttemptsNestedInput -} - -export type SaleInvoiceFiscalAttemptsUncheckedUpdateInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - attempt_no?: Prisma.IntFieldUpdateOperationsInput | number - status?: Prisma.EnumFiscalResponseStatusFieldUpdateOperationsInput | $Enums.FiscalResponseStatus - tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - type?: Prisma.EnumFiscalRequestTypeFieldUpdateOperationsInput | $Enums.FiscalRequestType - request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string -} - -export type SaleInvoiceFiscalAttemptsCreateManyInput = { - id?: string - attempt_no: number - status: $Enums.FiscalResponseStatus - tax_id?: string | null - type: $Enums.FiscalRequestType - request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - error_message?: string | null - sent_at?: Date | string | null - received_at?: Date | string | null - created_at?: Date | string - fiscal_id: string -} - -export type SaleInvoiceFiscalAttemptsUpdateManyMutationInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - attempt_no?: Prisma.IntFieldUpdateOperationsInput | number - status?: Prisma.EnumFiscalResponseStatusFieldUpdateOperationsInput | $Enums.FiscalResponseStatus - tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - type?: Prisma.EnumFiscalRequestTypeFieldUpdateOperationsInput | $Enums.FiscalRequestType - request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string -} - -export type SaleInvoiceFiscalAttemptsUncheckedUpdateManyInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - attempt_no?: Prisma.IntFieldUpdateOperationsInput | number - status?: Prisma.EnumFiscalResponseStatusFieldUpdateOperationsInput | $Enums.FiscalResponseStatus - tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - type?: Prisma.EnumFiscalRequestTypeFieldUpdateOperationsInput | $Enums.FiscalRequestType - request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - fiscal_id?: Prisma.StringFieldUpdateOperationsInput | string -} - -export type SaleInvoiceFiscalAttemptsListRelationFilter = { - every?: Prisma.SaleInvoiceFiscalAttemptsWhereInput - some?: Prisma.SaleInvoiceFiscalAttemptsWhereInput - none?: Prisma.SaleInvoiceFiscalAttemptsWhereInput -} - -export type SaleInvoiceFiscalAttemptsOrderByRelationAggregateInput = { - _count?: Prisma.SortOrder -} - -export type SaleInvoiceFiscalAttemptsOrderByRelevanceInput = { - fields: Prisma.SaleInvoiceFiscalAttemptsOrderByRelevanceFieldEnum | Prisma.SaleInvoiceFiscalAttemptsOrderByRelevanceFieldEnum[] - sort: Prisma.SortOrder - search: string -} - -export type SaleInvoiceFiscalAttemptsFiscal_idAttempt_noCompoundUniqueInput = { - fiscal_id: string - attempt_no: number -} - -export type SaleInvoiceFiscalAttemptsCountOrderByAggregateInput = { - id?: Prisma.SortOrder - attempt_no?: Prisma.SortOrder - status?: Prisma.SortOrder - tax_id?: Prisma.SortOrder - type?: Prisma.SortOrder - request_payload?: Prisma.SortOrder - response_payload?: Prisma.SortOrder - error_message?: Prisma.SortOrder - sent_at?: Prisma.SortOrder - received_at?: Prisma.SortOrder - created_at?: Prisma.SortOrder - fiscal_id?: Prisma.SortOrder -} - -export type SaleInvoiceFiscalAttemptsAvgOrderByAggregateInput = { - attempt_no?: Prisma.SortOrder -} - -export type SaleInvoiceFiscalAttemptsMaxOrderByAggregateInput = { - id?: Prisma.SortOrder - attempt_no?: Prisma.SortOrder - status?: Prisma.SortOrder - tax_id?: Prisma.SortOrder - type?: Prisma.SortOrder - error_message?: Prisma.SortOrder - sent_at?: Prisma.SortOrder - received_at?: Prisma.SortOrder - created_at?: Prisma.SortOrder - fiscal_id?: Prisma.SortOrder -} - -export type SaleInvoiceFiscalAttemptsMinOrderByAggregateInput = { - id?: Prisma.SortOrder - attempt_no?: Prisma.SortOrder - status?: Prisma.SortOrder - tax_id?: Prisma.SortOrder - type?: Prisma.SortOrder - error_message?: Prisma.SortOrder - sent_at?: Prisma.SortOrder - received_at?: Prisma.SortOrder - created_at?: Prisma.SortOrder - fiscal_id?: Prisma.SortOrder -} - -export type SaleInvoiceFiscalAttemptsSumOrderByAggregateInput = { - attempt_no?: Prisma.SortOrder -} - -export type SaleInvoiceFiscalAttemptsCreateNestedManyWithoutFiscalInput = { - create?: Prisma.XOR | Prisma.SaleInvoiceFiscalAttemptsCreateWithoutFiscalInput[] | Prisma.SaleInvoiceFiscalAttemptsUncheckedCreateWithoutFiscalInput[] - connectOrCreate?: Prisma.SaleInvoiceFiscalAttemptsCreateOrConnectWithoutFiscalInput | Prisma.SaleInvoiceFiscalAttemptsCreateOrConnectWithoutFiscalInput[] - createMany?: Prisma.SaleInvoiceFiscalAttemptsCreateManyFiscalInputEnvelope - connect?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput | Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput[] -} - -export type SaleInvoiceFiscalAttemptsUncheckedCreateNestedManyWithoutFiscalInput = { - create?: Prisma.XOR | Prisma.SaleInvoiceFiscalAttemptsCreateWithoutFiscalInput[] | Prisma.SaleInvoiceFiscalAttemptsUncheckedCreateWithoutFiscalInput[] - connectOrCreate?: Prisma.SaleInvoiceFiscalAttemptsCreateOrConnectWithoutFiscalInput | Prisma.SaleInvoiceFiscalAttemptsCreateOrConnectWithoutFiscalInput[] - createMany?: Prisma.SaleInvoiceFiscalAttemptsCreateManyFiscalInputEnvelope - connect?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput | Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput[] -} - -export type SaleInvoiceFiscalAttemptsUpdateManyWithoutFiscalNestedInput = { - create?: Prisma.XOR | Prisma.SaleInvoiceFiscalAttemptsCreateWithoutFiscalInput[] | Prisma.SaleInvoiceFiscalAttemptsUncheckedCreateWithoutFiscalInput[] - connectOrCreate?: Prisma.SaleInvoiceFiscalAttemptsCreateOrConnectWithoutFiscalInput | Prisma.SaleInvoiceFiscalAttemptsCreateOrConnectWithoutFiscalInput[] - upsert?: Prisma.SaleInvoiceFiscalAttemptsUpsertWithWhereUniqueWithoutFiscalInput | Prisma.SaleInvoiceFiscalAttemptsUpsertWithWhereUniqueWithoutFiscalInput[] - createMany?: Prisma.SaleInvoiceFiscalAttemptsCreateManyFiscalInputEnvelope - set?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput | Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput[] - disconnect?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput | Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput[] - delete?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput | Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput[] - connect?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput | Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput[] - update?: Prisma.SaleInvoiceFiscalAttemptsUpdateWithWhereUniqueWithoutFiscalInput | Prisma.SaleInvoiceFiscalAttemptsUpdateWithWhereUniqueWithoutFiscalInput[] - updateMany?: Prisma.SaleInvoiceFiscalAttemptsUpdateManyWithWhereWithoutFiscalInput | Prisma.SaleInvoiceFiscalAttemptsUpdateManyWithWhereWithoutFiscalInput[] - deleteMany?: Prisma.SaleInvoiceFiscalAttemptsScalarWhereInput | Prisma.SaleInvoiceFiscalAttemptsScalarWhereInput[] -} - -export type SaleInvoiceFiscalAttemptsUncheckedUpdateManyWithoutFiscalNestedInput = { - create?: Prisma.XOR | Prisma.SaleInvoiceFiscalAttemptsCreateWithoutFiscalInput[] | Prisma.SaleInvoiceFiscalAttemptsUncheckedCreateWithoutFiscalInput[] - connectOrCreate?: Prisma.SaleInvoiceFiscalAttemptsCreateOrConnectWithoutFiscalInput | Prisma.SaleInvoiceFiscalAttemptsCreateOrConnectWithoutFiscalInput[] - upsert?: Prisma.SaleInvoiceFiscalAttemptsUpsertWithWhereUniqueWithoutFiscalInput | Prisma.SaleInvoiceFiscalAttemptsUpsertWithWhereUniqueWithoutFiscalInput[] - createMany?: Prisma.SaleInvoiceFiscalAttemptsCreateManyFiscalInputEnvelope - set?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput | Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput[] - disconnect?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput | Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput[] - delete?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput | Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput[] - connect?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput | Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput[] - update?: Prisma.SaleInvoiceFiscalAttemptsUpdateWithWhereUniqueWithoutFiscalInput | Prisma.SaleInvoiceFiscalAttemptsUpdateWithWhereUniqueWithoutFiscalInput[] - updateMany?: Prisma.SaleInvoiceFiscalAttemptsUpdateManyWithWhereWithoutFiscalInput | Prisma.SaleInvoiceFiscalAttemptsUpdateManyWithWhereWithoutFiscalInput[] - deleteMany?: Prisma.SaleInvoiceFiscalAttemptsScalarWhereInput | Prisma.SaleInvoiceFiscalAttemptsScalarWhereInput[] -} - -export type EnumFiscalResponseStatusFieldUpdateOperationsInput = { - set?: $Enums.FiscalResponseStatus -} - -export type EnumFiscalRequestTypeFieldUpdateOperationsInput = { - set?: $Enums.FiscalRequestType -} - -export type SaleInvoiceFiscalAttemptsCreateWithoutFiscalInput = { - id?: string - attempt_no: number - status: $Enums.FiscalResponseStatus - tax_id?: string | null - type: $Enums.FiscalRequestType - request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - error_message?: string | null - sent_at?: Date | string | null - received_at?: Date | string | null - created_at?: Date | string -} - -export type SaleInvoiceFiscalAttemptsUncheckedCreateWithoutFiscalInput = { - id?: string - attempt_no: number - status: $Enums.FiscalResponseStatus - tax_id?: string | null - type: $Enums.FiscalRequestType - request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - error_message?: string | null - sent_at?: Date | string | null - received_at?: Date | string | null - created_at?: Date | string -} - -export type SaleInvoiceFiscalAttemptsCreateOrConnectWithoutFiscalInput = { - where: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput - create: Prisma.XOR -} - -export type SaleInvoiceFiscalAttemptsCreateManyFiscalInputEnvelope = { - data: Prisma.SaleInvoiceFiscalAttemptsCreateManyFiscalInput | Prisma.SaleInvoiceFiscalAttemptsCreateManyFiscalInput[] - skipDuplicates?: boolean -} - -export type SaleInvoiceFiscalAttemptsUpsertWithWhereUniqueWithoutFiscalInput = { - where: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput - update: Prisma.XOR - create: Prisma.XOR -} - -export type SaleInvoiceFiscalAttemptsUpdateWithWhereUniqueWithoutFiscalInput = { - where: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput - data: Prisma.XOR -} - -export type SaleInvoiceFiscalAttemptsUpdateManyWithWhereWithoutFiscalInput = { - where: Prisma.SaleInvoiceFiscalAttemptsScalarWhereInput - data: Prisma.XOR -} - -export type SaleInvoiceFiscalAttemptsScalarWhereInput = { - AND?: Prisma.SaleInvoiceFiscalAttemptsScalarWhereInput | Prisma.SaleInvoiceFiscalAttemptsScalarWhereInput[] - OR?: Prisma.SaleInvoiceFiscalAttemptsScalarWhereInput[] - NOT?: Prisma.SaleInvoiceFiscalAttemptsScalarWhereInput | Prisma.SaleInvoiceFiscalAttemptsScalarWhereInput[] - id?: Prisma.StringFilter<"SaleInvoiceFiscalAttempts"> | string - attempt_no?: Prisma.IntFilter<"SaleInvoiceFiscalAttempts"> | number - status?: Prisma.EnumFiscalResponseStatusFilter<"SaleInvoiceFiscalAttempts"> | $Enums.FiscalResponseStatus - tax_id?: Prisma.StringNullableFilter<"SaleInvoiceFiscalAttempts"> | string | null - type?: Prisma.EnumFiscalRequestTypeFilter<"SaleInvoiceFiscalAttempts"> | $Enums.FiscalRequestType - request_payload?: Prisma.JsonNullableFilter<"SaleInvoiceFiscalAttempts"> - response_payload?: Prisma.JsonNullableFilter<"SaleInvoiceFiscalAttempts"> - error_message?: Prisma.StringNullableFilter<"SaleInvoiceFiscalAttempts"> | string | null - sent_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceFiscalAttempts"> | Date | string | null - received_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceFiscalAttempts"> | Date | string | null - created_at?: Prisma.DateTimeFilter<"SaleInvoiceFiscalAttempts"> | Date | string - fiscal_id?: Prisma.StringFilter<"SaleInvoiceFiscalAttempts"> | string -} - -export type SaleInvoiceFiscalAttemptsCreateManyFiscalInput = { - id?: string - attempt_no: number - status: $Enums.FiscalResponseStatus - tax_id?: string | null - type: $Enums.FiscalRequestType - request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - error_message?: string | null - sent_at?: Date | string | null - received_at?: Date | string | null - created_at?: Date | string -} - -export type SaleInvoiceFiscalAttemptsUpdateWithoutFiscalInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - attempt_no?: Prisma.IntFieldUpdateOperationsInput | number - status?: Prisma.EnumFiscalResponseStatusFieldUpdateOperationsInput | $Enums.FiscalResponseStatus - tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - type?: Prisma.EnumFiscalRequestTypeFieldUpdateOperationsInput | $Enums.FiscalRequestType - request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string -} - -export type SaleInvoiceFiscalAttemptsUncheckedUpdateWithoutFiscalInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - attempt_no?: Prisma.IntFieldUpdateOperationsInput | number - status?: Prisma.EnumFiscalResponseStatusFieldUpdateOperationsInput | $Enums.FiscalResponseStatus - tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - type?: Prisma.EnumFiscalRequestTypeFieldUpdateOperationsInput | $Enums.FiscalRequestType - request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string -} - -export type SaleInvoiceFiscalAttemptsUncheckedUpdateManyWithoutFiscalInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - attempt_no?: Prisma.IntFieldUpdateOperationsInput | number - status?: Prisma.EnumFiscalResponseStatusFieldUpdateOperationsInput | $Enums.FiscalResponseStatus - tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - type?: Prisma.EnumFiscalRequestTypeFieldUpdateOperationsInput | $Enums.FiscalRequestType - request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string -} - - - -export type SaleInvoiceFiscalAttemptsSelect = runtime.Types.Extensions.GetSelect<{ - id?: boolean - attempt_no?: boolean - status?: boolean - tax_id?: boolean - type?: boolean - request_payload?: boolean - response_payload?: boolean - error_message?: boolean - sent_at?: boolean - received_at?: boolean - created_at?: boolean - fiscal_id?: boolean - fiscal?: boolean | Prisma.SaleInvoiceFiscalsDefaultArgs -}, ExtArgs["result"]["saleInvoiceFiscalAttempts"]> - - - -export type SaleInvoiceFiscalAttemptsSelectScalar = { - id?: boolean - attempt_no?: boolean - status?: boolean - tax_id?: boolean - type?: boolean - request_payload?: boolean - response_payload?: boolean - error_message?: boolean - sent_at?: boolean - received_at?: boolean - created_at?: boolean - fiscal_id?: boolean -} - -export type SaleInvoiceFiscalAttemptsOmit = runtime.Types.Extensions.GetOmit<"id" | "attempt_no" | "status" | "tax_id" | "type" | "request_payload" | "response_payload" | "error_message" | "sent_at" | "received_at" | "created_at" | "fiscal_id", ExtArgs["result"]["saleInvoiceFiscalAttempts"]> -export type SaleInvoiceFiscalAttemptsInclude = { - fiscal?: boolean | Prisma.SaleInvoiceFiscalsDefaultArgs -} - -export type $SaleInvoiceFiscalAttemptsPayload = { - name: "SaleInvoiceFiscalAttempts" - objects: { - fiscal: Prisma.$SaleInvoiceFiscalsPayload - } - scalars: runtime.Types.Extensions.GetPayloadResult<{ - id: string - attempt_no: number - status: $Enums.FiscalResponseStatus - tax_id: string | null - type: $Enums.FiscalRequestType - request_payload: runtime.JsonValue | null - response_payload: runtime.JsonValue | null - error_message: string | null - sent_at: Date | null - received_at: Date | null - created_at: Date - fiscal_id: string - }, ExtArgs["result"]["saleInvoiceFiscalAttempts"]> - composites: {} -} - -export type SaleInvoiceFiscalAttemptsGetPayload = runtime.Types.Result.GetResult - -export type SaleInvoiceFiscalAttemptsCountArgs = - Omit & { - select?: SaleInvoiceFiscalAttemptsCountAggregateInputType | true - } - -export interface SaleInvoiceFiscalAttemptsDelegate { - [K: symbol]: { types: Prisma.TypeMap['model']['SaleInvoiceFiscalAttempts'], meta: { name: 'SaleInvoiceFiscalAttempts' } } - /** - * Find zero or one SaleInvoiceFiscalAttempts that matches the filter. - * @param {SaleInvoiceFiscalAttemptsFindUniqueArgs} args - Arguments to find a SaleInvoiceFiscalAttempts - * @example - * // Get one SaleInvoiceFiscalAttempts - * const saleInvoiceFiscalAttempts = await prisma.saleInvoiceFiscalAttempts.findUnique({ - * where: { - * // ... provide filter here - * } - * }) - */ - findUnique(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalAttemptsClient, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> - - /** - * Find one SaleInvoiceFiscalAttempts that matches the filter or throw an error with `error.code='P2025'` - * if no matches were found. - * @param {SaleInvoiceFiscalAttemptsFindUniqueOrThrowArgs} args - Arguments to find a SaleInvoiceFiscalAttempts - * @example - * // Get one SaleInvoiceFiscalAttempts - * const saleInvoiceFiscalAttempts = await prisma.saleInvoiceFiscalAttempts.findUniqueOrThrow({ - * where: { - * // ... provide filter here - * } - * }) - */ - findUniqueOrThrow(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalAttemptsClient, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> - - /** - * Find the first SaleInvoiceFiscalAttempts 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 {SaleInvoiceFiscalAttemptsFindFirstArgs} args - Arguments to find a SaleInvoiceFiscalAttempts - * @example - * // Get one SaleInvoiceFiscalAttempts - * const saleInvoiceFiscalAttempts = await prisma.saleInvoiceFiscalAttempts.findFirst({ - * where: { - * // ... provide filter here - * } - * }) - */ - findFirst(args?: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalAttemptsClient, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> - - /** - * Find the first SaleInvoiceFiscalAttempts 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 {SaleInvoiceFiscalAttemptsFindFirstOrThrowArgs} args - Arguments to find a SaleInvoiceFiscalAttempts - * @example - * // Get one SaleInvoiceFiscalAttempts - * const saleInvoiceFiscalAttempts = await prisma.saleInvoiceFiscalAttempts.findFirstOrThrow({ - * where: { - * // ... provide filter here - * } - * }) - */ - findFirstOrThrow(args?: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalAttemptsClient, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> - - /** - * Find zero or more SaleInvoiceFiscalAttempts 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 {SaleInvoiceFiscalAttemptsFindManyArgs} args - Arguments to filter and select certain fields only. - * @example - * // Get all SaleInvoiceFiscalAttempts - * const saleInvoiceFiscalAttempts = await prisma.saleInvoiceFiscalAttempts.findMany() - * - * // Get first 10 SaleInvoiceFiscalAttempts - * const saleInvoiceFiscalAttempts = await prisma.saleInvoiceFiscalAttempts.findMany({ take: 10 }) - * - * // Only select the `id` - * const saleInvoiceFiscalAttemptsWithIdOnly = await prisma.saleInvoiceFiscalAttempts.findMany({ select: { id: true } }) - * - */ - findMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions>> - - /** - * Create a SaleInvoiceFiscalAttempts. - * @param {SaleInvoiceFiscalAttemptsCreateArgs} args - Arguments to create a SaleInvoiceFiscalAttempts. - * @example - * // Create one SaleInvoiceFiscalAttempts - * const SaleInvoiceFiscalAttempts = await prisma.saleInvoiceFiscalAttempts.create({ - * data: { - * // ... data to create a SaleInvoiceFiscalAttempts - * } - * }) - * - */ - create(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalAttemptsClient, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> - - /** - * Create many SaleInvoiceFiscalAttempts. - * @param {SaleInvoiceFiscalAttemptsCreateManyArgs} args - Arguments to create many SaleInvoiceFiscalAttempts. - * @example - * // Create many SaleInvoiceFiscalAttempts - * const saleInvoiceFiscalAttempts = await prisma.saleInvoiceFiscalAttempts.createMany({ - * data: [ - * // ... provide data here - * ] - * }) - * - */ - createMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise - - /** - * Delete a SaleInvoiceFiscalAttempts. - * @param {SaleInvoiceFiscalAttemptsDeleteArgs} args - Arguments to delete one SaleInvoiceFiscalAttempts. - * @example - * // Delete one SaleInvoiceFiscalAttempts - * const SaleInvoiceFiscalAttempts = await prisma.saleInvoiceFiscalAttempts.delete({ - * where: { - * // ... filter to delete one SaleInvoiceFiscalAttempts - * } - * }) - * - */ - delete(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalAttemptsClient, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> - - /** - * Update one SaleInvoiceFiscalAttempts. - * @param {SaleInvoiceFiscalAttemptsUpdateArgs} args - Arguments to update one SaleInvoiceFiscalAttempts. - * @example - * // Update one SaleInvoiceFiscalAttempts - * const saleInvoiceFiscalAttempts = await prisma.saleInvoiceFiscalAttempts.update({ - * where: { - * // ... provide filter here - * }, - * data: { - * // ... provide data here - * } - * }) - * - */ - update(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalAttemptsClient, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> - - /** - * Delete zero or more SaleInvoiceFiscalAttempts. - * @param {SaleInvoiceFiscalAttemptsDeleteManyArgs} args - Arguments to filter SaleInvoiceFiscalAttempts to delete. - * @example - * // Delete a few SaleInvoiceFiscalAttempts - * const { count } = await prisma.saleInvoiceFiscalAttempts.deleteMany({ - * where: { - * // ... provide filter here - * } - * }) - * - */ - deleteMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise - - /** - * Update zero or more SaleInvoiceFiscalAttempts. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {SaleInvoiceFiscalAttemptsUpdateManyArgs} args - Arguments to update one or more rows. - * @example - * // Update many SaleInvoiceFiscalAttempts - * const saleInvoiceFiscalAttempts = await prisma.saleInvoiceFiscalAttempts.updateMany({ - * where: { - * // ... provide filter here - * }, - * data: { - * // ... provide data here - * } - * }) - * - */ - updateMany(args: Prisma.SelectSubset>): Prisma.PrismaPromise - - /** - * Create or update one SaleInvoiceFiscalAttempts. - * @param {SaleInvoiceFiscalAttemptsUpsertArgs} args - Arguments to update or create a SaleInvoiceFiscalAttempts. - * @example - * // Update or create a SaleInvoiceFiscalAttempts - * const saleInvoiceFiscalAttempts = await prisma.saleInvoiceFiscalAttempts.upsert({ - * create: { - * // ... data to create a SaleInvoiceFiscalAttempts - * }, - * update: { - * // ... in case it already exists, update - * }, - * where: { - * // ... the filter for the SaleInvoiceFiscalAttempts we want to update - * } - * }) - */ - upsert(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalAttemptsClient, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> - - - /** - * Count the number of SaleInvoiceFiscalAttempts. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {SaleInvoiceFiscalAttemptsCountArgs} args - Arguments to filter SaleInvoiceFiscalAttempts to count. - * @example - * // Count the number of SaleInvoiceFiscalAttempts - * const count = await prisma.saleInvoiceFiscalAttempts.count({ - * where: { - * // ... the filter for the SaleInvoiceFiscalAttempts 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 SaleInvoiceFiscalAttempts. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {SaleInvoiceFiscalAttemptsAggregateArgs} 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 SaleInvoiceFiscalAttempts. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {SaleInvoiceFiscalAttemptsGroupByArgs} 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 SaleInvoiceFiscalAttemptsGroupByArgs, - HasSelectOrTake extends Prisma.Or< - Prisma.Extends<'skip', Prisma.Keys>, - Prisma.Extends<'take', Prisma.Keys> - >, - OrderByArg extends Prisma.True extends HasSelectOrTake - ? { orderBy: SaleInvoiceFiscalAttemptsGroupByArgs['orderBy'] } - : { orderBy?: SaleInvoiceFiscalAttemptsGroupByArgs['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 ? GetSaleInvoiceFiscalAttemptsGroupByPayload : Prisma.PrismaPromise -/** - * Fields of the SaleInvoiceFiscalAttempts model - */ -readonly fields: SaleInvoiceFiscalAttemptsFieldRefs; -} - -/** - * The delegate class that acts as a "Promise-like" for SaleInvoiceFiscalAttempts. - * 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__SaleInvoiceFiscalAttemptsClient extends Prisma.PrismaPromise { - readonly [Symbol.toStringTag]: "PrismaPromise" - fiscal = {}>(args?: Prisma.Subset>): Prisma.Prisma__SaleInvoiceFiscalsClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> - /** - * 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 SaleInvoiceFiscalAttempts model - */ -export interface SaleInvoiceFiscalAttemptsFieldRefs { - readonly id: Prisma.FieldRef<"SaleInvoiceFiscalAttempts", 'String'> - readonly attempt_no: Prisma.FieldRef<"SaleInvoiceFiscalAttempts", 'Int'> - readonly status: Prisma.FieldRef<"SaleInvoiceFiscalAttempts", 'FiscalResponseStatus'> - readonly tax_id: Prisma.FieldRef<"SaleInvoiceFiscalAttempts", 'String'> - readonly type: Prisma.FieldRef<"SaleInvoiceFiscalAttempts", 'FiscalRequestType'> - readonly request_payload: Prisma.FieldRef<"SaleInvoiceFiscalAttempts", 'Json'> - readonly response_payload: Prisma.FieldRef<"SaleInvoiceFiscalAttempts", 'Json'> - readonly error_message: Prisma.FieldRef<"SaleInvoiceFiscalAttempts", 'String'> - readonly sent_at: Prisma.FieldRef<"SaleInvoiceFiscalAttempts", 'DateTime'> - readonly received_at: Prisma.FieldRef<"SaleInvoiceFiscalAttempts", 'DateTime'> - readonly created_at: Prisma.FieldRef<"SaleInvoiceFiscalAttempts", 'DateTime'> - readonly fiscal_id: Prisma.FieldRef<"SaleInvoiceFiscalAttempts", 'String'> -} - - -// Custom InputTypes -/** - * SaleInvoiceFiscalAttempts findUnique - */ -export type SaleInvoiceFiscalAttemptsFindUniqueArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscalAttempts - */ - select?: Prisma.SaleInvoiceFiscalAttemptsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscalAttempts - */ - omit?: Prisma.SaleInvoiceFiscalAttemptsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalAttemptsInclude | null - /** - * Filter, which SaleInvoiceFiscalAttempts to fetch. - */ - where: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput -} - -/** - * SaleInvoiceFiscalAttempts findUniqueOrThrow - */ -export type SaleInvoiceFiscalAttemptsFindUniqueOrThrowArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscalAttempts - */ - select?: Prisma.SaleInvoiceFiscalAttemptsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscalAttempts - */ - omit?: Prisma.SaleInvoiceFiscalAttemptsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalAttemptsInclude | null - /** - * Filter, which SaleInvoiceFiscalAttempts to fetch. - */ - where: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput -} - -/** - * SaleInvoiceFiscalAttempts findFirst - */ -export type SaleInvoiceFiscalAttemptsFindFirstArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscalAttempts - */ - select?: Prisma.SaleInvoiceFiscalAttemptsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscalAttempts - */ - omit?: Prisma.SaleInvoiceFiscalAttemptsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalAttemptsInclude | null - /** - * Filter, which SaleInvoiceFiscalAttempts to fetch. - */ - where?: Prisma.SaleInvoiceFiscalAttemptsWhereInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * - * Determine the order of SaleInvoiceFiscalAttempts to fetch. - */ - orderBy?: Prisma.SaleInvoiceFiscalAttemptsOrderByWithRelationInput | Prisma.SaleInvoiceFiscalAttemptsOrderByWithRelationInput[] - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * - * Sets the position for searching for SaleInvoiceFiscalAttempts. - */ - cursor?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Take `±n` SaleInvoiceFiscalAttempts 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` SaleInvoiceFiscalAttempts. - */ - skip?: number - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * - * Filter by unique combinations of SaleInvoiceFiscalAttempts. - */ - distinct?: Prisma.SaleInvoiceFiscalAttemptsScalarFieldEnum | Prisma.SaleInvoiceFiscalAttemptsScalarFieldEnum[] -} - -/** - * SaleInvoiceFiscalAttempts findFirstOrThrow - */ -export type SaleInvoiceFiscalAttemptsFindFirstOrThrowArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscalAttempts - */ - select?: Prisma.SaleInvoiceFiscalAttemptsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscalAttempts - */ - omit?: Prisma.SaleInvoiceFiscalAttemptsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalAttemptsInclude | null - /** - * Filter, which SaleInvoiceFiscalAttempts to fetch. - */ - where?: Prisma.SaleInvoiceFiscalAttemptsWhereInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * - * Determine the order of SaleInvoiceFiscalAttempts to fetch. - */ - orderBy?: Prisma.SaleInvoiceFiscalAttemptsOrderByWithRelationInput | Prisma.SaleInvoiceFiscalAttemptsOrderByWithRelationInput[] - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * - * Sets the position for searching for SaleInvoiceFiscalAttempts. - */ - cursor?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Take `±n` SaleInvoiceFiscalAttempts 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` SaleInvoiceFiscalAttempts. - */ - skip?: number - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * - * Filter by unique combinations of SaleInvoiceFiscalAttempts. - */ - distinct?: Prisma.SaleInvoiceFiscalAttemptsScalarFieldEnum | Prisma.SaleInvoiceFiscalAttemptsScalarFieldEnum[] -} - -/** - * SaleInvoiceFiscalAttempts findMany - */ -export type SaleInvoiceFiscalAttemptsFindManyArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscalAttempts - */ - select?: Prisma.SaleInvoiceFiscalAttemptsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscalAttempts - */ - omit?: Prisma.SaleInvoiceFiscalAttemptsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalAttemptsInclude | null - /** - * Filter, which SaleInvoiceFiscalAttempts to fetch. - */ - where?: Prisma.SaleInvoiceFiscalAttemptsWhereInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * - * Determine the order of SaleInvoiceFiscalAttempts to fetch. - */ - orderBy?: Prisma.SaleInvoiceFiscalAttemptsOrderByWithRelationInput | Prisma.SaleInvoiceFiscalAttemptsOrderByWithRelationInput[] - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * - * Sets the position for listing SaleInvoiceFiscalAttempts. - */ - cursor?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Take `±n` SaleInvoiceFiscalAttempts 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` SaleInvoiceFiscalAttempts. - */ - skip?: number - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * - * Filter by unique combinations of SaleInvoiceFiscalAttempts. - */ - distinct?: Prisma.SaleInvoiceFiscalAttemptsScalarFieldEnum | Prisma.SaleInvoiceFiscalAttemptsScalarFieldEnum[] -} - -/** - * SaleInvoiceFiscalAttempts create - */ -export type SaleInvoiceFiscalAttemptsCreateArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscalAttempts - */ - select?: Prisma.SaleInvoiceFiscalAttemptsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscalAttempts - */ - omit?: Prisma.SaleInvoiceFiscalAttemptsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalAttemptsInclude | null - /** - * The data needed to create a SaleInvoiceFiscalAttempts. - */ - data: Prisma.XOR -} - -/** - * SaleInvoiceFiscalAttempts createMany - */ -export type SaleInvoiceFiscalAttemptsCreateManyArgs = { - /** - * The data used to create many SaleInvoiceFiscalAttempts. - */ - data: Prisma.SaleInvoiceFiscalAttemptsCreateManyInput | Prisma.SaleInvoiceFiscalAttemptsCreateManyInput[] - skipDuplicates?: boolean -} - -/** - * SaleInvoiceFiscalAttempts update - */ -export type SaleInvoiceFiscalAttemptsUpdateArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscalAttempts - */ - select?: Prisma.SaleInvoiceFiscalAttemptsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscalAttempts - */ - omit?: Prisma.SaleInvoiceFiscalAttemptsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalAttemptsInclude | null - /** - * The data needed to update a SaleInvoiceFiscalAttempts. - */ - data: Prisma.XOR - /** - * Choose, which SaleInvoiceFiscalAttempts to update. - */ - where: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput -} - -/** - * SaleInvoiceFiscalAttempts updateMany - */ -export type SaleInvoiceFiscalAttemptsUpdateManyArgs = { - /** - * The data used to update SaleInvoiceFiscalAttempts. - */ - data: Prisma.XOR - /** - * Filter which SaleInvoiceFiscalAttempts to update - */ - where?: Prisma.SaleInvoiceFiscalAttemptsWhereInput - /** - * Limit how many SaleInvoiceFiscalAttempts to update. - */ - limit?: number -} - -/** - * SaleInvoiceFiscalAttempts upsert - */ -export type SaleInvoiceFiscalAttemptsUpsertArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscalAttempts - */ - select?: Prisma.SaleInvoiceFiscalAttemptsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscalAttempts - */ - omit?: Prisma.SaleInvoiceFiscalAttemptsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalAttemptsInclude | null - /** - * The filter to search for the SaleInvoiceFiscalAttempts to update in case it exists. - */ - where: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput - /** - * In case the SaleInvoiceFiscalAttempts found by the `where` argument doesn't exist, create a new SaleInvoiceFiscalAttempts with this data. - */ - create: Prisma.XOR - /** - * In case the SaleInvoiceFiscalAttempts was found with the provided `where` argument, update it with this data. - */ - update: Prisma.XOR -} - -/** - * SaleInvoiceFiscalAttempts delete - */ -export type SaleInvoiceFiscalAttemptsDeleteArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscalAttempts - */ - select?: Prisma.SaleInvoiceFiscalAttemptsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscalAttempts - */ - omit?: Prisma.SaleInvoiceFiscalAttemptsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalAttemptsInclude | null - /** - * Filter which SaleInvoiceFiscalAttempts to delete. - */ - where: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput -} - -/** - * SaleInvoiceFiscalAttempts deleteMany - */ -export type SaleInvoiceFiscalAttemptsDeleteManyArgs = { - /** - * Filter which SaleInvoiceFiscalAttempts to delete - */ - where?: Prisma.SaleInvoiceFiscalAttemptsWhereInput - /** - * Limit how many SaleInvoiceFiscalAttempts to delete. - */ - limit?: number -} - -/** - * SaleInvoiceFiscalAttempts without action - */ -export type SaleInvoiceFiscalAttemptsDefaultArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscalAttempts - */ - select?: Prisma.SaleInvoiceFiscalAttemptsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscalAttempts - */ - omit?: Prisma.SaleInvoiceFiscalAttemptsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalAttemptsInclude | null -} diff --git a/src/generated/prisma/models/SaleInvoiceFiscals.ts b/src/generated/prisma/models/SaleInvoiceFiscals.ts deleted file mode 100644 index 14badb0..0000000 --- a/src/generated/prisma/models/SaleInvoiceFiscals.ts +++ /dev/null @@ -1,1388 +0,0 @@ - -/* !!! This is code generated by Prisma. Do not edit directly. !!! */ -/* eslint-disable */ -// biome-ignore-all lint: generated file -// @ts-nocheck -/* - * This file exports the `SaleInvoiceFiscals` 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.js" -import type * as Prisma from "../internal/prismaNamespace.js" - -/** - * Model SaleInvoiceFiscals - * - */ -export type SaleInvoiceFiscalsModel = runtime.Types.Result.DefaultSelection - -export type AggregateSaleInvoiceFiscals = { - _count: SaleInvoiceFiscalsCountAggregateOutputType | null - _avg: SaleInvoiceFiscalsAvgAggregateOutputType | null - _sum: SaleInvoiceFiscalsSumAggregateOutputType | null - _min: SaleInvoiceFiscalsMinAggregateOutputType | null - _max: SaleInvoiceFiscalsMaxAggregateOutputType | null -} - -export type SaleInvoiceFiscalsAvgAggregateOutputType = { - retry_count: number | null -} - -export type SaleInvoiceFiscalsSumAggregateOutputType = { - retry_count: number | null -} - -export type SaleInvoiceFiscalsMinAggregateOutputType = { - id: string | null - retry_count: number | null - last_attempt_at: Date | null - created_at: Date | null - updated_at: Date | null - invoice_id: string | null -} - -export type SaleInvoiceFiscalsMaxAggregateOutputType = { - id: string | null - retry_count: number | null - last_attempt_at: Date | null - created_at: Date | null - updated_at: Date | null - invoice_id: string | null -} - -export type SaleInvoiceFiscalsCountAggregateOutputType = { - id: number - retry_count: number - last_attempt_at: number - created_at: number - updated_at: number - invoice_id: number - _all: number -} - - -export type SaleInvoiceFiscalsAvgAggregateInputType = { - retry_count?: true -} - -export type SaleInvoiceFiscalsSumAggregateInputType = { - retry_count?: true -} - -export type SaleInvoiceFiscalsMinAggregateInputType = { - id?: true - retry_count?: true - last_attempt_at?: true - created_at?: true - updated_at?: true - invoice_id?: true -} - -export type SaleInvoiceFiscalsMaxAggregateInputType = { - id?: true - retry_count?: true - last_attempt_at?: true - created_at?: true - updated_at?: true - invoice_id?: true -} - -export type SaleInvoiceFiscalsCountAggregateInputType = { - id?: true - retry_count?: true - last_attempt_at?: true - created_at?: true - updated_at?: true - invoice_id?: true - _all?: true -} - -export type SaleInvoiceFiscalsAggregateArgs = { - /** - * Filter which SaleInvoiceFiscals to aggregate. - */ - where?: Prisma.SaleInvoiceFiscalsWhereInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * - * Determine the order of SaleInvoiceFiscals to fetch. - */ - orderBy?: Prisma.SaleInvoiceFiscalsOrderByWithRelationInput | Prisma.SaleInvoiceFiscalsOrderByWithRelationInput[] - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * - * Sets the start position - */ - cursor?: Prisma.SaleInvoiceFiscalsWhereUniqueInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Take `±n` SaleInvoiceFiscals 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` SaleInvoiceFiscals. - */ - skip?: number - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Count returned SaleInvoiceFiscals - **/ - _count?: true | SaleInvoiceFiscalsCountAggregateInputType - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Select which fields to average - **/ - _avg?: SaleInvoiceFiscalsAvgAggregateInputType - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Select which fields to sum - **/ - _sum?: SaleInvoiceFiscalsSumAggregateInputType - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Select which fields to find the minimum value - **/ - _min?: SaleInvoiceFiscalsMinAggregateInputType - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} - * - * Select which fields to find the maximum value - **/ - _max?: SaleInvoiceFiscalsMaxAggregateInputType -} - -export type GetSaleInvoiceFiscalsAggregateType = { - [P in keyof T & keyof AggregateSaleInvoiceFiscals]: P extends '_count' | 'count' - ? T[P] extends true - ? number - : Prisma.GetScalarType - : Prisma.GetScalarType -} - - - - -export type SaleInvoiceFiscalsGroupByArgs = { - where?: Prisma.SaleInvoiceFiscalsWhereInput - orderBy?: Prisma.SaleInvoiceFiscalsOrderByWithAggregationInput | Prisma.SaleInvoiceFiscalsOrderByWithAggregationInput[] - by: Prisma.SaleInvoiceFiscalsScalarFieldEnum[] | Prisma.SaleInvoiceFiscalsScalarFieldEnum - having?: Prisma.SaleInvoiceFiscalsScalarWhereWithAggregatesInput - take?: number - skip?: number - _count?: SaleInvoiceFiscalsCountAggregateInputType | true - _avg?: SaleInvoiceFiscalsAvgAggregateInputType - _sum?: SaleInvoiceFiscalsSumAggregateInputType - _min?: SaleInvoiceFiscalsMinAggregateInputType - _max?: SaleInvoiceFiscalsMaxAggregateInputType -} - -export type SaleInvoiceFiscalsGroupByOutputType = { - id: string - retry_count: number - last_attempt_at: Date | null - created_at: Date - updated_at: Date - invoice_id: string - _count: SaleInvoiceFiscalsCountAggregateOutputType | null - _avg: SaleInvoiceFiscalsAvgAggregateOutputType | null - _sum: SaleInvoiceFiscalsSumAggregateOutputType | null - _min: SaleInvoiceFiscalsMinAggregateOutputType | null - _max: SaleInvoiceFiscalsMaxAggregateOutputType | null -} - -export type GetSaleInvoiceFiscalsGroupByPayload = Prisma.PrismaPromise< - Array< - Prisma.PickEnumerable & - { - [P in ((keyof T) & (keyof SaleInvoiceFiscalsGroupByOutputType))]: P extends '_count' - ? T[P] extends boolean - ? number - : Prisma.GetScalarType - : Prisma.GetScalarType - } - > - > - - - -export type SaleInvoiceFiscalsWhereInput = { - AND?: Prisma.SaleInvoiceFiscalsWhereInput | Prisma.SaleInvoiceFiscalsWhereInput[] - OR?: Prisma.SaleInvoiceFiscalsWhereInput[] - NOT?: Prisma.SaleInvoiceFiscalsWhereInput | Prisma.SaleInvoiceFiscalsWhereInput[] - id?: Prisma.StringFilter<"SaleInvoiceFiscals"> | string - retry_count?: Prisma.IntFilter<"SaleInvoiceFiscals"> | number - last_attempt_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceFiscals"> | Date | string | null - created_at?: Prisma.DateTimeFilter<"SaleInvoiceFiscals"> | Date | string - updated_at?: Prisma.DateTimeFilter<"SaleInvoiceFiscals"> | Date | string - invoice_id?: Prisma.StringFilter<"SaleInvoiceFiscals"> | string - invoice?: Prisma.XOR - attempts?: Prisma.SaleInvoiceFiscalAttemptsListRelationFilter -} - -export type SaleInvoiceFiscalsOrderByWithRelationInput = { - id?: Prisma.SortOrder - retry_count?: Prisma.SortOrder - last_attempt_at?: Prisma.SortOrderInput | Prisma.SortOrder - created_at?: Prisma.SortOrder - updated_at?: Prisma.SortOrder - invoice_id?: Prisma.SortOrder - invoice?: Prisma.SalesInvoiceOrderByWithRelationInput - attempts?: Prisma.SaleInvoiceFiscalAttemptsOrderByRelationAggregateInput - _relevance?: Prisma.SaleInvoiceFiscalsOrderByRelevanceInput -} - -export type SaleInvoiceFiscalsWhereUniqueInput = Prisma.AtLeast<{ - id?: string - invoice_id?: string - AND?: Prisma.SaleInvoiceFiscalsWhereInput | Prisma.SaleInvoiceFiscalsWhereInput[] - OR?: Prisma.SaleInvoiceFiscalsWhereInput[] - NOT?: Prisma.SaleInvoiceFiscalsWhereInput | Prisma.SaleInvoiceFiscalsWhereInput[] - retry_count?: Prisma.IntFilter<"SaleInvoiceFiscals"> | number - last_attempt_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceFiscals"> | Date | string | null - created_at?: Prisma.DateTimeFilter<"SaleInvoiceFiscals"> | Date | string - updated_at?: Prisma.DateTimeFilter<"SaleInvoiceFiscals"> | Date | string - invoice?: Prisma.XOR - attempts?: Prisma.SaleInvoiceFiscalAttemptsListRelationFilter -}, "id" | "invoice_id"> - -export type SaleInvoiceFiscalsOrderByWithAggregationInput = { - id?: Prisma.SortOrder - retry_count?: Prisma.SortOrder - last_attempt_at?: Prisma.SortOrderInput | Prisma.SortOrder - created_at?: Prisma.SortOrder - updated_at?: Prisma.SortOrder - invoice_id?: Prisma.SortOrder - _count?: Prisma.SaleInvoiceFiscalsCountOrderByAggregateInput - _avg?: Prisma.SaleInvoiceFiscalsAvgOrderByAggregateInput - _max?: Prisma.SaleInvoiceFiscalsMaxOrderByAggregateInput - _min?: Prisma.SaleInvoiceFiscalsMinOrderByAggregateInput - _sum?: Prisma.SaleInvoiceFiscalsSumOrderByAggregateInput -} - -export type SaleInvoiceFiscalsScalarWhereWithAggregatesInput = { - AND?: Prisma.SaleInvoiceFiscalsScalarWhereWithAggregatesInput | Prisma.SaleInvoiceFiscalsScalarWhereWithAggregatesInput[] - OR?: Prisma.SaleInvoiceFiscalsScalarWhereWithAggregatesInput[] - NOT?: Prisma.SaleInvoiceFiscalsScalarWhereWithAggregatesInput | Prisma.SaleInvoiceFiscalsScalarWhereWithAggregatesInput[] - id?: Prisma.StringWithAggregatesFilter<"SaleInvoiceFiscals"> | string - retry_count?: Prisma.IntWithAggregatesFilter<"SaleInvoiceFiscals"> | number - last_attempt_at?: Prisma.DateTimeNullableWithAggregatesFilter<"SaleInvoiceFiscals"> | Date | string | null - created_at?: Prisma.DateTimeWithAggregatesFilter<"SaleInvoiceFiscals"> | Date | string - updated_at?: Prisma.DateTimeWithAggregatesFilter<"SaleInvoiceFiscals"> | Date | string - invoice_id?: Prisma.StringWithAggregatesFilter<"SaleInvoiceFiscals"> | string -} - -export type SaleInvoiceFiscalsCreateInput = { - id?: string - retry_count?: number - last_attempt_at?: Date | string | null - created_at?: Date | string - updated_at?: Date | string - invoice: Prisma.SalesInvoiceCreateNestedOneWithoutFiscalInput - attempts?: Prisma.SaleInvoiceFiscalAttemptsCreateNestedManyWithoutFiscalInput -} - -export type SaleInvoiceFiscalsUncheckedCreateInput = { - id?: string - retry_count?: number - last_attempt_at?: Date | string | null - created_at?: Date | string - updated_at?: Date | string - invoice_id: string - attempts?: Prisma.SaleInvoiceFiscalAttemptsUncheckedCreateNestedManyWithoutFiscalInput -} - -export type SaleInvoiceFiscalsUpdateInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - retry_count?: Prisma.IntFieldUpdateOperationsInput | number - last_attempt_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - invoice?: Prisma.SalesInvoiceUpdateOneRequiredWithoutFiscalNestedInput - attempts?: Prisma.SaleInvoiceFiscalAttemptsUpdateManyWithoutFiscalNestedInput -} - -export type SaleInvoiceFiscalsUncheckedUpdateInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - retry_count?: Prisma.IntFieldUpdateOperationsInput | number - last_attempt_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - invoice_id?: Prisma.StringFieldUpdateOperationsInput | string - attempts?: Prisma.SaleInvoiceFiscalAttemptsUncheckedUpdateManyWithoutFiscalNestedInput -} - -export type SaleInvoiceFiscalsCreateManyInput = { - id?: string - retry_count?: number - last_attempt_at?: Date | string | null - created_at?: Date | string - updated_at?: Date | string - invoice_id: string -} - -export type SaleInvoiceFiscalsUpdateManyMutationInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - retry_count?: Prisma.IntFieldUpdateOperationsInput | number - last_attempt_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string -} - -export type SaleInvoiceFiscalsUncheckedUpdateManyInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - retry_count?: Prisma.IntFieldUpdateOperationsInput | number - last_attempt_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - invoice_id?: Prisma.StringFieldUpdateOperationsInput | string -} - -export type SaleInvoiceFiscalsNullableScalarRelationFilter = { - is?: Prisma.SaleInvoiceFiscalsWhereInput | null - isNot?: Prisma.SaleInvoiceFiscalsWhereInput | null -} - -export type SaleInvoiceFiscalsOrderByRelevanceInput = { - fields: Prisma.SaleInvoiceFiscalsOrderByRelevanceFieldEnum | Prisma.SaleInvoiceFiscalsOrderByRelevanceFieldEnum[] - sort: Prisma.SortOrder - search: string -} - -export type SaleInvoiceFiscalsCountOrderByAggregateInput = { - id?: Prisma.SortOrder - retry_count?: Prisma.SortOrder - last_attempt_at?: Prisma.SortOrder - created_at?: Prisma.SortOrder - updated_at?: Prisma.SortOrder - invoice_id?: Prisma.SortOrder -} - -export type SaleInvoiceFiscalsAvgOrderByAggregateInput = { - retry_count?: Prisma.SortOrder -} - -export type SaleInvoiceFiscalsMaxOrderByAggregateInput = { - id?: Prisma.SortOrder - retry_count?: Prisma.SortOrder - last_attempt_at?: Prisma.SortOrder - created_at?: Prisma.SortOrder - updated_at?: Prisma.SortOrder - invoice_id?: Prisma.SortOrder -} - -export type SaleInvoiceFiscalsMinOrderByAggregateInput = { - id?: Prisma.SortOrder - retry_count?: Prisma.SortOrder - last_attempt_at?: Prisma.SortOrder - created_at?: Prisma.SortOrder - updated_at?: Prisma.SortOrder - invoice_id?: Prisma.SortOrder -} - -export type SaleInvoiceFiscalsSumOrderByAggregateInput = { - retry_count?: Prisma.SortOrder -} - -export type SaleInvoiceFiscalsScalarRelationFilter = { - is?: Prisma.SaleInvoiceFiscalsWhereInput - isNot?: Prisma.SaleInvoiceFiscalsWhereInput -} - -export type SaleInvoiceFiscalsCreateNestedOneWithoutInvoiceInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.SaleInvoiceFiscalsCreateOrConnectWithoutInvoiceInput - connect?: Prisma.SaleInvoiceFiscalsWhereUniqueInput -} - -export type SaleInvoiceFiscalsUncheckedCreateNestedOneWithoutInvoiceInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.SaleInvoiceFiscalsCreateOrConnectWithoutInvoiceInput - connect?: Prisma.SaleInvoiceFiscalsWhereUniqueInput -} - -export type SaleInvoiceFiscalsUpdateOneWithoutInvoiceNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.SaleInvoiceFiscalsCreateOrConnectWithoutInvoiceInput - upsert?: Prisma.SaleInvoiceFiscalsUpsertWithoutInvoiceInput - disconnect?: Prisma.SaleInvoiceFiscalsWhereInput | boolean - delete?: Prisma.SaleInvoiceFiscalsWhereInput | boolean - connect?: Prisma.SaleInvoiceFiscalsWhereUniqueInput - update?: Prisma.XOR, Prisma.SaleInvoiceFiscalsUncheckedUpdateWithoutInvoiceInput> -} - -export type SaleInvoiceFiscalsUncheckedUpdateOneWithoutInvoiceNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.SaleInvoiceFiscalsCreateOrConnectWithoutInvoiceInput - upsert?: Prisma.SaleInvoiceFiscalsUpsertWithoutInvoiceInput - disconnect?: Prisma.SaleInvoiceFiscalsWhereInput | boolean - delete?: Prisma.SaleInvoiceFiscalsWhereInput | boolean - connect?: Prisma.SaleInvoiceFiscalsWhereUniqueInput - update?: Prisma.XOR, Prisma.SaleInvoiceFiscalsUncheckedUpdateWithoutInvoiceInput> -} - -export type SaleInvoiceFiscalsCreateNestedOneWithoutAttemptsInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.SaleInvoiceFiscalsCreateOrConnectWithoutAttemptsInput - connect?: Prisma.SaleInvoiceFiscalsWhereUniqueInput -} - -export type SaleInvoiceFiscalsUpdateOneRequiredWithoutAttemptsNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.SaleInvoiceFiscalsCreateOrConnectWithoutAttemptsInput - upsert?: Prisma.SaleInvoiceFiscalsUpsertWithoutAttemptsInput - connect?: Prisma.SaleInvoiceFiscalsWhereUniqueInput - update?: Prisma.XOR, Prisma.SaleInvoiceFiscalsUncheckedUpdateWithoutAttemptsInput> -} - -export type SaleInvoiceFiscalsCreateWithoutInvoiceInput = { - id?: string - retry_count?: number - last_attempt_at?: Date | string | null - created_at?: Date | string - updated_at?: Date | string - attempts?: Prisma.SaleInvoiceFiscalAttemptsCreateNestedManyWithoutFiscalInput -} - -export type SaleInvoiceFiscalsUncheckedCreateWithoutInvoiceInput = { - id?: string - retry_count?: number - last_attempt_at?: Date | string | null - created_at?: Date | string - updated_at?: Date | string - attempts?: Prisma.SaleInvoiceFiscalAttemptsUncheckedCreateNestedManyWithoutFiscalInput -} - -export type SaleInvoiceFiscalsCreateOrConnectWithoutInvoiceInput = { - where: Prisma.SaleInvoiceFiscalsWhereUniqueInput - create: Prisma.XOR -} - -export type SaleInvoiceFiscalsUpsertWithoutInvoiceInput = { - update: Prisma.XOR - create: Prisma.XOR - where?: Prisma.SaleInvoiceFiscalsWhereInput -} - -export type SaleInvoiceFiscalsUpdateToOneWithWhereWithoutInvoiceInput = { - where?: Prisma.SaleInvoiceFiscalsWhereInput - data: Prisma.XOR -} - -export type SaleInvoiceFiscalsUpdateWithoutInvoiceInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - retry_count?: Prisma.IntFieldUpdateOperationsInput | number - last_attempt_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - attempts?: Prisma.SaleInvoiceFiscalAttemptsUpdateManyWithoutFiscalNestedInput -} - -export type SaleInvoiceFiscalsUncheckedUpdateWithoutInvoiceInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - retry_count?: Prisma.IntFieldUpdateOperationsInput | number - last_attempt_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - attempts?: Prisma.SaleInvoiceFiscalAttemptsUncheckedUpdateManyWithoutFiscalNestedInput -} - -export type SaleInvoiceFiscalsCreateWithoutAttemptsInput = { - id?: string - retry_count?: number - last_attempt_at?: Date | string | null - created_at?: Date | string - updated_at?: Date | string - invoice: Prisma.SalesInvoiceCreateNestedOneWithoutFiscalInput -} - -export type SaleInvoiceFiscalsUncheckedCreateWithoutAttemptsInput = { - id?: string - retry_count?: number - last_attempt_at?: Date | string | null - created_at?: Date | string - updated_at?: Date | string - invoice_id: string -} - -export type SaleInvoiceFiscalsCreateOrConnectWithoutAttemptsInput = { - where: Prisma.SaleInvoiceFiscalsWhereUniqueInput - create: Prisma.XOR -} - -export type SaleInvoiceFiscalsUpsertWithoutAttemptsInput = { - update: Prisma.XOR - create: Prisma.XOR - where?: Prisma.SaleInvoiceFiscalsWhereInput -} - -export type SaleInvoiceFiscalsUpdateToOneWithWhereWithoutAttemptsInput = { - where?: Prisma.SaleInvoiceFiscalsWhereInput - data: Prisma.XOR -} - -export type SaleInvoiceFiscalsUpdateWithoutAttemptsInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - retry_count?: Prisma.IntFieldUpdateOperationsInput | number - last_attempt_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - invoice?: Prisma.SalesInvoiceUpdateOneRequiredWithoutFiscalNestedInput -} - -export type SaleInvoiceFiscalsUncheckedUpdateWithoutAttemptsInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - retry_count?: Prisma.IntFieldUpdateOperationsInput | number - last_attempt_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - invoice_id?: Prisma.StringFieldUpdateOperationsInput | string -} - - -/** - * Count Type SaleInvoiceFiscalsCountOutputType - */ - -export type SaleInvoiceFiscalsCountOutputType = { - attempts: number -} - -export type SaleInvoiceFiscalsCountOutputTypeSelect = { - attempts?: boolean | SaleInvoiceFiscalsCountOutputTypeCountAttemptsArgs -} - -/** - * SaleInvoiceFiscalsCountOutputType without action - */ -export type SaleInvoiceFiscalsCountOutputTypeDefaultArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscalsCountOutputType - */ - select?: Prisma.SaleInvoiceFiscalsCountOutputTypeSelect | null -} - -/** - * SaleInvoiceFiscalsCountOutputType without action - */ -export type SaleInvoiceFiscalsCountOutputTypeCountAttemptsArgs = { - where?: Prisma.SaleInvoiceFiscalAttemptsWhereInput -} - - -export type SaleInvoiceFiscalsSelect = runtime.Types.Extensions.GetSelect<{ - id?: boolean - retry_count?: boolean - last_attempt_at?: boolean - created_at?: boolean - updated_at?: boolean - invoice_id?: boolean - invoice?: boolean | Prisma.SalesInvoiceDefaultArgs - attempts?: boolean | Prisma.SaleInvoiceFiscals$attemptsArgs - _count?: boolean | Prisma.SaleInvoiceFiscalsCountOutputTypeDefaultArgs -}, ExtArgs["result"]["saleInvoiceFiscals"]> - - - -export type SaleInvoiceFiscalsSelectScalar = { - id?: boolean - retry_count?: boolean - last_attempt_at?: boolean - created_at?: boolean - updated_at?: boolean - invoice_id?: boolean -} - -export type SaleInvoiceFiscalsOmit = runtime.Types.Extensions.GetOmit<"id" | "retry_count" | "last_attempt_at" | "created_at" | "updated_at" | "invoice_id", ExtArgs["result"]["saleInvoiceFiscals"]> -export type SaleInvoiceFiscalsInclude = { - invoice?: boolean | Prisma.SalesInvoiceDefaultArgs - attempts?: boolean | Prisma.SaleInvoiceFiscals$attemptsArgs - _count?: boolean | Prisma.SaleInvoiceFiscalsCountOutputTypeDefaultArgs -} - -export type $SaleInvoiceFiscalsPayload = { - name: "SaleInvoiceFiscals" - objects: { - invoice: Prisma.$SalesInvoicePayload - attempts: Prisma.$SaleInvoiceFiscalAttemptsPayload[] - } - scalars: runtime.Types.Extensions.GetPayloadResult<{ - id: string - retry_count: number - last_attempt_at: Date | null - created_at: Date - updated_at: Date - invoice_id: string - }, ExtArgs["result"]["saleInvoiceFiscals"]> - composites: {} -} - -export type SaleInvoiceFiscalsGetPayload = runtime.Types.Result.GetResult - -export type SaleInvoiceFiscalsCountArgs = - Omit & { - select?: SaleInvoiceFiscalsCountAggregateInputType | true - } - -export interface SaleInvoiceFiscalsDelegate { - [K: symbol]: { types: Prisma.TypeMap['model']['SaleInvoiceFiscals'], meta: { name: 'SaleInvoiceFiscals' } } - /** - * Find zero or one SaleInvoiceFiscals that matches the filter. - * @param {SaleInvoiceFiscalsFindUniqueArgs} args - Arguments to find a SaleInvoiceFiscals - * @example - * // Get one SaleInvoiceFiscals - * const saleInvoiceFiscals = await prisma.saleInvoiceFiscals.findUnique({ - * where: { - * // ... provide filter here - * } - * }) - */ - findUnique(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalsClient, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> - - /** - * Find one SaleInvoiceFiscals that matches the filter or throw an error with `error.code='P2025'` - * if no matches were found. - * @param {SaleInvoiceFiscalsFindUniqueOrThrowArgs} args - Arguments to find a SaleInvoiceFiscals - * @example - * // Get one SaleInvoiceFiscals - * const saleInvoiceFiscals = await prisma.saleInvoiceFiscals.findUniqueOrThrow({ - * where: { - * // ... provide filter here - * } - * }) - */ - findUniqueOrThrow(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalsClient, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> - - /** - * Find the first SaleInvoiceFiscals 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 {SaleInvoiceFiscalsFindFirstArgs} args - Arguments to find a SaleInvoiceFiscals - * @example - * // Get one SaleInvoiceFiscals - * const saleInvoiceFiscals = await prisma.saleInvoiceFiscals.findFirst({ - * where: { - * // ... provide filter here - * } - * }) - */ - findFirst(args?: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalsClient, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> - - /** - * Find the first SaleInvoiceFiscals 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 {SaleInvoiceFiscalsFindFirstOrThrowArgs} args - Arguments to find a SaleInvoiceFiscals - * @example - * // Get one SaleInvoiceFiscals - * const saleInvoiceFiscals = await prisma.saleInvoiceFiscals.findFirstOrThrow({ - * where: { - * // ... provide filter here - * } - * }) - */ - findFirstOrThrow(args?: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalsClient, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> - - /** - * Find zero or more SaleInvoiceFiscals 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 {SaleInvoiceFiscalsFindManyArgs} args - Arguments to filter and select certain fields only. - * @example - * // Get all SaleInvoiceFiscals - * const saleInvoiceFiscals = await prisma.saleInvoiceFiscals.findMany() - * - * // Get first 10 SaleInvoiceFiscals - * const saleInvoiceFiscals = await prisma.saleInvoiceFiscals.findMany({ take: 10 }) - * - * // Only select the `id` - * const saleInvoiceFiscalsWithIdOnly = await prisma.saleInvoiceFiscals.findMany({ select: { id: true } }) - * - */ - findMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions>> - - /** - * Create a SaleInvoiceFiscals. - * @param {SaleInvoiceFiscalsCreateArgs} args - Arguments to create a SaleInvoiceFiscals. - * @example - * // Create one SaleInvoiceFiscals - * const SaleInvoiceFiscals = await prisma.saleInvoiceFiscals.create({ - * data: { - * // ... data to create a SaleInvoiceFiscals - * } - * }) - * - */ - create(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalsClient, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> - - /** - * Create many SaleInvoiceFiscals. - * @param {SaleInvoiceFiscalsCreateManyArgs} args - Arguments to create many SaleInvoiceFiscals. - * @example - * // Create many SaleInvoiceFiscals - * const saleInvoiceFiscals = await prisma.saleInvoiceFiscals.createMany({ - * data: [ - * // ... provide data here - * ] - * }) - * - */ - createMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise - - /** - * Delete a SaleInvoiceFiscals. - * @param {SaleInvoiceFiscalsDeleteArgs} args - Arguments to delete one SaleInvoiceFiscals. - * @example - * // Delete one SaleInvoiceFiscals - * const SaleInvoiceFiscals = await prisma.saleInvoiceFiscals.delete({ - * where: { - * // ... filter to delete one SaleInvoiceFiscals - * } - * }) - * - */ - delete(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalsClient, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> - - /** - * Update one SaleInvoiceFiscals. - * @param {SaleInvoiceFiscalsUpdateArgs} args - Arguments to update one SaleInvoiceFiscals. - * @example - * // Update one SaleInvoiceFiscals - * const saleInvoiceFiscals = await prisma.saleInvoiceFiscals.update({ - * where: { - * // ... provide filter here - * }, - * data: { - * // ... provide data here - * } - * }) - * - */ - update(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalsClient, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> - - /** - * Delete zero or more SaleInvoiceFiscals. - * @param {SaleInvoiceFiscalsDeleteManyArgs} args - Arguments to filter SaleInvoiceFiscals to delete. - * @example - * // Delete a few SaleInvoiceFiscals - * const { count } = await prisma.saleInvoiceFiscals.deleteMany({ - * where: { - * // ... provide filter here - * } - * }) - * - */ - deleteMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise - - /** - * Update zero or more SaleInvoiceFiscals. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {SaleInvoiceFiscalsUpdateManyArgs} args - Arguments to update one or more rows. - * @example - * // Update many SaleInvoiceFiscals - * const saleInvoiceFiscals = await prisma.saleInvoiceFiscals.updateMany({ - * where: { - * // ... provide filter here - * }, - * data: { - * // ... provide data here - * } - * }) - * - */ - updateMany(args: Prisma.SelectSubset>): Prisma.PrismaPromise - - /** - * Create or update one SaleInvoiceFiscals. - * @param {SaleInvoiceFiscalsUpsertArgs} args - Arguments to update or create a SaleInvoiceFiscals. - * @example - * // Update or create a SaleInvoiceFiscals - * const saleInvoiceFiscals = await prisma.saleInvoiceFiscals.upsert({ - * create: { - * // ... data to create a SaleInvoiceFiscals - * }, - * update: { - * // ... in case it already exists, update - * }, - * where: { - * // ... the filter for the SaleInvoiceFiscals we want to update - * } - * }) - */ - upsert(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceFiscalsClient, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> - - - /** - * Count the number of SaleInvoiceFiscals. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {SaleInvoiceFiscalsCountArgs} args - Arguments to filter SaleInvoiceFiscals to count. - * @example - * // Count the number of SaleInvoiceFiscals - * const count = await prisma.saleInvoiceFiscals.count({ - * where: { - * // ... the filter for the SaleInvoiceFiscals 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 SaleInvoiceFiscals. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {SaleInvoiceFiscalsAggregateArgs} 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 SaleInvoiceFiscals. - * Note, that providing `undefined` is treated as the value not being there. - * Read more here: https://pris.ly/d/null-undefined - * @param {SaleInvoiceFiscalsGroupByArgs} 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 SaleInvoiceFiscalsGroupByArgs, - HasSelectOrTake extends Prisma.Or< - Prisma.Extends<'skip', Prisma.Keys>, - Prisma.Extends<'take', Prisma.Keys> - >, - OrderByArg extends Prisma.True extends HasSelectOrTake - ? { orderBy: SaleInvoiceFiscalsGroupByArgs['orderBy'] } - : { orderBy?: SaleInvoiceFiscalsGroupByArgs['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 ? GetSaleInvoiceFiscalsGroupByPayload : Prisma.PrismaPromise -/** - * Fields of the SaleInvoiceFiscals model - */ -readonly fields: SaleInvoiceFiscalsFieldRefs; -} - -/** - * The delegate class that acts as a "Promise-like" for SaleInvoiceFiscals. - * 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__SaleInvoiceFiscalsClient extends Prisma.PrismaPromise { - readonly [Symbol.toStringTag]: "PrismaPromise" - invoice = {}>(args?: Prisma.Subset>): Prisma.Prisma__SalesInvoiceClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> - attempts = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> - /** - * 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 SaleInvoiceFiscals model - */ -export interface SaleInvoiceFiscalsFieldRefs { - readonly id: Prisma.FieldRef<"SaleInvoiceFiscals", 'String'> - readonly retry_count: Prisma.FieldRef<"SaleInvoiceFiscals", 'Int'> - readonly last_attempt_at: Prisma.FieldRef<"SaleInvoiceFiscals", 'DateTime'> - readonly created_at: Prisma.FieldRef<"SaleInvoiceFiscals", 'DateTime'> - readonly updated_at: Prisma.FieldRef<"SaleInvoiceFiscals", 'DateTime'> - readonly invoice_id: Prisma.FieldRef<"SaleInvoiceFiscals", 'String'> -} - - -// Custom InputTypes -/** - * SaleInvoiceFiscals findUnique - */ -export type SaleInvoiceFiscalsFindUniqueArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscals - */ - select?: Prisma.SaleInvoiceFiscalsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscals - */ - omit?: Prisma.SaleInvoiceFiscalsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalsInclude | null - /** - * Filter, which SaleInvoiceFiscals to fetch. - */ - where: Prisma.SaleInvoiceFiscalsWhereUniqueInput -} - -/** - * SaleInvoiceFiscals findUniqueOrThrow - */ -export type SaleInvoiceFiscalsFindUniqueOrThrowArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscals - */ - select?: Prisma.SaleInvoiceFiscalsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscals - */ - omit?: Prisma.SaleInvoiceFiscalsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalsInclude | null - /** - * Filter, which SaleInvoiceFiscals to fetch. - */ - where: Prisma.SaleInvoiceFiscalsWhereUniqueInput -} - -/** - * SaleInvoiceFiscals findFirst - */ -export type SaleInvoiceFiscalsFindFirstArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscals - */ - select?: Prisma.SaleInvoiceFiscalsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscals - */ - omit?: Prisma.SaleInvoiceFiscalsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalsInclude | null - /** - * Filter, which SaleInvoiceFiscals to fetch. - */ - where?: Prisma.SaleInvoiceFiscalsWhereInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * - * Determine the order of SaleInvoiceFiscals to fetch. - */ - orderBy?: Prisma.SaleInvoiceFiscalsOrderByWithRelationInput | Prisma.SaleInvoiceFiscalsOrderByWithRelationInput[] - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * - * Sets the position for searching for SaleInvoiceFiscals. - */ - cursor?: Prisma.SaleInvoiceFiscalsWhereUniqueInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Take `±n` SaleInvoiceFiscals 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` SaleInvoiceFiscals. - */ - skip?: number - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * - * Filter by unique combinations of SaleInvoiceFiscals. - */ - distinct?: Prisma.SaleInvoiceFiscalsScalarFieldEnum | Prisma.SaleInvoiceFiscalsScalarFieldEnum[] -} - -/** - * SaleInvoiceFiscals findFirstOrThrow - */ -export type SaleInvoiceFiscalsFindFirstOrThrowArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscals - */ - select?: Prisma.SaleInvoiceFiscalsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscals - */ - omit?: Prisma.SaleInvoiceFiscalsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalsInclude | null - /** - * Filter, which SaleInvoiceFiscals to fetch. - */ - where?: Prisma.SaleInvoiceFiscalsWhereInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * - * Determine the order of SaleInvoiceFiscals to fetch. - */ - orderBy?: Prisma.SaleInvoiceFiscalsOrderByWithRelationInput | Prisma.SaleInvoiceFiscalsOrderByWithRelationInput[] - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * - * Sets the position for searching for SaleInvoiceFiscals. - */ - cursor?: Prisma.SaleInvoiceFiscalsWhereUniqueInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Take `±n` SaleInvoiceFiscals 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` SaleInvoiceFiscals. - */ - skip?: number - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * - * Filter by unique combinations of SaleInvoiceFiscals. - */ - distinct?: Prisma.SaleInvoiceFiscalsScalarFieldEnum | Prisma.SaleInvoiceFiscalsScalarFieldEnum[] -} - -/** - * SaleInvoiceFiscals findMany - */ -export type SaleInvoiceFiscalsFindManyArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscals - */ - select?: Prisma.SaleInvoiceFiscalsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscals - */ - omit?: Prisma.SaleInvoiceFiscalsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalsInclude | null - /** - * Filter, which SaleInvoiceFiscals to fetch. - */ - where?: Prisma.SaleInvoiceFiscalsWhereInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} - * - * Determine the order of SaleInvoiceFiscals to fetch. - */ - orderBy?: Prisma.SaleInvoiceFiscalsOrderByWithRelationInput | Prisma.SaleInvoiceFiscalsOrderByWithRelationInput[] - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} - * - * Sets the position for listing SaleInvoiceFiscals. - */ - cursor?: Prisma.SaleInvoiceFiscalsWhereUniqueInput - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} - * - * Take `±n` SaleInvoiceFiscals 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` SaleInvoiceFiscals. - */ - skip?: number - /** - * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} - * - * Filter by unique combinations of SaleInvoiceFiscals. - */ - distinct?: Prisma.SaleInvoiceFiscalsScalarFieldEnum | Prisma.SaleInvoiceFiscalsScalarFieldEnum[] -} - -/** - * SaleInvoiceFiscals create - */ -export type SaleInvoiceFiscalsCreateArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscals - */ - select?: Prisma.SaleInvoiceFiscalsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscals - */ - omit?: Prisma.SaleInvoiceFiscalsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalsInclude | null - /** - * The data needed to create a SaleInvoiceFiscals. - */ - data: Prisma.XOR -} - -/** - * SaleInvoiceFiscals createMany - */ -export type SaleInvoiceFiscalsCreateManyArgs = { - /** - * The data used to create many SaleInvoiceFiscals. - */ - data: Prisma.SaleInvoiceFiscalsCreateManyInput | Prisma.SaleInvoiceFiscalsCreateManyInput[] - skipDuplicates?: boolean -} - -/** - * SaleInvoiceFiscals update - */ -export type SaleInvoiceFiscalsUpdateArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscals - */ - select?: Prisma.SaleInvoiceFiscalsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscals - */ - omit?: Prisma.SaleInvoiceFiscalsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalsInclude | null - /** - * The data needed to update a SaleInvoiceFiscals. - */ - data: Prisma.XOR - /** - * Choose, which SaleInvoiceFiscals to update. - */ - where: Prisma.SaleInvoiceFiscalsWhereUniqueInput -} - -/** - * SaleInvoiceFiscals updateMany - */ -export type SaleInvoiceFiscalsUpdateManyArgs = { - /** - * The data used to update SaleInvoiceFiscals. - */ - data: Prisma.XOR - /** - * Filter which SaleInvoiceFiscals to update - */ - where?: Prisma.SaleInvoiceFiscalsWhereInput - /** - * Limit how many SaleInvoiceFiscals to update. - */ - limit?: number -} - -/** - * SaleInvoiceFiscals upsert - */ -export type SaleInvoiceFiscalsUpsertArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscals - */ - select?: Prisma.SaleInvoiceFiscalsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscals - */ - omit?: Prisma.SaleInvoiceFiscalsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalsInclude | null - /** - * The filter to search for the SaleInvoiceFiscals to update in case it exists. - */ - where: Prisma.SaleInvoiceFiscalsWhereUniqueInput - /** - * In case the SaleInvoiceFiscals found by the `where` argument doesn't exist, create a new SaleInvoiceFiscals with this data. - */ - create: Prisma.XOR - /** - * In case the SaleInvoiceFiscals was found with the provided `where` argument, update it with this data. - */ - update: Prisma.XOR -} - -/** - * SaleInvoiceFiscals delete - */ -export type SaleInvoiceFiscalsDeleteArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscals - */ - select?: Prisma.SaleInvoiceFiscalsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscals - */ - omit?: Prisma.SaleInvoiceFiscalsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalsInclude | null - /** - * Filter which SaleInvoiceFiscals to delete. - */ - where: Prisma.SaleInvoiceFiscalsWhereUniqueInput -} - -/** - * SaleInvoiceFiscals deleteMany - */ -export type SaleInvoiceFiscalsDeleteManyArgs = { - /** - * Filter which SaleInvoiceFiscals to delete - */ - where?: Prisma.SaleInvoiceFiscalsWhereInput - /** - * Limit how many SaleInvoiceFiscals to delete. - */ - limit?: number -} - -/** - * SaleInvoiceFiscals.attempts - */ -export type SaleInvoiceFiscals$attemptsArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscalAttempts - */ - select?: Prisma.SaleInvoiceFiscalAttemptsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscalAttempts - */ - omit?: Prisma.SaleInvoiceFiscalAttemptsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalAttemptsInclude | null - where?: Prisma.SaleInvoiceFiscalAttemptsWhereInput - orderBy?: Prisma.SaleInvoiceFiscalAttemptsOrderByWithRelationInput | Prisma.SaleInvoiceFiscalAttemptsOrderByWithRelationInput[] - cursor?: Prisma.SaleInvoiceFiscalAttemptsWhereUniqueInput - take?: number - skip?: number - distinct?: Prisma.SaleInvoiceFiscalAttemptsScalarFieldEnum | Prisma.SaleInvoiceFiscalAttemptsScalarFieldEnum[] -} - -/** - * SaleInvoiceFiscals without action - */ -export type SaleInvoiceFiscalsDefaultArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscals - */ - select?: Prisma.SaleInvoiceFiscalsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscals - */ - omit?: Prisma.SaleInvoiceFiscalsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalsInclude | null -} diff --git a/src/generated/prisma/models/SaleInvoiceTspAttempts.ts b/src/generated/prisma/models/SaleInvoiceTspAttempts.ts new file mode 100644 index 0000000..8000571 --- /dev/null +++ b/src/generated/prisma/models/SaleInvoiceTspAttempts.ts @@ -0,0 +1,1500 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! */ +/* eslint-disable */ +// biome-ignore-all lint: generated file +// @ts-nocheck +/* + * This file exports the `SaleInvoiceTspAttempts` 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.js" +import type * as Prisma from "../internal/prismaNamespace.js" + +/** + * Model SaleInvoiceTspAttempts + * + */ +export type SaleInvoiceTspAttemptsModel = runtime.Types.Result.DefaultSelection + +export type AggregateSaleInvoiceTspAttempts = { + _count: SaleInvoiceTspAttemptsCountAggregateOutputType | null + _avg: SaleInvoiceTspAttemptsAvgAggregateOutputType | null + _sum: SaleInvoiceTspAttemptsSumAggregateOutputType | null + _min: SaleInvoiceTspAttemptsMinAggregateOutputType | null + _max: SaleInvoiceTspAttemptsMaxAggregateOutputType | null +} + +export type SaleInvoiceTspAttemptsAvgAggregateOutputType = { + attempt_no: number | null +} + +export type SaleInvoiceTspAttemptsSumAggregateOutputType = { + attempt_no: number | null +} + +export type SaleInvoiceTspAttemptsMinAggregateOutputType = { + id: string | null + attempt_no: number | null + status: $Enums.TspProviderResponseStatus | null + tax_id: string | null + type: $Enums.TspProviderRequestType | null + error_message: string | null + sent_at: Date | null + received_at: Date | null + created_at: Date | null + invoice_id: string | null +} + +export type SaleInvoiceTspAttemptsMaxAggregateOutputType = { + id: string | null + attempt_no: number | null + status: $Enums.TspProviderResponseStatus | null + tax_id: string | null + type: $Enums.TspProviderRequestType | null + error_message: string | null + sent_at: Date | null + received_at: Date | null + created_at: Date | null + invoice_id: string | null +} + +export type SaleInvoiceTspAttemptsCountAggregateOutputType = { + id: number + attempt_no: number + status: number + tax_id: number + type: number + request_payload: number + response_payload: number + error_message: number + sent_at: number + received_at: number + created_at: number + invoice_id: number + _all: number +} + + +export type SaleInvoiceTspAttemptsAvgAggregateInputType = { + attempt_no?: true +} + +export type SaleInvoiceTspAttemptsSumAggregateInputType = { + attempt_no?: true +} + +export type SaleInvoiceTspAttemptsMinAggregateInputType = { + id?: true + attempt_no?: true + status?: true + tax_id?: true + type?: true + error_message?: true + sent_at?: true + received_at?: true + created_at?: true + invoice_id?: true +} + +export type SaleInvoiceTspAttemptsMaxAggregateInputType = { + id?: true + attempt_no?: true + status?: true + tax_id?: true + type?: true + error_message?: true + sent_at?: true + received_at?: true + created_at?: true + invoice_id?: true +} + +export type SaleInvoiceTspAttemptsCountAggregateInputType = { + id?: true + attempt_no?: true + status?: true + tax_id?: true + type?: true + request_payload?: true + response_payload?: true + error_message?: true + sent_at?: true + received_at?: true + created_at?: true + invoice_id?: true + _all?: true +} + +export type SaleInvoiceTspAttemptsAggregateArgs = { + /** + * Filter which SaleInvoiceTspAttempts to aggregate. + */ + where?: Prisma.SaleInvoiceTspAttemptsWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of SaleInvoiceTspAttempts to fetch. + */ + orderBy?: Prisma.SaleInvoiceTspAttemptsOrderByWithRelationInput | Prisma.SaleInvoiceTspAttemptsOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` SaleInvoiceTspAttempts 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` SaleInvoiceTspAttempts. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned SaleInvoiceTspAttempts + **/ + _count?: true | SaleInvoiceTspAttemptsCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to average + **/ + _avg?: SaleInvoiceTspAttemptsAvgAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to sum + **/ + _sum?: SaleInvoiceTspAttemptsSumAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: SaleInvoiceTspAttemptsMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: SaleInvoiceTspAttemptsMaxAggregateInputType +} + +export type GetSaleInvoiceTspAttemptsAggregateType = { + [P in keyof T & keyof AggregateSaleInvoiceTspAttempts]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType +} + + + + +export type SaleInvoiceTspAttemptsGroupByArgs = { + where?: Prisma.SaleInvoiceTspAttemptsWhereInput + orderBy?: Prisma.SaleInvoiceTspAttemptsOrderByWithAggregationInput | Prisma.SaleInvoiceTspAttemptsOrderByWithAggregationInput[] + by: Prisma.SaleInvoiceTspAttemptsScalarFieldEnum[] | Prisma.SaleInvoiceTspAttemptsScalarFieldEnum + having?: Prisma.SaleInvoiceTspAttemptsScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: SaleInvoiceTspAttemptsCountAggregateInputType | true + _avg?: SaleInvoiceTspAttemptsAvgAggregateInputType + _sum?: SaleInvoiceTspAttemptsSumAggregateInputType + _min?: SaleInvoiceTspAttemptsMinAggregateInputType + _max?: SaleInvoiceTspAttemptsMaxAggregateInputType +} + +export type SaleInvoiceTspAttemptsGroupByOutputType = { + id: string + attempt_no: number + status: $Enums.TspProviderResponseStatus + tax_id: string | null + type: $Enums.TspProviderRequestType + request_payload: runtime.JsonValue | null + response_payload: runtime.JsonValue | null + error_message: string | null + sent_at: Date | null + received_at: Date | null + created_at: Date + invoice_id: string + _count: SaleInvoiceTspAttemptsCountAggregateOutputType | null + _avg: SaleInvoiceTspAttemptsAvgAggregateOutputType | null + _sum: SaleInvoiceTspAttemptsSumAggregateOutputType | null + _min: SaleInvoiceTspAttemptsMinAggregateOutputType | null + _max: SaleInvoiceTspAttemptsMaxAggregateOutputType | null +} + +export type GetSaleInvoiceTspAttemptsGroupByPayload = Prisma.PrismaPromise< + Array< + Prisma.PickEnumerable & + { + [P in ((keyof T) & (keyof SaleInvoiceTspAttemptsGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType + } + > + > + + + +export type SaleInvoiceTspAttemptsWhereInput = { + AND?: Prisma.SaleInvoiceTspAttemptsWhereInput | Prisma.SaleInvoiceTspAttemptsWhereInput[] + OR?: Prisma.SaleInvoiceTspAttemptsWhereInput[] + NOT?: Prisma.SaleInvoiceTspAttemptsWhereInput | Prisma.SaleInvoiceTspAttemptsWhereInput[] + id?: Prisma.StringFilter<"SaleInvoiceTspAttempts"> | string + attempt_no?: Prisma.IntFilter<"SaleInvoiceTspAttempts"> | number + status?: Prisma.EnumTspProviderResponseStatusFilter<"SaleInvoiceTspAttempts"> | $Enums.TspProviderResponseStatus + tax_id?: Prisma.StringNullableFilter<"SaleInvoiceTspAttempts"> | string | null + type?: Prisma.EnumTspProviderRequestTypeFilter<"SaleInvoiceTspAttempts"> | $Enums.TspProviderRequestType + request_payload?: Prisma.JsonNullableFilter<"SaleInvoiceTspAttempts"> + response_payload?: Prisma.JsonNullableFilter<"SaleInvoiceTspAttempts"> + error_message?: Prisma.StringNullableFilter<"SaleInvoiceTspAttempts"> | string | null + sent_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceTspAttempts"> | Date | string | null + received_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceTspAttempts"> | Date | string | null + created_at?: Prisma.DateTimeFilter<"SaleInvoiceTspAttempts"> | Date | string + invoice_id?: Prisma.StringFilter<"SaleInvoiceTspAttempts"> | string + invoice?: Prisma.XOR +} + +export type SaleInvoiceTspAttemptsOrderByWithRelationInput = { + id?: Prisma.SortOrder + attempt_no?: Prisma.SortOrder + status?: Prisma.SortOrder + tax_id?: Prisma.SortOrderInput | Prisma.SortOrder + type?: Prisma.SortOrder + request_payload?: Prisma.SortOrderInput | Prisma.SortOrder + response_payload?: Prisma.SortOrderInput | Prisma.SortOrder + error_message?: Prisma.SortOrderInput | Prisma.SortOrder + sent_at?: Prisma.SortOrderInput | Prisma.SortOrder + received_at?: Prisma.SortOrderInput | Prisma.SortOrder + created_at?: Prisma.SortOrder + invoice_id?: Prisma.SortOrder + invoice?: Prisma.SalesInvoiceOrderByWithRelationInput + _relevance?: Prisma.SaleInvoiceTspAttemptsOrderByRelevanceInput +} + +export type SaleInvoiceTspAttemptsWhereUniqueInput = Prisma.AtLeast<{ + id?: string + tax_id?: string + invoice_id?: string + invoice_id_attempt_no?: Prisma.SaleInvoiceTspAttemptsInvoice_idAttempt_noCompoundUniqueInput + AND?: Prisma.SaleInvoiceTspAttemptsWhereInput | Prisma.SaleInvoiceTspAttemptsWhereInput[] + OR?: Prisma.SaleInvoiceTspAttemptsWhereInput[] + NOT?: Prisma.SaleInvoiceTspAttemptsWhereInput | Prisma.SaleInvoiceTspAttemptsWhereInput[] + attempt_no?: Prisma.IntFilter<"SaleInvoiceTspAttempts"> | number + status?: Prisma.EnumTspProviderResponseStatusFilter<"SaleInvoiceTspAttempts"> | $Enums.TspProviderResponseStatus + type?: Prisma.EnumTspProviderRequestTypeFilter<"SaleInvoiceTspAttempts"> | $Enums.TspProviderRequestType + request_payload?: Prisma.JsonNullableFilter<"SaleInvoiceTspAttempts"> + response_payload?: Prisma.JsonNullableFilter<"SaleInvoiceTspAttempts"> + error_message?: Prisma.StringNullableFilter<"SaleInvoiceTspAttempts"> | string | null + sent_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceTspAttempts"> | Date | string | null + received_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceTspAttempts"> | Date | string | null + created_at?: Prisma.DateTimeFilter<"SaleInvoiceTspAttempts"> | Date | string + invoice?: Prisma.XOR +}, "id" | "tax_id" | "invoice_id" | "invoice_id_attempt_no"> + +export type SaleInvoiceTspAttemptsOrderByWithAggregationInput = { + id?: Prisma.SortOrder + attempt_no?: Prisma.SortOrder + status?: Prisma.SortOrder + tax_id?: Prisma.SortOrderInput | Prisma.SortOrder + type?: Prisma.SortOrder + request_payload?: Prisma.SortOrderInput | Prisma.SortOrder + response_payload?: Prisma.SortOrderInput | Prisma.SortOrder + error_message?: Prisma.SortOrderInput | Prisma.SortOrder + sent_at?: Prisma.SortOrderInput | Prisma.SortOrder + received_at?: Prisma.SortOrderInput | Prisma.SortOrder + created_at?: Prisma.SortOrder + invoice_id?: Prisma.SortOrder + _count?: Prisma.SaleInvoiceTspAttemptsCountOrderByAggregateInput + _avg?: Prisma.SaleInvoiceTspAttemptsAvgOrderByAggregateInput + _max?: Prisma.SaleInvoiceTspAttemptsMaxOrderByAggregateInput + _min?: Prisma.SaleInvoiceTspAttemptsMinOrderByAggregateInput + _sum?: Prisma.SaleInvoiceTspAttemptsSumOrderByAggregateInput +} + +export type SaleInvoiceTspAttemptsScalarWhereWithAggregatesInput = { + AND?: Prisma.SaleInvoiceTspAttemptsScalarWhereWithAggregatesInput | Prisma.SaleInvoiceTspAttemptsScalarWhereWithAggregatesInput[] + OR?: Prisma.SaleInvoiceTspAttemptsScalarWhereWithAggregatesInput[] + NOT?: Prisma.SaleInvoiceTspAttemptsScalarWhereWithAggregatesInput | Prisma.SaleInvoiceTspAttemptsScalarWhereWithAggregatesInput[] + id?: Prisma.StringWithAggregatesFilter<"SaleInvoiceTspAttempts"> | string + attempt_no?: Prisma.IntWithAggregatesFilter<"SaleInvoiceTspAttempts"> | number + status?: Prisma.EnumTspProviderResponseStatusWithAggregatesFilter<"SaleInvoiceTspAttempts"> | $Enums.TspProviderResponseStatus + tax_id?: Prisma.StringNullableWithAggregatesFilter<"SaleInvoiceTspAttempts"> | string | null + type?: Prisma.EnumTspProviderRequestTypeWithAggregatesFilter<"SaleInvoiceTspAttempts"> | $Enums.TspProviderRequestType + request_payload?: Prisma.JsonNullableWithAggregatesFilter<"SaleInvoiceTspAttempts"> + response_payload?: Prisma.JsonNullableWithAggregatesFilter<"SaleInvoiceTspAttempts"> + error_message?: Prisma.StringNullableWithAggregatesFilter<"SaleInvoiceTspAttempts"> | string | null + sent_at?: Prisma.DateTimeNullableWithAggregatesFilter<"SaleInvoiceTspAttempts"> | Date | string | null + received_at?: Prisma.DateTimeNullableWithAggregatesFilter<"SaleInvoiceTspAttempts"> | Date | string | null + created_at?: Prisma.DateTimeWithAggregatesFilter<"SaleInvoiceTspAttempts"> | Date | string + invoice_id?: Prisma.StringWithAggregatesFilter<"SaleInvoiceTspAttempts"> | string +} + +export type SaleInvoiceTspAttemptsCreateInput = { + id?: string + attempt_no: number + status: $Enums.TspProviderResponseStatus + tax_id?: string | null + type: $Enums.TspProviderRequestType + request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + error_message?: string | null + sent_at?: Date | string | null + received_at?: Date | string | null + created_at?: Date | string + invoice: Prisma.SalesInvoiceCreateNestedOneWithoutTsp_attemptsInput +} + +export type SaleInvoiceTspAttemptsUncheckedCreateInput = { + id?: string + attempt_no: number + status: $Enums.TspProviderResponseStatus + tax_id?: string | null + type: $Enums.TspProviderRequestType + request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + error_message?: string | null + sent_at?: Date | string | null + received_at?: Date | string | null + created_at?: Date | string + invoice_id: string +} + +export type SaleInvoiceTspAttemptsUpdateInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + attempt_no?: Prisma.IntFieldUpdateOperationsInput | number + status?: Prisma.EnumTspProviderResponseStatusFieldUpdateOperationsInput | $Enums.TspProviderResponseStatus + tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + type?: Prisma.EnumTspProviderRequestTypeFieldUpdateOperationsInput | $Enums.TspProviderRequestType + request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + invoice?: Prisma.SalesInvoiceUpdateOneRequiredWithoutTsp_attemptsNestedInput +} + +export type SaleInvoiceTspAttemptsUncheckedUpdateInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + attempt_no?: Prisma.IntFieldUpdateOperationsInput | number + status?: Prisma.EnumTspProviderResponseStatusFieldUpdateOperationsInput | $Enums.TspProviderResponseStatus + tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + type?: Prisma.EnumTspProviderRequestTypeFieldUpdateOperationsInput | $Enums.TspProviderRequestType + request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + invoice_id?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type SaleInvoiceTspAttemptsCreateManyInput = { + id?: string + attempt_no: number + status: $Enums.TspProviderResponseStatus + tax_id?: string | null + type: $Enums.TspProviderRequestType + request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + error_message?: string | null + sent_at?: Date | string | null + received_at?: Date | string | null + created_at?: Date | string + invoice_id: string +} + +export type SaleInvoiceTspAttemptsUpdateManyMutationInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + attempt_no?: Prisma.IntFieldUpdateOperationsInput | number + status?: Prisma.EnumTspProviderResponseStatusFieldUpdateOperationsInput | $Enums.TspProviderResponseStatus + tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + type?: Prisma.EnumTspProviderRequestTypeFieldUpdateOperationsInput | $Enums.TspProviderRequestType + request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type SaleInvoiceTspAttemptsUncheckedUpdateManyInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + attempt_no?: Prisma.IntFieldUpdateOperationsInput | number + status?: Prisma.EnumTspProviderResponseStatusFieldUpdateOperationsInput | $Enums.TspProviderResponseStatus + tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + type?: Prisma.EnumTspProviderRequestTypeFieldUpdateOperationsInput | $Enums.TspProviderRequestType + request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + invoice_id?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type SaleInvoiceTspAttemptsListRelationFilter = { + every?: Prisma.SaleInvoiceTspAttemptsWhereInput + some?: Prisma.SaleInvoiceTspAttemptsWhereInput + none?: Prisma.SaleInvoiceTspAttemptsWhereInput +} + +export type SaleInvoiceTspAttemptsOrderByRelationAggregateInput = { + _count?: Prisma.SortOrder +} + +export type SaleInvoiceTspAttemptsOrderByRelevanceInput = { + fields: Prisma.SaleInvoiceTspAttemptsOrderByRelevanceFieldEnum | Prisma.SaleInvoiceTspAttemptsOrderByRelevanceFieldEnum[] + sort: Prisma.SortOrder + search: string +} + +export type SaleInvoiceTspAttemptsInvoice_idAttempt_noCompoundUniqueInput = { + invoice_id: string + attempt_no: number +} + +export type SaleInvoiceTspAttemptsCountOrderByAggregateInput = { + id?: Prisma.SortOrder + attempt_no?: Prisma.SortOrder + status?: Prisma.SortOrder + tax_id?: Prisma.SortOrder + type?: Prisma.SortOrder + request_payload?: Prisma.SortOrder + response_payload?: Prisma.SortOrder + error_message?: Prisma.SortOrder + sent_at?: Prisma.SortOrder + received_at?: Prisma.SortOrder + created_at?: Prisma.SortOrder + invoice_id?: Prisma.SortOrder +} + +export type SaleInvoiceTspAttemptsAvgOrderByAggregateInput = { + attempt_no?: Prisma.SortOrder +} + +export type SaleInvoiceTspAttemptsMaxOrderByAggregateInput = { + id?: Prisma.SortOrder + attempt_no?: Prisma.SortOrder + status?: Prisma.SortOrder + tax_id?: Prisma.SortOrder + type?: Prisma.SortOrder + error_message?: Prisma.SortOrder + sent_at?: Prisma.SortOrder + received_at?: Prisma.SortOrder + created_at?: Prisma.SortOrder + invoice_id?: Prisma.SortOrder +} + +export type SaleInvoiceTspAttemptsMinOrderByAggregateInput = { + id?: Prisma.SortOrder + attempt_no?: Prisma.SortOrder + status?: Prisma.SortOrder + tax_id?: Prisma.SortOrder + type?: Prisma.SortOrder + error_message?: Prisma.SortOrder + sent_at?: Prisma.SortOrder + received_at?: Prisma.SortOrder + created_at?: Prisma.SortOrder + invoice_id?: Prisma.SortOrder +} + +export type SaleInvoiceTspAttemptsSumOrderByAggregateInput = { + attempt_no?: Prisma.SortOrder +} + +export type SaleInvoiceTspAttemptsCreateNestedManyWithoutInvoiceInput = { + create?: Prisma.XOR | Prisma.SaleInvoiceTspAttemptsCreateWithoutInvoiceInput[] | Prisma.SaleInvoiceTspAttemptsUncheckedCreateWithoutInvoiceInput[] + connectOrCreate?: Prisma.SaleInvoiceTspAttemptsCreateOrConnectWithoutInvoiceInput | Prisma.SaleInvoiceTspAttemptsCreateOrConnectWithoutInvoiceInput[] + createMany?: Prisma.SaleInvoiceTspAttemptsCreateManyInvoiceInputEnvelope + connect?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput | Prisma.SaleInvoiceTspAttemptsWhereUniqueInput[] +} + +export type SaleInvoiceTspAttemptsUncheckedCreateNestedManyWithoutInvoiceInput = { + create?: Prisma.XOR | Prisma.SaleInvoiceTspAttemptsCreateWithoutInvoiceInput[] | Prisma.SaleInvoiceTspAttemptsUncheckedCreateWithoutInvoiceInput[] + connectOrCreate?: Prisma.SaleInvoiceTspAttemptsCreateOrConnectWithoutInvoiceInput | Prisma.SaleInvoiceTspAttemptsCreateOrConnectWithoutInvoiceInput[] + createMany?: Prisma.SaleInvoiceTspAttemptsCreateManyInvoiceInputEnvelope + connect?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput | Prisma.SaleInvoiceTspAttemptsWhereUniqueInput[] +} + +export type SaleInvoiceTspAttemptsUpdateManyWithoutInvoiceNestedInput = { + create?: Prisma.XOR | Prisma.SaleInvoiceTspAttemptsCreateWithoutInvoiceInput[] | Prisma.SaleInvoiceTspAttemptsUncheckedCreateWithoutInvoiceInput[] + connectOrCreate?: Prisma.SaleInvoiceTspAttemptsCreateOrConnectWithoutInvoiceInput | Prisma.SaleInvoiceTspAttemptsCreateOrConnectWithoutInvoiceInput[] + upsert?: Prisma.SaleInvoiceTspAttemptsUpsertWithWhereUniqueWithoutInvoiceInput | Prisma.SaleInvoiceTspAttemptsUpsertWithWhereUniqueWithoutInvoiceInput[] + createMany?: Prisma.SaleInvoiceTspAttemptsCreateManyInvoiceInputEnvelope + set?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput | Prisma.SaleInvoiceTspAttemptsWhereUniqueInput[] + disconnect?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput | Prisma.SaleInvoiceTspAttemptsWhereUniqueInput[] + delete?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput | Prisma.SaleInvoiceTspAttemptsWhereUniqueInput[] + connect?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput | Prisma.SaleInvoiceTspAttemptsWhereUniqueInput[] + update?: Prisma.SaleInvoiceTspAttemptsUpdateWithWhereUniqueWithoutInvoiceInput | Prisma.SaleInvoiceTspAttemptsUpdateWithWhereUniqueWithoutInvoiceInput[] + updateMany?: Prisma.SaleInvoiceTspAttemptsUpdateManyWithWhereWithoutInvoiceInput | Prisma.SaleInvoiceTspAttemptsUpdateManyWithWhereWithoutInvoiceInput[] + deleteMany?: Prisma.SaleInvoiceTspAttemptsScalarWhereInput | Prisma.SaleInvoiceTspAttemptsScalarWhereInput[] +} + +export type SaleInvoiceTspAttemptsUncheckedUpdateManyWithoutInvoiceNestedInput = { + create?: Prisma.XOR | Prisma.SaleInvoiceTspAttemptsCreateWithoutInvoiceInput[] | Prisma.SaleInvoiceTspAttemptsUncheckedCreateWithoutInvoiceInput[] + connectOrCreate?: Prisma.SaleInvoiceTspAttemptsCreateOrConnectWithoutInvoiceInput | Prisma.SaleInvoiceTspAttemptsCreateOrConnectWithoutInvoiceInput[] + upsert?: Prisma.SaleInvoiceTspAttemptsUpsertWithWhereUniqueWithoutInvoiceInput | Prisma.SaleInvoiceTspAttemptsUpsertWithWhereUniqueWithoutInvoiceInput[] + createMany?: Prisma.SaleInvoiceTspAttemptsCreateManyInvoiceInputEnvelope + set?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput | Prisma.SaleInvoiceTspAttemptsWhereUniqueInput[] + disconnect?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput | Prisma.SaleInvoiceTspAttemptsWhereUniqueInput[] + delete?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput | Prisma.SaleInvoiceTspAttemptsWhereUniqueInput[] + connect?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput | Prisma.SaleInvoiceTspAttemptsWhereUniqueInput[] + update?: Prisma.SaleInvoiceTspAttemptsUpdateWithWhereUniqueWithoutInvoiceInput | Prisma.SaleInvoiceTspAttemptsUpdateWithWhereUniqueWithoutInvoiceInput[] + updateMany?: Prisma.SaleInvoiceTspAttemptsUpdateManyWithWhereWithoutInvoiceInput | Prisma.SaleInvoiceTspAttemptsUpdateManyWithWhereWithoutInvoiceInput[] + deleteMany?: Prisma.SaleInvoiceTspAttemptsScalarWhereInput | Prisma.SaleInvoiceTspAttemptsScalarWhereInput[] +} + +export type EnumTspProviderResponseStatusFieldUpdateOperationsInput = { + set?: $Enums.TspProviderResponseStatus +} + +export type EnumTspProviderRequestTypeFieldUpdateOperationsInput = { + set?: $Enums.TspProviderRequestType +} + +export type SaleInvoiceTspAttemptsCreateWithoutInvoiceInput = { + id?: string + attempt_no: number + status: $Enums.TspProviderResponseStatus + tax_id?: string | null + type: $Enums.TspProviderRequestType + request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + error_message?: string | null + sent_at?: Date | string | null + received_at?: Date | string | null + created_at?: Date | string +} + +export type SaleInvoiceTspAttemptsUncheckedCreateWithoutInvoiceInput = { + id?: string + attempt_no: number + status: $Enums.TspProviderResponseStatus + tax_id?: string | null + type: $Enums.TspProviderRequestType + request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + error_message?: string | null + sent_at?: Date | string | null + received_at?: Date | string | null + created_at?: Date | string +} + +export type SaleInvoiceTspAttemptsCreateOrConnectWithoutInvoiceInput = { + where: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput + create: Prisma.XOR +} + +export type SaleInvoiceTspAttemptsCreateManyInvoiceInputEnvelope = { + data: Prisma.SaleInvoiceTspAttemptsCreateManyInvoiceInput | Prisma.SaleInvoiceTspAttemptsCreateManyInvoiceInput[] + skipDuplicates?: boolean +} + +export type SaleInvoiceTspAttemptsUpsertWithWhereUniqueWithoutInvoiceInput = { + where: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type SaleInvoiceTspAttemptsUpdateWithWhereUniqueWithoutInvoiceInput = { + where: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput + data: Prisma.XOR +} + +export type SaleInvoiceTspAttemptsUpdateManyWithWhereWithoutInvoiceInput = { + where: Prisma.SaleInvoiceTspAttemptsScalarWhereInput + data: Prisma.XOR +} + +export type SaleInvoiceTspAttemptsScalarWhereInput = { + AND?: Prisma.SaleInvoiceTspAttemptsScalarWhereInput | Prisma.SaleInvoiceTspAttemptsScalarWhereInput[] + OR?: Prisma.SaleInvoiceTspAttemptsScalarWhereInput[] + NOT?: Prisma.SaleInvoiceTspAttemptsScalarWhereInput | Prisma.SaleInvoiceTspAttemptsScalarWhereInput[] + id?: Prisma.StringFilter<"SaleInvoiceTspAttempts"> | string + attempt_no?: Prisma.IntFilter<"SaleInvoiceTspAttempts"> | number + status?: Prisma.EnumTspProviderResponseStatusFilter<"SaleInvoiceTspAttempts"> | $Enums.TspProviderResponseStatus + tax_id?: Prisma.StringNullableFilter<"SaleInvoiceTspAttempts"> | string | null + type?: Prisma.EnumTspProviderRequestTypeFilter<"SaleInvoiceTspAttempts"> | $Enums.TspProviderRequestType + request_payload?: Prisma.JsonNullableFilter<"SaleInvoiceTspAttempts"> + response_payload?: Prisma.JsonNullableFilter<"SaleInvoiceTspAttempts"> + error_message?: Prisma.StringNullableFilter<"SaleInvoiceTspAttempts"> | string | null + sent_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceTspAttempts"> | Date | string | null + received_at?: Prisma.DateTimeNullableFilter<"SaleInvoiceTspAttempts"> | Date | string | null + created_at?: Prisma.DateTimeFilter<"SaleInvoiceTspAttempts"> | Date | string + invoice_id?: Prisma.StringFilter<"SaleInvoiceTspAttempts"> | string +} + +export type SaleInvoiceTspAttemptsCreateManyInvoiceInput = { + id?: string + attempt_no: number + status: $Enums.TspProviderResponseStatus + tax_id?: string | null + type: $Enums.TspProviderRequestType + request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + error_message?: string | null + sent_at?: Date | string | null + received_at?: Date | string | null + created_at?: Date | string +} + +export type SaleInvoiceTspAttemptsUpdateWithoutInvoiceInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + attempt_no?: Prisma.IntFieldUpdateOperationsInput | number + status?: Prisma.EnumTspProviderResponseStatusFieldUpdateOperationsInput | $Enums.TspProviderResponseStatus + tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + type?: Prisma.EnumTspProviderRequestTypeFieldUpdateOperationsInput | $Enums.TspProviderRequestType + request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type SaleInvoiceTspAttemptsUncheckedUpdateWithoutInvoiceInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + attempt_no?: Prisma.IntFieldUpdateOperationsInput | number + status?: Prisma.EnumTspProviderResponseStatusFieldUpdateOperationsInput | $Enums.TspProviderResponseStatus + tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + type?: Prisma.EnumTspProviderRequestTypeFieldUpdateOperationsInput | $Enums.TspProviderRequestType + request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type SaleInvoiceTspAttemptsUncheckedUpdateManyWithoutInvoiceInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + attempt_no?: Prisma.IntFieldUpdateOperationsInput | number + status?: Prisma.EnumTspProviderResponseStatusFieldUpdateOperationsInput | $Enums.TspProviderResponseStatus + tax_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + type?: Prisma.EnumTspProviderRequestTypeFieldUpdateOperationsInput | $Enums.TspProviderRequestType + request_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + response_payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + error_message?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + sent_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + received_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + + + +export type SaleInvoiceTspAttemptsSelect = runtime.Types.Extensions.GetSelect<{ + id?: boolean + attempt_no?: boolean + status?: boolean + tax_id?: boolean + type?: boolean + request_payload?: boolean + response_payload?: boolean + error_message?: boolean + sent_at?: boolean + received_at?: boolean + created_at?: boolean + invoice_id?: boolean + invoice?: boolean | Prisma.SalesInvoiceDefaultArgs +}, ExtArgs["result"]["saleInvoiceTspAttempts"]> + + + +export type SaleInvoiceTspAttemptsSelectScalar = { + id?: boolean + attempt_no?: boolean + status?: boolean + tax_id?: boolean + type?: boolean + request_payload?: boolean + response_payload?: boolean + error_message?: boolean + sent_at?: boolean + received_at?: boolean + created_at?: boolean + invoice_id?: boolean +} + +export type SaleInvoiceTspAttemptsOmit = runtime.Types.Extensions.GetOmit<"id" | "attempt_no" | "status" | "tax_id" | "type" | "request_payload" | "response_payload" | "error_message" | "sent_at" | "received_at" | "created_at" | "invoice_id", ExtArgs["result"]["saleInvoiceTspAttempts"]> +export type SaleInvoiceTspAttemptsInclude = { + invoice?: boolean | Prisma.SalesInvoiceDefaultArgs +} + +export type $SaleInvoiceTspAttemptsPayload = { + name: "SaleInvoiceTspAttempts" + objects: { + invoice: Prisma.$SalesInvoicePayload + } + scalars: runtime.Types.Extensions.GetPayloadResult<{ + id: string + attempt_no: number + status: $Enums.TspProviderResponseStatus + tax_id: string | null + type: $Enums.TspProviderRequestType + request_payload: runtime.JsonValue | null + response_payload: runtime.JsonValue | null + error_message: string | null + sent_at: Date | null + received_at: Date | null + created_at: Date + invoice_id: string + }, ExtArgs["result"]["saleInvoiceTspAttempts"]> + composites: {} +} + +export type SaleInvoiceTspAttemptsGetPayload = runtime.Types.Result.GetResult + +export type SaleInvoiceTspAttemptsCountArgs = + Omit & { + select?: SaleInvoiceTspAttemptsCountAggregateInputType | true + } + +export interface SaleInvoiceTspAttemptsDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['SaleInvoiceTspAttempts'], meta: { name: 'SaleInvoiceTspAttempts' } } + /** + * Find zero or one SaleInvoiceTspAttempts that matches the filter. + * @param {SaleInvoiceTspAttemptsFindUniqueArgs} args - Arguments to find a SaleInvoiceTspAttempts + * @example + * // Get one SaleInvoiceTspAttempts + * const saleInvoiceTspAttempts = await prisma.saleInvoiceTspAttempts.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceTspAttemptsClient, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one SaleInvoiceTspAttempts that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {SaleInvoiceTspAttemptsFindUniqueOrThrowArgs} args - Arguments to find a SaleInvoiceTspAttempts + * @example + * // Get one SaleInvoiceTspAttempts + * const saleInvoiceTspAttempts = await prisma.saleInvoiceTspAttempts.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceTspAttemptsClient, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first SaleInvoiceTspAttempts 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 {SaleInvoiceTspAttemptsFindFirstArgs} args - Arguments to find a SaleInvoiceTspAttempts + * @example + * // Get one SaleInvoiceTspAttempts + * const saleInvoiceTspAttempts = await prisma.saleInvoiceTspAttempts.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceTspAttemptsClient, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first SaleInvoiceTspAttempts 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 {SaleInvoiceTspAttemptsFindFirstOrThrowArgs} args - Arguments to find a SaleInvoiceTspAttempts + * @example + * // Get one SaleInvoiceTspAttempts + * const saleInvoiceTspAttempts = await prisma.saleInvoiceTspAttempts.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceTspAttemptsClient, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more SaleInvoiceTspAttempts 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 {SaleInvoiceTspAttemptsFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all SaleInvoiceTspAttempts + * const saleInvoiceTspAttempts = await prisma.saleInvoiceTspAttempts.findMany() + * + * // Get first 10 SaleInvoiceTspAttempts + * const saleInvoiceTspAttempts = await prisma.saleInvoiceTspAttempts.findMany({ take: 10 }) + * + * // Only select the `id` + * const saleInvoiceTspAttemptsWithIdOnly = await prisma.saleInvoiceTspAttempts.findMany({ select: { id: true } }) + * + */ + findMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions>> + + /** + * Create a SaleInvoiceTspAttempts. + * @param {SaleInvoiceTspAttemptsCreateArgs} args - Arguments to create a SaleInvoiceTspAttempts. + * @example + * // Create one SaleInvoiceTspAttempts + * const SaleInvoiceTspAttempts = await prisma.saleInvoiceTspAttempts.create({ + * data: { + * // ... data to create a SaleInvoiceTspAttempts + * } + * }) + * + */ + create(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceTspAttemptsClient, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many SaleInvoiceTspAttempts. + * @param {SaleInvoiceTspAttemptsCreateManyArgs} args - Arguments to create many SaleInvoiceTspAttempts. + * @example + * // Create many SaleInvoiceTspAttempts + * const saleInvoiceTspAttempts = await prisma.saleInvoiceTspAttempts.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a SaleInvoiceTspAttempts. + * @param {SaleInvoiceTspAttemptsDeleteArgs} args - Arguments to delete one SaleInvoiceTspAttempts. + * @example + * // Delete one SaleInvoiceTspAttempts + * const SaleInvoiceTspAttempts = await prisma.saleInvoiceTspAttempts.delete({ + * where: { + * // ... filter to delete one SaleInvoiceTspAttempts + * } + * }) + * + */ + delete(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceTspAttemptsClient, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one SaleInvoiceTspAttempts. + * @param {SaleInvoiceTspAttemptsUpdateArgs} args - Arguments to update one SaleInvoiceTspAttempts. + * @example + * // Update one SaleInvoiceTspAttempts + * const saleInvoiceTspAttempts = await prisma.saleInvoiceTspAttempts.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceTspAttemptsClient, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more SaleInvoiceTspAttempts. + * @param {SaleInvoiceTspAttemptsDeleteManyArgs} args - Arguments to filter SaleInvoiceTspAttempts to delete. + * @example + * // Delete a few SaleInvoiceTspAttempts + * const { count } = await prisma.saleInvoiceTspAttempts.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more SaleInvoiceTspAttempts. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {SaleInvoiceTspAttemptsUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many SaleInvoiceTspAttempts + * const saleInvoiceTspAttempts = await prisma.saleInvoiceTspAttempts.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one SaleInvoiceTspAttempts. + * @param {SaleInvoiceTspAttemptsUpsertArgs} args - Arguments to update or create a SaleInvoiceTspAttempts. + * @example + * // Update or create a SaleInvoiceTspAttempts + * const saleInvoiceTspAttempts = await prisma.saleInvoiceTspAttempts.upsert({ + * create: { + * // ... data to create a SaleInvoiceTspAttempts + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the SaleInvoiceTspAttempts we want to update + * } + * }) + */ + upsert(args: Prisma.SelectSubset>): Prisma.Prisma__SaleInvoiceTspAttemptsClient, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of SaleInvoiceTspAttempts. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {SaleInvoiceTspAttemptsCountArgs} args - Arguments to filter SaleInvoiceTspAttempts to count. + * @example + * // Count the number of SaleInvoiceTspAttempts + * const count = await prisma.saleInvoiceTspAttempts.count({ + * where: { + * // ... the filter for the SaleInvoiceTspAttempts 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 SaleInvoiceTspAttempts. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {SaleInvoiceTspAttemptsAggregateArgs} 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 SaleInvoiceTspAttempts. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {SaleInvoiceTspAttemptsGroupByArgs} 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 SaleInvoiceTspAttemptsGroupByArgs, + HasSelectOrTake extends Prisma.Or< + Prisma.Extends<'skip', Prisma.Keys>, + Prisma.Extends<'take', Prisma.Keys> + >, + OrderByArg extends Prisma.True extends HasSelectOrTake + ? { orderBy: SaleInvoiceTspAttemptsGroupByArgs['orderBy'] } + : { orderBy?: SaleInvoiceTspAttemptsGroupByArgs['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 ? GetSaleInvoiceTspAttemptsGroupByPayload : Prisma.PrismaPromise +/** + * Fields of the SaleInvoiceTspAttempts model + */ +readonly fields: SaleInvoiceTspAttemptsFieldRefs; +} + +/** + * The delegate class that acts as a "Promise-like" for SaleInvoiceTspAttempts. + * 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__SaleInvoiceTspAttemptsClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + invoice = {}>(args?: Prisma.Subset>): Prisma.Prisma__SalesInvoiceClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + /** + * 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 SaleInvoiceTspAttempts model + */ +export interface SaleInvoiceTspAttemptsFieldRefs { + readonly id: Prisma.FieldRef<"SaleInvoiceTspAttempts", 'String'> + readonly attempt_no: Prisma.FieldRef<"SaleInvoiceTspAttempts", 'Int'> + readonly status: Prisma.FieldRef<"SaleInvoiceTspAttempts", 'TspProviderResponseStatus'> + readonly tax_id: Prisma.FieldRef<"SaleInvoiceTspAttempts", 'String'> + readonly type: Prisma.FieldRef<"SaleInvoiceTspAttempts", 'TspProviderRequestType'> + readonly request_payload: Prisma.FieldRef<"SaleInvoiceTspAttempts", 'Json'> + readonly response_payload: Prisma.FieldRef<"SaleInvoiceTspAttempts", 'Json'> + readonly error_message: Prisma.FieldRef<"SaleInvoiceTspAttempts", 'String'> + readonly sent_at: Prisma.FieldRef<"SaleInvoiceTspAttempts", 'DateTime'> + readonly received_at: Prisma.FieldRef<"SaleInvoiceTspAttempts", 'DateTime'> + readonly created_at: Prisma.FieldRef<"SaleInvoiceTspAttempts", 'DateTime'> + readonly invoice_id: Prisma.FieldRef<"SaleInvoiceTspAttempts", 'String'> +} + + +// Custom InputTypes +/** + * SaleInvoiceTspAttempts findUnique + */ +export type SaleInvoiceTspAttemptsFindUniqueArgs = { + /** + * Select specific fields to fetch from the SaleInvoiceTspAttempts + */ + select?: Prisma.SaleInvoiceTspAttemptsSelect | null + /** + * Omit specific fields from the SaleInvoiceTspAttempts + */ + omit?: Prisma.SaleInvoiceTspAttemptsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.SaleInvoiceTspAttemptsInclude | null + /** + * Filter, which SaleInvoiceTspAttempts to fetch. + */ + where: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput +} + +/** + * SaleInvoiceTspAttempts findUniqueOrThrow + */ +export type SaleInvoiceTspAttemptsFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the SaleInvoiceTspAttempts + */ + select?: Prisma.SaleInvoiceTspAttemptsSelect | null + /** + * Omit specific fields from the SaleInvoiceTspAttempts + */ + omit?: Prisma.SaleInvoiceTspAttemptsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.SaleInvoiceTspAttemptsInclude | null + /** + * Filter, which SaleInvoiceTspAttempts to fetch. + */ + where: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput +} + +/** + * SaleInvoiceTspAttempts findFirst + */ +export type SaleInvoiceTspAttemptsFindFirstArgs = { + /** + * Select specific fields to fetch from the SaleInvoiceTspAttempts + */ + select?: Prisma.SaleInvoiceTspAttemptsSelect | null + /** + * Omit specific fields from the SaleInvoiceTspAttempts + */ + omit?: Prisma.SaleInvoiceTspAttemptsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.SaleInvoiceTspAttemptsInclude | null + /** + * Filter, which SaleInvoiceTspAttempts to fetch. + */ + where?: Prisma.SaleInvoiceTspAttemptsWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of SaleInvoiceTspAttempts to fetch. + */ + orderBy?: Prisma.SaleInvoiceTspAttemptsOrderByWithRelationInput | Prisma.SaleInvoiceTspAttemptsOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for SaleInvoiceTspAttempts. + */ + cursor?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` SaleInvoiceTspAttempts 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` SaleInvoiceTspAttempts. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of SaleInvoiceTspAttempts. + */ + distinct?: Prisma.SaleInvoiceTspAttemptsScalarFieldEnum | Prisma.SaleInvoiceTspAttemptsScalarFieldEnum[] +} + +/** + * SaleInvoiceTspAttempts findFirstOrThrow + */ +export type SaleInvoiceTspAttemptsFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the SaleInvoiceTspAttempts + */ + select?: Prisma.SaleInvoiceTspAttemptsSelect | null + /** + * Omit specific fields from the SaleInvoiceTspAttempts + */ + omit?: Prisma.SaleInvoiceTspAttemptsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.SaleInvoiceTspAttemptsInclude | null + /** + * Filter, which SaleInvoiceTspAttempts to fetch. + */ + where?: Prisma.SaleInvoiceTspAttemptsWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of SaleInvoiceTspAttempts to fetch. + */ + orderBy?: Prisma.SaleInvoiceTspAttemptsOrderByWithRelationInput | Prisma.SaleInvoiceTspAttemptsOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for SaleInvoiceTspAttempts. + */ + cursor?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` SaleInvoiceTspAttempts 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` SaleInvoiceTspAttempts. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of SaleInvoiceTspAttempts. + */ + distinct?: Prisma.SaleInvoiceTspAttemptsScalarFieldEnum | Prisma.SaleInvoiceTspAttemptsScalarFieldEnum[] +} + +/** + * SaleInvoiceTspAttempts findMany + */ +export type SaleInvoiceTspAttemptsFindManyArgs = { + /** + * Select specific fields to fetch from the SaleInvoiceTspAttempts + */ + select?: Prisma.SaleInvoiceTspAttemptsSelect | null + /** + * Omit specific fields from the SaleInvoiceTspAttempts + */ + omit?: Prisma.SaleInvoiceTspAttemptsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.SaleInvoiceTspAttemptsInclude | null + /** + * Filter, which SaleInvoiceTspAttempts to fetch. + */ + where?: Prisma.SaleInvoiceTspAttemptsWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of SaleInvoiceTspAttempts to fetch. + */ + orderBy?: Prisma.SaleInvoiceTspAttemptsOrderByWithRelationInput | Prisma.SaleInvoiceTspAttemptsOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing SaleInvoiceTspAttempts. + */ + cursor?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` SaleInvoiceTspAttempts 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` SaleInvoiceTspAttempts. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of SaleInvoiceTspAttempts. + */ + distinct?: Prisma.SaleInvoiceTspAttemptsScalarFieldEnum | Prisma.SaleInvoiceTspAttemptsScalarFieldEnum[] +} + +/** + * SaleInvoiceTspAttempts create + */ +export type SaleInvoiceTspAttemptsCreateArgs = { + /** + * Select specific fields to fetch from the SaleInvoiceTspAttempts + */ + select?: Prisma.SaleInvoiceTspAttemptsSelect | null + /** + * Omit specific fields from the SaleInvoiceTspAttempts + */ + omit?: Prisma.SaleInvoiceTspAttemptsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.SaleInvoiceTspAttemptsInclude | null + /** + * The data needed to create a SaleInvoiceTspAttempts. + */ + data: Prisma.XOR +} + +/** + * SaleInvoiceTspAttempts createMany + */ +export type SaleInvoiceTspAttemptsCreateManyArgs = { + /** + * The data used to create many SaleInvoiceTspAttempts. + */ + data: Prisma.SaleInvoiceTspAttemptsCreateManyInput | Prisma.SaleInvoiceTspAttemptsCreateManyInput[] + skipDuplicates?: boolean +} + +/** + * SaleInvoiceTspAttempts update + */ +export type SaleInvoiceTspAttemptsUpdateArgs = { + /** + * Select specific fields to fetch from the SaleInvoiceTspAttempts + */ + select?: Prisma.SaleInvoiceTspAttemptsSelect | null + /** + * Omit specific fields from the SaleInvoiceTspAttempts + */ + omit?: Prisma.SaleInvoiceTspAttemptsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.SaleInvoiceTspAttemptsInclude | null + /** + * The data needed to update a SaleInvoiceTspAttempts. + */ + data: Prisma.XOR + /** + * Choose, which SaleInvoiceTspAttempts to update. + */ + where: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput +} + +/** + * SaleInvoiceTspAttempts updateMany + */ +export type SaleInvoiceTspAttemptsUpdateManyArgs = { + /** + * The data used to update SaleInvoiceTspAttempts. + */ + data: Prisma.XOR + /** + * Filter which SaleInvoiceTspAttempts to update + */ + where?: Prisma.SaleInvoiceTspAttemptsWhereInput + /** + * Limit how many SaleInvoiceTspAttempts to update. + */ + limit?: number +} + +/** + * SaleInvoiceTspAttempts upsert + */ +export type SaleInvoiceTspAttemptsUpsertArgs = { + /** + * Select specific fields to fetch from the SaleInvoiceTspAttempts + */ + select?: Prisma.SaleInvoiceTspAttemptsSelect | null + /** + * Omit specific fields from the SaleInvoiceTspAttempts + */ + omit?: Prisma.SaleInvoiceTspAttemptsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.SaleInvoiceTspAttemptsInclude | null + /** + * The filter to search for the SaleInvoiceTspAttempts to update in case it exists. + */ + where: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput + /** + * In case the SaleInvoiceTspAttempts found by the `where` argument doesn't exist, create a new SaleInvoiceTspAttempts with this data. + */ + create: Prisma.XOR + /** + * In case the SaleInvoiceTspAttempts was found with the provided `where` argument, update it with this data. + */ + update: Prisma.XOR +} + +/** + * SaleInvoiceTspAttempts delete + */ +export type SaleInvoiceTspAttemptsDeleteArgs = { + /** + * Select specific fields to fetch from the SaleInvoiceTspAttempts + */ + select?: Prisma.SaleInvoiceTspAttemptsSelect | null + /** + * Omit specific fields from the SaleInvoiceTspAttempts + */ + omit?: Prisma.SaleInvoiceTspAttemptsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.SaleInvoiceTspAttemptsInclude | null + /** + * Filter which SaleInvoiceTspAttempts to delete. + */ + where: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput +} + +/** + * SaleInvoiceTspAttempts deleteMany + */ +export type SaleInvoiceTspAttemptsDeleteManyArgs = { + /** + * Filter which SaleInvoiceTspAttempts to delete + */ + where?: Prisma.SaleInvoiceTspAttemptsWhereInput + /** + * Limit how many SaleInvoiceTspAttempts to delete. + */ + limit?: number +} + +/** + * SaleInvoiceTspAttempts without action + */ +export type SaleInvoiceTspAttemptsDefaultArgs = { + /** + * Select specific fields to fetch from the SaleInvoiceTspAttempts + */ + select?: Prisma.SaleInvoiceTspAttemptsSelect | null + /** + * Omit specific fields from the SaleInvoiceTspAttempts + */ + omit?: Prisma.SaleInvoiceTspAttemptsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.SaleInvoiceTspAttemptsInclude | null +} diff --git a/src/generated/prisma/models/SalesInvoice.ts b/src/generated/prisma/models/SalesInvoice.ts index 57673cc..97a4dec 100644 --- a/src/generated/prisma/models/SalesInvoice.ts +++ b/src/generated/prisma/models/SalesInvoice.ts @@ -275,9 +275,9 @@ export type SalesInvoiceWhereInput = { customer?: Prisma.XOR | null consumer_account?: Prisma.XOR pos?: Prisma.XOR - fiscal?: Prisma.XOR | null items?: Prisma.SalesInvoiceItemListRelationFilter payments?: Prisma.SalesInvoicePaymentListRelationFilter + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsListRelationFilter } export type SalesInvoiceOrderByWithRelationInput = { @@ -296,9 +296,9 @@ export type SalesInvoiceOrderByWithRelationInput = { customer?: Prisma.CustomerOrderByWithRelationInput consumer_account?: Prisma.ConsumerAccountOrderByWithRelationInput pos?: Prisma.PosOrderByWithRelationInput - fiscal?: Prisma.SaleInvoiceFiscalsOrderByWithRelationInput items?: Prisma.SalesInvoiceItemOrderByRelationAggregateInput payments?: Prisma.SalesInvoicePaymentOrderByRelationAggregateInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsOrderByRelationAggregateInput _relevance?: Prisma.SalesInvoiceOrderByRelevanceInput } @@ -322,9 +322,9 @@ export type SalesInvoiceWhereUniqueInput = Prisma.AtLeast<{ customer?: Prisma.XOR | null consumer_account?: Prisma.XOR pos?: Prisma.XOR - fiscal?: Prisma.XOR | null items?: Prisma.SalesInvoiceItemListRelationFilter payments?: Prisma.SalesInvoicePaymentListRelationFilter + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsListRelationFilter }, "id" | "code" | "invoice_number_pos_id"> export type SalesInvoiceOrderByWithAggregationInput = { @@ -378,9 +378,9 @@ export type SalesInvoiceCreateInput = { customer?: Prisma.CustomerCreateNestedOneWithoutSales_invoicesInput consumer_account: Prisma.ConsumerAccountCreateNestedOneWithoutSales_invoicesInput pos: Prisma.PosCreateNestedOneWithoutSales_invoicesInput - fiscal?: Prisma.SaleInvoiceFiscalsCreateNestedOneWithoutInvoiceInput items?: Prisma.SalesInvoiceItemCreateNestedManyWithoutInvoiceInput payments?: Prisma.SalesInvoicePaymentCreateNestedManyWithoutInvoiceInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsCreateNestedManyWithoutInvoiceInput } export type SalesInvoiceUncheckedCreateInput = { @@ -396,9 +396,9 @@ export type SalesInvoiceUncheckedCreateInput = { customer_id?: string | null consumer_account_id: string pos_id: string - fiscal?: Prisma.SaleInvoiceFiscalsUncheckedCreateNestedOneWithoutInvoiceInput items?: Prisma.SalesInvoiceItemUncheckedCreateNestedManyWithoutInvoiceInput payments?: Prisma.SalesInvoicePaymentUncheckedCreateNestedManyWithoutInvoiceInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUncheckedCreateNestedManyWithoutInvoiceInput } export type SalesInvoiceUpdateInput = { @@ -414,9 +414,9 @@ export type SalesInvoiceUpdateInput = { customer?: Prisma.CustomerUpdateOneWithoutSales_invoicesNestedInput consumer_account?: Prisma.ConsumerAccountUpdateOneRequiredWithoutSales_invoicesNestedInput pos?: Prisma.PosUpdateOneRequiredWithoutSales_invoicesNestedInput - fiscal?: Prisma.SaleInvoiceFiscalsUpdateOneWithoutInvoiceNestedInput items?: Prisma.SalesInvoiceItemUpdateManyWithoutInvoiceNestedInput payments?: Prisma.SalesInvoicePaymentUpdateManyWithoutInvoiceNestedInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUpdateManyWithoutInvoiceNestedInput } export type SalesInvoiceUncheckedUpdateInput = { @@ -432,9 +432,9 @@ export type SalesInvoiceUncheckedUpdateInput = { customer_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null consumer_account_id?: Prisma.StringFieldUpdateOperationsInput | string pos_id?: Prisma.StringFieldUpdateOperationsInput | string - fiscal?: Prisma.SaleInvoiceFiscalsUncheckedUpdateOneWithoutInvoiceNestedInput items?: Prisma.SalesInvoiceItemUncheckedUpdateManyWithoutInvoiceNestedInput payments?: Prisma.SalesInvoicePaymentUncheckedUpdateManyWithoutInvoiceNestedInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUncheckedUpdateManyWithoutInvoiceNestedInput } export type SalesInvoiceCreateManyInput = { @@ -698,18 +698,18 @@ export type SalesInvoiceUpdateOneRequiredWithoutItemsNestedInput = { update?: Prisma.XOR, Prisma.SalesInvoiceUncheckedUpdateWithoutItemsInput> } -export type SalesInvoiceCreateNestedOneWithoutFiscalInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.SalesInvoiceCreateOrConnectWithoutFiscalInput +export type SalesInvoiceCreateNestedOneWithoutTsp_attemptsInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.SalesInvoiceCreateOrConnectWithoutTsp_attemptsInput connect?: Prisma.SalesInvoiceWhereUniqueInput } -export type SalesInvoiceUpdateOneRequiredWithoutFiscalNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.SalesInvoiceCreateOrConnectWithoutFiscalInput - upsert?: Prisma.SalesInvoiceUpsertWithoutFiscalInput +export type SalesInvoiceUpdateOneRequiredWithoutTsp_attemptsNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.SalesInvoiceCreateOrConnectWithoutTsp_attemptsInput + upsert?: Prisma.SalesInvoiceUpsertWithoutTsp_attemptsInput connect?: Prisma.SalesInvoiceWhereUniqueInput - update?: Prisma.XOR, Prisma.SalesInvoiceUncheckedUpdateWithoutFiscalInput> + update?: Prisma.XOR, Prisma.SalesInvoiceUncheckedUpdateWithoutTsp_attemptsInput> } export type SalesInvoiceCreateNestedOneWithoutPaymentsInput = { @@ -738,9 +738,9 @@ export type SalesInvoiceCreateWithoutConsumer_accountInput = { updated_at?: Date | string customer?: Prisma.CustomerCreateNestedOneWithoutSales_invoicesInput pos: Prisma.PosCreateNestedOneWithoutSales_invoicesInput - fiscal?: Prisma.SaleInvoiceFiscalsCreateNestedOneWithoutInvoiceInput items?: Prisma.SalesInvoiceItemCreateNestedManyWithoutInvoiceInput payments?: Prisma.SalesInvoicePaymentCreateNestedManyWithoutInvoiceInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsCreateNestedManyWithoutInvoiceInput } export type SalesInvoiceUncheckedCreateWithoutConsumer_accountInput = { @@ -755,9 +755,9 @@ export type SalesInvoiceUncheckedCreateWithoutConsumer_accountInput = { updated_at?: Date | string customer_id?: string | null pos_id: string - fiscal?: Prisma.SaleInvoiceFiscalsUncheckedCreateNestedOneWithoutInvoiceInput items?: Prisma.SalesInvoiceItemUncheckedCreateNestedManyWithoutInvoiceInput payments?: Prisma.SalesInvoicePaymentUncheckedCreateNestedManyWithoutInvoiceInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUncheckedCreateNestedManyWithoutInvoiceInput } export type SalesInvoiceCreateOrConnectWithoutConsumer_accountInput = { @@ -816,9 +816,9 @@ export type SalesInvoiceCreateWithoutPosInput = { updated_at?: Date | string customer?: Prisma.CustomerCreateNestedOneWithoutSales_invoicesInput consumer_account: Prisma.ConsumerAccountCreateNestedOneWithoutSales_invoicesInput - fiscal?: Prisma.SaleInvoiceFiscalsCreateNestedOneWithoutInvoiceInput items?: Prisma.SalesInvoiceItemCreateNestedManyWithoutInvoiceInput payments?: Prisma.SalesInvoicePaymentCreateNestedManyWithoutInvoiceInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsCreateNestedManyWithoutInvoiceInput } export type SalesInvoiceUncheckedCreateWithoutPosInput = { @@ -833,9 +833,9 @@ export type SalesInvoiceUncheckedCreateWithoutPosInput = { updated_at?: Date | string customer_id?: string | null consumer_account_id: string - fiscal?: Prisma.SaleInvoiceFiscalsUncheckedCreateNestedOneWithoutInvoiceInput items?: Prisma.SalesInvoiceItemUncheckedCreateNestedManyWithoutInvoiceInput payments?: Prisma.SalesInvoicePaymentUncheckedCreateNestedManyWithoutInvoiceInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUncheckedCreateNestedManyWithoutInvoiceInput } export type SalesInvoiceCreateOrConnectWithoutPosInput = { @@ -876,9 +876,9 @@ export type SalesInvoiceCreateWithoutCustomerInput = { updated_at?: Date | string consumer_account: Prisma.ConsumerAccountCreateNestedOneWithoutSales_invoicesInput pos: Prisma.PosCreateNestedOneWithoutSales_invoicesInput - fiscal?: Prisma.SaleInvoiceFiscalsCreateNestedOneWithoutInvoiceInput items?: Prisma.SalesInvoiceItemCreateNestedManyWithoutInvoiceInput payments?: Prisma.SalesInvoicePaymentCreateNestedManyWithoutInvoiceInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsCreateNestedManyWithoutInvoiceInput } export type SalesInvoiceUncheckedCreateWithoutCustomerInput = { @@ -893,9 +893,9 @@ export type SalesInvoiceUncheckedCreateWithoutCustomerInput = { updated_at?: Date | string consumer_account_id: string pos_id: string - fiscal?: Prisma.SaleInvoiceFiscalsUncheckedCreateNestedOneWithoutInvoiceInput items?: Prisma.SalesInvoiceItemUncheckedCreateNestedManyWithoutInvoiceInput payments?: Prisma.SalesInvoicePaymentUncheckedCreateNestedManyWithoutInvoiceInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUncheckedCreateNestedManyWithoutInvoiceInput } export type SalesInvoiceCreateOrConnectWithoutCustomerInput = { @@ -937,8 +937,8 @@ export type SalesInvoiceCreateWithoutItemsInput = { customer?: Prisma.CustomerCreateNestedOneWithoutSales_invoicesInput consumer_account: Prisma.ConsumerAccountCreateNestedOneWithoutSales_invoicesInput pos: Prisma.PosCreateNestedOneWithoutSales_invoicesInput - fiscal?: Prisma.SaleInvoiceFiscalsCreateNestedOneWithoutInvoiceInput payments?: Prisma.SalesInvoicePaymentCreateNestedManyWithoutInvoiceInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsCreateNestedManyWithoutInvoiceInput } export type SalesInvoiceUncheckedCreateWithoutItemsInput = { @@ -954,8 +954,8 @@ export type SalesInvoiceUncheckedCreateWithoutItemsInput = { customer_id?: string | null consumer_account_id: string pos_id: string - fiscal?: Prisma.SaleInvoiceFiscalsUncheckedCreateNestedOneWithoutInvoiceInput payments?: Prisma.SalesInvoicePaymentUncheckedCreateNestedManyWithoutInvoiceInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUncheckedCreateNestedManyWithoutInvoiceInput } export type SalesInvoiceCreateOrConnectWithoutItemsInput = { @@ -987,8 +987,8 @@ export type SalesInvoiceUpdateWithoutItemsInput = { customer?: Prisma.CustomerUpdateOneWithoutSales_invoicesNestedInput consumer_account?: Prisma.ConsumerAccountUpdateOneRequiredWithoutSales_invoicesNestedInput pos?: Prisma.PosUpdateOneRequiredWithoutSales_invoicesNestedInput - fiscal?: Prisma.SaleInvoiceFiscalsUpdateOneWithoutInvoiceNestedInput payments?: Prisma.SalesInvoicePaymentUpdateManyWithoutInvoiceNestedInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUpdateManyWithoutInvoiceNestedInput } export type SalesInvoiceUncheckedUpdateWithoutItemsInput = { @@ -1004,11 +1004,11 @@ export type SalesInvoiceUncheckedUpdateWithoutItemsInput = { customer_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null consumer_account_id?: Prisma.StringFieldUpdateOperationsInput | string pos_id?: Prisma.StringFieldUpdateOperationsInput | string - fiscal?: Prisma.SaleInvoiceFiscalsUncheckedUpdateOneWithoutInvoiceNestedInput payments?: Prisma.SalesInvoicePaymentUncheckedUpdateManyWithoutInvoiceNestedInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUncheckedUpdateManyWithoutInvoiceNestedInput } -export type SalesInvoiceCreateWithoutFiscalInput = { +export type SalesInvoiceCreateWithoutTsp_attemptsInput = { id?: string code: string total_amount: runtime.Decimal | runtime.DecimalJsLike | number | string @@ -1025,7 +1025,7 @@ export type SalesInvoiceCreateWithoutFiscalInput = { payments?: Prisma.SalesInvoicePaymentCreateNestedManyWithoutInvoiceInput } -export type SalesInvoiceUncheckedCreateWithoutFiscalInput = { +export type SalesInvoiceUncheckedCreateWithoutTsp_attemptsInput = { id?: string code: string total_amount: runtime.Decimal | runtime.DecimalJsLike | number | string @@ -1042,23 +1042,23 @@ export type SalesInvoiceUncheckedCreateWithoutFiscalInput = { payments?: Prisma.SalesInvoicePaymentUncheckedCreateNestedManyWithoutInvoiceInput } -export type SalesInvoiceCreateOrConnectWithoutFiscalInput = { +export type SalesInvoiceCreateOrConnectWithoutTsp_attemptsInput = { where: Prisma.SalesInvoiceWhereUniqueInput - create: Prisma.XOR + create: Prisma.XOR } -export type SalesInvoiceUpsertWithoutFiscalInput = { - update: Prisma.XOR - create: Prisma.XOR +export type SalesInvoiceUpsertWithoutTsp_attemptsInput = { + update: Prisma.XOR + create: Prisma.XOR where?: Prisma.SalesInvoiceWhereInput } -export type SalesInvoiceUpdateToOneWithWhereWithoutFiscalInput = { +export type SalesInvoiceUpdateToOneWithWhereWithoutTsp_attemptsInput = { where?: Prisma.SalesInvoiceWhereInput - data: Prisma.XOR + data: Prisma.XOR } -export type SalesInvoiceUpdateWithoutFiscalInput = { +export type SalesInvoiceUpdateWithoutTsp_attemptsInput = { id?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string @@ -1075,7 +1075,7 @@ export type SalesInvoiceUpdateWithoutFiscalInput = { payments?: Prisma.SalesInvoicePaymentUpdateManyWithoutInvoiceNestedInput } -export type SalesInvoiceUncheckedUpdateWithoutFiscalInput = { +export type SalesInvoiceUncheckedUpdateWithoutTsp_attemptsInput = { id?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string total_amount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string @@ -1105,8 +1105,8 @@ export type SalesInvoiceCreateWithoutPaymentsInput = { customer?: Prisma.CustomerCreateNestedOneWithoutSales_invoicesInput consumer_account: Prisma.ConsumerAccountCreateNestedOneWithoutSales_invoicesInput pos: Prisma.PosCreateNestedOneWithoutSales_invoicesInput - fiscal?: Prisma.SaleInvoiceFiscalsCreateNestedOneWithoutInvoiceInput items?: Prisma.SalesInvoiceItemCreateNestedManyWithoutInvoiceInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsCreateNestedManyWithoutInvoiceInput } export type SalesInvoiceUncheckedCreateWithoutPaymentsInput = { @@ -1122,8 +1122,8 @@ export type SalesInvoiceUncheckedCreateWithoutPaymentsInput = { customer_id?: string | null consumer_account_id: string pos_id: string - fiscal?: Prisma.SaleInvoiceFiscalsUncheckedCreateNestedOneWithoutInvoiceInput items?: Prisma.SalesInvoiceItemUncheckedCreateNestedManyWithoutInvoiceInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUncheckedCreateNestedManyWithoutInvoiceInput } export type SalesInvoiceCreateOrConnectWithoutPaymentsInput = { @@ -1155,8 +1155,8 @@ export type SalesInvoiceUpdateWithoutPaymentsInput = { customer?: Prisma.CustomerUpdateOneWithoutSales_invoicesNestedInput consumer_account?: Prisma.ConsumerAccountUpdateOneRequiredWithoutSales_invoicesNestedInput pos?: Prisma.PosUpdateOneRequiredWithoutSales_invoicesNestedInput - fiscal?: Prisma.SaleInvoiceFiscalsUpdateOneWithoutInvoiceNestedInput items?: Prisma.SalesInvoiceItemUpdateManyWithoutInvoiceNestedInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUpdateManyWithoutInvoiceNestedInput } export type SalesInvoiceUncheckedUpdateWithoutPaymentsInput = { @@ -1172,8 +1172,8 @@ export type SalesInvoiceUncheckedUpdateWithoutPaymentsInput = { customer_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null consumer_account_id?: Prisma.StringFieldUpdateOperationsInput | string pos_id?: Prisma.StringFieldUpdateOperationsInput | string - fiscal?: Prisma.SaleInvoiceFiscalsUncheckedUpdateOneWithoutInvoiceNestedInput items?: Prisma.SalesInvoiceItemUncheckedUpdateManyWithoutInvoiceNestedInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUncheckedUpdateManyWithoutInvoiceNestedInput } export type SalesInvoiceCreateManyConsumer_accountInput = { @@ -1202,9 +1202,9 @@ export type SalesInvoiceUpdateWithoutConsumer_accountInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string customer?: Prisma.CustomerUpdateOneWithoutSales_invoicesNestedInput pos?: Prisma.PosUpdateOneRequiredWithoutSales_invoicesNestedInput - fiscal?: Prisma.SaleInvoiceFiscalsUpdateOneWithoutInvoiceNestedInput items?: Prisma.SalesInvoiceItemUpdateManyWithoutInvoiceNestedInput payments?: Prisma.SalesInvoicePaymentUpdateManyWithoutInvoiceNestedInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUpdateManyWithoutInvoiceNestedInput } export type SalesInvoiceUncheckedUpdateWithoutConsumer_accountInput = { @@ -1219,9 +1219,9 @@ export type SalesInvoiceUncheckedUpdateWithoutConsumer_accountInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string customer_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null pos_id?: Prisma.StringFieldUpdateOperationsInput | string - fiscal?: Prisma.SaleInvoiceFiscalsUncheckedUpdateOneWithoutInvoiceNestedInput items?: Prisma.SalesInvoiceItemUncheckedUpdateManyWithoutInvoiceNestedInput payments?: Prisma.SalesInvoicePaymentUncheckedUpdateManyWithoutInvoiceNestedInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUncheckedUpdateManyWithoutInvoiceNestedInput } export type SalesInvoiceUncheckedUpdateManyWithoutConsumer_accountInput = { @@ -1264,9 +1264,9 @@ export type SalesInvoiceUpdateWithoutPosInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string customer?: Prisma.CustomerUpdateOneWithoutSales_invoicesNestedInput consumer_account?: Prisma.ConsumerAccountUpdateOneRequiredWithoutSales_invoicesNestedInput - fiscal?: Prisma.SaleInvoiceFiscalsUpdateOneWithoutInvoiceNestedInput items?: Prisma.SalesInvoiceItemUpdateManyWithoutInvoiceNestedInput payments?: Prisma.SalesInvoicePaymentUpdateManyWithoutInvoiceNestedInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUpdateManyWithoutInvoiceNestedInput } export type SalesInvoiceUncheckedUpdateWithoutPosInput = { @@ -1281,9 +1281,9 @@ export type SalesInvoiceUncheckedUpdateWithoutPosInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string customer_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null consumer_account_id?: Prisma.StringFieldUpdateOperationsInput | string - fiscal?: Prisma.SaleInvoiceFiscalsUncheckedUpdateOneWithoutInvoiceNestedInput items?: Prisma.SalesInvoiceItemUncheckedUpdateManyWithoutInvoiceNestedInput payments?: Prisma.SalesInvoicePaymentUncheckedUpdateManyWithoutInvoiceNestedInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUncheckedUpdateManyWithoutInvoiceNestedInput } export type SalesInvoiceUncheckedUpdateManyWithoutPosInput = { @@ -1326,9 +1326,9 @@ export type SalesInvoiceUpdateWithoutCustomerInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string consumer_account?: Prisma.ConsumerAccountUpdateOneRequiredWithoutSales_invoicesNestedInput pos?: Prisma.PosUpdateOneRequiredWithoutSales_invoicesNestedInput - fiscal?: Prisma.SaleInvoiceFiscalsUpdateOneWithoutInvoiceNestedInput items?: Prisma.SalesInvoiceItemUpdateManyWithoutInvoiceNestedInput payments?: Prisma.SalesInvoicePaymentUpdateManyWithoutInvoiceNestedInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUpdateManyWithoutInvoiceNestedInput } export type SalesInvoiceUncheckedUpdateWithoutCustomerInput = { @@ -1343,9 +1343,9 @@ export type SalesInvoiceUncheckedUpdateWithoutCustomerInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string consumer_account_id?: Prisma.StringFieldUpdateOperationsInput | string pos_id?: Prisma.StringFieldUpdateOperationsInput | string - fiscal?: Prisma.SaleInvoiceFiscalsUncheckedUpdateOneWithoutInvoiceNestedInput items?: Prisma.SalesInvoiceItemUncheckedUpdateManyWithoutInvoiceNestedInput payments?: Prisma.SalesInvoicePaymentUncheckedUpdateManyWithoutInvoiceNestedInput + tsp_attempts?: Prisma.SaleInvoiceTspAttemptsUncheckedUpdateManyWithoutInvoiceNestedInput } export type SalesInvoiceUncheckedUpdateManyWithoutCustomerInput = { @@ -1370,11 +1370,13 @@ export type SalesInvoiceUncheckedUpdateManyWithoutCustomerInput = { export type SalesInvoiceCountOutputType = { items: number payments: number + tsp_attempts: number } export type SalesInvoiceCountOutputTypeSelect = { items?: boolean | SalesInvoiceCountOutputTypeCountItemsArgs payments?: boolean | SalesInvoiceCountOutputTypeCountPaymentsArgs + tsp_attempts?: boolean | SalesInvoiceCountOutputTypeCountTsp_attemptsArgs } /** @@ -1401,6 +1403,13 @@ export type SalesInvoiceCountOutputTypeCountPaymentsArgs = { + where?: Prisma.SaleInvoiceTspAttemptsWhereInput +} + export type SalesInvoiceSelect = runtime.Types.Extensions.GetSelect<{ id?: boolean @@ -1418,9 +1427,9 @@ export type SalesInvoiceSelect consumer_account?: boolean | Prisma.ConsumerAccountDefaultArgs pos?: boolean | Prisma.PosDefaultArgs - fiscal?: boolean | Prisma.SalesInvoice$fiscalArgs items?: boolean | Prisma.SalesInvoice$itemsArgs payments?: boolean | Prisma.SalesInvoice$paymentsArgs + tsp_attempts?: boolean | Prisma.SalesInvoice$tsp_attemptsArgs _count?: boolean | Prisma.SalesInvoiceCountOutputTypeDefaultArgs }, ExtArgs["result"]["salesInvoice"]> @@ -1446,9 +1455,9 @@ export type SalesInvoiceInclude consumer_account?: boolean | Prisma.ConsumerAccountDefaultArgs pos?: boolean | Prisma.PosDefaultArgs - fiscal?: boolean | Prisma.SalesInvoice$fiscalArgs items?: boolean | Prisma.SalesInvoice$itemsArgs payments?: boolean | Prisma.SalesInvoice$paymentsArgs + tsp_attempts?: boolean | Prisma.SalesInvoice$tsp_attemptsArgs _count?: boolean | Prisma.SalesInvoiceCountOutputTypeDefaultArgs } @@ -1458,9 +1467,9 @@ export type $SalesInvoicePayload | null consumer_account: Prisma.$ConsumerAccountPayload pos: Prisma.$PosPayload - fiscal: Prisma.$SaleInvoiceFiscalsPayload | null items: Prisma.$SalesInvoiceItemPayload[] payments: Prisma.$SalesInvoicePaymentPayload[] + tsp_attempts: Prisma.$SaleInvoiceTspAttemptsPayload[] } scalars: runtime.Types.Extensions.GetPayloadResult<{ id: string @@ -1818,9 +1827,9 @@ export interface Prisma__SalesInvoiceClient = {}>(args?: Prisma.Subset>): Prisma.Prisma__CustomerClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> consumer_account = {}>(args?: Prisma.Subset>): Prisma.Prisma__ConsumerAccountClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> pos = {}>(args?: Prisma.Subset>): Prisma.Prisma__PosClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> - fiscal = {}>(args?: Prisma.Subset>): Prisma.Prisma__SaleInvoiceFiscalsClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> items = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> payments = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + tsp_attempts = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> /** * Attaches callbacks for the resolution and/or rejection of the Promise. * @param onfulfilled The callback to execute when the Promise is resolved. @@ -2228,25 +2237,6 @@ export type SalesInvoice$customerArgs = { - /** - * Select specific fields to fetch from the SaleInvoiceFiscals - */ - select?: Prisma.SaleInvoiceFiscalsSelect | null - /** - * Omit specific fields from the SaleInvoiceFiscals - */ - omit?: Prisma.SaleInvoiceFiscalsOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.SaleInvoiceFiscalsInclude | null - where?: Prisma.SaleInvoiceFiscalsWhereInput -} - /** * SalesInvoice.items */ @@ -2295,6 +2285,30 @@ export type SalesInvoice$paymentsArgs = { + /** + * Select specific fields to fetch from the SaleInvoiceTspAttempts + */ + select?: Prisma.SaleInvoiceTspAttemptsSelect | null + /** + * Omit specific fields from the SaleInvoiceTspAttempts + */ + omit?: Prisma.SaleInvoiceTspAttemptsOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.SaleInvoiceTspAttemptsInclude | null + where?: Prisma.SaleInvoiceTspAttemptsWhereInput + orderBy?: Prisma.SaleInvoiceTspAttemptsOrderByWithRelationInput | Prisma.SaleInvoiceTspAttemptsOrderByWithRelationInput[] + cursor?: Prisma.SaleInvoiceTspAttemptsWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.SaleInvoiceTspAttemptsScalarFieldEnum | Prisma.SaleInvoiceTspAttemptsScalarFieldEnum[] +} + /** * SalesInvoice without action */ diff --git a/src/generated/prisma/models/SalesInvoiceItem.ts b/src/generated/prisma/models/SalesInvoiceItem.ts index 7c9a8a7..4d242e4 100644 --- a/src/generated/prisma/models/SalesInvoiceItem.ts +++ b/src/generated/prisma/models/SalesInvoiceItem.ts @@ -266,9 +266,9 @@ export type SalesInvoiceItemGroupByOutputType = { discount: runtime.Decimal notes: string | null payload: runtime.JsonValue | null - good_snapshot: runtime.JsonValue | null + good_snapshot: runtime.JsonValue invoice_id: string - good_id: string | null + good_id: string service_id: string | null _count: SalesInvoiceItemCountAggregateOutputType | null _avg: SalesInvoiceItemAvgAggregateOutputType | null @@ -308,12 +308,12 @@ export type SalesInvoiceItemWhereInput = { discount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null payload?: Prisma.JsonNullableFilter<"SalesInvoiceItem"> - good_snapshot?: Prisma.JsonNullableFilter<"SalesInvoiceItem"> + good_snapshot?: Prisma.JsonFilter<"SalesInvoiceItem"> invoice_id?: Prisma.StringFilter<"SalesInvoiceItem"> | string - good_id?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null + good_id?: Prisma.StringFilter<"SalesInvoiceItem"> | string service_id?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null invoice?: Prisma.XOR - good?: Prisma.XOR | null + good?: Prisma.XOR service?: Prisma.XOR | null } @@ -330,9 +330,9 @@ export type SalesInvoiceItemOrderByWithRelationInput = { discount?: Prisma.SortOrder notes?: Prisma.SortOrderInput | Prisma.SortOrder payload?: Prisma.SortOrderInput | Prisma.SortOrder - good_snapshot?: Prisma.SortOrderInput | Prisma.SortOrder + good_snapshot?: Prisma.SortOrder invoice_id?: Prisma.SortOrder - good_id?: Prisma.SortOrderInput | Prisma.SortOrder + good_id?: Prisma.SortOrder service_id?: Prisma.SortOrderInput | Prisma.SortOrder invoice?: Prisma.SalesInvoiceOrderByWithRelationInput good?: Prisma.GoodOrderByWithRelationInput @@ -356,12 +356,12 @@ export type SalesInvoiceItemWhereUniqueInput = Prisma.AtLeast<{ discount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null payload?: Prisma.JsonNullableFilter<"SalesInvoiceItem"> - good_snapshot?: Prisma.JsonNullableFilter<"SalesInvoiceItem"> + good_snapshot?: Prisma.JsonFilter<"SalesInvoiceItem"> invoice_id?: Prisma.StringFilter<"SalesInvoiceItem"> | string - good_id?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null + good_id?: Prisma.StringFilter<"SalesInvoiceItem"> | string service_id?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null invoice?: Prisma.XOR - good?: Prisma.XOR | null + good?: Prisma.XOR service?: Prisma.XOR | null }, "id"> @@ -378,9 +378,9 @@ export type SalesInvoiceItemOrderByWithAggregationInput = { discount?: Prisma.SortOrder notes?: Prisma.SortOrderInput | Prisma.SortOrder payload?: Prisma.SortOrderInput | Prisma.SortOrder - good_snapshot?: Prisma.SortOrderInput | Prisma.SortOrder + good_snapshot?: Prisma.SortOrder invoice_id?: Prisma.SortOrder - good_id?: Prisma.SortOrderInput | Prisma.SortOrder + good_id?: Prisma.SortOrder service_id?: Prisma.SortOrderInput | Prisma.SortOrder _count?: Prisma.SalesInvoiceItemCountOrderByAggregateInput _avg?: Prisma.SalesInvoiceItemAvgOrderByAggregateInput @@ -405,9 +405,9 @@ export type SalesInvoiceItemScalarWhereWithAggregatesInput = { discount?: Prisma.DecimalWithAggregatesFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.StringNullableWithAggregatesFilter<"SalesInvoiceItem"> | string | null payload?: Prisma.JsonNullableWithAggregatesFilter<"SalesInvoiceItem"> - good_snapshot?: Prisma.JsonNullableWithAggregatesFilter<"SalesInvoiceItem"> + good_snapshot?: Prisma.JsonWithAggregatesFilter<"SalesInvoiceItem"> invoice_id?: Prisma.StringWithAggregatesFilter<"SalesInvoiceItem"> | string - good_id?: Prisma.StringNullableWithAggregatesFilter<"SalesInvoiceItem"> | string | null + good_id?: Prisma.StringWithAggregatesFilter<"SalesInvoiceItem"> | string service_id?: Prisma.StringNullableWithAggregatesFilter<"SalesInvoiceItem"> | string | null } @@ -424,9 +424,9 @@ export type SalesInvoiceItemCreateInput = { discount?: runtime.Decimal | runtime.DecimalJsLike | number | string notes?: string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice: Prisma.SalesInvoiceCreateNestedOneWithoutItemsInput - good?: Prisma.GoodCreateNestedOneWithoutSales_invoice_itemsInput + good: Prisma.GoodCreateNestedOneWithoutSales_invoice_itemsInput service?: Prisma.ServiceCreateNestedOneWithoutSales_invoice_itemsInput } @@ -443,9 +443,9 @@ export type SalesInvoiceItemUncheckedCreateInput = { discount?: runtime.Decimal | runtime.DecimalJsLike | number | string notes?: string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice_id: string - good_id?: string | null + good_id: string service_id?: string | null } @@ -462,9 +462,9 @@ export type SalesInvoiceItemUpdateInput = { discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice?: Prisma.SalesInvoiceUpdateOneRequiredWithoutItemsNestedInput - good?: Prisma.GoodUpdateOneWithoutSales_invoice_itemsNestedInput + good?: Prisma.GoodUpdateOneRequiredWithoutSales_invoice_itemsNestedInput service?: Prisma.ServiceUpdateOneWithoutSales_invoice_itemsNestedInput } @@ -481,9 +481,9 @@ export type SalesInvoiceItemUncheckedUpdateInput = { discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice_id?: Prisma.StringFieldUpdateOperationsInput | string - good_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + good_id?: Prisma.StringFieldUpdateOperationsInput | string service_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null } @@ -500,9 +500,9 @@ export type SalesInvoiceItemCreateManyInput = { discount?: runtime.Decimal | runtime.DecimalJsLike | number | string notes?: string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice_id: string - good_id?: string | null + good_id: string service_id?: string | null } @@ -519,7 +519,7 @@ export type SalesInvoiceItemUpdateManyMutationInput = { discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue } export type SalesInvoiceItemUncheckedUpdateManyInput = { @@ -535,9 +535,9 @@ export type SalesInvoiceItemUncheckedUpdateManyInput = { discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice_id?: Prisma.StringFieldUpdateOperationsInput | string - good_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + good_id?: Prisma.StringFieldUpdateOperationsInput | string service_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null } @@ -765,7 +765,7 @@ export type SalesInvoiceItemCreateWithoutGoodInput = { discount?: runtime.Decimal | runtime.DecimalJsLike | number | string notes?: string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice: Prisma.SalesInvoiceCreateNestedOneWithoutItemsInput service?: Prisma.ServiceCreateNestedOneWithoutSales_invoice_itemsInput } @@ -783,7 +783,7 @@ export type SalesInvoiceItemUncheckedCreateWithoutGoodInput = { discount?: runtime.Decimal | runtime.DecimalJsLike | number | string notes?: string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice_id: string service_id?: string | null } @@ -830,9 +830,9 @@ export type SalesInvoiceItemScalarWhereInput = { discount?: Prisma.DecimalFilter<"SalesInvoiceItem"> | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null payload?: Prisma.JsonNullableFilter<"SalesInvoiceItem"> - good_snapshot?: Prisma.JsonNullableFilter<"SalesInvoiceItem"> + good_snapshot?: Prisma.JsonFilter<"SalesInvoiceItem"> invoice_id?: Prisma.StringFilter<"SalesInvoiceItem"> | string - good_id?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null + good_id?: Prisma.StringFilter<"SalesInvoiceItem"> | string service_id?: Prisma.StringNullableFilter<"SalesInvoiceItem"> | string | null } @@ -849,8 +849,8 @@ export type SalesInvoiceItemCreateWithoutInvoiceInput = { discount?: runtime.Decimal | runtime.DecimalJsLike | number | string notes?: string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good?: Prisma.GoodCreateNestedOneWithoutSales_invoice_itemsInput + good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue + good: Prisma.GoodCreateNestedOneWithoutSales_invoice_itemsInput service?: Prisma.ServiceCreateNestedOneWithoutSales_invoice_itemsInput } @@ -867,8 +867,8 @@ export type SalesInvoiceItemUncheckedCreateWithoutInvoiceInput = { discount?: runtime.Decimal | runtime.DecimalJsLike | number | string notes?: string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_id?: string | null + good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue + good_id: string service_id?: string | null } @@ -911,9 +911,9 @@ export type SalesInvoiceItemCreateWithoutServiceInput = { discount?: runtime.Decimal | runtime.DecimalJsLike | number | string notes?: string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice: Prisma.SalesInvoiceCreateNestedOneWithoutItemsInput - good?: Prisma.GoodCreateNestedOneWithoutSales_invoice_itemsInput + good: Prisma.GoodCreateNestedOneWithoutSales_invoice_itemsInput } export type SalesInvoiceItemUncheckedCreateWithoutServiceInput = { @@ -929,9 +929,9 @@ export type SalesInvoiceItemUncheckedCreateWithoutServiceInput = { discount?: runtime.Decimal | runtime.DecimalJsLike | number | string notes?: string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice_id: string - good_id?: string | null + good_id: string } export type SalesInvoiceItemCreateOrConnectWithoutServiceInput = { @@ -973,7 +973,7 @@ export type SalesInvoiceItemCreateManyGoodInput = { discount?: runtime.Decimal | runtime.DecimalJsLike | number | string notes?: string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice_id: string service_id?: string | null } @@ -991,7 +991,7 @@ export type SalesInvoiceItemUpdateWithoutGoodInput = { discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice?: Prisma.SalesInvoiceUpdateOneRequiredWithoutItemsNestedInput service?: Prisma.ServiceUpdateOneWithoutSales_invoice_itemsNestedInput } @@ -1009,7 +1009,7 @@ export type SalesInvoiceItemUncheckedUpdateWithoutGoodInput = { discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice_id?: Prisma.StringFieldUpdateOperationsInput | string service_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null } @@ -1027,7 +1027,7 @@ export type SalesInvoiceItemUncheckedUpdateManyWithoutGoodInput = { discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice_id?: Prisma.StringFieldUpdateOperationsInput | string service_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null } @@ -1045,8 +1045,8 @@ export type SalesInvoiceItemCreateManyInvoiceInput = { discount?: runtime.Decimal | runtime.DecimalJsLike | number | string notes?: string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_id?: string | null + good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue + good_id: string service_id?: string | null } @@ -1063,8 +1063,8 @@ export type SalesInvoiceItemUpdateWithoutInvoiceInput = { discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good?: Prisma.GoodUpdateOneWithoutSales_invoice_itemsNestedInput + good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue + good?: Prisma.GoodUpdateOneRequiredWithoutSales_invoice_itemsNestedInput service?: Prisma.ServiceUpdateOneWithoutSales_invoice_itemsNestedInput } @@ -1081,8 +1081,8 @@ export type SalesInvoiceItemUncheckedUpdateWithoutInvoiceInput = { discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue + good_id?: Prisma.StringFieldUpdateOperationsInput | string service_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null } @@ -1099,8 +1099,8 @@ export type SalesInvoiceItemUncheckedUpdateManyWithoutInvoiceInput = { discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue + good_id?: Prisma.StringFieldUpdateOperationsInput | string service_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null } @@ -1117,9 +1117,9 @@ export type SalesInvoiceItemCreateManyServiceInput = { discount?: runtime.Decimal | runtime.DecimalJsLike | number | string notes?: string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice_id: string - good_id?: string | null + good_id: string } export type SalesInvoiceItemUpdateWithoutServiceInput = { @@ -1135,9 +1135,9 @@ export type SalesInvoiceItemUpdateWithoutServiceInput = { discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice?: Prisma.SalesInvoiceUpdateOneRequiredWithoutItemsNestedInput - good?: Prisma.GoodUpdateOneWithoutSales_invoice_itemsNestedInput + good?: Prisma.GoodUpdateOneRequiredWithoutSales_invoice_itemsNestedInput } export type SalesInvoiceItemUncheckedUpdateWithoutServiceInput = { @@ -1153,9 +1153,9 @@ export type SalesInvoiceItemUncheckedUpdateWithoutServiceInput = { discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice_id?: Prisma.StringFieldUpdateOperationsInput | string - good_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + good_id?: Prisma.StringFieldUpdateOperationsInput | string } export type SalesInvoiceItemUncheckedUpdateManyWithoutServiceInput = { @@ -1171,9 +1171,9 @@ export type SalesInvoiceItemUncheckedUpdateManyWithoutServiceInput = { discount?: Prisma.DecimalFieldUpdateOperationsInput | runtime.Decimal | runtime.DecimalJsLike | number | string notes?: Prisma.NullableStringFieldUpdateOperationsInput | string | null payload?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - good_snapshot?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue + good_snapshot?: Prisma.JsonNullValueInput | runtime.InputJsonValue invoice_id?: Prisma.StringFieldUpdateOperationsInput | string - good_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + good_id?: Prisma.StringFieldUpdateOperationsInput | string } @@ -1196,7 +1196,7 @@ export type SalesInvoiceItemSelect - good?: boolean | Prisma.SalesInvoiceItem$goodArgs + good?: boolean | Prisma.GoodDefaultArgs service?: boolean | Prisma.SalesInvoiceItem$serviceArgs }, ExtArgs["result"]["salesInvoiceItem"]> @@ -1224,7 +1224,7 @@ export type SalesInvoiceItemSelectScalar = { export type SalesInvoiceItemOmit = runtime.Types.Extensions.GetOmit<"id" | "quantity" | "measure_unit_text" | "measure_unit_code" | "sku_code" | "sku_vat" | "unit_price" | "total_amount" | "created_at" | "discount" | "notes" | "payload" | "good_snapshot" | "invoice_id" | "good_id" | "service_id", ExtArgs["result"]["salesInvoiceItem"]> export type SalesInvoiceItemInclude = { invoice?: boolean | Prisma.SalesInvoiceDefaultArgs - good?: boolean | Prisma.SalesInvoiceItem$goodArgs + good?: boolean | Prisma.GoodDefaultArgs service?: boolean | Prisma.SalesInvoiceItem$serviceArgs } @@ -1232,7 +1232,7 @@ export type $SalesInvoiceItemPayload - good: Prisma.$GoodPayload | null + good: Prisma.$GoodPayload service: Prisma.$ServicePayload | null } scalars: runtime.Types.Extensions.GetPayloadResult<{ @@ -1248,9 +1248,9 @@ export type $SalesInvoiceItemPayload composites: {} @@ -1593,7 +1593,7 @@ readonly fields: SalesInvoiceItemFieldRefs; export interface Prisma__SalesInvoiceItemClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" invoice = {}>(args?: Prisma.Subset>): Prisma.Prisma__SalesInvoiceClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> - good = {}>(args?: Prisma.Subset>): Prisma.Prisma__GoodClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + good = {}>(args?: Prisma.Subset>): Prisma.Prisma__GoodClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> service = {}>(args?: Prisma.Subset>): Prisma.Prisma__ServiceClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> /** * Attaches callbacks for the resolution and/or rejection of the Promise. @@ -1987,25 +1987,6 @@ export type SalesInvoiceItemDeleteManyArgs = { - /** - * Select specific fields to fetch from the Good - */ - select?: Prisma.GoodSelect | null - /** - * Omit specific fields from the Good - */ - omit?: Prisma.GoodOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.GoodInclude | null - where?: Prisma.GoodWhereInput -} - /** * SalesInvoiceItem.service */ diff --git a/src/generated/prisma/models/StockKeepingUnits.ts b/src/generated/prisma/models/StockKeepingUnits.ts index ab43525..1fbcd40 100644 --- a/src/generated/prisma/models/StockKeepingUnits.ts +++ b/src/generated/prisma/models/StockKeepingUnits.ts @@ -318,7 +318,7 @@ export type StockKeepingUnitsCreateInput = { code: string name: string VAT: runtime.Decimal | runtime.DecimalJsLike | number | string - type?: $Enums.SKUGuildType + type: $Enums.SKUGuildType is_public?: boolean is_domestic?: boolean created_at?: Date | string @@ -331,7 +331,7 @@ export type StockKeepingUnitsUncheckedCreateInput = { code: string name: string VAT: runtime.Decimal | runtime.DecimalJsLike | number | string - type?: $Enums.SKUGuildType + type: $Enums.SKUGuildType is_public?: boolean is_domestic?: boolean created_at?: Date | string @@ -370,7 +370,7 @@ export type StockKeepingUnitsCreateManyInput = { code: string name: string VAT: runtime.Decimal | runtime.DecimalJsLike | number | string - type?: $Enums.SKUGuildType + type: $Enums.SKUGuildType is_public?: boolean is_domestic?: boolean created_at?: Date | string @@ -470,14 +470,6 @@ export type StockKeepingUnitsUpdateOneRequiredWithoutGoodsNestedInput = { update?: Prisma.XOR, Prisma.StockKeepingUnitsUncheckedUpdateWithoutGoodsInput> } -export type DecimalFieldUpdateOperationsInput = { - set?: runtime.Decimal | runtime.DecimalJsLike | number | string - increment?: runtime.Decimal | runtime.DecimalJsLike | number | string - decrement?: runtime.Decimal | runtime.DecimalJsLike | number | string - multiply?: runtime.Decimal | runtime.DecimalJsLike | number | string - divide?: runtime.Decimal | runtime.DecimalJsLike | number | string -} - export type EnumSKUGuildTypeFieldUpdateOperationsInput = { set?: $Enums.SKUGuildType } @@ -487,7 +479,7 @@ export type StockKeepingUnitsCreateWithoutGoodsInput = { code: string name: string VAT: runtime.Decimal | runtime.DecimalJsLike | number | string - type?: $Enums.SKUGuildType + type: $Enums.SKUGuildType is_public?: boolean is_domestic?: boolean created_at?: Date | string @@ -499,7 +491,7 @@ export type StockKeepingUnitsUncheckedCreateWithoutGoodsInput = { code: string name: string VAT: runtime.Decimal | runtime.DecimalJsLike | number | string - type?: $Enums.SKUGuildType + type: $Enums.SKUGuildType is_public?: boolean is_domestic?: boolean created_at?: Date | string diff --git a/src/modules/admin/guilds/dto/create-guild.dto.ts b/src/modules/admin/guilds/dto/create-guild.dto.ts index b4e9afd..d960569 100644 --- a/src/modules/admin/guilds/dto/create-guild.dto.ts +++ b/src/modules/admin/guilds/dto/create-guild.dto.ts @@ -1,10 +1,17 @@ -import { IsOptional, IsString } from 'class-validator' +import { InvoiceTemplateType } from '@/generated/prisma/enums' +import { ApiProperty } from '@nestjs/swagger' +import { IsEnum, IsString } from 'class-validator' export class CreateGuildDto { + @ApiProperty({ required: true }) @IsString() name: string - @IsOptional() + @ApiProperty({ required: true }) @IsString() - code?: string + code: string + + @ApiProperty({ required: true, enum: InvoiceTemplateType }) + @IsEnum(InvoiceTemplateType) + invoice_template: InvoiceTemplateType } diff --git a/src/modules/admin/partners/dto/partner.dto.ts b/src/modules/admin/partners/dto/partner.dto.ts index 6a93a38..08f4a32 100644 --- a/src/modules/admin/partners/dto/partner.dto.ts +++ b/src/modules/admin/partners/dto/partner.dto.ts @@ -1,4 +1,4 @@ -import { PartnerFiscalSwitchType, PartnerStatus } from '@/generated/prisma/enums' +import { PartnerStatus, TspProviderType } from '@/generated/prisma/enums' import { ApiProperty, PartialType } from '@nestjs/swagger' import { IsEnum, IsNumber, IsOptional, IsString } from 'class-validator' @@ -11,9 +11,9 @@ export class CreatePartnerDto { @ApiProperty({ required: true }) code: string - @IsEnum(PartnerFiscalSwitchType) - @ApiProperty({ required: true }) - fiscal_switch_type: PartnerFiscalSwitchType + @IsEnum(TspProviderType) + @ApiProperty({ required: true, enum: TspProviderType }) + tsp_provider: TspProviderType // @IsOptional() // @IsNumber() diff --git a/src/modules/admin/partners/partners.service.ts b/src/modules/admin/partners/partners.service.ts index aec4d90..01a1f12 100644 --- a/src/modules/admin/partners/partners.service.ts +++ b/src/modules/admin/partners/partners.service.ts @@ -27,7 +27,7 @@ export class PartnersService { code: true, status: true, logo_url: true, - fiscal_switch_type: true, + tsp_provider: true, created_at: true, license_charge_transactions: { select: { diff --git a/src/modules/consumer/business-activities/business-activities.service.ts b/src/modules/consumer/business-activities/business-activities.service.ts index 2147a69..d8664b5 100644 --- a/src/modules/consumer/business-activities/business-activities.service.ts +++ b/src/modules/consumer/business-activities/business-activities.service.ts @@ -12,6 +12,9 @@ export class BusinessActivitiesService { name: true, economic_code: true, created_at: true, + partner_token: true, + fiscal_id: true, + invoice_number_sequence: true, guild: { select: { id: true, diff --git a/src/modules/consumer/business-activities/dto/create-business-activities.dto.ts b/src/modules/consumer/business-activities/dto/create-business-activities.dto.ts index 952d921..c14ea23 100644 --- a/src/modules/consumer/business-activities/dto/create-business-activities.dto.ts +++ b/src/modules/consumer/business-activities/dto/create-business-activities.dto.ts @@ -1,10 +1,16 @@ import { ApiProperty, PartialType } from '@nestjs/swagger' -import { IsString } from 'class-validator' +import { IsNumber, IsString, Max, Min } from 'class-validator' export class CreateBusinessActivityDto { @IsString() @ApiProperty({ required: true }) name: string + + @ApiProperty({ required: false, default: '1' }) + @IsNumber() + @Min(0) + @Max(1_000_000_000) + invoice_number_sequence: number } export class UpdateBusinessActivityDto extends PartialType(CreateBusinessActivityDto) {} diff --git a/src/modules/consumer/saleInvoices/fiscal/sales-invoice-fiscal-switch.service.ts b/src/modules/consumer/saleInvoices/fiscal/sales-invoice-fiscal-switch.service.ts deleted file mode 100644 index cd5d1e5..0000000 --- a/src/modules/consumer/saleInvoices/fiscal/sales-invoice-fiscal-switch.service.ts +++ /dev/null @@ -1,60 +0,0 @@ -import { Injectable } from '@nestjs/common' -import { - TaxSwitchBulkSendResultDto as FiscalSwitchBulkSendResultDto, - TaxSwitchSendItemResultDto as FiscalSwitchSendItemResultDto, - TaxSwitchSendPayloadDto as FiscalSwitchSendPayloadDto, - TaxSwitchGetResultDto, -} from './dto/tax-switch.dto' -import { NamaTaxSwitchAdapter } from './switch/nama/nama-fiscal-switch.adapter' - -@Injectable() -export class SalesInvoiceFiscalSwitchService { - constructor(private readonly namaAdapter: NamaTaxSwitchAdapter) {} - - private resolveSwitch(providerCode?: string | null) { - const normalizedCode = providerCode?.trim().toUpperCase() || '' - - switch (normalizedCode) { - case 'NAMA': - default: - return this.namaAdapter - } - } - - async send( - payload: FiscalSwitchSendPayloadDto, - ): Promise { - const adapter = this.resolveSwitch(payload.provider_code) - return adapter.send(payload) - } - - async sendBulk( - payloads: FiscalSwitchSendPayloadDto[], - ): Promise { - const groupedByProvider = new Map() - - for (const payload of payloads) { - const key = payload.provider_code?.trim().toUpperCase() || 'NAMA' - const currentGroup = groupedByProvider.get(key) || [] - currentGroup.push(payload) - groupedByProvider.set(key, currentGroup) - } - - const result: FiscalSwitchBulkSendResultDto[] = [] - for (const [providerCode, groupedPayloads] of groupedByProvider.entries()) { - const adapter = this.resolveSwitch(providerCode) - const providerResult = await adapter.sendBulk(groupedPayloads) - result.push(...providerResult) - } - - return result - } - - async get( - providerCode: string | null | undefined, - taxId: string, - ): Promise { - const adapter = this.resolveSwitch(providerCode) - return adapter.get(taxId) - } -} diff --git a/src/modules/consumer/saleInvoices/fiscal/sales-invoice-fiscal.service.ts b/src/modules/consumer/saleInvoices/fiscal/sales-invoice-fiscal.service.ts deleted file mode 100644 index 8ccc4df..0000000 --- a/src/modules/consumer/saleInvoices/fiscal/sales-invoice-fiscal.service.ts +++ /dev/null @@ -1,372 +0,0 @@ -import { PrismaService } from '@/prisma/prisma.service' -import { Injectable, NotFoundException } from '@nestjs/common' -import { - FiscalInvoiceCustomerType, - FiscalRequestType, - Prisma, -} from 'generated/prisma/client' -import { - TaxSendStatus, - TaxSwitchGetResultDto, - TaxSwitchSendItemResultDto, - TaxSwitchSendPayloadDto, -} from './dto/tax-switch.dto' -import { SalesInvoiceFiscalSwitchService } from './sales-invoice-fiscal-switch.service' - -type TaxRow = { - id: string - retry_count: number -} - -type ItemTaxProviderRow = { - provider_code: string | null - tax_id: string | null -} - -@Injectable() -export class SalesInvoiceFiscalService { - constructor( - private readonly prisma: PrismaService, - private readonly taxSwitchService: SalesInvoiceFiscalSwitchService, - ) {} - - async send(consumer_id: string, invoice_id: string): Promise { - const posId = await this.getPosId(consumer_id, invoice_id) - const payload = await this.buildPayload(invoice_id, posId) - - const itemResults = await this.trySend(payload) - await this.persistAttemptResults(itemResults) - } - - async sendBulk(consumer_id: string, invoice_ids: string[]): Promise { - if (!invoice_ids.length) return - - const payloads: TaxSwitchSendPayloadDto[] = [] - for (const invoiceId of invoice_ids) { - const posId = await this.getPosId(consumer_id, invoiceId) - payloads.push(await this.buildPayload(invoiceId, posId)) - } - - const bulkResult = await this.taxSwitchService.sendBulk(payloads) - const allItemResults = bulkResult.flatMap(result => result.items) - await this.persistAttemptResults(allItemResults) - } - - async get(invoiceItemId: string, posId: string): Promise { - const rows = await this.prisma.$queryRaw(Prisma.sql` - SELECT p.code AS provider_code, t.tax_id AS tax_id - FROM sales_invoice_item_taxes t - INNER JOIN sales_invoice_items si ON si.id = t.invoice_item_id - INNER JOIN sales_invoices s ON s.id = si.invoice_id - INNER JOIN poses pz ON pz.id = s.pos_id - LEFT JOIN providers p ON p.id = pz.provider_id - WHERE t.invoice_item_id = ${invoiceItemId} AND s.pos_id = ${posId} - LIMIT 1 - `) - - if (!rows.length || !rows[0].tax_id) { - throw new NotFoundException('Tax id for this invoice item was not found.') - } - - return this.taxSwitchService.get(rows[0].provider_code, rows[0].tax_id) - } - - private async getPosId(consumer_id: string, invoice_id: string): Promise { - const now = new Date() - const saleInvoice = await this.prisma.salesInvoice.findUnique({ - where: { - id: invoice_id, - pos: { - complex: { - business_activity: { - consumer_id, - }, - }, - }, - }, - select: { - pos: { - select: { - id: true, - complex: { - select: { - business_activity: { - select: { - name: true, - license_activation: { - select: { - expires_at: true, - license_renews: { - select: { - expires_at: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }) - - if (!saleInvoice) { - throw new NotFoundException('متاسفانه فاکتور مورد نظر یافت نشد.') - } - - const { license_activation, name: businessName } = - saleInvoice.pos.complex.business_activity - let expired = !license_activation || false - if (license_activation) { - const { expires_at, license_renews } = license_activation - if (expires_at < now) { - for (const renew of license_renews) { - if (renew.expires_at > now) { - expired = false - break - } - } - } - } - if (expired) { - throw new NotFoundException(`متاسفانه مجوز ${businessName} منقضی شده است.`) - } - - return saleInvoice.pos.id - } - - private async buildPayload( - invoiceId: string, - posId: string, - ): Promise { - const invoice = await this.prisma.salesInvoice.findUnique({ - where: { - id: invoiceId, - pos_id: posId, - }, - select: { - id: true, - code: true, - total_amount: true, - invoice_date: true, - items: { - select: { - id: true, - quantity: true, - unit_price: true, - total_amount: true, - measure_unit_code: true, - measure_unit_text: true, - sku_code: true, - sku_vat: true, - good_id: true, - service_id: true, - payload: true, - good_snapshot: true, - }, - }, - pos: { - select: { - complex: { - select: { - business_activity: { - select: { - fiscal_id: true, - economic_code: true, - consumer: { - select: { - legal: { - select: { - partner: { - select: { - fiscal_switch_type: true, - }, - }, - }, - }, - individual: { - select: { - partner: { - select: { - fiscal_switch_type: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - customer: { - select: { - type: true, - individual: { - select: { - first_name: true, - last_name: true, - national_id: true, - mobile_number: true, - }, - }, - legal: { - select: { - name: true, - economic_code: true, - }, - }, - }, - }, - }, - }) - - if (!invoice) { - throw new NotFoundException('فاکتور مورد نظر یافت نشد.') - } - - const { partner } = (invoice.pos.complex.business_activity.consumer.legal || - invoice.pos.complex.business_activity.consumer.individual)! - - return { - invoice_id: invoice.id, - invoice_code: invoice.code, - invoice_date: invoice.invoice_date, - total_amount: Number(invoice.total_amount), - // provider_code: invoice.pos.provider?.code || null, - type: FiscalRequestType.MAIN, - provider_code: partner.fiscal_switch_type!, - customer_type: invoice.customer?.type - ? FiscalInvoiceCustomerType.Known - : FiscalInvoiceCustomerType.Unknown, - customer: invoice.customer?.type - ? { - type: invoice.customer.type, - legal_info: invoice.customer.legal ?? undefined, - individual_info: invoice.customer.individual ?? undefined, - } - : undefined, - items: invoice.items.map(item => ({ - invoice_item_id: item.id, - quantity: Number(item.quantity), - unit_price: Number(item.unit_price), - total_amount: Number(item.total_amount), - measure_unit: item.measure_unit_code, - sku: item.sku_code, - sku_vat: String(item.sku_vat), - discount: String((item.payload as Record)?.discount || '0'), - good_id: item.good_id, - service_id: item.service_id, - payload: item.payload, - good_snapshot: item.good_snapshot, - })), - } - } - - private async trySend( - payload: TaxSwitchSendPayloadDto, - ): Promise { - try { - return await this.taxSwitchService.send(payload) - } catch (error: any) { - const message = error?.message || 'Unexpected tax switch error.' - const now = new Date() - return payload.items.map(item => ({ - invoice_item_id: item.invoice_item_id, - status: TaxSendStatus.FAILED, - error_message: message, - sent_at: now.toISOString(), - received_at: now.toISOString(), - })) - } - } - - private async persistAttemptResults( - itemResults: TaxSwitchSendItemResultDto[], - ): Promise { - if (!itemResults.length) return - - await this.prisma.$transaction(async $tx => { - for (const itemResult of itemResults) { - await $tx.$executeRaw(Prisma.sql` - INSERT INTO sales_invoice_item_taxes ( - id, - tax_id, - status, - retry_count, - last_attempt_at, - created_at, - updated_at, - invoice_item_id - ) VALUES ( - UUID(), - ${itemResult.tax_id || null}, - ${itemResult.status}, - 0, - ${itemResult.sent_at || new Date()}, - NOW(), - NOW(), - ${itemResult.invoice_item_id} - ) - ON DUPLICATE KEY UPDATE - updated_at = NOW() - `) - - const rows = await $tx.$queryRaw(Prisma.sql` - SELECT id, retry_count - FROM sales_invoice_item_taxes - WHERE invoice_item_id = ${itemResult.invoice_item_id} - LIMIT 1 - `) - - if (!rows.length) continue - - const itemTaxRow = rows[0] - const attemptNo = Number(itemTaxRow.retry_count || 0) + 1 - - await $tx.$executeRaw(Prisma.sql` - INSERT INTO sales_invoice_item_tax_attempts ( - id, - attempt_no, - status, - tax_id, - request_payload, - response_payload, - error_message, - sent_at, - received_at, - created_at, - item_tax_id - ) VALUES ( - UUID(), - ${attemptNo}, - ${itemResult.status}, - ${itemResult.tax_id || null}, - ${JSON.stringify(itemResult.request_payload ?? null)}, - ${JSON.stringify(itemResult.response_payload ?? null)}, - ${itemResult.error_message || null}, - ${itemResult.sent_at ? new Date(itemResult.sent_at) : new Date()}, - ${itemResult.received_at ? new Date(itemResult.received_at) : new Date()}, - NOW(), - ${itemTaxRow.id} - ) - `) - - await $tx.$executeRaw(Prisma.sql` - UPDATE sales_invoice_item_taxes - SET - tax_id = COALESCE(${itemResult.tax_id || null}, tax_id), - status = ${itemResult.status}, - retry_count = ${attemptNo}, - last_attempt_at = ${itemResult.sent_at ? new Date(itemResult.sent_at) : new Date()}, - updated_at = NOW() - WHERE id = ${itemTaxRow.id} - `) - } - }) - } -} diff --git a/src/modules/consumer/saleInvoices/fiscal/switch/nama/nama-fiscal-switch.adapter.ts b/src/modules/consumer/saleInvoices/fiscal/switch/nama/nama-fiscal-switch.adapter.ts deleted file mode 100644 index 76628c1..0000000 --- a/src/modules/consumer/saleInvoices/fiscal/switch/nama/nama-fiscal-switch.adapter.ts +++ /dev/null @@ -1,198 +0,0 @@ -import { - CustomerType, - FiscalInvoiceCustomerType, - FiscalRequestType, -} from '@/generated/prisma/enums' -import { Injectable } from '@nestjs/common' -import { - ITaxSwitchAdapter, - TaxSendStatus, - TaxSwitchBulkSendResultDto, - TaxSwitchGetResultDto, - TaxSwitchSendItemResultDto, - TaxSwitchSendPayloadDto, -} from '../../dto/tax-switch.dto' -import { - NamaTaxGetResponseDto, - NamaTaxRequestDto, - NamaTaxSendItemResponseDto, -} from './nama-fiscal-switch.dto' - -@Injectable() -export class NamaTaxSwitchAdapter implements ITaxSwitchAdapter { - readonly code = 'NAMA' - private readonly sandboxBaseUrl = - process.env.NAMA_FISCAL_SANDBOX_URL || 'https://sandbox-api.nama.ir' - private readonly productionBaseUrl = - process.env.NAMA_FISCAL_PRODUCTION_URL || 'https://api.nama.ir' - - private readonly sendPath = '/api/v1/fiscal/invoices/single-send' - private readonly sendBulkPath = '/api/v1/invoices' - private readonly checkStatus = '/api/v1/invoices/check-by-uuids' - private readonly checkBulkStatus = '/api/v1/invoices/check-by-uuids' - private readonly getPath = '/api/v1/fiscal/invoices/' - - private get baseUrl() { - return process.env.NODE_ENV === 'production' - ? this.productionBaseUrl - : this.sandboxBaseUrl - } - - private buildSendUrl() { - return `${this.baseUrl}${this.sendPath}` - } - - private buildGetUrl(taxId: string) { - return `${this.baseUrl}${this.getPath}/${taxId}` - } - - async send(payload: TaxSwitchSendPayloadDto): Promise { - const mappedRequest = this.mapToNamaRequestDto(payload) - - return payload.items.map((item, index) => { - const sentAt = new Date() - const receivedAt = new Date(sentAt.getTime() + 50) - - const providerResponse: NamaTaxSendItemResponseDto = { - invoice_item_id: item.invoice_item_id, - status: TaxSendStatus.SENT, - tax_id: `TAX-${payload.invoice_code}-${index + 1}`, - request_payload: { - url: this.buildSendUrl(), - body: mappedRequest, - }, - response_payload: { - provider: this.code, - env: process.env.NODE_ENV || 'development', - endpoint: this.buildSendUrl(), - status: 'ACCEPTED', - }, - sent_at: sentAt.toISOString(), - received_at: receivedAt.toISOString(), - } - - return { - invoice_item_id: providerResponse.invoice_item_id, - status: providerResponse.status, - tax_id: providerResponse.tax_id, - request_payload: providerResponse.request_payload, - response_payload: providerResponse.response_payload, - error_message: providerResponse.error_message, - sent_at: providerResponse.sent_at, - received_at: providerResponse.received_at, - } - }) - } - - async sendBulk( - payloads: TaxSwitchSendPayloadDto[], - ): Promise { - const result: TaxSwitchBulkSendResultDto[] = [] - for (const payload of payloads) { - const itemResults = await this.send(payload) - result.push({ - invoice_id: payload.invoice_id, - items: itemResults, - }) - } - return result - } - - async get(taxId: string): Promise { - const providerResponse: NamaTaxGetResponseDto = { - tax_id: taxId, - status: TaxSendStatus.SENT, - response_payload: { - provider: this.code, - env: process.env.NODE_ENV || 'development', - endpoint: this.buildGetUrl(taxId), - status: 'CONFIRMED', - tracking_code: taxId, - }, - received_at: new Date().toISOString(), - } - - return { - tax_id: providerResponse.tax_id, - status: providerResponse.status, - response_payload: providerResponse.response_payload, - received_at: providerResponse.received_at, - } - } - - private mapToNamaRequestDto(payload: TaxSwitchSendPayloadDto): NamaTaxRequestDto { - return { - uuid: payload.invoice_id, - economic_code: '', - fiscal_id: '', - payment: [], - header: { - ins: this.mapFiscalRequestType(payload.type), - inp: '2', - inty: this.mapFiscalInvoiceCustomerType(payload.customer_type), - // unique_tax_code: payload.invoice_code, - inno: payload.invoice_code, - tins: '', - indatim: payload.invoice_date.getTime() + '', - name: - `${payload.customer?.individual_info?.first_name} ${payload.customer?.individual_info?.last_name}` || - payload.customer?.legal_info?.name || - '', - tob: this.mapCustomerType(payload.customer?.type), - address: '', - mobile: payload.customer?.individual_info?.mobile_number || '', - bid: - payload.customer?.individual_info?.national_id || - payload.customer?.legal_info?.economic_code || - '', - }, - body: payload.items.map(item => ({ - sstid: item.sku, - vra: item.sku_vat, - // sstt: item.unit_type, - fee: String(item.unit_price), - dis: String(item.discount), - mu: item.measure_unit, - am: String(item.quantity), - consfee: '0', - bros: '0', - spro: '0', - })), - } - } - - private mapFiscalRequestType(type: FiscalRequestType) { - switch (type) { - case FiscalRequestType.MAIN: - return '1' - case FiscalRequestType.UPDATE: - return '2' - case FiscalRequestType.REVOKE: - return '3' - case FiscalRequestType.REMOVE: - return '4' - } - } - - private mapFiscalInvoiceCustomerType(type?: FiscalInvoiceCustomerType) { - switch (type) { - case FiscalInvoiceCustomerType.Unknown: - return '1' - case FiscalInvoiceCustomerType.Known: - return '2' - default: - return '3' - } - } - - private mapCustomerType(type?: CustomerType) { - switch (type) { - case CustomerType.INDIVIDUAL: - return '1' - case CustomerType.LEGAL: - return '2' - default: - return '' - } - } -} diff --git a/src/modules/consumer/saleInvoices/fiscal/switch/nama/nama-fiscal-switch.dto.ts b/src/modules/consumer/saleInvoices/fiscal/switch/nama/nama-fiscal-switch.dto.ts deleted file mode 100644 index 5bb375e..0000000 --- a/src/modules/consumer/saleInvoices/fiscal/switch/nama/nama-fiscal-switch.dto.ts +++ /dev/null @@ -1,194 +0,0 @@ -import { ApiProperty } from '@nestjs/swagger' -import { Type } from 'class-transformer' -import { - IsArray, - IsEnum, - IsObject, - IsOptional, - IsString, - ValidateNested, -} from 'class-validator' -import { TaxSendStatus } from '../../dto/tax-switch.dto' - -export class NamaTaxBodyItemDto { - @ApiProperty() - @IsString() - sstid: string - - @ApiProperty() - @IsString() - vra: string - - // @ApiProperty() - // @IsString() - // sstt: string - - @ApiProperty() - @IsString() - fee: string - - @ApiProperty() - @IsString() - dis: string - - @ApiProperty() - @IsString() - mu: string - - @ApiProperty() - @IsString() - am: string - - @ApiProperty() - @IsString() - consfee: string - - @ApiProperty() - @IsString() - bros: string - - @ApiProperty() - @IsString() - spro: string -} - -export class NamaTaxHeaderDto { - @ApiProperty({ required: true }) - @IsString() - ins: string - - @ApiProperty() - @IsString() - inp: string - - @ApiProperty({ required: true }) - @IsString() - inty: string - - // @ApiProperty({required: true}) - // @IsString() - // unique_tax_code: string - - @ApiProperty({ required: true }) - @IsString() - inno: string - - @ApiProperty({ required: true }) - @IsString() - tins: string - - @ApiProperty({ required: true }) - @IsString() - indatim: string - - @ApiProperty({ required: true }) - @IsString() - name: string - - @ApiProperty({ required: true }) - @IsString() - tob: string - - @ApiProperty() - @IsOptional() - @IsString() - address?: string - - @ApiProperty() - @IsOptional() - @IsString() - mobile?: string - - @ApiProperty() - @IsString() - bid: string -} - -export class NamaTaxRequestDto { - @ApiProperty({ type: [NamaTaxBodyItemDto] }) - @IsArray() - @ValidateNested({ each: true }) - @Type(() => NamaTaxBodyItemDto) - body: NamaTaxBodyItemDto[] - - @ApiProperty({ type: [Object] }) - @IsArray() - payment: unknown[] - - @ApiProperty({ type: NamaTaxHeaderDto }) - @ValidateNested() - @Type(() => NamaTaxHeaderDto) - header: NamaTaxHeaderDto - - @ApiProperty() - @IsString() - uuid: string - - @ApiProperty() - @IsString() - economic_code: string - - @ApiProperty() - @IsString() - fiscal_id: string -} - -export class NamaTaxSendItemResponseDto { - @ApiProperty() - @IsString() - invoice_item_id: string - - @ApiProperty({ enum: TaxSendStatus }) - @IsEnum(TaxSendStatus) - status: TaxSendStatus - - @ApiProperty({ required: false, nullable: true }) - @IsOptional() - @IsString() - tax_id?: string | null - - @ApiProperty({ required: false, nullable: true, type: Object }) - @IsOptional() - @IsObject() - request_payload?: unknown - - @ApiProperty({ required: false, nullable: true, type: Object }) - @IsOptional() - @IsObject() - response_payload?: unknown - - @ApiProperty({ required: false, nullable: true }) - @IsOptional() - @IsString() - error_message?: string | null - - @ApiProperty({ required: false, nullable: true }) - @IsOptional() - @IsString() - sent_at?: string | null - - @ApiProperty({ required: false, nullable: true }) - @IsOptional() - @IsString() - received_at?: string | null -} - -export class NamaTaxGetResponseDto { - @ApiProperty() - @IsString() - tax_id: string - - @ApiProperty({ enum: TaxSendStatus }) - @IsEnum(TaxSendStatus) - status: TaxSendStatus - - @ApiProperty({ required: false, nullable: true, type: Object }) - @IsOptional() - @IsObject() - response_payload?: unknown - - @ApiProperty({ required: false, nullable: true }) - @IsOptional() - @IsString() - received_at?: string | null -} diff --git a/src/modules/consumer/saleInvoices/saleInvoices.module.ts b/src/modules/consumer/saleInvoices/saleInvoices.module.ts index f6ad707..93e7f19 100644 --- a/src/modules/consumer/saleInvoices/saleInvoices.module.ts +++ b/src/modules/consumer/saleInvoices/saleInvoices.module.ts @@ -1,8 +1,9 @@ import { PrismaModule } from '@/prisma/prisma.module' import { Module } from '@nestjs/common' -import { SalesInvoiceFiscalSwitchService } from './fiscal/sales-invoice-fiscal-switch.service' -import { SalesInvoiceFiscalService } from './fiscal/sales-invoice-fiscal.service' -import { NamaTaxSwitchAdapter } from './fiscal/switch/nama/nama-fiscal-switch.adapter' +import { HttpClientUtil } from '../../../common/utils/http-client.util' +import { SalesInvoiceTspSwitchService } from '../../tspProviders/sales-invoice-tsp-switch.service' +import { SalesInvoiceTspService } from '../../tspProviders/sales-invoice-tsp.service' +import { NamaProviderSwitchAdapter } from '../../tspProviders/switch/nama/nama-provider.adapter' import { StatisticsController } from './saleInvoices.controller' import { SaleInvoicesService } from './saleInvoices.service' @@ -11,9 +12,10 @@ import { SaleInvoicesService } from './saleInvoices.service' controllers: [StatisticsController], providers: [ SaleInvoicesService, - SalesInvoiceFiscalService, - SalesInvoiceFiscalSwitchService, - NamaTaxSwitchAdapter, + HttpClientUtil, + SalesInvoiceTspService, + SalesInvoiceTspSwitchService, + NamaProviderSwitchAdapter, ], exports: [SaleInvoicesService], }) diff --git a/src/modules/consumer/saleInvoices/saleInvoices.service.ts b/src/modules/consumer/saleInvoices/saleInvoices.service.ts index 34b0264..c0e5ad6 100644 --- a/src/modules/consumer/saleInvoices/saleInvoices.service.ts +++ b/src/modules/consumer/saleInvoices/saleInvoices.service.ts @@ -1,18 +1,20 @@ +import { translateEnumValue } from '@/common/utils' +import { TspProviderResponseStatus } from '@/generated/prisma/enums' import { SalesInvoiceSelect, SalesInvoiceWhereInput, SalesInvoiceWhereUniqueInput, } from '@/generated/prisma/models' import { PrismaService } from '@/prisma/prisma.service' -import { BadRequestException, Injectable } from '@nestjs/common' +import { BadRequestException, Injectable, NotFoundException } from '@nestjs/common' import { ResponseMapper } from 'common/response/response-mapper' -import { SalesInvoiceFiscalService } from './fiscal/sales-invoice-fiscal.service' +import { SalesInvoiceTspService } from '../../tspProviders/sales-invoice-tsp.service' @Injectable() export class SaleInvoicesService { constructor( private readonly prisma: PrismaService, - private salesInvoiceTaxService: SalesInvoiceFiscalService, + private salesInvoiceTaxService: SalesInvoiceTspService, ) {} private readonly defaultSelect: SalesInvoiceSelect = { @@ -49,23 +51,31 @@ export class SaleInvoicesService { }, }, }, - fiscal: { + + tsp_attempts: { + orderBy: { + created_at: 'asc', + }, + take: 1, select: { id: true, - attempts: { - orderBy: { - created_at: 'asc', - }, - take: 1, - select: { - id: true, - status: true, - }, - }, + status: true, }, }, } + private readonly invoiceMapper = (invoice: any) => { + const { tsp_attempts, ...rest } = invoice || {} + + return { + ...rest, + status: translateEnumValue( + 'TspProviderResponseStatus', + invoice.tsp_attempts?.[0]?.status || TspProviderResponseStatus.NOT_SEND, + ), + } + } + async findAll(consumer_id: string, page = 1, perPage = 10) { const invoicesWhere: SalesInvoiceWhereInput = { consumer_account: { @@ -81,7 +91,9 @@ export class SaleInvoicesService { }), await tx.salesInvoice.count({ where: invoicesWhere }), ]) - return ResponseMapper.paginate(invoices, { page, perPage, total }) + + const mappedInvoices = invoices.map(this.invoiceMapper) + return ResponseMapper.paginate(mappedInvoices, { page, perPage, total }) } async findOne(consumer_id: string, id: string) { @@ -161,15 +173,21 @@ export class SaleInvoicesService { unknown_customer: true, }, }) - return ResponseMapper.single(invoice) + + if (invoice) { + return ResponseMapper.single(this.invoiceMapper(invoice)) + } + throw new NotFoundException('فاکتور مورد نظر شما یافت نشد.') } async send(consumer_id: string, invoice_id: string) { - await this.salesInvoiceTaxService.send(consumer_id, invoice_id) + const tspProviderResult = await this.salesInvoiceTaxService.send( + consumer_id, + invoice_id, + ) return ResponseMapper.single({ - invoice_id, - sent_to_tax: true, + ...tspProviderResult, }) } diff --git a/src/modules/enums/enums.controller.ts b/src/modules/enums/enums.controller.ts index 38721e0..0f231cc 100644 --- a/src/modules/enums/enums.controller.ts +++ b/src/modules/enums/enums.controller.ts @@ -109,9 +109,9 @@ export class EnumsController { return this.enumsService.getEnumValues('ConsumerRole') } - @Get('fiscal_response_status') + @Get('tsp_provider_response_status') @PublicWithToken() - async getFiscalResponseStatus(): Promise { - return this.enumsService.getEnumValues('FiscalResponseStatus') + async getTspProviderResponseStatus(): Promise { + return this.enumsService.getEnumValues('TspProviderResponseStatus') } } diff --git a/src/modules/enums/enums.service.ts b/src/modules/enums/enums.service.ts index 98952e5..e14aa66 100644 --- a/src/modules/enums/enums.service.ts +++ b/src/modules/enums/enums.service.ts @@ -13,13 +13,9 @@ import { ConsumerStatus, ConsumerType, CustomerType, - FiscalInvoiceCustomerType, - FiscalRequestType, - FiscalResponseStatus, GoodPricingModel, LicenseStatus, LicenseType, - PartnerFiscalSwitchType, PartnerRole, PartnerStatus, PaymentMethodType, @@ -30,6 +26,10 @@ import { ProviderStatus, SKUGuildType, TokenType, + TspProviderCustomerType, + TspProviderRequestType, + TspProviderResponseStatus, + TspProviderType, UnitType, UserStatus, UserType, @@ -79,10 +79,7 @@ export class EnumsService { ConsumerStatus: this.prepareData(ConsumerStatus, 'ConsumerStatus'), ConsumerType: this.prepareData(ConsumerType, 'ConsumerType'), PartnerStatus: this.prepareData(PartnerStatus, 'PartnerStatus'), - PartnerFiscalSwitchType: this.prepareData( - PartnerFiscalSwitchType, - 'PartnerFiscalSwitchType', - ), + TspProviderType: this.prepareData(TspProviderType, 'TspProviderType'), ApplicationPlatform: this.prepareData(ApplicationPlatform, 'ApplicationPlatform'), ApplicationReleaseType: this.prepareData( ApplicationReleaseType, @@ -93,14 +90,17 @@ export class EnumsService { 'ApplicationPublisher', ), CustomerType: this.prepareData(CustomerType, 'CustomerType'), - FiscalResponseStatus: this.prepareData( - FiscalResponseStatus, - 'FiscalResponseStatus', + TspProviderResponseStatus: this.prepareData( + TspProviderResponseStatus, + 'TspProviderResponseStatus', ), - FiscalRequestType: this.prepareData(FiscalRequestType, 'FiscalRequestType'), - FiscalInvoiceCustomerType: this.prepareData( - FiscalInvoiceCustomerType, - 'FiscalInvoiceCustomerType', + TspProviderRequestType: this.prepareData( + TspProviderRequestType, + 'TspProviderRequestType', + ), + TspProviderCustomerType: this.prepareData( + TspProviderCustomerType, + 'TspProviderCustomerType', ), SKUGuildType: this.prepareData(SKUGuildType, 'SKUGuildType'), } diff --git a/src/modules/pos/sales-invoices/dto/create-sales-invoice.dto.ts b/src/modules/pos/sales-invoices/dto/create-sales-invoice.dto.ts index 27a8ffa..dbc74e6 100644 --- a/src/modules/pos/sales-invoices/dto/create-sales-invoice.dto.ts +++ b/src/modules/pos/sales-invoices/dto/create-sales-invoice.dto.ts @@ -136,7 +136,7 @@ export class CreateSalesInvoiceDto { @ApiProperty({ required: false, default: false }) @IsOptional() @IsBoolean() - send_to_tax?: boolean + send_to_tsp?: boolean @ApiProperty({ required: true, default: CustomerType.UNKNOWN }) @IsEnum(CustomerType) diff --git a/src/modules/pos/sales-invoices/dto/sales-invoices-filter.dto.ts b/src/modules/pos/sales-invoices/dto/sales-invoices-filter.dto.ts index 1f5869c..2b75bd0 100644 --- a/src/modules/pos/sales-invoices/dto/sales-invoices-filter.dto.ts +++ b/src/modules/pos/sales-invoices/dto/sales-invoices-filter.dto.ts @@ -8,7 +8,7 @@ import { IsString, Min, } from 'class-validator' -import { FiscalResponseStatus } from 'generated/prisma/enums' +import { TspProviderResponseStatus } from 'generated/prisma/enums' export class SalesInvoicesFilterDto { @ApiPropertyOptional({ default: 1 }) @@ -70,10 +70,10 @@ export class SalesInvoicesFilterDto { @IsString() customer_economic_code?: string - @ApiPropertyOptional({ enum: FiscalResponseStatus }) + @ApiPropertyOptional({ enum: TspProviderResponseStatus }) @IsOptional() - @IsEnum(FiscalResponseStatus) - status?: FiscalResponseStatus + @IsEnum(TspProviderResponseStatus) + status?: TspProviderResponseStatus @ApiPropertyOptional() @IsOptional() diff --git a/src/modules/pos/sales-invoices/fiscal/sales-invoice-fiscal.controller.ts b/src/modules/pos/sales-invoices/fiscal/sales-invoice-fiscal.controller.ts deleted file mode 100644 index 28ef469..0000000 --- a/src/modules/pos/sales-invoices/fiscal/sales-invoice-fiscal.controller.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { PosInfo } from '@/common/decorators/posInfo.decorator' -import type { IPosPayload } from '@/common/models/posPayload.model' -import { Controller, Get, Param, Post } from '@nestjs/common' -import { PosSalesInvoiceFiscalService } from './sales-invoice-fiscal.service' - -@Controller('pos/sales_invoices/:invoiceId/fiscal') -export class PosSalesInvoiceFiscalController { - constructor(private readonly service: PosSalesInvoiceFiscalService) {} - - @Post('send') - async send(@PosInfo() posInfo: IPosPayload, @Param('invoiceId') invoiceId: string) { - return this.service.send(invoiceId, posInfo) - } - - @Post('retry') - async retry(@PosInfo() posInfo: IPosPayload, @Param('invoiceId') invoiceId: string) { - return this.service.retry(invoiceId, posInfo) - } - - @Get('status') - async getStatus( - @PosInfo() posInfo: IPosPayload, - @Param('invoiceId') invoiceId: string, - ) { - return this.service.getStatus(invoiceId, posInfo) - } - - @Post('status/refresh') - async refreshStatus( - @PosInfo() posInfo: IPosPayload, - @Param('invoiceId') invoiceId: string, - ) { - return this.service.refreshStatus(invoiceId, posInfo) - } - - @Get('attempts') - async getAttempts( - @PosInfo() posInfo: IPosPayload, - @Param('invoiceId') invoiceId: string, - ) { - return this.service.getAttempts(invoiceId, posInfo) - } -} diff --git a/src/modules/pos/sales-invoices/fiscal/sales-invoice-fiscal.module.ts b/src/modules/pos/sales-invoices/fiscal/sales-invoice-fiscal.module.ts deleted file mode 100644 index f8b1381..0000000 --- a/src/modules/pos/sales-invoices/fiscal/sales-invoice-fiscal.module.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { Module } from '@nestjs/common' -import { SalesInvoiceFiscalSwitchService } from '../../../consumer/saleInvoices/fiscal/sales-invoice-fiscal-switch.service' -import { NamaTaxSwitchAdapter } from '../../../consumer/saleInvoices/fiscal/switch/nama/nama-fiscal-switch.adapter' -import { PosSalesInvoiceFiscalController } from './sales-invoice-fiscal.controller' -import { PosSalesInvoiceFiscalService } from './sales-invoice-fiscal.service' - -@Module({ - controllers: [PosSalesInvoiceFiscalController], - providers: [PosSalesInvoiceFiscalService, SalesInvoiceFiscalSwitchService, NamaTaxSwitchAdapter], - exports: [PosSalesInvoiceFiscalService], -}) -export class PosSalesInvoiceFiscalModule {} diff --git a/src/modules/pos/sales-invoices/fiscal/sales-invoice-fiscal.service.ts b/src/modules/pos/sales-invoices/fiscal/sales-invoice-fiscal.service.ts deleted file mode 100644 index cd3fdbf..0000000 --- a/src/modules/pos/sales-invoices/fiscal/sales-invoice-fiscal.service.ts +++ /dev/null @@ -1,411 +0,0 @@ -import { IPosPayload } from '@/common/models/posPayload.model' -import { PrismaService } from '@/prisma/prisma.service' -import { Injectable, NotFoundException } from '@nestjs/common' -import { - FiscalInvoiceCustomerType, - FiscalRequestType, - FiscalResponseStatus, -} from 'generated/prisma/enums' -import { - TaxSendStatus, - TaxSwitchGetResultDto, - TaxSwitchSendItemResultDto, - TaxSwitchSendPayloadDto, -} from '../../../consumer/saleInvoices/fiscal/dto/tax-switch.dto' -import { SalesInvoiceFiscalSwitchService } from '../../../consumer/saleInvoices/fiscal/sales-invoice-fiscal-switch.service' - -@Injectable() -export class PosSalesInvoiceFiscalService { - constructor( - private readonly prisma: PrismaService, - private readonly fiscalSwitchService: SalesInvoiceFiscalSwitchService, - ) {} - - async send(invoiceId: string, posInfo: IPosPayload) { - const payload = await this.buildPayload(invoiceId, posInfo) - const itemResults = await this.safeSend(payload) - const attempt = await this.persistAttempt(invoiceId, itemResults) - - return { - invoice_id: invoiceId, - fiscal_id: attempt.fiscal_id, - status: attempt.status, - attempt_no: attempt.attempt_no, - } - } - - async retry(invoiceId: string, posInfo: IPosPayload) { - return this.send(invoiceId, posInfo) - } - - async getStatus(invoiceId: string, posInfo: IPosPayload) { - const invoice = await this.getInvoiceForBusiness(invoiceId, posInfo.business_id) - if (!invoice.fiscal) { - return { - invoice_id: invoiceId, - status: FiscalResponseStatus.NOT_SEND, - fiscal: null, - } - } - - const latestAttempt = invoice.fiscal.attempts[0] || null - return { - invoice_id: invoiceId, - status: latestAttempt?.status || FiscalResponseStatus.NOT_SEND, - fiscal: { - id: invoice.fiscal.id, - retry_count: invoice.fiscal.retry_count, - last_attempt_at: invoice.fiscal.last_attempt_at, - }, - latest_attempt: latestAttempt, - } - } - - async refreshStatus(invoiceId: string, posInfo: IPosPayload) { - const invoice = await this.getInvoiceForBusiness(invoiceId, posInfo.business_id) - const latestAttempt = invoice.fiscal?.attempts?.[0] - - if (!invoice.fiscal || !latestAttempt?.tax_id) { - return this.getStatus(invoiceId, posInfo) - } - - const providerCode = invoice.pos.provider?.code - const switchResult = await this.fiscalSwitchService.get( - providerCode, - latestAttempt.tax_id, - ) - const mappedStatus = this.mapSwitchGetStatus(switchResult.status) - - const refreshedAttempt = await this.prisma.$transaction(async tx => { - const nextNo = (latestAttempt.attempt_no || 0) + 1 - const createdAttempt = await tx.saleInvoiceFiscalAttempts.create({ - data: { - fiscal_id: invoice.fiscal!.id, - attempt_no: nextNo, - status: mappedStatus, - tax_id: switchResult.tax_id, - response_payload: switchResult.response_payload - ? JSON.parse(JSON.stringify(switchResult.response_payload)) - : undefined, - received_at: switchResult.received_at - ? new Date(switchResult.received_at) - : null, - type: FiscalRequestType.MAIN, - }, - }) - - await tx.saleInvoiceFiscals.update({ - where: { id: invoice.fiscal!.id }, - data: { - retry_count: nextNo, - last_attempt_at: createdAttempt.created_at, - }, - }) - - return createdAttempt - }) - - return { - invoice_id: invoiceId, - status: refreshedAttempt.status, - latest_attempt: refreshedAttempt, - } - } - - async getAttempts(invoiceId: string, posInfo: IPosPayload) { - const invoice = await this.getInvoiceForBusiness(invoiceId, posInfo.business_id) - if (!invoice.fiscal) { - return { - invoice_id: invoiceId, - fiscal_id: null, - attempts: [], - } - } - - const attempts = await this.prisma.saleInvoiceFiscalAttempts.findMany({ - where: { - fiscal_id: invoice.fiscal.id, - }, - orderBy: { - attempt_no: 'desc', - }, - }) - - return { - invoice_id: invoiceId, - fiscal_id: invoice.fiscal.id, - attempts, - } - } - - private async buildPayload(invoiceId: string, posInfo: IPosPayload) { - const invoice = await this.prisma.salesInvoice.findUnique({ - where: { - id: invoiceId, - pos: { - id: posInfo.pos_id, - complex: { - business_activity_id: posInfo.business_id, - }, - }, - }, - select: { - id: true, - code: true, - invoice_date: true, - total_amount: true, - items: { - select: { - id: true, - quantity: true, - unit_price: true, - total_amount: true, - measure_unit_text: true, - sku_code: true, - sku_vat: true, - measure_unit_code: true, - good_id: true, - service_id: true, - payload: true, - good_snapshot: true, - }, - }, - customer: { - select: { - type: true, - individual: true, - legal: true, - }, - }, - - pos: { - select: { - complex: { - select: { - business_activity: { - select: { - fiscal_id: true, - economic_code: true, - consumer: { - select: { - legal: { - select: { - partner: { - select: { - fiscal_switch_type: true, - }, - }, - }, - }, - individual: { - select: { - partner: { - select: { - fiscal_switch_type: true, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }, - }) - - if (!invoice) { - throw new NotFoundException('فاکتور مورد نظر یافت نشد.') - } - - const { partner } = (invoice.pos.complex.business_activity.consumer.legal || - invoice.pos.complex.business_activity.consumer.individual)! - - return { - invoice_id: invoice.id, - invoice_code: invoice.code, - invoice_date: invoice.invoice_date, - total_amount: Number(invoice.total_amount), - customer_type: invoice.customer - ? FiscalInvoiceCustomerType.Known - : FiscalInvoiceCustomerType.Unknown, - type: FiscalRequestType.MAIN, - provider_code: partner.fiscal_switch_type, - items: invoice.items.map(item => ({ - invoice_item_id: item.id, - quantity: Number(item.quantity), - unit_price: Number(item.unit_price), - total_amount: Number(item.total_amount), - good_id: item.good_id, - service_id: item.service_id, - payload: item.payload, - good_snapshot: item.good_snapshot, - discount: String((item.payload as Record)?.discount || '0'), - sku: item.sku_code, - sku_vat: String(item.sku_vat), - measure_unit: item.measure_unit_code, - // sku: item. - })), - } satisfies TaxSwitchSendPayloadDto - } - - private async safeSend(payload: TaxSwitchSendPayloadDto) { - try { - return await this.fiscalSwitchService.send(payload) - } catch (error: any) { - const now = new Date().toISOString() - return payload.items.map(item => ({ - invoice_item_id: item.invoice_item_id, - status: TaxSendStatus.FAILED, - error_message: error?.message || 'Unexpected fiscal switch error.', - sent_at: now, - received_at: now, - })) - } - } - - private async persistAttempt( - invoiceId: string, - itemResults: TaxSwitchSendItemResultDto[], - ) { - return this.prisma.$transaction(async tx => { - const fiscal = await tx.saleInvoiceFiscals.upsert({ - where: { invoice_id: invoiceId }, - update: {}, - create: { - invoice_id: invoiceId, - }, - }) - - const latest = await tx.saleInvoiceFiscalAttempts.findFirst({ - where: { fiscal_id: fiscal.id }, - orderBy: { attempt_no: 'desc' }, - select: { attempt_no: true }, - }) - const nextAttemptNo = (latest?.attempt_no || 0) + 1 - - const finalStatus = this.mapItemResultsStatus(itemResults) - const firstTaxId = itemResults.find(item => item.tax_id)?.tax_id || null - const sentAt = itemResults.map(item => item.sent_at).find(Boolean) - const receivedAt = itemResults.map(item => item.received_at).find(Boolean) - const errors = itemResults.map(item => item.error_message).filter(Boolean) - const errorMessage = errors.length ? Array.from(new Set(errors)).join(' | ') : null - - const attempt = await tx.saleInvoiceFiscalAttempts.create({ - data: { - fiscal_id: fiscal.id, - attempt_no: nextAttemptNo, - status: finalStatus, - tax_id: firstTaxId, - type: FiscalRequestType.MAIN, - request_payload: JSON.parse( - JSON.stringify(itemResults.map(item => item.request_payload)), - ), - response_payload: JSON.parse( - JSON.stringify(itemResults.map(item => item.response_payload)), - ), - error_message: errorMessage, - sent_at: sentAt ? new Date(sentAt) : null, - received_at: receivedAt ? new Date(receivedAt) : null, - }, - }) - - await tx.saleInvoiceFiscals.update({ - where: { id: fiscal.id }, - data: { - retry_count: nextAttemptNo, - last_attempt_at: attempt.sent_at || attempt.created_at, - }, - }) - - return { - fiscal_id: fiscal.id, - status: attempt.status, - attempt_no: attempt.attempt_no, - } - }) - } - - private mapItemResultsStatus(itemResults: TaxSwitchSendItemResultDto[]) { - if (!itemResults.length) { - return FiscalResponseStatus.NOT_SEND - } - const hasFailure = itemResults.some(item => item.status === TaxSendStatus.FAILED) - if (hasFailure) { - return FiscalResponseStatus.FAILURE - } - const hasSent = itemResults.some(item => item.status === TaxSendStatus.SENT) - if (hasSent) { - return FiscalResponseStatus.SUCCESS - } - return FiscalResponseStatus.NOT_SEND - } - - private mapSwitchGetStatus(status: TaxSwitchGetResultDto['status']) { - switch (status) { - case TaxSendStatus.SENT: - return FiscalResponseStatus.SUCCESS - case TaxSendStatus.FAILED: - return FiscalResponseStatus.FAILURE - default: - return FiscalResponseStatus.NOT_SEND - } - } - - private async getInvoiceForBusiness(invoiceId: string, businessId: string) { - const invoice = await this.prisma.salesInvoice.findFirst({ - where: { - id: invoiceId, - pos: { - complex: { - business_activity_id: businessId, - }, - }, - }, - select: { - id: true, - pos: { - select: { - provider: { - select: { - code: true, - }, - }, - }, - }, - fiscal: { - select: { - id: true, - retry_count: true, - last_attempt_at: true, - attempts: { - orderBy: { - attempt_no: 'desc', - }, - take: 1, - select: { - id: true, - attempt_no: true, - status: true, - tax_id: true, - sent_at: true, - received_at: true, - error_message: true, - created_at: true, - }, - }, - }, - }, - }, - }) - - if (!invoice) { - throw new NotFoundException('فاکتور مورد نظر یافت نشد.') - } - - return invoice - } -} diff --git a/src/modules/pos/sales-invoices/sales-invoice-items/dto/create-sales-invoice-item.dto.ts b/src/modules/pos/sales-invoices/sales-invoice-items/dto/create-sales-invoice-item.dto.ts index 6f85bec..ff10234 100644 --- a/src/modules/pos/sales-invoices/sales-invoice-items/dto/create-sales-invoice-item.dto.ts +++ b/src/modules/pos/sales-invoices/sales-invoice-items/dto/create-sales-invoice-item.dto.ts @@ -1,7 +1,6 @@ import { ApiProperty, PartialType } from '@nestjs/swagger' -import { IsEnum, IsNumber, IsObject, IsOptional, IsString } from 'class-validator' +import { IsNumber, IsObject, IsOptional, IsString } from 'class-validator' import type { SaleInvoiceType } from 'common/interfaces/sale-invoice-payload' -import { UnitType } from 'generated/prisma/enums' export class CreateSalesInvoiceItemDto { @IsNumber() @@ -24,10 +23,6 @@ export class CreateSalesInvoiceItemDto { @ApiProperty({ required: true }) invoice_id: string - @IsEnum(UnitType) - @ApiProperty({ enum: Object.values(UnitType) }) - unit_type: UnitType - @IsOptional() @IsString() @ApiProperty({ required: false }) diff --git a/src/modules/pos/sales-invoices/sales-invoices.controller.ts b/src/modules/pos/sales-invoices/sales-invoices.controller.ts index a84b189..f693f2f 100644 --- a/src/modules/pos/sales-invoices/sales-invoices.controller.ts +++ b/src/modules/pos/sales-invoices/sales-invoices.controller.ts @@ -20,15 +20,24 @@ export class SalesInvoicesController { return this.salesInvoicesService.findOne(posInfo, id) } + @Get(':id/inquiry') + inquiry(@PosInfo() posInfo: IPosPayload, @Param('id') id: string) { + return this.salesInvoicesService.inquiry( + posInfo.consumer_account_id, + posInfo.pos_id, + id, + ) + } + @Post() create(@Body() data: CreateSalesInvoiceDto, @PosInfo() posInfo: IPosPayload) { return this.salesInvoicesService.create(data, posInfo) } - // @Post(':id/send') - // send(@Param('id') id: string, @PosInfo() posInfo: IPosPayload) { - // return this.salesInvoicesService.send(id, posInfo) - // } + @Post(':id/send') + send(@Param('id') id: string, @PosInfo() posInfo: IPosPayload) { + return this.salesInvoicesService.send(id, posInfo) + } // @Post('send/bulk') // sendBulk(@Body() data: SendBulkSalesInvoicesDto, @PosInfo() posInfo: IPosPayload) { diff --git a/src/modules/pos/sales-invoices/sales-invoices.module.ts b/src/modules/pos/sales-invoices/sales-invoices.module.ts index 6b136ca..e6a3086 100644 --- a/src/modules/pos/sales-invoices/sales-invoices.module.ts +++ b/src/modules/pos/sales-invoices/sales-invoices.module.ts @@ -1,19 +1,19 @@ import { Module } from '@nestjs/common' -import { SalesInvoiceFiscalSwitchService } from '../../consumer/saleInvoices/fiscal/sales-invoice-fiscal-switch.service' -import { SalesInvoiceFiscalService } from '../../consumer/saleInvoices/fiscal/sales-invoice-fiscal.service' -import { NamaTaxSwitchAdapter } from '../../consumer/saleInvoices/fiscal/switch/nama/nama-fiscal-switch.adapter' -import { PosSalesInvoiceFiscalModule } from './fiscal/sales-invoice-fiscal.module' +import { HttpClientUtil } from '../../../common/utils/http-client.util' +import { SalesInvoiceTspSwitchService } from '../../tspProviders/sales-invoice-tsp-switch.service' +import { SalesInvoiceTspService } from '../../tspProviders/sales-invoice-tsp.service' +import { NamaProviderSwitchAdapter } from '../../tspProviders/switch/nama/nama-provider.adapter' import { SalesInvoicesController } from './sales-invoices.controller' import { SalesInvoicesService } from './sales-invoices.service' @Module({ - imports: [PosSalesInvoiceFiscalModule], controllers: [SalesInvoicesController], providers: [ SalesInvoicesService, - SalesInvoiceFiscalService, - SalesInvoiceFiscalSwitchService, - NamaTaxSwitchAdapter, + HttpClientUtil, + SalesInvoiceTspService, + SalesInvoiceTspSwitchService, + NamaProviderSwitchAdapter, ], }) export class PosSalesInvoicesModule {} diff --git a/src/modules/pos/sales-invoices/sales-invoices.service.ts b/src/modules/pos/sales-invoices/sales-invoices.service.ts index 963dd63..8fac6af 100644 --- a/src/modules/pos/sales-invoices/sales-invoices.service.ts +++ b/src/modules/pos/sales-invoices/sales-invoices.service.ts @@ -1,16 +1,19 @@ import { IPosPayload } from '@/common/models/posPayload.model' import { translateEnumValue } from '@/common/utils' +import { SalesInvoiceCreateInput } from '@/generated/prisma/models' import { PrismaService } from '@/prisma/prisma.service' -import { BadRequestException, Injectable } from '@nestjs/common' +import { BadRequestException, Injectable, NotFoundException } from '@nestjs/common' import { ResponseMapper } from 'common/response/response-mapper' import type { CustomerIndividual, CustomerLegal } from 'generated/prisma/client' import { Prisma } from 'generated/prisma/client' import { + ConsumerRole, CustomerType, - FiscalResponseStatus, PaymentMethodType, + TspProviderRequestType, + TspProviderResponseStatus, } from 'generated/prisma/enums' -import { SalesInvoiceFiscalService } from '../../consumer/saleInvoices/fiscal/sales-invoice-fiscal.service' +import { SalesInvoiceTspService } from '../../tspProviders/sales-invoice-tsp.service' import { CreateSalesInvoiceDto } from './dto/create-sales-invoice.dto' import { SalesInvoicesFilterDto } from './dto/sales-invoices-filter.dto' @@ -53,7 +56,7 @@ export class SalesInvoicesService { constructor( private prisma: PrismaService, - private salesInvoiceTaxService: SalesInvoiceFiscalService, + private salesInvoiceTaxService: SalesInvoiceTspService, ) {} async findAll(posInfo: IPosPayload, query: SalesInvoicesFilterDto = {}) { @@ -96,17 +99,13 @@ export class SalesInvoicesService { }, }, }, - fiscal: { + tsp_attempts: { + orderBy: { + created_at: 'desc', + }, + take: 1, select: { - attempts: { - orderBy: { - created_at: 'desc', - }, - take: 1, - select: { - status: true, - }, - }, + status: true, }, }, }, @@ -117,8 +116,8 @@ export class SalesInvoicesService { const summaryItems = items.map(invoice => ({ ...invoice, status: translateEnumValue( - 'FiscalResponseStatus', - invoice.fiscal?.attempts?.[0]?.status || FiscalResponseStatus.NOT_SEND, + 'TspProviderResponseStatus', + invoice.tsp_attempts?.[0]?.status || TspProviderResponseStatus.NOT_SEND, ), })) @@ -126,10 +125,11 @@ export class SalesInvoicesService { } async findOne(posInfo: IPosPayload, id: string) { - const invoice = await this.prisma.salesInvoice.findFirstOrThrow({ + const invoice = await this.prisma.salesInvoice.findUnique({ where: { id, pos: { + id: posInfo.pos_id, complex: { business_activity_id: posInfo.business_id, }, @@ -234,45 +234,50 @@ export class SalesInvoicesService { }, }, }, - fiscal: { + tsp_attempts: { + orderBy: { + created_at: 'desc', + }, select: { id: true, - retry_count: true, - last_attempt_at: true, - attempts: { - orderBy: { - created_at: 'desc', - }, - select: { - id: true, - attempt_no: true, - status: true, - tax_id: true, - error_message: true, - sent_at: true, - received_at: true, - created_at: true, - }, - }, + attempt_no: true, + status: true, + tax_id: true, + error_message: true, + sent_at: true, + received_at: true, + created_at: true, }, + take: 1, }, }, }) - return ResponseMapper.single({ - ...invoice, - status: invoice.fiscal?.attempts?.[0]?.status || FiscalResponseStatus.NOT_SEND, - }) + if (invoice) { + const { tsp_attempts, ...rest } = invoice || {} + + return ResponseMapper.single({ + ...rest, + status: tsp_attempts?.[0]?.status || TspProviderResponseStatus.NOT_SEND, + }) + } else throw new NotFoundException('فاکتور مورد نظر شما یافت نشد.') } - // async send(invoiceId: string, posInfo: IPosPayload) { - // await this.salesInvoiceTaxService.send(invoiceId, posInfo.pos_id) + async send(invoiceId: string, posInfo: IPosPayload) { + const consumer_id = await this.checkAccessToInvoice( + posInfo.consumer_account_id, + posInfo.pos_id, + ) + const invoice = await this.salesInvoiceTaxService.send(consumer_id, invoiceId) - // return ResponseMapper.single({ - // invoice_id: invoiceId, - // sent_to_tax: true, - // }) - // } + return ResponseMapper.single(invoice) + } + + async inquiry(consumer_account_id: string, pos_id: string, invoiceId: string) { + const consumer_id = await this.checkAccessToInvoice(consumer_account_id, pos_id) + const invoice = await this.salesInvoiceTaxService.get(invoiceId, pos_id, consumer_id) + return ResponseMapper.single(invoice) + } // async sendBulk(invoiceIds: string[], posInfo: IPosPayload) { // if (!invoiceIds.length) { @@ -325,13 +330,13 @@ export class SalesInvoicesService { normalizedInvoiceDate, ) + if (data.send_to_tsp) { + await this.salesInvoiceTaxService.send(salesInvoice.id, pos_id) + } + return salesInvoice }) - if (data.send_to_tax) { - await this.salesInvoiceTaxService.send(salesInvoice.id, pos_id) - } - return ResponseMapper.create(salesInvoice) } catch (error) { if ( @@ -500,16 +505,12 @@ export class SalesInvoicesService { } if (query.status) { - if (query.status === FiscalResponseStatus.NOT_SEND) { - where.fiscal = null + if (query.status === TspProviderResponseStatus.NOT_SEND) { + where.tsp_attempts = undefined } else { - where.fiscal = { - is: { - attempts: { - some: { - status: query.status, - }, - }, + where.tsp_attempts = { + some: { + status: query.status, }, } } @@ -530,8 +531,9 @@ export class SalesInvoicesService { cash: PaymentMethodType.CASH, set_off: PaymentMethodType.SET_OFF, card: PaymentMethodType.CARD, + payment_gateway: PaymentMethodType.PAYMENT_GATEWAY, bank: PaymentMethodType.BANK, - check: PaymentMethodType.CHECK, + check: PaymentMethodType.CHEQUE, other: PaymentMethodType.OTHER, terminal: PaymentMethodType.TERMINAL, } @@ -705,6 +707,8 @@ export class SalesInvoicesService { select: { id: true, name: true, + code: true, + VAT: true, }, }, local_sku: true, @@ -714,6 +718,7 @@ export class SalesInvoicesService { select: { id: true, name: true, + code: true, }, }, base_sale_price: true, @@ -755,7 +760,7 @@ export class SalesInvoicesService { } = params const { customer_id, customer_type, customer, payments, ...invoiceData } = data - const salesInvoiceData: any = { + const salesInvoiceData: SalesInvoiceCreateInput = { ...invoiceData, invoice_date: normalizedInvoiceDate, invoice_number: invoiceNumber, @@ -764,11 +769,14 @@ export class SalesInvoicesService { items: { createMany: { data: data.items.map(item => ({ - good_id: item.good_id, + good_id: item.good_id!, quantity: item.quantity, unit_price: item.unit_price, total_amount: item.total_amount, - measure_unit_text: item.unit_type, + measure_unit_text: goodsById.get(item.good_id!)?.measure_unit.name || null, + measure_unit_code: goodsById.get(item.good_id!)?.measure_unit.code || null, + sku_code: goodsById.get(item.good_id!)?.sku.code || null, + sku_vat: goodsById.get(item.good_id!)?.sku.VAT || null, payload: item.payload ? JSON.parse(JSON.stringify(item.payload)) : undefined, good_snapshot: item.good_id ? JSON.parse( @@ -777,7 +785,6 @@ export class SalesInvoicesService { }), ) : undefined, - unit_type: item.unit_type, })), }, }, @@ -794,6 +801,16 @@ export class SalesInvoicesService { }, } + if (data.send_to_tsp) { + salesInvoiceData.tsp_attempts = { + create: { + attempt_no: 1, + status: TspProviderResponseStatus.QUEUED, + type: TspProviderRequestType.MAIN, + }, + } + } + if (customerId) { salesInvoiceData.customer = { connect: { @@ -819,10 +836,29 @@ export class SalesInvoicesService { }, select: { invoice_number: true, + pos: { + select: { + complex: { + select: { + business_activity: { + select: { + invoice_number_sequence: true, + }, + }, + }, + }, + }, + }, }, }) - return (latestInvoice?.invoice_number || 0) + 1 + const latestSequence = + latestInvoice?.pos?.complex?.business_activity?.invoice_number_sequence.toNumber() || + 0 + + console.log(latestSequence) + + return Math.max(latestInvoice?.invoice_number || 0, latestSequence) + 1 } private async createPayments( @@ -852,7 +888,7 @@ export class SalesInvoicesService { terminal_id: terminalInfo.terminalId, stan: terminalInfo.stan, rrn: terminalInfo.rrn, - transaction_date_time: new Date(terminalInfo.transactionDateTime), + transaction_date_time: new Date(terminalInfo.transactionDateTime || ''), customer_card_no: terminalInfo.customerCardNO || null, description: terminalInfo.description || null, }, @@ -867,6 +903,35 @@ export class SalesInvoicesService { pos_id: string, invoice_number: number, ) { - return `${business_id.substring(0, 2)}-${complex_id.substring(0, 2)}-${pos_id.substring(0, 2)}-${invoice_number.toString()}` + return `${business_id.substring(business_id.length - 2, business_id.length)}-${complex_id.substring(complex_id.length - 2, complex_id.length)}-${pos_id.substring(pos_id.length - 2, pos_id.length)}-${invoice_number.toString()}` + } + + private async checkAccessToInvoice( + consumer_account_id: string, + pos_id: string, + ): Promise { + const consumer = await this.prisma.consumerAccount.findUnique({ + where: { + id: consumer_account_id, + OR: [ + { + pos: { + id: pos_id, + }, + }, + { + role: ConsumerRole.OWNER, + }, + ], + }, + select: { + consumer_id: true, + }, + }) + if (!consumer) { + throw new BadRequestException('شما دسترسی لازم برای ارسال فاکتور را ندارید.') + } + + return consumer.consumer_id } } diff --git a/src/modules/consumer/saleInvoices/fiscal/dto/tax-switch.dto.ts b/src/modules/tspProviders/dto/provider-switch.dto.ts similarity index 50% rename from src/modules/consumer/saleInvoices/fiscal/dto/tax-switch.dto.ts rename to src/modules/tspProviders/dto/provider-switch.dto.ts index 6a8240a..62f171f 100644 --- a/src/modules/consumer/saleInvoices/fiscal/dto/tax-switch.dto.ts +++ b/src/modules/tspProviders/dto/provider-switch.dto.ts @@ -1,28 +1,27 @@ import { CustomerType, - FiscalInvoiceCustomerType, - FiscalRequestType, - PartnerFiscalSwitchType, + InvoiceTemplateType, + PaymentMethodType, + TspProviderCustomerType, + TspProviderRequestType, + TspProviderResponseStatus, + TspProviderType, } from '@/generated/prisma/enums' import { ApiProperty } from '@nestjs/swagger' import { Type } from 'class-transformer' import { IsArray, + IsBoolean, IsDateString, IsEnum, IsNumber, IsObject, IsOptional, IsString, + Min, ValidateNested, } from 'class-validator' -export enum TaxSendStatus { - SENT = 'SENT', - FAILED = 'FAILED', - PENDING = 'PENDING', -} - export class CustomerLegalInfoDto { @ApiProperty({ required: true }) @IsString() @@ -66,7 +65,34 @@ export class CustomerInfoDto { @ValidateNested({ each: true }) individual_info?: CustomerIndividualInfoDto } -export class TaxSwitchSendItemPayloadDto { + +export class PaymentInfoDto { + @ApiProperty({ required: true, enum: PaymentMethodType }) + @IsEnum(PaymentMethodType) + payment_method: PaymentMethodType + + @ApiProperty({ required: true }) + @IsNumber({ allowInfinity: false, allowNaN: false }) + @Min(10_000) + amount: number + + @ApiProperty({ required: false }) + @IsOptional() + @IsString() + tracking_code?: string + + @ApiProperty({ required: false }) + @IsOptional() + @IsString() + card_number?: string + + @ApiProperty({ required: false }) + @IsOptional() + @IsDateString() + paid_at?: Date +} + +export class TspProviderSendItemPayloadDto { @ApiProperty({ required: true }) @IsString() sku: string @@ -116,20 +142,20 @@ export class TaxSwitchSendItemPayloadDto { payload?: unknown } -export class TaxSwitchSendPayloadDto { - @ApiProperty({ required: true, enum: FiscalRequestType }) - @IsEnum(FiscalRequestType) - type: FiscalRequestType +export class TspProviderSendPayloadDto { + @ApiProperty({ required: true, enum: TspProviderRequestType }) + @IsEnum(TspProviderRequestType) + type: TspProviderRequestType - @ApiProperty({ required: true, enum: FiscalInvoiceCustomerType }) - @IsEnum(FiscalInvoiceCustomerType) - customer_type: FiscalInvoiceCustomerType + @ApiProperty({ required: true, enum: TspProviderCustomerType }) + @IsEnum(TspProviderCustomerType) + customer_type: TspProviderCustomerType - @ApiProperty({ type: [TaxSwitchSendItemPayloadDto] }) + @ApiProperty({ type: [TspProviderSendItemPayloadDto] }) @IsArray() @ValidateNested({ each: true }) - @Type(() => TaxSwitchSendItemPayloadDto) - items: TaxSwitchSendItemPayloadDto[] + @Type(() => TspProviderSendItemPayloadDto) + items: TspProviderSendItemPayloadDto[] @ApiProperty({ required: false }) @Type(() => CustomerInfoDto) @@ -137,11 +163,10 @@ export class TaxSwitchSendPayloadDto { customer?: CustomerInfoDto @ApiProperty({ required: true, nullable: true }) - @IsString() - invoice_code: string + @IsNumber() + invoice_number: number @ApiProperty({ required: true, nullable: true }) - @IsOptional() @IsDateString() invoice_date: Date @@ -153,86 +178,123 @@ export class TaxSwitchSendPayloadDto { @IsNumber() total_amount: number - @ApiProperty({ required: true, enum: PartnerFiscalSwitchType }) - @IsEnum(PartnerFiscalSwitchType) - provider_code: PartnerFiscalSwitchType + @ApiProperty({ required: true, enum: TspProviderType }) + @IsEnum(TspProviderType) + tsp_provider: TspProviderType + + @ApiProperty({ required: true, nullable: true }) + @IsString() + economic_code: string + + @ApiProperty({ required: true, nullable: true }) + @IsString() + fiscal_id: string + + @ApiProperty({ required: true, type: [PaymentInfoDto] }) + @IsArray() + @ValidateNested({ each: true }) + @Type(() => PaymentInfoDto) + payments: PaymentInfoDto[] + + @ApiProperty({ required: true, enum: InvoiceTemplateType }) + @IsEnum(InvoiceTemplateType) + invoice_template: InvoiceTemplateType + + @ApiProperty({ required: true }) + @IsString() + tsp_token: string } -export class TaxSwitchSendItemResultDto { +export class TspProviderSendItemResultDto { @ApiProperty() @IsString() - invoice_item_id: string + invoice_id: string - @ApiProperty({ enum: TaxSendStatus }) - @IsEnum(TaxSendStatus) - status: TaxSendStatus + @ApiProperty({ enum: TspProviderResponseStatus }) + @IsEnum(TspProviderResponseStatus) + status: TspProviderResponseStatus @ApiProperty({ required: false, nullable: true }) @IsOptional() @IsString() tax_id?: string | null - @ApiProperty({ required: false, nullable: true, type: Object }) + @ApiProperty({ required: true, nullable: true, type: TspProviderSendPayloadDto }) @IsOptional() @IsObject() - request_payload?: unknown + @Type(() => TspProviderSendPayloadDto) + request_payload: TspProviderSendPayloadDto @ApiProperty({ required: false, nullable: true, type: Object }) @IsOptional() @IsObject() response_payload?: unknown + @ApiProperty({ required: true }) + @IsBoolean() + hasError: boolean + @ApiProperty({ required: false, nullable: true }) @IsOptional() @IsString() - error_message?: string | null + message?: string | null - @ApiProperty({ required: false, nullable: true }) - @IsOptional() + @ApiProperty({ required: true }) @IsDateString() - sent_at?: string | null + sent_at: string - @ApiProperty({ required: false, nullable: true }) - @IsOptional() + @ApiProperty({ required: true }) @IsDateString() - received_at?: string | null + received_at: string } -export class TaxSwitchBulkSendResultDto { +export class TspProviderBulkSendResultDto { @ApiProperty() @IsString() invoice_id: string - @ApiProperty({ type: [TaxSwitchSendItemResultDto] }) + @ApiProperty({ type: [TspProviderSendItemResultDto] }) @IsArray() @ValidateNested({ each: true }) - @Type(() => TaxSwitchSendItemResultDto) - items: TaxSwitchSendItemResultDto[] + @Type(() => TspProviderSendItemResultDto) + items: TspProviderSendItemResultDto[] } -export class TaxSwitchGetResultDto { +export class TspProviderGetResultDto { @ApiProperty() @IsString() tax_id: string - @ApiProperty({ enum: TaxSendStatus }) - @IsEnum(TaxSendStatus) - status: TaxSendStatus + @ApiProperty({ enum: TspProviderResponseStatus }) + @IsEnum(TspProviderResponseStatus) + status: TspProviderResponseStatus + + @ApiProperty({ required: true }) + @IsBoolean() + hasError: boolean + + @ApiProperty({ required: false, nullable: true }) + @IsOptional() + @IsString() + message?: string | null @ApiProperty({ required: false, nullable: true, type: Object }) @IsOptional() @IsObject() response_payload?: unknown - @ApiProperty({ required: false, nullable: true }) - @IsOptional() + @ApiProperty({ required: true }) @IsDateString() - received_at?: string | null + sent_at: string + + @ApiProperty({ required: true }) + @IsDateString() + received_at: string } -export interface ITaxSwitchAdapter { +export interface IProviderSwitchAdapter { readonly code: string - send(payload: TaxSwitchSendPayloadDto): Promise - sendBulk(payloads: TaxSwitchSendPayloadDto[]): Promise - get(taxId: string): Promise + send(payload: TspProviderSendPayloadDto): Promise + sendBulk(payloads: TspProviderSendPayloadDto[]): Promise + get(invoiceId: string, tsp_token: string): Promise } diff --git a/src/modules/tspProviders/sales-invoice-tsp-switch.service.ts b/src/modules/tspProviders/sales-invoice-tsp-switch.service.ts new file mode 100644 index 0000000..1e6fc61 --- /dev/null +++ b/src/modules/tspProviders/sales-invoice-tsp-switch.service.ts @@ -0,0 +1,59 @@ +import { Injectable } from '@nestjs/common' +import { + TspProviderBulkSendResultDto, + TspProviderGetResultDto, + TspProviderSendItemResultDto, + TspProviderSendPayloadDto, +} from './dto/provider-switch.dto' +import { NamaProviderSwitchAdapter } from './switch/nama/nama-provider.adapter' + +@Injectable() +export class SalesInvoiceTspSwitchService { + constructor(private readonly namaAdapter: NamaProviderSwitchAdapter) {} + + private resolveSwitch(providerCode: string) { + const normalizedCode = providerCode.trim().toUpperCase() || '' + + switch (normalizedCode) { + case 'NAMA': + default: + return this.namaAdapter + } + } + + async send(payload: TspProviderSendPayloadDto): Promise { + const adapter = this.resolveSwitch(payload.tsp_provider) + return adapter.send(payload) + } + + async sendBulk( + payloads: TspProviderSendPayloadDto[], + ): Promise { + const groupedByProvider = new Map() + + for (const payload of payloads) { + const key = payload.tsp_provider?.trim().toUpperCase() || 'NAMA' + const currentGroup = groupedByProvider.get(key) || [] + currentGroup.push(payload) + groupedByProvider.set(key, currentGroup) + } + + const result: TspProviderBulkSendResultDto[] = [] + for (const [providerCode, groupedPayloads] of groupedByProvider.entries()) { + const adapter = this.resolveSwitch(providerCode) + const providerResult = await adapter.sendBulk(groupedPayloads) + result.push(...providerResult) + } + + return result + } + + async get( + providerCode: string, + invoiceId: string, + tspToken: string, + ): Promise { + const adapter = this.resolveSwitch(providerCode) + return await adapter.get(invoiceId, tspToken) + } +} diff --git a/src/modules/tspProviders/sales-invoice-tsp.service.ts b/src/modules/tspProviders/sales-invoice-tsp.service.ts new file mode 100644 index 0000000..901a095 --- /dev/null +++ b/src/modules/tspProviders/sales-invoice-tsp.service.ts @@ -0,0 +1,595 @@ +import { PrismaService } from '@/prisma/prisma.service' +import { BadRequestException, Injectable, NotFoundException } from '@nestjs/common' +import { + TspProviderCustomerType, + TspProviderRequestType, + TspProviderResponseStatus, +} from 'generated/prisma/client' +import { CreateSalesInvoiceDto } from '../pos/sales-invoices/dto/create-sales-invoice.dto' +import { + TspProviderSendItemResultDto, + TspProviderSendPayloadDto, +} from './dto/provider-switch.dto' +import { SalesInvoiceTspSwitchService } from './sales-invoice-tsp-switch.service' + +type ItemTspRow = { + tsp_provider: string | null + tax_id: string | null +} + +type IAttempt = any + +@Injectable() +export class SalesInvoiceTspService { + constructor( + private readonly prisma: PrismaService, + private readonly tspSwitchService: SalesInvoiceTspSwitchService, + ) {} + + async send(consumer_id: string, invoice_id: string): Promise { + const posId = await this.getPosId(consumer_id, invoice_id) + const payload = await this.buildPayload(invoice_id, posId) + const attempt = await this.prisma.saleInvoiceTspAttempts.create({ + data: { + attempt_no: 1, + invoice_id, + status: TspProviderResponseStatus.QUEUED, + type: TspProviderRequestType.MAIN, + request_payload: JSON.parse(JSON.stringify(payload)), + }, + }) + + const sendResult = await this.trySend(payload) + + console.log('sendResult') + console.log(sendResult) + + if (sendResult) { + if (sendResult.hasError) { + throw new Error(sendResult.message || '') + } + + const updatedAttempt = await this.prisma.saleInvoiceTspAttempts.update({ + where: { + id: attempt.id, + }, + data: { + response_payload: JSON.parse(JSON.stringify(sendResult)), + status: sendResult.status, + tax_id: sendResult.tax_id, + sent_at: sendResult.sent_at, + received_at: sendResult.received_at, + }, + select: { + status: true, + invoice: true, + }, + }) + + return { + ...updatedAttempt.invoice, + status: updatedAttempt.status, + } + } else { + throw new NotFoundException( + 'متاسفانه امکان ارسال فاکتور به سیستم مالیاتی در حال حاضر وجود ندارد. لطفا بعدا تلاش کنید.', + ) + } + } + + async sendBulk(consumer_id: string, invoice_ids: string[]): Promise { + if (!invoice_ids.length) return + + const payloads: TspProviderSendPayloadDto[] = [] + for (const invoiceId of invoice_ids) { + const posId = await this.getPosId(consumer_id, invoiceId) + payloads.push(await this.buildPayload(invoiceId, posId)) + } + + const bulkResult = await this.tspSwitchService.sendBulk(payloads) + const allItemResults = bulkResult.flatMap(result => result.items) + await this.persistAttemptResults(allItemResults) + } + + async get(invoice_id: string, pos_id: string, consumer_id: string): Promise { + const [attempt, pos] = await this.prisma.$transaction(async tx => [ + await tx.saleInvoiceTspAttempts.findFirst({ + where: { + invoice_id, + invoice: { + pos: { + id: pos_id, + }, + }, + }, + orderBy: { + attempt_no: 'desc', + }, + }), + + await tx.pos.findUnique({ + where: { + id: pos_id, + complex: { + business_activity: { + consumer_id, + }, + }, + }, + select: { + complex: { + select: { + business_activity: { + select: { + partner_token: true, + consumer: { + select: { + legal: { + select: { + partner: { + select: { + tsp_provider: true, + }, + }, + }, + }, + individual: { + select: { + partner: { + select: { + tsp_provider: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }), + ]) + + if (!attempt) { + throw new NotFoundException('صورت‌حساب ارسالی فاکتور شما به سامانه یافت نشد.') + } + if (!pos) { + throw new NotFoundException('مشکلی در ساختار اطلاعات ورودی شما وجود دارد.') + } + + const { business_activity } = pos.complex + + const { partner } = (business_activity.consumer.individual || + business_activity.consumer.legal)! + + const result = await this.tspSwitchService.get( + partner.tsp_provider, + invoice_id, + business_activity.partner_token, + ) + + console.log('getResult', result) + + if (!result) { + throw new NotFoundException('نتیجه ارسال فاکتور یافت نشد.') + } + + const updatedAttempt = await this.prisma.saleInvoiceTspAttempts.update({ + where: { + id: attempt.id, + }, + data: { + response_payload: JSON.parse(JSON.stringify(result)), + status: result.status, + received_at: result.received_at, + }, + select: { + status: true, + invoice: true, + }, + }) + + return { + ...updatedAttempt.invoice, + status: updatedAttempt.status, + } + } + + async update( + consumer_id: string, + invoice_id: string, + dataToUpdate: CreateSalesInvoiceDto, + ): Promise { + const posId = await this.getPosId(consumer_id, invoice_id) + const payload = await this.buildPayload(invoice_id, posId) + + const lastAttempt = await this.prisma.saleInvoiceTspAttempts.findFirst({ + where: { + invoice_id, + invoice: { + pos: { + complex: { + business_activity: { + consumer_id, + }, + }, + }, + }, + }, + orderBy: { + attempt_no: 'desc', + }, + include: { + invoice: { + include: { + items: { + include: { + good: true, + }, + }, + payments: { + include: { + terminal_info: true, + }, + }, + }, + }, + }, + }) + + if (!lastAttempt || lastAttempt?.status === TspProviderResponseStatus.QUEUED) { + throw new BadRequestException( + 'فاکتور هنوز به سامانه مالیاتی ارسال نشده است یا در صف ارسال قرار دارد. لطفا بعدا تلاش کنید.', + ) + } + + let isUpdated = false + let isBackFromSale = false + for (let item of dataToUpdate.items) { + const lastAttemptInvoiceItem = lastAttempt.invoice.items.find( + prevItem => prevItem.good_id === item.good_id, + ) + if (!lastAttemptInvoiceItem) { + isBackFromSale = true + break + } + } + if (dataToUpdate.total_amount !== lastAttempt.invoice.total_amount.toNumber()) { + isUpdated = true + } + + const attempt = await this.prisma.saleInvoiceTspAttempts.create({ + data: { + attempt_no: 1, + invoice_id, + status: TspProviderResponseStatus.QUEUED, + type: TspProviderRequestType.MAIN, + request_payload: JSON.parse(JSON.stringify(payload)), + }, + }) + + const sendResult = await this.trySend(payload) + + console.log('sendResult') + console.log(sendResult) + + if (sendResult) { + if (sendResult.hasError) { + throw new Error(sendResult.message || '') + } + + const updatedAttempt = await this.prisma.saleInvoiceTspAttempts.update({ + where: { + id: attempt.id, + }, + data: { + response_payload: JSON.parse(JSON.stringify(sendResult)), + status: sendResult.status, + tax_id: sendResult.tax_id, + sent_at: sendResult.sent_at, + received_at: sendResult.received_at, + }, + select: { + status: true, + invoice: true, + }, + }) + + return { + ...updatedAttempt.invoice, + status: updatedAttempt.status, + } + } else { + throw new NotFoundException( + 'متاسفانه امکان ارسال فاکتور به سیستم مالیاتی در حال حاضر وجود ندارد. لطفا بعدا تلاش کنید.', + ) + } + } + + private async getPosId(consumer_id: string, invoice_id: string): Promise { + const now = new Date() + const saleInvoice = await this.prisma.salesInvoice.findUnique({ + where: { + id: invoice_id, + pos: { + complex: { + business_activity: { + consumer_id, + }, + }, + }, + }, + select: { + pos: { + select: { + id: true, + complex: { + select: { + business_activity: { + select: { + name: true, + license_activation: { + select: { + expires_at: true, + license_renews: { + select: { + expires_at: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }) + + if (!saleInvoice) { + throw new NotFoundException('متاسفانه فاکتور مورد نظر یافت نشد.') + } + + const { license_activation, name: businessName } = + saleInvoice.pos.complex.business_activity + let expired = !license_activation || false + if (license_activation) { + const { expires_at, license_renews } = license_activation + if (expires_at < now) { + for (const renew of license_renews) { + if (renew.expires_at > now) { + expired = false + break + } + } + } + } + if (expired) { + throw new NotFoundException(`متاسفانه مجوز ${businessName} منقضی شده است.`) + } + + return saleInvoice.pos.id + } + + private async buildPayload( + invoiceId: string, + posId: string, + ): Promise { + const invoice = await this.prisma.salesInvoice.findUnique({ + where: { + id: invoiceId, + pos_id: posId, + }, + select: { + id: true, + code: true, + total_amount: true, + invoice_date: true, + invoice_number: true, + items: { + select: { + id: true, + quantity: true, + unit_price: true, + total_amount: true, + measure_unit_code: true, + measure_unit_text: true, + sku_code: true, + sku_vat: true, + good_id: true, + service_id: true, + payload: true, + good_snapshot: true, + }, + }, + pos: { + select: { + complex: { + select: { + business_activity: { + select: { + fiscal_id: true, + economic_code: true, + partner_token: true, + guild: { + select: { + invoice_template: true, + }, + }, + consumer: { + select: { + legal: { + select: { + partner: { + select: { + tsp_provider: true, + }, + }, + }, + }, + individual: { + select: { + partner: { + select: { + tsp_provider: true, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + }, + customer: { + select: { + type: true, + individual: { + select: { + first_name: true, + last_name: true, + national_id: true, + mobile_number: true, + }, + }, + legal: { + select: { + name: true, + economic_code: true, + }, + }, + }, + }, + payments: { + select: { + amount: true, + payment_method: true, + paid_at: true, + terminal_info: { + select: { + stan: true, + rrn: true, + }, + }, + }, + }, + }, + }) + + if (!invoice) { + throw new NotFoundException('فاکتور مورد نظر یافت نشد.') + } + + const { partner } = (invoice.pos.complex.business_activity.consumer.legal || + invoice.pos.complex.business_activity.consumer.individual)! + + return { + invoice_id: invoice.id, + invoice_number: invoice.invoice_number, + invoice_date: invoice.invoice_date, + total_amount: Number(invoice.total_amount), + economic_code: invoice.pos.complex.business_activity.economic_code, + fiscal_id: invoice.pos.complex.business_activity.fiscal_id, + invoice_template: invoice.pos.complex.business_activity.guild.invoice_template, + tsp_token: invoice.pos.complex.business_activity.partner_token, + payments: invoice.payments.map(payment => ({ + amount: Number(payment.amount), + payment_method: payment.payment_method, + paid_at: payment.paid_at, + card_number: payment.terminal_info ? payment.terminal_info.stan : undefined, + tracking_code: payment.terminal_info ? payment.terminal_info.rrn : undefined, + })), + type: TspProviderRequestType.MAIN, + tsp_provider: partner.tsp_provider!, + customer_type: invoice.customer?.type + ? TspProviderCustomerType.Known + : TspProviderCustomerType.Unknown, + customer: invoice.customer?.type + ? { + type: invoice.customer.type, + legal_info: invoice.customer.legal ?? undefined, + individual_info: invoice.customer.individual ?? undefined, + } + : undefined, + items: invoice.items.map(item => ({ + invoice_item_id: item.id, + quantity: Number(item.quantity), + unit_price: Number(item.unit_price), + total_amount: Number(item.total_amount), + measure_unit: item.measure_unit_code, + sku: item.sku_code, + sku_vat: String(item.sku_vat), + discount: String((item.payload as Record)?.discount || '0'), + good_id: item.good_id, + service_id: item.service_id, + payload: item.payload, + good_snapshot: item.good_snapshot, + })), + } + } + + private async trySend( + payload: TspProviderSendPayloadDto, + ): Promise { + const taxResult = await this.tspSwitchService.send(payload) + + return taxResult || null + } + + private async persistAttemptResults( + itemResults: TspProviderSendItemResultDto[], + ): Promise { + if (!itemResults.length) return + + const attemptsResult = [] as any[] + console.log('persistAttemptResults') + + for (const itemResult of itemResults) { + const attempt = await this.prisma.$transaction(async tx => { + const lastAttempt = await tx.saleInvoiceTspAttempts.findFirst({ + where: { + invoice_id: itemResult.invoice_id, + }, + orderBy: { + attempt_no: 'desc', + }, + select: { + id: true, + }, + }) + + const attempt = await tx.saleInvoiceTspAttempts.update({ + where: { + id: lastAttempt!.id, + }, + data: { + status: itemResult.status, + tax_id: itemResult.tax_id, + request_payload: JSON.parse(JSON.stringify(itemResult.request_payload)), + response_payload: JSON.parse(JSON.stringify(itemResult.response_payload)), + error_message: itemResult.message, + sent_at: itemResult.sent_at ? new Date(itemResult.sent_at) : new Date(), + received_at: itemResult.received_at + ? new Date(itemResult.received_at) + : new Date(), + }, + }) + + return attempt + }) + attemptsResult.push(attempt) + } + + console.log(attemptsResult) + + return attemptsResult + } +} + +// {"type": "MAIN", "items": [{"sku": "2720000044726", "good_id": "01KQHY48M299C9BG2D06DMWK4E", "payload": {"karat": "18", "wages": 40000000, "profit": 48000000, "commission": 40000000}, "sku_vat": "0", "discount": "0", "quantity": 2, "service_id": null, "unit_price": 200000000, "measure_unit": "63", "total_amount": 540800000, "good_snapshot": {"good": {"id": "01KQHY48M299C9BG2D06DMWK4E", "sku": {"id": "01KQHXE2D4XEFSDK4DSV2J6GT2", "VAT": "0", "code": "2720000044726", "name": "گوشواره طلا زیورالات ساخته شده از طلا"}, "name": "گوشواره", "barcode": null, "category": {"id": "01KQHY48CF6X2TK2AG09MKDVKQ", "name": "زیورآلات"}, "image_url": null, "local_sku": null, "measure_unit": {"id": "01KQHY489HE02787SE8TWDE18S", "code": "63", "name": "گرم"}, "pricing_model": "GOLD", "base_sale_price": "0"}}, "invoice_item_id": "01KQMZTMDC4M4T7VE9GFZJEW4E"}], "payments": [{"amount": 540800000, "paid_at": "2026-05-02T18:39:46.000Z", "payment_method": "CASH"}], "fiscal_id": "A296T3", "tsp_token": "pfFE6QxOJxUIhzkpUCPWYMR5", "invoice_id": "98c3377d-4e42-4703-97f0-38c3b3c8e87f", "invoice_date": "2026-05-02T18:39:46.000Z", "total_amount": 540800000, "tsp_provider": "NAMA", "customer_type": "Unknown", "economic_code": "14003579468", "invoice_number": 13, "invoice_template": "GOLD_JEWELRY"} diff --git a/src/modules/tspProviders/switch/nama/nama-provider.adapter.ts b/src/modules/tspProviders/switch/nama/nama-provider.adapter.ts new file mode 100644 index 0000000..826bdad --- /dev/null +++ b/src/modules/tspProviders/switch/nama/nama-provider.adapter.ts @@ -0,0 +1,340 @@ +import { + createEnsureSuccessResponseInterceptor, + createHeaderRequestInterceptor, + FetchRequestInterceptor, +} from '@/common/interceptors/fetch-request.interceptor' +import { HttpClientUtil } from '@/common/utils/http-client.util' +import { + CustomerType, + InvoiceTemplateType, + PaymentMethodType, + TspProviderCustomerType, + TspProviderRequestType, + TspProviderResponseStatus, +} from '@/generated/prisma/enums' +import { Injectable, Logger } from '@nestjs/common' +import { + CustomerInfoDto, + IProviderSwitchAdapter, + PaymentInfoDto, + TspProviderBulkSendResultDto, + TspProviderGetResultDto, + TspProviderSendItemResultDto, + TspProviderSendPayloadDto, +} from '../../dto/provider-switch.dto' +import { + NamaProviderGetResponseDto, + NamaProviderPaymentInfoDto, + NamaProviderRequestDto, + NamaProviderResponseStatus, + NamaProviderSendItemResponseDto, +} from './nama-provider.dto' + +@Injectable() +export class NamaProviderSwitchAdapter implements IProviderSwitchAdapter { + readonly code = 'NAMA' + private readonly logger = new Logger(NamaProviderSwitchAdapter.name) + private readonly sandboxBaseUrl = + process.env.NAMA_PROVIDER_SANDBOX_URL || 'https://external-api-dev.namatsp.ir' + private readonly productionBaseUrl = + process.env.NAMA_PROVIDER_PRODUCTION_URL || 'https://api.nama.ir' + + private readonly sendPath = '/api/v1/invoices/single-send' + private readonly sendBulkPath = '/api/v1/invoices' + private readonly checkBulkStatus = '/api/v1/invoices/check-by-uuids' + private readonly getPath = '/api/v1/invoices' + constructor(private readonly httpClient: HttpClientUtil) {} + + private get baseUrl() { + return this.sandboxBaseUrl + // return process.env.NODE_ENV === 'production' + // ? this.productionBaseUrl + // : this.sandboxBaseUrl + } + + private buildSendUrl() { + return `${this.baseUrl}${this.sendPath}` + } + + private buildGetUrl(invoiceId: string) { + return `${this.baseUrl}${this.getPath}/${invoiceId}` + } + + private createRequestInterceptors(token: string): FetchRequestInterceptor[] { + return [ + createHeaderRequestInterceptor({ + 'Content-Type': 'application/json', + Authorization: token, + }), + createEnsureSuccessResponseInterceptor(), + { + onError: (context, error) => { + this.logger.error(`NAMA request failed: ${context.url}`, error) + return Promise.reject(error) + }, + }, + ] + } + + async send(payload: TspProviderSendPayloadDto): Promise { + const mappedRequest = this.mapToNamaRequestDto(payload) + try { + console.log(mappedRequest) + + const response = await this.httpClient.request( + this.buildSendUrl(), + { + method: 'POST', + body: JSON.stringify(mappedRequest), + }, + this.createRequestInterceptors(payload.tsp_token), + ) + const providerResponse: NamaProviderSendItemResponseDto = await response.json() + this.logger.debug('NAMA provider response', providerResponse) + + const result: TspProviderSendItemResultDto = { + invoice_id: payload.invoice_id, + request_payload: payload, + hasError: !response.ok, + message: providerResponse.message, + sent_at: new Date().toISOString(), + response_payload: providerResponse, + received_at: providerResponse.tsp_update_time, + tax_id: providerResponse.tax_id, + status: this.mapResponseStatus( + providerResponse.status as NamaProviderResponseStatus, + ), + } + + return result + } catch (err) { + this.logger.error('NAMA send failed', err) + const failure: TspProviderSendItemResultDto = { + invoice_id: payload.invoice_id, + request_payload: payload, + hasError: true, + message: (err as Error).message, + sent_at: new Date().toISOString(), + received_at: new Date().toISOString(), + tax_id: null, + status: TspProviderResponseStatus.NOT_SEND, + } + return failure + } + } + + async sendBulk( + payloads: TspProviderSendPayloadDto[], + ): Promise { + const result: TspProviderBulkSendResultDto[] = [] + for (const payload of payloads) { + const itemResults = await this.send(payload) + result.push({ + invoice_id: payload.invoice_id, + items: [itemResults], + }) + } + return result + } + + async get(invoiceId: string, tsp_token: string): Promise { + try { + const response = await this.httpClient.request( + this.buildGetUrl(invoiceId), + { + method: 'GET', + }, + this.createRequestInterceptors(tsp_token), + ) + const providerResponse: NamaProviderGetResponseDto = await response.json() + this.logger.debug('NAMA provider response', providerResponse) + + const result: TspProviderGetResultDto = { + hasError: !response.ok, + message: providerResponse.message, + response_payload: providerResponse, + sent_at: new Date().toISOString(), + received_at: providerResponse.tsp_update_time || new Date().toISOString(), + tax_id: providerResponse.tax_id, + status: this.mapResponseStatus( + providerResponse.status as NamaProviderResponseStatus, + ), + } + + return result + } catch (err) { + this.logger.error('NAMA send failed', err) + // const failure: TspProviderGetResultDto = { + // invoice_id: invoiceId, + // hasError: true, + // message: (err as Error).message, + // received_at: new Date().toISOString(), + // tax_id: null, + // status: TspProviderResponseStatus.NOT_SEND, + // } + // return failure + throw err + } + } + + private mapResponseStatus( + status: NamaProviderResponseStatus, + ): TspProviderResponseStatus { + switch (status.toUpperCase()) { + case NamaProviderResponseStatus.SUCCESS: + case NamaProviderResponseStatus.POSTED: + return TspProviderResponseStatus.SUCCESS + case NamaProviderResponseStatus.PENDING: + case NamaProviderResponseStatus.IN_PROGRESS: + return TspProviderResponseStatus.QUEUED + case NamaProviderResponseStatus.FAILED: + return TspProviderResponseStatus.FAILURE + default: + return TspProviderResponseStatus.QUEUED + } + } + + private mapToNamaRequestDto( + payload: TspProviderSendPayloadDto, + ): NamaProviderRequestDto { + return { + uuid: payload.invoice_id, + economic_code: payload.economic_code, + fiscal_id: payload.fiscal_id, + payment: this.mapPayments(payload.payments), + header: { + ins: this.mapTspProviderRequestType(payload.type), + inp: this.mapInvoiceTemplate(payload.invoice_template), + inty: this.mapTspProviderCustomerType(payload.customer_type), + inno: payload.invoice_number.toString(), + tins: '', + indatim: payload.invoice_date.getTime() + '', + setm: '1', + ...this.mapCustomerInfo(payload.customer), + }, + body: payload.items.map(item => ({ + sstid: item.sku, + vra: item.sku_vat, + // sstt: item.unit_type, + fee: String(item.unit_price), + dis: String(item.discount), + mu: item.measure_unit, + am: String(item.quantity), + consfee: '0', + bros: '0', + spro: '0', + })), + } + } + + private mapTspProviderRequestType(type: TspProviderRequestType) { + switch (type) { + case TspProviderRequestType.MAIN: + return '1' + case TspProviderRequestType.UPDATE: + return '2' + case TspProviderRequestType.REVOKE: + return '3' + case TspProviderRequestType.REMOVE: + return '4' + } + } + + private mapInvoiceTemplate(template: InvoiceTemplateType) { + switch (template) { + case InvoiceTemplateType.SALE: + return '1' + case InvoiceTemplateType.FX_SALE: + return '2' + case InvoiceTemplateType.GOLD_JEWELRY: + return '3' + case InvoiceTemplateType.CONTRACT: + return '4' + case InvoiceTemplateType.UTILITY: + return '5' + case InvoiceTemplateType.AIR_TICKET: + return '6' + case InvoiceTemplateType.EXPORT: + return '7' + case InvoiceTemplateType.BILL_OF_LADING: + return '8' + case InvoiceTemplateType.PETROCHEMICAL: + return '9' + case InvoiceTemplateType.COMMODITY_EXCHANGE: + return '11' + case InvoiceTemplateType.INSURANCE: + return '13' + } + } + + private mapTspProviderCustomerType(type?: TspProviderCustomerType) { + switch (type) { + case TspProviderCustomerType.Unknown: + return '1' + case TspProviderCustomerType.Known: + return '2' + default: + return '3' + } + } + + private mapCustomerType(type?: CustomerType) { + switch (type) { + case CustomerType.INDIVIDUAL: + return '1' + case CustomerType.LEGAL: + return '2' + default: + return '5' + } + } + + private mapCustomerInfo(customer?: CustomerInfoDto) { + const info = {} as any + info.tob = this.mapCustomerType(customer?.type) + if (customer?.type === CustomerType.LEGAL && customer.legal_info) { + info.name = customer.legal_info.name + info.bid = customer.legal_info.economic_code + info.address = '' + } else if (customer?.type === CustomerType.INDIVIDUAL && customer.individual_info) { + info.name = `${customer.individual_info?.first_name || ''} ${ + customer.individual_info?.last_name || '' + }`.trim() + info.bid = customer.individual_info.national_id + info.mobile = customer.individual_info.mobile_number + info.address = '' + } + return info + } + + private mapPaymentMethod(method: PaymentMethodType): number { + switch (method) { + case PaymentMethodType.CHEQUE: + return 1 + case PaymentMethodType.SET_OFF: + return 2 + case PaymentMethodType.CASH: + return 3 + case PaymentMethodType.TERMINAL: + return 4 + case PaymentMethodType.PAYMENT_GATEWAY: + return 5 + case PaymentMethodType.CARD: + return 6 + case PaymentMethodType.BANK: + return 7 + case PaymentMethodType.OTHER: + return 8 + } + } + + private mapPayments(payments: PaymentInfoDto[]): NamaProviderPaymentInfoDto[] { + return payments.map(payment => ({ + pmt: this.mapPaymentMethod(payment.payment_method), + pv: payment.amount, + trn: payment.tracking_code, + pcn: payment.card_number, + pdt: payment.paid_at ? String(payment.paid_at.getTime()) : undefined, + })) + } +} diff --git a/src/modules/tspProviders/switch/nama/nama-provider.dto.ts b/src/modules/tspProviders/switch/nama/nama-provider.dto.ts new file mode 100644 index 0000000..5f7d332 --- /dev/null +++ b/src/modules/tspProviders/switch/nama/nama-provider.dto.ts @@ -0,0 +1,261 @@ +import { TspProviderResponseStatus } from '@/generated/prisma/enums' +import { ApiProperty } from '@nestjs/swagger' +import { Type } from 'class-transformer' +import { + IsArray, + IsEnum, + IsNumber, + IsOptional, + IsString, + Min, + ValidateNested, +} from 'class-validator' + +export enum NamaProviderResponseStatus { + POSTED = 'SUCCESS', + PENDING = 'PENDING', + IN_PROGRESS = 'IN_PROGRESS', + SUCCESS = 'SUCCESS', + FAILED = 'FAILED', +} + +export class NamaProviderPaymentInfoDto { + @ApiProperty({ required: true, description: 'روش پرداخت' }) + @IsNumber() + pmt: number + + @ApiProperty({ required: true, description: 'مبلغ پرداختی' }) + @IsNumber() + @Min(10_000) + pv: number + + @ApiProperty({ required: false, description: 'شماره‌ی پیگیری' }) + @IsOptional() + @IsString() + trn?: string + + @ApiProperty({ required: false, description: 'شماره‌ی کارت پرداخت کننده‌ی صورت‌حساب' }) + @IsOptional() + @IsString() + pcn?: string + + @ApiProperty({ required: false, description: 'تاریخ و زمان پرداخت صورت‌حساب unix' }) + @IsOptional() + @IsNumber() + pdt?: string +} + +export class NamaProviderBodyItemDto { + @ApiProperty() + @IsString() + sstid: string + + @ApiProperty() + @IsString() + vra: string + + // @ApiProperty() + // @IsString() + // sstt: string + + @ApiProperty() + @IsString() + fee: string + + @ApiProperty() + @IsString() + dis: string + + @ApiProperty() + @IsString() + mu: string + + @ApiProperty() + @IsString() + am: string + + @ApiProperty() + @IsString() + consfee: string + + @ApiProperty() + @IsString() + bros: string + + @ApiProperty() + @IsString() + spro: string +} + +export class NamaProviderHeaderDto { + @ApiProperty({ required: true }) + @IsString() + ins: string + + @ApiProperty() + @IsString() + inp: string + + @ApiProperty({ required: true }) + @IsString() + inty: string + + // @ApiProperty({required: true}) + // @IsString() + // unique_tax_code: string + + @ApiProperty({ required: true }) + @IsString() + inno: string + + @ApiProperty({ required: true }) + @IsString() + tins: string + + @ApiProperty({ required: true }) + @IsString() + indatim: string + + @ApiProperty({ required: true }) + @IsString() + name: string + + @ApiProperty({ required: true }) + @IsString() + tob: string + + @ApiProperty() + @IsOptional() + @IsString() + address?: string + + @ApiProperty() + @IsOptional() + @IsString() + mobile?: string + + @ApiProperty() + @IsString() + bid: string + + @ApiProperty({ required: true }) + @IsString() + setm: string +} + +export class NamaProviderRequestDto { + @ApiProperty({ type: [NamaProviderBodyItemDto] }) + @IsArray() + @ValidateNested({ each: true }) + @Type(() => NamaProviderBodyItemDto) + body: NamaProviderBodyItemDto[] + + @ApiProperty({ type: [NamaProviderPaymentInfoDto] }) + @IsArray() + @ValidateNested({ each: true }) + @Type(() => NamaProviderPaymentInfoDto) + payment: NamaProviderPaymentInfoDto[] + + @ApiProperty({ type: NamaProviderHeaderDto }) + @ValidateNested() + @Type(() => NamaProviderHeaderDto) + header: NamaProviderHeaderDto + + @ApiProperty() + @IsString() + uuid: string + + @ApiProperty() + @IsString() + economic_code: string + + @ApiProperty() + @IsString() + fiscal_id: string +} + +export class NamaProviderApiErrorItemDto { + @ApiProperty() + @IsString() + code: string + + @ApiProperty() + @IsString() + message: string +} + +export class NamaProviderApiErrorResponseDto { + @ApiProperty({ type: [NamaProviderApiErrorItemDto], required: false }) + @IsOptional() + @IsArray() + @ValidateNested({ each: true }) + @Type(() => NamaProviderApiErrorItemDto) + error?: NamaProviderApiErrorItemDto +} + +export class NamaProviderSendItemResponseDto { + @ApiProperty() + @IsString() + uuid: string + + @ApiProperty() + @IsString() + message: string + + @ApiProperty() + @IsString() + status: NamaProviderResponseStatus + + @ApiProperty() + @IsString() + tax_id: string + + @ApiProperty() + @IsString() + inno: string + + @ApiProperty({ required: true }) + @IsString() + reference_number: string + + @ApiProperty({ type: () => NamaProviderApiErrorResponseDto, required: false }) + @IsOptional() + @ValidateNested() + @Type(() => NamaProviderApiErrorResponseDto) + tax_api_response?: NamaProviderApiErrorResponseDto + + @ApiProperty({ required: false }) + @IsOptional() + @IsString() + tsp_update_time: string +} + +export class NamaProviderGetResponseDto { + @ApiProperty() + @IsString() + uuid: string + + @ApiProperty() + @IsString() + message: string + + @ApiProperty({ enum: TspProviderResponseStatus }) + @IsEnum(TspProviderResponseStatus) + status: TspProviderResponseStatus + + @ApiProperty() + @IsString() + tax_id: string + + @ApiProperty() + @IsString() + inno: string + + @ApiProperty() + @IsString() + reference_number: string + + @ApiProperty() + @IsString() + tsp_update_time: string +}