From dee96b6e916667e1cbecaab67b6fbb5b77e596d2 Mon Sep 17 00:00:00 2001 From: ahasani194 Date: Mon, 27 Apr 2026 10:45:39 +0330 Subject: [PATCH] feat: add response DTOs for various services across modules - Created response DTOs for ConfigService, AppService, AuthService, CatalogsService, AccountsService, BusinessActivityComplexesService, ComplexPosesService, SalesInvoicesService, BusinessActivitiesService, ConsumerBusinessActivityGoodsService, and others. - Implemented Create, FindAll, FindOne, and Update response types for services in consumer, partners, and POS modules. - Added request DTOs for creating and updating goods in the consumer business activities module. - Introduced filtering DTO for partner licenses. - Enhanced response mapping for partner license activations. --- .../20260426071752_init/migration.sql | 75 + .../20260426143218_init/migration.sql | 102 ++ .../20260426153449_init/migration.sql | 22 + prisma/schema/admin/admin.prisma | 2 +- prisma/schema/admin/consumers.prisma | 57 +- prisma/schema/admin/partners.prisma | 5 +- prisma/schema/admin/providers.prisma | 4 +- prisma/schema/shared/customers.prisma | 46 +- prisma/schema/shared/enum.prisma | 5 + prisma/schema/shared/good.prisma | 7 +- prisma/schema/shared/sales.prisma | 21 +- prisma/seed.ts | 33 +- psp_backup_2026-04-27-05-50-22.sql | 1404 ++++++++++++++++ req.d.ts | 2 + src/common/enums/enums.ts | 1 + src/common/guards/auth-consumer.guard.ts | 4 +- src/common/guards/auth-partner.guard.ts | 4 +- src/common/queryConstants/consumer.ts | 31 + src/common/queryConstants/index.ts | 6 +- src/common/utils/index.ts | 4 + .../utils/mappers/consumer_mappers.util.ts | 27 + src/generated/prisma/browser.ts | 10 + src/generated/prisma/client.ts | 10 + src/generated/prisma/commonInputTypes.ts | 102 +- src/generated/prisma/enums.ts | 8 + src/generated/prisma/internal/class.ts | 28 +- .../prisma/internal/prismaNamespace.ts | 231 ++- .../prisma/internal/prismaNamespaceBrowser.ts | 88 +- src/generated/prisma/models.ts | 2 + src/generated/prisma/models/Admin.ts | 70 +- src/generated/prisma/models/AdminAccount.ts | 8 +- .../prisma/models/BusinessActivity.ts | 469 ++++++ src/generated/prisma/models/Complex.ts | 452 ------ src/generated/prisma/models/Consumer.ts | 837 +++++----- .../prisma/models/ConsumerAccount.ts | 24 +- .../prisma/models/ConsumerDevices.ts | 4 +- .../prisma/models/ConsumerIndividual.ts | 1433 +++++++++++++++++ src/generated/prisma/models/ConsumerLegal.ts | 1353 ++++++++++++++++ src/generated/prisma/models/Customer.ts | 278 ++-- .../prisma/models/CustomerIndividual.ts | 207 ++- src/generated/prisma/models/CustomerLegal.ts | 222 +-- src/generated/prisma/models/Good.ts | 182 +-- src/generated/prisma/models/Partner.ts | 406 +++-- src/generated/prisma/models/PartnerAccount.ts | 8 +- src/generated/prisma/models/Provider.ts | 128 +- .../prisma/models/ProviderAccount.ts | 8 +- src/generated/prisma/models/SalesInvoice.ts | 30 +- .../consumers/accounts/accounts.controller.ts | 9 +- .../accounts/dto/accounts-response.dto.ts | 7 + .../business-activities.controller.ts | 5 +- .../complexes/complexes.controller.ts | 5 +- .../complexes/dto/complexes-response.dto.ts | 4 + .../complexes/poses/dto/poses-response.dto.ts | 4 + .../complexes/poses/poses.controller.ts | 5 +- .../dto/business-activities-response.dto.ts | 4 + .../admin/consumers/consumers.controller.ts | 5 +- .../admin/consumers/consumers.service.ts | 67 +- .../consumers/dto/consumers-response.dto.ts | 4 + .../licenses/dto/licenses-response.dto.ts | 3 + .../consumers/licenses/licenses.controller.ts | 3 +- .../device-brands/device-brands.controller.ts | 11 +- .../dto/device-brands-response.dto.ts | 7 + .../admin/devices/devices.controller.ts | 11 +- .../admin/devices/dto/devices-response.dto.ts | 7 + .../admin/guilds/dto/guilds-response.dto.ts | 6 + .../dto/good-categories-response.dto.ts | 6 + .../guilds/goods/dto/goods-response.dto.ts | 6 + .../goods/images/dto/images-response.dto.ts | 6 + .../guilds/goods/images/images.controller.ts | 3 +- src/modules/admin/guilds/guilds.controller.ts | 17 +- .../licenses/dto/licenses-response.dto.ts | 4 + .../admin/licenses/licenses.controller.ts | 5 +- .../admin/licenses/licenses.service.ts | 24 +- .../activatedLicenses.controller.ts | 3 +- .../activatedLicenses.service.ts | 14 +- .../dto/activatedLicenses-response.dto.ts | 4 + .../allocatedAccounts.controller.ts | 3 +- .../dto/allocatedAccounts-response.dto.ts | 3 + ...argeAccountQuotaTransactions.controller.ts | 7 +- ...geAccountQuotaTransactions-response.dto.ts | 5 + .../chargedLicenseTransactions.controller.ts | 7 +- ...chargedLicenseTransactions-response.dto.ts | 5 + src/modules/admin/partners/dto/partner.dto.ts | 4 + .../partners/dto/partners-response.dto.ts | 7 + .../partnerAccounts/accounts.controller.ts | 11 +- .../dto/accounts-response.dto.ts | 7 + .../admin/partners/partners.controller.ts | 52 +- src/modules/admin/partners/partners.module.ts | 2 + .../admin/partners/partners.service.ts | 60 +- .../providers/dto/providers-response.dto.ts | 6 + .../admin/providers/providers.controller.ts | 9 +- .../admin/providers/providers.service.ts | 2 +- .../translate/dto/translate-response.dto.ts | 3 + .../admin/translate/translate.controller.ts | 3 +- .../admin/translate/translate.service.ts | 12 +- .../users/accounts/accounts.controller.ts | 11 +- .../accounts/dto/accounts-response.dto.ts | 7 + .../admin/users/dto/users-response.dto.ts | 7 + src/modules/admin/users/users.controller.ts | 11 +- .../application/application.middleware.ts | 2 +- .../application/auth/dto/auth-response.dto.ts | 3 + .../application/config/config.service.ts | 4 +- .../config/dto/config-response.dto.ts | 4 + .../dto/application-response.dto.ts | 3 + src/modules/auth/auth.controller.ts | 3 +- src/modules/auth/auth.utils.ts | 13 +- src/modules/auth/dto/auth-response.dto.ts | 5 + src/modules/catalog/catalog.controller.ts | 11 +- .../catalog/dto/catalog-response.dto.ts | 7 + .../consumer/accounts/accounts.controller.ts | 7 +- .../accounts/dto/accounts-response.dto.ts | 5 + .../dto/permissions-response.dto.ts | 4 + .../permissions/permissions.controller.ts | 5 +- .../permissions/permissions.service.ts | 6 +- .../business-activities.controller.ts | 7 +- .../business-activities.module.ts | 7 +- .../complexes/complexes.controller.ts | 9 +- .../complexes/complexes.module.ts | 3 +- .../complexes/dto/complexes-response.dto.ts | 6 + .../complexes/goods/goods.controller.ts | 51 - .../complexes/goods/goods.module.ts | 12 - .../complexes/poses/dto/poses-response.dto.ts | 6 + .../complexes/poses/poses.controller.ts | 9 +- .../dto/sales-invoices-response.dto.ts | 4 + .../dto/sales-invoice-items-response.dto.ts | 5 + .../sales-invoice-payments-response.dto.ts | 5 + .../sales-invoices/sales-invoices.service.ts | 4 +- .../dto/business-activities-response.dto.ts | 5 + .../{complexes => }/goods/dto/good.dto.ts | 0 .../goods/dto/goods-response.dto.ts | 6 + .../goods/goods.controller.ts | 54 + .../business-activities/goods/goods.module.ts | 12 + .../{complexes => }/goods/goods.service.ts | 50 +- src/modules/consumer/consumer.controller.ts | 3 +- src/modules/consumer/consumer.service.ts | 9 +- .../customers/customers.controller.ts | 10 +- .../consumer/customers/customers.service.ts | 40 +- .../customers/dto/customers-response.dto.ts | 6 + .../dto/sale-invoices-response.dto.ts | 4 + .../sale-invoices/sale-invoices.controller.ts | 5 +- .../sale-invoices/sale-invoices.service.ts | 35 +- .../consumer/dto/consumer-response.dto.ts | 3 + .../consumer/poses/dto/poses-response.dto.ts | 5 + .../consumer/poses/poses.controller.ts | 7 +- src/modules/consumer/poses/poses.service.ts | 2 +- .../dto/saleInvoices-response.dto.ts | 4 + .../saleInvoices/saleInvoices.controller.ts | 5 +- .../saleInvoices/saleInvoices.service.ts | 4 +- .../statistics/dto/statistics-response.dto.ts | 3 + .../statistics/statistics.controller.ts | 3 +- src/modules/consumer/utils/index.ts | 2 +- .../utils/mapConsumerWithLicense.util.ts | 18 - src/modules/enums/dto/enums-response.dto.ts | 4 + src/modules/enums/enums.controller.ts | 37 +- .../partners/accounts/accounts.controller.ts | 7 +- .../accounts/dto/accounts-response.dto.ts | 6 + .../consumers/accounts/accounts.controller.ts | 7 +- .../consumers/accounts/accounts.service.ts | 13 +- .../accounts/dto/accounts-response.dto.ts | 5 + .../accounts-charge.controller.ts | 3 +- .../accounts-charge.service.ts | 13 +- .../dto/accounts-charge-response.dto.ts | 3 + .../business-activities.controller.ts | 10 +- .../business-activities.service.ts | 34 +- .../complexes/complexes.controller.ts | 9 +- .../complexes/complexes.service.ts | 13 +- .../complexes/dto/complexes-response.dto.ts | 6 + .../complexes/poses/dto/poses-response.dto.ts | 6 + .../complexes/poses/poses.controller.ts | 9 +- .../dto/business-activities-response.dto.ts | 6 + .../consumers/consumers.controller.ts | 9 +- .../partners/consumers/consumers.service.ts | 156 +- .../consumers/dto/consumers-response.dto.ts | 6 + .../consumers/dto/create-consumers.dto.ts | 33 +- .../licenses/dto/licenses-response.dto.ts | 3 + .../consumers/licenses/licenses.controller.ts | 3 +- src/modules/partners/dto/partner.dto.ts | 6 +- .../partners/dto/partners-response.dto.ts | 5 + .../licenses/dto/licenses-filter.dto.ts | 38 + .../licenses/dto/licenses-response.dto.ts | 41 +- .../partners/licenses/licenses.controller.ts | 10 +- .../partners/licenses/licenses.mapper.ts | 104 ++ .../partners/licenses/licenses.service.ts | 63 +- src/modules/partners/partners.controller.ts | 39 +- src/modules/partners/partners.module.ts | 8 +- src/modules/partners/partners.service.ts | 52 +- .../customers/dto/customers-response.dto.ts | 5 + src/modules/pos/dto/pos-response.dto.ts | 5 + .../dto/good-categories-response.dto.ts | 3 + .../good-categories.controller.ts | 6 +- .../good-categories.service.ts | 10 +- .../pos/goods/dto/goods-response.dto.ts | 5 + src/modules/pos/goods/goods.controller.ts | 13 +- src/modules/pos/goods/goods.service.ts | 22 +- src/modules/pos/pos.controller.ts | 19 +- src/modules/pos/pos.middleware.ts | 2 +- src/modules/pos/pos.service.ts | 19 +- .../dto/create-sales-invoice.dto.ts | 4 +- .../dto/sales-invoices-response.dto.ts | 5 + .../dto/sales-invoice-items-response.dto.ts | 5 + .../sales-invoice-payments-response.dto.ts | 5 + .../sales-invoices.controller.ts | 2 +- .../sales-invoices/sales-invoices.service.ts | 20 +- .../storage/dto/storage-response.dto.ts | 4 + .../dto/trigger-logs-response.dto.ts | 5 + .../dto/image-uploader-response.dto.ts | 3 + .../uploader/dto/uploader-response.dto.ts | 7 + src/modules/uploader/uploader.controller.ts | 3 +- 208 files changed, 8058 insertions(+), 2349 deletions(-) create mode 100644 prisma/migrations/20260426071752_init/migration.sql create mode 100644 prisma/migrations/20260426143218_init/migration.sql create mode 100644 prisma/migrations/20260426153449_init/migration.sql create mode 100644 psp_backup_2026-04-27-05-50-22.sql create mode 100644 src/common/queryConstants/consumer.ts create mode 100644 src/common/utils/index.ts create mode 100644 src/common/utils/mappers/consumer_mappers.util.ts create mode 100644 src/generated/prisma/models/ConsumerIndividual.ts create mode 100644 src/generated/prisma/models/ConsumerLegal.ts create mode 100644 src/modules/admin/consumers/accounts/dto/accounts-response.dto.ts create mode 100644 src/modules/admin/consumers/business-activities/complexes/dto/complexes-response.dto.ts create mode 100644 src/modules/admin/consumers/business-activities/complexes/poses/dto/poses-response.dto.ts create mode 100644 src/modules/admin/consumers/business-activities/dto/business-activities-response.dto.ts create mode 100644 src/modules/admin/consumers/dto/consumers-response.dto.ts create mode 100644 src/modules/admin/consumers/licenses/dto/licenses-response.dto.ts create mode 100644 src/modules/admin/device-brands/dto/device-brands-response.dto.ts create mode 100644 src/modules/admin/devices/dto/devices-response.dto.ts create mode 100644 src/modules/admin/guilds/dto/guilds-response.dto.ts create mode 100644 src/modules/admin/guilds/good-categories/dto/good-categories-response.dto.ts create mode 100644 src/modules/admin/guilds/goods/dto/goods-response.dto.ts create mode 100644 src/modules/admin/guilds/goods/images/dto/images-response.dto.ts create mode 100644 src/modules/admin/licenses/dto/licenses-response.dto.ts create mode 100644 src/modules/admin/partners/activatedLicenses/dto/activatedLicenses-response.dto.ts create mode 100644 src/modules/admin/partners/allocatedAccounts/dto/allocatedAccounts-response.dto.ts create mode 100644 src/modules/admin/partners/chargeAccountQoutaTransactions/dto/chargeAccountQuotaTransactions-response.dto.ts create mode 100644 src/modules/admin/partners/chargedLicenseTransactions/dto/chargedLicenseTransactions-response.dto.ts create mode 100644 src/modules/admin/partners/dto/partners-response.dto.ts create mode 100644 src/modules/admin/partners/partnerAccounts/dto/accounts-response.dto.ts create mode 100644 src/modules/admin/providers/dto/providers-response.dto.ts create mode 100644 src/modules/admin/translate/dto/translate-response.dto.ts create mode 100644 src/modules/admin/users/accounts/dto/accounts-response.dto.ts create mode 100644 src/modules/admin/users/dto/users-response.dto.ts create mode 100644 src/modules/application/auth/dto/auth-response.dto.ts create mode 100644 src/modules/application/config/dto/config-response.dto.ts create mode 100644 src/modules/application/dto/application-response.dto.ts create mode 100644 src/modules/auth/dto/auth-response.dto.ts create mode 100644 src/modules/catalog/dto/catalog-response.dto.ts create mode 100644 src/modules/consumer/accounts/dto/accounts-response.dto.ts create mode 100644 src/modules/consumer/accounts/permissions/dto/permissions-response.dto.ts create mode 100644 src/modules/consumer/business-activities/complexes/dto/complexes-response.dto.ts delete mode 100644 src/modules/consumer/business-activities/complexes/goods/goods.controller.ts delete mode 100644 src/modules/consumer/business-activities/complexes/goods/goods.module.ts create mode 100644 src/modules/consumer/business-activities/complexes/poses/dto/poses-response.dto.ts create mode 100644 src/modules/consumer/business-activities/complexes/poses/sales-invoices/dto/sales-invoices-response.dto.ts create mode 100644 src/modules/consumer/business-activities/complexes/poses/sales-invoices/sales-invoice-items/dto/sales-invoice-items-response.dto.ts create mode 100644 src/modules/consumer/business-activities/complexes/poses/sales-invoices/sales-invoice-payments/dto/sales-invoice-payments-response.dto.ts create mode 100644 src/modules/consumer/business-activities/dto/business-activities-response.dto.ts rename src/modules/consumer/business-activities/{complexes => }/goods/dto/good.dto.ts (100%) create mode 100644 src/modules/consumer/business-activities/goods/dto/goods-response.dto.ts create mode 100644 src/modules/consumer/business-activities/goods/goods.controller.ts create mode 100644 src/modules/consumer/business-activities/goods/goods.module.ts rename src/modules/consumer/business-activities/{complexes => }/goods/goods.service.ts (73%) create mode 100644 src/modules/consumer/customers/dto/customers-response.dto.ts create mode 100644 src/modules/consumer/customers/sale-invoices/dto/sale-invoices-response.dto.ts create mode 100644 src/modules/consumer/dto/consumer-response.dto.ts create mode 100644 src/modules/consumer/poses/dto/poses-response.dto.ts create mode 100644 src/modules/consumer/saleInvoices/dto/saleInvoices-response.dto.ts create mode 100644 src/modules/consumer/statistics/dto/statistics-response.dto.ts delete mode 100644 src/modules/consumer/utils/mapConsumerWithLicense.util.ts create mode 100644 src/modules/enums/dto/enums-response.dto.ts create mode 100644 src/modules/partners/accounts/dto/accounts-response.dto.ts create mode 100644 src/modules/partners/consumers/accounts/dto/accounts-response.dto.ts create mode 100644 src/modules/partners/consumers/business-activities/accounts-charge/dto/accounts-charge-response.dto.ts create mode 100644 src/modules/partners/consumers/business-activities/complexes/dto/complexes-response.dto.ts create mode 100644 src/modules/partners/consumers/business-activities/complexes/poses/dto/poses-response.dto.ts create mode 100644 src/modules/partners/consumers/business-activities/dto/business-activities-response.dto.ts create mode 100644 src/modules/partners/consumers/dto/consumers-response.dto.ts create mode 100644 src/modules/partners/consumers/licenses/dto/licenses-response.dto.ts create mode 100644 src/modules/partners/dto/partners-response.dto.ts create mode 100644 src/modules/partners/licenses/dto/licenses-filter.dto.ts create mode 100644 src/modules/partners/licenses/licenses.mapper.ts create mode 100644 src/modules/pos/customers/dto/customers-response.dto.ts create mode 100644 src/modules/pos/dto/pos-response.dto.ts create mode 100644 src/modules/pos/good-categories/dto/good-categories-response.dto.ts create mode 100644 src/modules/pos/goods/dto/goods-response.dto.ts create mode 100644 src/modules/pos/sales-invoices/dto/sales-invoices-response.dto.ts create mode 100644 src/modules/pos/sales-invoices/sales-invoice-items/dto/sales-invoice-items-response.dto.ts create mode 100644 src/modules/pos/sales-invoices/sales-invoice-payments/dto/sales-invoice-payments-response.dto.ts create mode 100644 src/modules/storage/dto/storage-response.dto.ts create mode 100644 src/modules/trigger-logs/dto/trigger-logs-response.dto.ts create mode 100644 src/modules/uploader/dto/image-uploader-response.dto.ts create mode 100644 src/modules/uploader/dto/uploader-response.dto.ts diff --git a/prisma/migrations/20260426071752_init/migration.sql b/prisma/migrations/20260426071752_init/migration.sql new file mode 100644 index 0000000..9bc92e5 --- /dev/null +++ b/prisma/migrations/20260426071752_init/migration.sql @@ -0,0 +1,75 @@ +/* + Warnings: + + - You are about to drop the column `complex_id` on the `customer_individuals` table. All the data in the column will be lost. + - You are about to drop the column `complex_id` on the `customer_legal` table. All the data in the column will be lost. + - You are about to drop the column `unknown_customer` on the `customers` table. All the data in the column will be lost. + - You are about to drop the column `complex_id` on the `goods` table. All the data in the column will be lost. + - A unique constraint covering the columns `[business_activity_id,national_id]` on the table `customer_individuals` will be added. If there are existing duplicate values, this will fail. + - A unique constraint covering the columns `[business_activity_id,economic_code]` on the table `customer_legal` will be added. If there are existing duplicate values, this will fail. + - Added the required column `business_activity_id` to the `customer_individuals` table without a default value. This is not possible if the table is not empty. + - Added the required column `mobile_number` to the `customer_individuals` table without a default value. This is not possible if the table is not empty. + - Added the required column `business_activity_id` to the `customer_legal` table without a default value. This is not possible if the table is not empty. + +*/ +-- DropForeignKey +ALTER TABLE `customer_individuals` DROP FOREIGN KEY `customer_individuals_complex_id_fkey`; + +-- DropForeignKey +ALTER TABLE `customer_legal` DROP FOREIGN KEY `customer_legal_complex_id_fkey`; + +-- DropForeignKey +ALTER TABLE `goods` DROP FOREIGN KEY `goods_complex_id_fkey`; + +-- DropIndex +DROP INDEX `customer_individuals_complex_id_idx` ON `customer_individuals`; + +-- DropIndex +DROP INDEX `customer_individuals_complex_id_national_id_key` ON `customer_individuals`; + +-- DropIndex +DROP INDEX `customer_legal_complex_id_idx` ON `customer_legal`; + +-- DropIndex +DROP INDEX `customer_legal_complex_id_registration_number_key` ON `customer_legal`; + +-- DropIndex +DROP INDEX `goods_complex_id_fkey` ON `goods`; + +-- AlterTable +ALTER TABLE `customer_individuals` DROP COLUMN `complex_id`, + ADD COLUMN `business_activity_id` VARCHAR(191) NOT NULL, + ADD COLUMN `mobile_number` CHAR(15) NOT NULL; + +-- AlterTable +ALTER TABLE `customer_legal` DROP COLUMN `complex_id`, + ADD COLUMN `business_activity_id` VARCHAR(191) NOT NULL, + MODIFY `registration_number` CHAR(20) NULL; + +-- AlterTable +ALTER TABLE `customers` DROP COLUMN `unknown_customer`; + +-- AlterTable +ALTER TABLE `goods` DROP COLUMN `complex_id`, + ADD COLUMN `business_activity_id` VARCHAR(191) NULL; + +-- CreateIndex +CREATE INDEX `customer_individuals_business_activity_id_idx` ON `customer_individuals`(`business_activity_id`); + +-- CreateIndex +CREATE UNIQUE INDEX `customer_individuals_business_activity_id_national_id_key` ON `customer_individuals`(`business_activity_id`, `national_id`); + +-- CreateIndex +CREATE INDEX `customer_legal_business_activity_id_idx` ON `customer_legal`(`business_activity_id`); + +-- CreateIndex +CREATE UNIQUE INDEX `customer_legal_business_activity_id_economic_code_key` ON `customer_legal`(`business_activity_id`, `economic_code`); + +-- AddForeignKey +ALTER TABLE `customer_individuals` ADD CONSTRAINT `customer_individuals_business_activity_id_fkey` FOREIGN KEY (`business_activity_id`) REFERENCES `business_activities`(`id`) ON DELETE RESTRICT ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE `customer_legal` ADD CONSTRAINT `customer_legal_business_activity_id_fkey` FOREIGN KEY (`business_activity_id`) REFERENCES `business_activities`(`id`) ON DELETE RESTRICT ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE `goods` ADD CONSTRAINT `goods_business_activity_id_fkey` FOREIGN KEY (`business_activity_id`) REFERENCES `business_activities`(`id`) ON DELETE SET NULL ON UPDATE CASCADE; diff --git a/prisma/migrations/20260426143218_init/migration.sql b/prisma/migrations/20260426143218_init/migration.sql new file mode 100644 index 0000000..18fb85a --- /dev/null +++ b/prisma/migrations/20260426143218_init/migration.sql @@ -0,0 +1,102 @@ +/* +Consumer profile split migration. + +Existing profile data is copied into `individual_consumers` before the source +columns are removed from `consumers`. +*/ +-- AlterTable +ALTER TABLE `consumers` +ADD COLUMN `type` ENUM('INDIVIDUAL', 'LEGAL') NOT NULL DEFAULT 'INDIVIDUAL'; + +UPDATE `consumers` SET `type` = 'INDIVIDUAL'; + +-- DropForeignKey +ALTER TABLE `consumers` DROP FOREIGN KEY `consumers_partner_id_fkey`; + +-- DropIndex +DROP INDEX `consumers_mobile_number_partner_id_key` ON `consumers`; + +-- DropIndex +DROP INDEX `consumers_national_code_partner_id_key` ON `consumers`; + +-- DropIndex +DROP INDEX `consumers_partner_id_fkey` ON `consumers`; + +-- CreateTable +CREATE TABLE `individual_consumers` ( + `first_name` VARCHAR(191) NOT NULL, + `last_name` VARCHAR(191) NOT NULL, + `mobile_number` VARCHAR(191) NOT NULL, + `national_code` VARCHAR(191) NOT NULL, + `created_at` TIMESTAMP(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0), + `updated_at` TIMESTAMP(0) NOT NULL, + `partner_id` VARCHAR(191) NOT NULL, + `consumer_id` VARCHAR(191) NOT NULL, + UNIQUE INDEX `individual_consumers_mobile_number_consumer_id_key` ( + `mobile_number`, + `consumer_id` + ), + UNIQUE INDEX `individual_consumers_partner_id_national_code_key` (`partner_id`, `national_code`), + PRIMARY KEY (`consumer_id`) +) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + +-- CreateTable +CREATE TABLE `legal_consumers` ( + `name` VARCHAR(191) NOT NULL, + `registration_code` VARCHAR(191) NOT NULL, + `created_at` TIMESTAMP(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0), + `updated_at` TIMESTAMP(0) NOT NULL, + `partner_id` VARCHAR(191) NOT NULL, + `consumer_id` VARCHAR(191) NOT NULL, + UNIQUE INDEX `legal_consumers_partner_id_registration_code_key` ( + `partner_id`, + `registration_code` + ), + PRIMARY KEY (`consumer_id`) +) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; + +INSERT INTO + `individual_consumers` ( + `first_name`, + `last_name`, + `mobile_number`, + `national_code`, + `created_at`, + `updated_at`, + `partner_id`, + `consumer_id` + ) +SELECT + `first_name`, + `last_name`, + `mobile_number`, + `national_code`, + `created_at`, + `updated_at`, + `partner_id`, + `id` +FROM `consumers`; + +ALTER TABLE `consumers` +DROP COLUMN `first_name`, +DROP COLUMN `last_name`, +DROP COLUMN `mobile_number`, +DROP COLUMN `national_code`, +DROP COLUMN `partner_id`, +MODIFY `type` ENUM('INDIVIDUAL', 'LEGAL') NOT NULL; + +-- AddForeignKey +ALTER TABLE `individual_consumers` +ADD CONSTRAINT `individual_consumers_partner_id_fkey` FOREIGN KEY (`partner_id`) REFERENCES `partners` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE `individual_consumers` +ADD CONSTRAINT `individual_consumers_consumer_id_fkey` FOREIGN KEY (`consumer_id`) REFERENCES `consumers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE `legal_consumers` +ADD CONSTRAINT `legal_consumers_partner_id_fkey` FOREIGN KEY (`partner_id`) REFERENCES `partners` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE; + +-- AddForeignKey +ALTER TABLE `legal_consumers` +ADD CONSTRAINT `legal_consumers_consumer_id_fkey` FOREIGN KEY (`consumer_id`) REFERENCES `consumers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE; diff --git a/prisma/migrations/20260426153449_init/migration.sql b/prisma/migrations/20260426153449_init/migration.sql new file mode 100644 index 0000000..b7e9739 --- /dev/null +++ b/prisma/migrations/20260426153449_init/migration.sql @@ -0,0 +1,22 @@ +ALTER TABLE `individual_consumers` RENAME TO `consumers_individual`; +ALTER TABLE `legal_consumers` RENAME TO `consumers_legal`; + +ALTER TABLE `consumers_individual` + RENAME INDEX `individual_consumers_mobile_number_consumer_id_key` TO `consumers_individual_mobile_number_consumer_id_key`; +ALTER TABLE `consumers_individual` + RENAME INDEX `individual_consumers_partner_id_national_code_key` TO `consumers_individual_partner_id_national_code_key`; +ALTER TABLE `consumers_legal` + RENAME INDEX `legal_consumers_partner_id_registration_code_key` TO `consumers_legal_partner_id_registration_code_key`; + +ALTER TABLE `consumers_individual` DROP FOREIGN KEY `individual_consumers_partner_id_fkey`; +ALTER TABLE `consumers_individual` DROP FOREIGN KEY `individual_consumers_consumer_id_fkey`; +ALTER TABLE `consumers_legal` DROP FOREIGN KEY `legal_consumers_partner_id_fkey`; +ALTER TABLE `consumers_legal` DROP FOREIGN KEY `legal_consumers_consumer_id_fkey`; + +ALTER TABLE `consumers_individual` + ADD CONSTRAINT `consumers_individual_partner_id_fkey` FOREIGN KEY (`partner_id`) REFERENCES `partners`(`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + ADD CONSTRAINT `consumers_individual_consumer_id_fkey` FOREIGN KEY (`consumer_id`) REFERENCES `consumers`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; + +ALTER TABLE `consumers_legal` + ADD CONSTRAINT `consumers_legal_partner_id_fkey` FOREIGN KEY (`partner_id`) REFERENCES `partners`(`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + ADD CONSTRAINT `consumers_legal_consumer_id_fkey` FOREIGN KEY (`consumer_id`) REFERENCES `consumers`(`id`) ON DELETE CASCADE ON UPDATE CASCADE; diff --git a/prisma/schema/admin/admin.prisma b/prisma/schema/admin/admin.prisma index a05ffc3..987696e 100644 --- a/prisma/schema/admin/admin.prisma +++ b/prisma/schema/admin/admin.prisma @@ -23,7 +23,7 @@ model Admin { created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt() @db.Timestamp(0) - adminAccounts AdminAccount[] + accounts AdminAccount[] @@map("admins") } diff --git a/prisma/schema/admin/consumers.prisma b/prisma/schema/admin/consumers.prisma index db8d435..fc5a72f 100644 --- a/prisma/schema/admin/consumers.prisma +++ b/prisma/schema/admin/consumers.prisma @@ -20,12 +20,27 @@ model ConsumerAccount { } model Consumer { - id String @id @default(ulid()) - mobile_number String - national_code String + id String @id @default(ulid()) + type ConsumerType + status ConsumerStatus @default(ACTIVE) + + created_at DateTime @default(now()) @db.Timestamp(0) + updated_at DateTime @updatedAt() @db.Timestamp(0) + + accounts ConsumerAccount[] + business_activities BusinessActivity[] + devices ConsumerDevices[] + individual ConsumerIndividual? + legal ConsumerLegal? + + @@map("consumers") +} + +model ConsumerIndividual { first_name String last_name String - status ConsumerStatus @default(ACTIVE) + mobile_number String + national_code String created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt() @db.Timestamp(0) @@ -33,13 +48,29 @@ model Consumer { partner_id String partner Partner @relation(fields: [partner_id], references: [id]) - consumer_accounts ConsumerAccount[] - business_activities BusinessActivity[] - consumer_devices ConsumerDevices[] + consumer_id String @id + consumer Consumer @relation(fields: [consumer_id], references: [id], onDelete: Cascade) - @@unique([mobile_number, partner_id]) - @@unique([national_code, partner_id]) - @@map("consumers") + @@unique([mobile_number, consumer_id]) + @@unique([partner_id, national_code]) + @@map("consumers_individual") +} + +model ConsumerLegal { + name String + registration_code String + + created_at DateTime @default(now()) @db.Timestamp(0) + updated_at DateTime @updatedAt() @db.Timestamp(0) + + partner_id String + partner Partner @relation(fields: [partner_id], references: [id]) + + consumer_id String @id + consumer Consumer @relation(fields: [consumer_id], references: [id], onDelete: Cascade) + + @@unique([partner_id, registration_code]) + @@map("consumers_legal") } model BusinessActivity { @@ -59,6 +90,9 @@ model BusinessActivity { complexes Complex[] permission_businesses PermissionBusiness[] license_activation LicenseActivation? + goods Good[] + customer_individuals CustomerIndividual[] + customer_legals CustomerLegal[] @@unique([economic_code, consumer_id]) @@map("business_activities") @@ -78,11 +112,8 @@ model Complex { business_activity BusinessActivity @relation(fields: [business_activity_id], references: [id]) pos_list Pos[] - goods Good[] good_categories GoodCategory[] permission_complexes PermissionComplex[] - customer_individuals CustomerIndividual[] - customer_legals CustomerLegal[] @@map("complexes") } diff --git a/prisma/schema/admin/partners.prisma b/prisma/schema/admin/partners.prisma index eaf73c2..45a70d7 100644 --- a/prisma/schema/admin/partners.prisma +++ b/prisma/schema/admin/partners.prisma @@ -24,8 +24,9 @@ model Partner { created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @default(now()) @updatedAt @db.Timestamp(0) - consumers Consumer[] - partner_accounts PartnerAccount[] + accounts PartnerAccount[] + consumers_individual ConsumerIndividual[] + consumers_legal ConsumerLegal[] license_charge_transactions LicenseChargeTransaction[] account_quota_charge_transactions PartnerAccountQuotaChargeTransaction[] license_renew_charge_transactions LicenseRenewChargeTransaction[] diff --git a/prisma/schema/admin/providers.prisma b/prisma/schema/admin/providers.prisma index b2e162b..281d811 100644 --- a/prisma/schema/admin/providers.prisma +++ b/prisma/schema/admin/providers.prisma @@ -23,8 +23,8 @@ model Provider { created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt @db.Timestamp(0) - pos_list Pos[] - provider_accounts ProviderAccount[] + accounts ProviderAccount[] + pos_list Pos[] @@map("providers") } diff --git a/prisma/schema/shared/customers.prisma b/prisma/schema/shared/customers.prisma index 2224978..a830757 100644 --- a/prisma/schema/shared/customers.prisma +++ b/prisma/schema/shared/customers.prisma @@ -1,51 +1,53 @@ model Customer { - id String @id @default(ulid()) - is_favorite Boolean? @default(false) + id String @id @default(ulid()) + is_favorite Boolean? @default(false) + type CustomerType created_at DateTime @default(now()) @db.Timestamp(0) updated_at DateTime @updatedAt @db.Timestamp(0) deleted_at DateTime? @db.Timestamp(0) - type CustomerType - unknown_customer Json? - customer_individual CustomerIndividual? - customer_legal CustomerLegal? - sales_invoices SalesInvoice[] + individual CustomerIndividual? + legal CustomerLegal? + + sales_invoices SalesInvoice[] @@map("customers") } model CustomerIndividual { - first_name String @db.VarChar(255) - last_name String @db.VarChar(255) - national_id String @db.Char(10) + first_name String @db.VarChar(255) + last_name String @db.VarChar(255) + national_id String @db.Char(10) + mobile_number String @db.Char(15) + postal_code String @db.Char(10) economic_code String? @db.Char(10) customer_id String @id customer Customer @relation(fields: [customer_id], references: [id], onDelete: Cascade) - complex_id String - complex Complex @relation(fields: [complex_id], references: [id]) + business_activity_id String + business_activity BusinessActivity @relation(fields: [business_activity_id], references: id) - @@unique([complex_id, national_id]) - @@index([complex_id]) + @@unique([business_activity_id, national_id]) + @@index([business_activity_id]) @@map("customer_individuals") } model CustomerLegal { - company_name String @db.VarChar(255) - economic_code String @db.Char(10) - registration_number String @db.Char(20) - postal_code String @db.Char(10) + company_name String @db.VarChar(255) + economic_code String @db.Char(10) + registration_number String? @db.Char(20) + postal_code String @db.Char(10) customer_id String @id customer Customer @relation(fields: [customer_id], references: [id], onDelete: Cascade) - complex_id String - complex Complex @relation(fields: [complex_id], references: [id]) + business_activity_id String + business_activity BusinessActivity @relation(fields: [business_activity_id], references: id) - @@unique([complex_id, registration_number]) - @@index([complex_id]) + @@unique([business_activity_id, economic_code]) + @@index([business_activity_id]) @@map("customer_legal") } diff --git a/prisma/schema/shared/enum.prisma b/prisma/schema/shared/enum.prisma index 5b013a4..4b2d6c1 100644 --- a/prisma/schema/shared/enum.prisma +++ b/prisma/schema/shared/enum.prisma @@ -150,3 +150,8 @@ enum ApplicationPublisher { CAFE_BAZAR MAYKET } + +enum ConsumerType { + INDIVIDUAL + LEGAL +} diff --git a/prisma/schema/shared/good.prisma b/prisma/schema/shared/good.prisma index 6f61599..d250d75 100644 --- a/prisma/schema/shared/good.prisma +++ b/prisma/schema/shared/good.prisma @@ -15,11 +15,12 @@ model Good { updated_at DateTime @updatedAt @db.Timestamp(0) deleted_at DateTime? @db.Timestamp(0) - complex_id String? category_id String? + category GoodCategory? @relation(fields: [category_id], references: [id]) + + business_activity_id String? + business_activity BusinessActivity? @relation(fields: [business_activity_id], references: [id]) - category GoodCategory? @relation(fields: [category_id], references: [id]) - complex Complex? @relation(fields: [complex_id], references: [id]) sales_invoice_items SalesInvoiceItem[] @@index([category_id]) diff --git a/prisma/schema/shared/sales.prisma b/prisma/schema/shared/sales.prisma index 045cabf..9b5f677 100644 --- a/prisma/schema/shared/sales.prisma +++ b/prisma/schema/shared/sales.prisma @@ -5,18 +5,21 @@ model SalesInvoice { notes String? @db.Text unknown_customer Json? @db.Json invoice_date DateTime? @default(now()) @db.Timestamp(0) - created_at DateTime @default(now()) @db.Timestamp(0) - updated_at DateTime @updatedAt @db.Timestamp(0) + + created_at DateTime @default(now()) @db.Timestamp(0) + updated_at DateTime @updatedAt @db.Timestamp(0) customer_id String? - account_id String - pos_id String + customer Customer? @relation(fields: [customer_id], references: [id]) - customer Customer? @relation(fields: [customer_id], references: [id]) - pos Pos @relation(fields: [pos_id], references: [id]) - consumer_account ConsumerAccount @relation(fields: [account_id], references: [id]) - items SalesInvoiceItem[] - payments SalesInvoicePayment[] + account_id String + consumer_account ConsumerAccount @relation(fields: [account_id], references: [id]) + + pos_id String + pos Pos @relation(fields: [pos_id], references: [id]) + + items SalesInvoiceItem[] + payments SalesInvoicePayment[] @@map("sales_invoices") } diff --git a/prisma/seed.ts b/prisma/seed.ts index ba32982..6b11d9a 100644 --- a/prisma/seed.ts +++ b/prisma/seed.ts @@ -1,6 +1,6 @@ import { PasswordUtil } from '@/common/utils/password.util' import { generateTrackingCode } from '@/common/utils/tracking-code-generator.util' -import { GoodPricingModel, UnitType } from '@/generated/prisma/enums' +import { ConsumerType, GoodPricingModel, UnitType } from '@/generated/prisma/enums' import { GoodCreateInput, GoodCreateManyInput } from '@/generated/prisma/models' import { prisma } from '../src/lib/prisma' @@ -16,7 +16,7 @@ async function main() { last_name: 'حسنی', national_code: '0016022289', mobile_number: '09120258156', - adminAccounts: { + accounts: { create: { account: { create: { @@ -250,7 +250,7 @@ async function main() { name: 'تیس', code: 'TIS', status: 'ACTIVE', - partner_accounts: { + accounts: { create: { role: 'OWNER', account: { @@ -343,11 +343,21 @@ async function main() { }, consumer: { create: { - first_name: 'محمد', - last_name: 'زرگر', - mobile_number: '09120258155', - national_code: '1234567890', - consumer_accounts: { + type: ConsumerType.INDIVIDUAL, + individual: { + create: { + first_name: 'محمد', + last_name: 'زرگر', + mobile_number: '09120258155', + national_code: '1234567890', + partner: { + connect: { + id: partner.id, + }, + }, + }, + }, + accounts: { create: { role: 'OWNER', account: { @@ -360,11 +370,6 @@ async function main() { }, }, }, - partner: { - connect: { - id: partner.id, - }, - }, }, }, guild: { @@ -416,7 +421,7 @@ async function main() { name: 'توسن', code: 'Tosan', status: 'ACTIVE', - provider_accounts: { + accounts: { create: { role: 'OWNER', account: { diff --git a/psp_backup_2026-04-27-05-50-22.sql b/psp_backup_2026-04-27-05-50-22.sql new file mode 100644 index 0000000..894129a --- /dev/null +++ b/psp_backup_2026-04-27-05-50-22.sql @@ -0,0 +1,1404 @@ +-- MySQL dump 10.13 Distrib 9.5.0, for macos15.4 (arm64) +-- +-- Host: 194.59.214.243 Database: psp +-- ------------------------------------------------------ +-- Server version 8.0.45 + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!50503 SET NAMES utf8mb4 */; +/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; +/*!40103 SET TIME_ZONE='+00:00' */; +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; + +-- +-- Current Database: `psp` +-- + +CREATE DATABASE /*!32312 IF NOT EXISTS*/ `psp` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci */ /*!80016 DEFAULT ENCRYPTION='N' */; + +USE `psp`; + +-- +-- Table structure for table `_prisma_migrations` +-- + +DROP TABLE IF EXISTS `_prisma_migrations`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `_prisma_migrations` ( + `id` varchar(36) COLLATE utf8mb4_unicode_ci NOT NULL, + `checksum` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL, + `finished_at` datetime(3) DEFAULT NULL, + `migration_name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `logs` text COLLATE utf8mb4_unicode_ci, + `rolled_back_at` datetime(3) DEFAULT NULL, + `started_at` datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), + `applied_steps_count` int unsigned NOT NULL DEFAULT '0', + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `_prisma_migrations` +-- + +LOCK TABLES `_prisma_migrations` WRITE; +/*!40000 ALTER TABLE `_prisma_migrations` DISABLE KEYS */; +INSERT INTO `_prisma_migrations` VALUES ('1108a09e-549b-4005-9689-98cba940a709','ee9ebde408feab2873611eddfd07bbda9368b20b96273c874d9b4517d3faa56c','2026-04-23 12:44:58.496','20260416125205_init',NULL,NULL,'2026-04-23 12:44:55.151',1),('3541b09f-3669-4f35-a3e3-911057c67e03','5a112a51f306dea0700821a4a83dc9501877055f74328b058618d2fe233e13bb','2026-04-23 16:43:42.282','20260423164340_init',NULL,NULL,'2026-04-23 16:43:40.920',1),('477cf4ee-172f-4404-acb1-f20091de1318','3ac42b4fc3adb21ad76e4e4840e063d1a87133ea781458bde858f7191a7de84e','2026-04-23 12:47:28.831','20260423124719_init',NULL,NULL,'2026-04-23 12:47:19.866',1),('4ed5ba10-2560-44a7-9532-1ce565a5d46b','7e1b0fe4e68b0cd96acbfad7cc5e24e9f950b3f7127c14c8fc0537e445bc170a','2026-04-23 12:44:50.203','20260415113308_init',NULL,NULL,'2026-04-23 12:44:49.433',1),('568c2102-f31a-4caa-a812-f148cc3cec01','91a62b1feba2d5523af07ab99220b1d16b1f829b7c0f1d32dfbbc33a24a227ef','2026-04-24 15:41:07.863','20260424154103_init',NULL,NULL,'2026-04-24 15:41:03.334',1),('6a798168-272b-4bce-805d-63dbedf01671','0825c1eb311bbe206a0860013857b233eb1d6815f273f43ec31e6ca6a1ca6798','2026-04-26 15:33:15.375','20260426143218_init',NULL,NULL,'2026-04-26 15:33:11.443',1),('6ff68053-ba7e-4b28-8686-66fa22351fec','4e1dd6ff9dbc1e444bc81c75ec1f33af765fdf9883b6d35909b1376f625b2307','2026-04-23 23:26:24.979','20260423232622_init',NULL,NULL,'2026-04-23 23:26:22.722',1),('7182a21f-b443-46ed-9cb4-fdae9d3b3962','8556f73f0381b5fc6cce88a1863b43472bfdc679679931eecaeede0337cf5712','2026-04-23 21:49:58.970','20260423214958_init',NULL,NULL,'2026-04-23 21:49:58.469',1),('74bde740-5c8c-400f-9f88-6041f8ff5390','40f854bad9fa0aab0c217fa20a9460060dc97abd2afe2bad3e5bf96aea629eed','2026-04-24 16:17:29.634','20260424161725_init',NULL,NULL,'2026-04-24 16:17:26.165',1),('7ae5b147-8213-46c4-a7ff-b9ebc10ad60a','a72f62b8d630960939698b0274eb0299c7176709aaa2c38307a33d56a3e934d0','2026-04-23 12:45:06.014','20260422201806_init',NULL,NULL,'2026-04-23 12:45:05.411',1),('82058c73-a09c-4359-9f86-311cd8189578','b402755a3286415fc2bc4222eb2985e7a9c57589087d9eb3ec7a53ceff93d9b2','2026-04-23 12:45:02.405','20260421131918_init',NULL,NULL,'2026-04-23 12:45:01.280',1),('87642cbe-ce89-4c6d-a2bb-5fbf49e8ad5a','2cc65b76a60988ff06b1f416324b0255dbfca4b0ff1aae548bdb177c7ed07ea1','2026-04-26 16:26:19.315','20260426153449_init',NULL,NULL,'2026-04-26 16:26:15.831',1),('8cea4939-145e-41ae-bb11-58aa28a3e6ee','167122e74dcee71d32ebbef0aac309d1af64102b7ec55243d003357716ead54e','2026-04-25 07:50:50.757','20260425075045_init',NULL,NULL,'2026-04-25 07:50:45.993',1),('9877046c-94c9-45ba-8267-febaedf3e044','1635987bbb82eac80c0466d25345f272272dff555e44eaa3a116fae9a92c1fb1','2026-04-23 12:44:43.161','20260410112847_init',NULL,NULL,'2026-04-23 12:44:07.094',1),('a033038d-a40b-48ff-b51b-aea3bd6891fa','96b6d0c1c58fcc02fb880e952d9cc2f212939aacda09cc1b385c290647441d9b','2026-04-23 12:44:55.118','20260416100419_init',NULL,NULL,'2026-04-23 12:44:50.250',1),('a0bb816e-7f01-4a7a-a3bc-9dc9ecbe7762','0dd8abc36bf573eaf474a0a7e00197d233a5191c386f801df2da798259cc14c0','2026-04-26 07:17:57.244','20260426071752_init',NULL,NULL,'2026-04-26 07:17:52.782',1),('bc3e2fd6-32b1-4815-a9e3-e53937136c7d','5571ff74b6b77590d9caa561b69d585cad1dcc659948e95d2aaafb59c4aa48f3','2026-04-23 12:45:01.225','20260420124725_add_tracking_code_to_charged_license_transactions',NULL,NULL,'2026-04-23 12:44:58.544',1),('c49c2327-7e41-4051-9c06-9ec8335e2130','43ff604ffd0cb65080a8339360db76cb0e7862725280429278e2e4660be6b9d9','2026-04-23 12:44:49.392','20260410211433_init',NULL,NULL,'2026-04-23 12:44:43.327',1),('c6c41010-5e11-4648-a19c-6ad04cd669fd','c715277bc53a127bbd2028f4916187229caeb9093103a89bf1bb3953ce5bb049','2026-04-23 12:45:05.364','20260422200730_init',NULL,NULL,'2026-04-23 12:45:02.436',1); +/*!40000 ALTER TABLE `_prisma_migrations` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `accounts` +-- + +DROP TABLE IF EXISTS `accounts`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `accounts` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `username` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `password` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `status` enum('ACTIVE','SUSPENDED') COLLATE utf8mb4_unicode_ci NOT NULL, + `type` enum('ADMIN','PROVIDER','PARTNER','CONSUMER') COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `accounts_username_key` (`username`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `accounts` +-- + +LOCK TABLES `accounts` WRITE; +/*!40000 ALTER TABLE `accounts` DISABLE KEYS */; +INSERT INTO `accounts` VALUES ('01KPX63KJFQTM95S4ACQQV8NJT','superAdmin','$2b$10$/oEp78p.lw90yaItLgDm6uj0rH5GHeQAc5QhDXQt.zYZD92za9dsy','ACTIVE','ADMIN'),('01KPX63MEFBXD6E514VJJP5YJC','tis','$2b$10$XVSWjBrSalJH7QUDhuWfxOo6nhLIv.SBjzgVvvs5mvrbP.sgByCEG','ACTIVE','PARTNER'),('01KPX63V8D3BQNSVDTC1C5XQCE','zargar','$2b$10$AF2QHMNCl8HIlNRnI5s5D.fzv2v1aE0VEp2zxRfYGLf6qaEe9/ubC','ACTIVE','CONSUMER'),('01KPX63VK0ACPB3JDQV5JBCY0F','tosan','$2b$10$KC3gmQZRAxyxXcdsZ.KPDe2a3NxLGLCb9T.57viYq9XoU/IJGMb5W','ACTIVE','PROVIDER'),('01KPZEE9CNBHPD2BYQVEQ5F8KD','rahbar','$2b$10$FCuxbO/zMadwLkPjMlbd9uQJohJ.FVbeEg/fccAfxqnjsZ.a8/qr.','ACTIVE','PARTNER'),('01KQ0C2K841814NEQCMN0CVSW3','and_web','$2b$10$ak7w1SQra4Uppf6rXE/W7ehW72UhpBG5hdZGliz83Vja8g.mX5iG2','ACTIVE','CONSUMER'),('01KQ0CB5P1WQW2HD748E2SK9VC','and_sep','$2b$10$ZGoxyzAGQC4kYEjSznQ7ROdewVGBH2qa6nZAGGLsEsIezl1WkoRyq','ACTIVE','CONSUMER'),('01KQ1XPKB60G452A01V7Y5T1F0','mon_mob','$2b$10$8PxCrZWDzU/X3kdDqbzy8uz8DtBE6lYnp7ODw9aPhWViSUwkclDIi','ACTIVE','CONSUMER'),('01KQ2HF2REZPRH929E8NPCV5ZW','jafari','$2b$10$Zb73AnSz1P8FF9CzNGaXq.NyK7RkR5rRAC/YIGSzMKYc2FzxVPINK','ACTIVE','CONSUMER'),('01KQ2JB8Q1SYCRAH7K69WB62MF','ali_sep','$2b$10$skqiJZ50NcIdwEU1V6Jo.uwgHydNCAfulbOpPkZLSFT71BO0o81N2','ACTIVE','CONSUMER'),('01KQ2W7SA1KHQCATSSBVDWWQ6Z','akbar','$2b$10$.rpgUeNzHZ3wiGeqimVw8OpBeP/eIjKFwPIPn18qDOSFyKIP2UlbW','ACTIVE','CONSUMER'),('01KQ2WFMXFZBT22HWJ1VQKP4PN','akbarpos','$2b$10$RcESQgafg4fLgVIqOGy/VuBGtxQOnJ35nIkLC0s4C7B8l109u./Nm','ACTIVE','CONSUMER'); +/*!40000 ALTER TABLE `accounts` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `admin_accounts` +-- + +DROP TABLE IF EXISTS `admin_accounts`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `admin_accounts` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `admin_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `account_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `admin_accounts_account_id_key` (`account_id`), + KEY `admin_accounts_admin_id_fkey` (`admin_id`), + CONSTRAINT `admin_accounts_account_id_fkey` FOREIGN KEY (`account_id`) REFERENCES `accounts` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT `admin_accounts_admin_id_fkey` FOREIGN KEY (`admin_id`) REFERENCES `admins` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `admin_accounts` +-- + +LOCK TABLES `admin_accounts` WRITE; +/*!40000 ALTER TABLE `admin_accounts` DISABLE KEYS */; +INSERT INTO `admin_accounts` VALUES ('01KPX63KJZB2VNCW4J72P41SAJ','2026-04-23 12:47:45','2026-04-23 12:47:45','01KPX63KHRB9CCKBZ2VVB46B46','01KPX63KJFQTM95S4ACQQV8NJT'); +/*!40000 ALTER TABLE `admin_accounts` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `admins` +-- + +DROP TABLE IF EXISTS `admins`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `admins` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `mobile_number` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `national_code` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `first_name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `last_name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `admins_mobile_number_key` (`mobile_number`), + UNIQUE KEY `admins_national_code_key` (`national_code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `admins` +-- + +LOCK TABLES `admins` WRITE; +/*!40000 ALTER TABLE `admins` DISABLE KEYS */; +INSERT INTO `admins` VALUES ('01KPX63KHRB9CCKBZ2VVB46B46','09120258156','0016022289','عباس','حسنی','2026-04-23 12:47:45','2026-04-23 12:47:45'); +/*!40000 ALTER TABLE `admins` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `application_released_info` +-- + +DROP TABLE IF EXISTS `application_released_info`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `application_released_info` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `version` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `build_number` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `is_minimum_supported` tinyint(1) NOT NULL DEFAULT '0', + `notes` json DEFAULT NULL, + `release_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `platform` enum('ANDROID','IOS') COLLATE utf8mb4_unicode_ci NOT NULL, + `release_type` enum('STABLE','BETA','ALPHA') COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `application_released_info` +-- + +LOCK TABLES `application_released_info` WRITE; +/*!40000 ALTER TABLE `application_released_info` DISABLE KEYS */; +/*!40000 ALTER TABLE `application_released_info` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `business_activities` +-- + +DROP TABLE IF EXISTS `business_activities`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `business_activities` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `guild_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `consumer_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `economic_code` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `business_activities_economic_code_consumer_id_key` (`economic_code`,`consumer_id`), + KEY `business_activities_guild_id_fkey` (`guild_id`), + KEY `business_activities_consumer_id_fkey` (`consumer_id`), + CONSTRAINT `business_activities_consumer_id_fkey` FOREIGN KEY (`consumer_id`) REFERENCES `consumers` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT `business_activities_guild_id_fkey` FOREIGN KEY (`guild_id`) REFERENCES `guilds` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `business_activities` +-- + +LOCK TABLES `business_activities` WRITE; +/*!40000 ALTER TABLE `business_activities` DISABLE KEYS */; +INSERT INTO `business_activities` VALUES ('01KQ05Q8X0EQH4R79038WXXC19','زرگران','2026-04-24 16:38:44','2026-04-24 16:38:44','01KPX63KNQXAR1J032RVMAJ100','01KPX63V7WEFC9V5JTD0EDTG76','۲۱۳۱۲۳'),('01KQ2J44B6SF32XDKY6SZ16TB4','طلا علی','2026-04-25 14:53:57','2026-04-25 14:53:57','01KPX63KNQXAR1J032RVMAJ100','01KQ2HF2R0XCM9VKZZY2J92Z3V','۱۲۳۲۱۳'),('01KQ2K5X6AHKR119VJQB7NC4NH','تره بار','2026-04-25 15:12:24','2026-04-25 15:12:24','01KPX63KNQ3PSK1RSBJNV00PMN','01KQ2HF2R0XCM9VKZZY2J92Z3V','۱۲۳۲۱۳۱'),('01KQ2WB8XGS33DQVSW3CPH9P13','یاران دریان حجت','2026-04-25 17:52:37','2026-04-25 17:52:37','01KPX63KNQ3PSK1RSBJNV00PMN','01KQ2W7S95WEC578WCG52G4VJD','۱۰۹۸۷۴۸۲'); +/*!40000 ALTER TABLE `business_activities` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `complexes` +-- + +DROP TABLE IF EXISTS `complexes`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `complexes` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `address` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `business_activity_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `branch_code` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + KEY `complexes_business_activity_id_fkey` (`business_activity_id`), + CONSTRAINT `complexes_business_activity_id_fkey` FOREIGN KEY (`business_activity_id`) REFERENCES `business_activities` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `complexes` +-- + +LOCK TABLES `complexes` WRITE; +/*!40000 ALTER TABLE `complexes` DISABLE KEYS */; +INSERT INTO `complexes` VALUES ('01KQ0866BCDC6WPSNMTB0X6MKE','شعبه‌ی اندرزگو','تهران اندرزگو','2026-04-24 17:21:50','2026-04-24 17:21:50','01KQ05Q8X0EQH4R79038WXXC19','۱۲۳۱۲۳'),('01KQ1WFH94EYY2C46YC29QR895','شعبه‌ی منیریه','تهران منیریه','2026-04-25 08:35:43','2026-04-25 08:36:41','01KQ05Q8X0EQH4R79038WXXC19','۲۴۱'),('01KQ2J6YEHGZG8GHE0DFGCFY80','طلای مرزداران','سبی','2026-04-25 14:55:30','2026-04-25 14:55:30','01KQ2J44B6SF32XDKY6SZ16TB4','۱۲'),('01KQ2WCV8D0Q1SB1A471THF096','جنت آباد جنوبی','جنت آباد','2026-04-25 17:53:29','2026-04-25 17:53:29','01KQ2WB8XGS33DQVSW3CPH9P13','۰۹۸۳'); +/*!40000 ALTER TABLE `complexes` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `consumer_accounts` +-- + +DROP TABLE IF EXISTS `consumer_accounts`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `consumer_accounts` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `role` enum('OWNER','MANAGER','OPERATOR') COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `consumer_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `account_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `consumer_accounts_account_id_key` (`account_id`), + KEY `consumer_accounts_consumer_id_fkey` (`consumer_id`), + CONSTRAINT `consumer_accounts_account_id_fkey` FOREIGN KEY (`account_id`) REFERENCES `accounts` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT `consumer_accounts_consumer_id_fkey` FOREIGN KEY (`consumer_id`) REFERENCES `consumers` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `consumer_accounts` +-- + +LOCK TABLES `consumer_accounts` WRITE; +/*!40000 ALTER TABLE `consumer_accounts` DISABLE KEYS */; +INSERT INTO `consumer_accounts` VALUES ('01KPX63V8TSSPM3B7DM3013RD4','OWNER','2026-04-23 12:47:53','2026-04-23 12:47:53','01KPX63V7WEFC9V5JTD0EDTG76','01KPX63V8D3BQNSVDTC1C5XQCE'),('01KQ0C2K96Z64MRNFXSY1C1WKD','OPERATOR','2026-04-24 18:29:47','2026-04-24 18:29:47','01KPX63V7WEFC9V5JTD0EDTG76','01KQ0C2K841814NEQCMN0CVSW3'),('01KQ0CB5PW4BKEXR947C9ZAXVP','OPERATOR','2026-04-24 18:34:28','2026-04-24 18:34:28','01KPX63V7WEFC9V5JTD0EDTG76','01KQ0CB5P1WQW2HD748E2SK9VC'),('01KQ1XPKGJ869MHG1DHJE2PV47','OPERATOR','2026-04-25 08:57:03','2026-04-25 08:57:03','01KPX63V7WEFC9V5JTD0EDTG76','01KQ1XPKB60G452A01V7Y5T1F0'),('01KQ2HF2X05VGVHP2TZWGYAS70','OWNER','2026-04-25 14:42:28','2026-04-25 14:42:28','01KQ2HF2R0XCM9VKZZY2J92Z3V','01KQ2HF2REZPRH929E8NPCV5ZW'),('01KQ2JB8RM5AY2KM5FSZE2SF45','OPERATOR','2026-04-25 14:57:51','2026-04-25 14:57:51','01KQ2HF2R0XCM9VKZZY2J92Z3V','01KQ2JB8Q1SYCRAH7K69WB62MF'),('01KQ2W7SAJF514GQ02AZV51JB4','OWNER','2026-04-25 17:50:43','2026-04-25 17:50:43','01KQ2W7S95WEC578WCG52G4VJD','01KQ2W7SA1KHQCATSSBVDWWQ6Z'),('01KQ2WFMYZ3THXKBNMFB1EX0B9','OPERATOR','2026-04-25 17:55:01','2026-04-25 17:55:01','01KQ2W7S95WEC578WCG52G4VJD','01KQ2WFMXFZBT22HWJ1VQKP4PN'); +/*!40000 ALTER TABLE `consumer_accounts` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `consumer_devices` +-- + +DROP TABLE IF EXISTS `consumer_devices`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `consumer_devices` ( + `uuid` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `app_version` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL, + `build_number` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL, + `platform` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, + `brand` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, + `model` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, + `device` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, + `os_version` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL, + `sdk_version` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL, + `release_number` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL, + `browser_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `fcm_token` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `consumer_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `publisher` enum('DIRECT','CAFE_BAZAR','MAYKET') COLLATE utf8mb4_unicode_ci NOT NULL, + `user_agent` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + PRIMARY KEY (`uuid`), + UNIQUE KEY `consumer_devices_uuid_key` (`uuid`), + KEY `consumer_devices_consumer_id_fkey` (`consumer_id`), + CONSTRAINT `consumer_devices_consumer_id_fkey` FOREIGN KEY (`consumer_id`) REFERENCES `consumers` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `consumer_devices` +-- + +LOCK TABLES `consumer_devices` WRITE; +/*!40000 ALTER TABLE `consumer_devices` DISABLE KEYS */; +/*!40000 ALTER TABLE `consumer_devices` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `consumers` +-- + +DROP TABLE IF EXISTS `consumers`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `consumers` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `status` enum('ACTIVE','SUSPENDED') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'ACTIVE', + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `type` enum('INDIVIDUAL','LEGAL') COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `consumers` +-- + +LOCK TABLES `consumers` WRITE; +/*!40000 ALTER TABLE `consumers` DISABLE KEYS */; +INSERT INTO `consumers` VALUES ('01KPX63V7WEFC9V5JTD0EDTG76','ACTIVE','2026-04-23 12:47:53','2026-04-23 12:47:53','INDIVIDUAL'),('01KQ2HF2R0XCM9VKZZY2J92Z3V','ACTIVE','2026-04-25 14:42:28','2026-04-25 14:42:28','INDIVIDUAL'),('01KQ2W7S95WEC578WCG52G4VJD','ACTIVE','2026-04-25 17:50:43','2026-04-25 17:50:43','INDIVIDUAL'); +/*!40000 ALTER TABLE `consumers` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `consumers_individual` +-- + +DROP TABLE IF EXISTS `consumers_individual`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `consumers_individual` ( + `first_name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `last_name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `mobile_number` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `national_code` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `partner_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `consumer_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`consumer_id`), + UNIQUE KEY `consumers_individual_mobile_number_consumer_id_key` (`mobile_number`,`consumer_id`), + UNIQUE KEY `consumers_individual_partner_id_national_code_key` (`partner_id`,`national_code`), + CONSTRAINT `consumers_individual_consumer_id_fkey` FOREIGN KEY (`consumer_id`) REFERENCES `consumers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, + CONSTRAINT `consumers_individual_partner_id_fkey` FOREIGN KEY (`partner_id`) REFERENCES `partners` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `consumers_individual` +-- + +LOCK TABLES `consumers_individual` WRITE; +/*!40000 ALTER TABLE `consumers_individual` DISABLE KEYS */; +/*!40000 ALTER TABLE `consumers_individual` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `consumers_legal` +-- + +DROP TABLE IF EXISTS `consumers_legal`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `consumers_legal` ( + `name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `registration_code` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `partner_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `consumer_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`consumer_id`), + UNIQUE KEY `consumers_legal_partner_id_registration_code_key` (`partner_id`,`registration_code`), + CONSTRAINT `consumers_legal_consumer_id_fkey` FOREIGN KEY (`consumer_id`) REFERENCES `consumers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, + CONSTRAINT `consumers_legal_partner_id_fkey` FOREIGN KEY (`partner_id`) REFERENCES `partners` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `consumers_legal` +-- + +LOCK TABLES `consumers_legal` WRITE; +/*!40000 ALTER TABLE `consumers_legal` DISABLE KEYS */; +/*!40000 ALTER TABLE `consumers_legal` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `customer_individuals` +-- + +DROP TABLE IF EXISTS `customer_individuals`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `customer_individuals` ( + `first_name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `last_name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `national_id` char(10) COLLATE utf8mb4_unicode_ci NOT NULL, + `postal_code` char(10) COLLATE utf8mb4_unicode_ci NOT NULL, + `economic_code` char(10) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `customer_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `business_activity_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `mobile_number` char(15) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`customer_id`), + UNIQUE KEY `customer_individuals_business_activity_id_national_id_key` (`business_activity_id`,`national_id`), + KEY `customer_individuals_business_activity_id_idx` (`business_activity_id`), + CONSTRAINT `customer_individuals_business_activity_id_fkey` FOREIGN KEY (`business_activity_id`) REFERENCES `business_activities` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT `customer_individuals_customer_id_fkey` FOREIGN KEY (`customer_id`) REFERENCES `customers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `customer_individuals` +-- + +LOCK TABLES `customer_individuals` WRITE; +/*!40000 ALTER TABLE `customer_individuals` DISABLE KEYS */; +/*!40000 ALTER TABLE `customer_individuals` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `customer_legal` +-- + +DROP TABLE IF EXISTS `customer_legal`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `customer_legal` ( + `company_name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `economic_code` char(10) COLLATE utf8mb4_unicode_ci NOT NULL, + `registration_number` char(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `postal_code` char(10) COLLATE utf8mb4_unicode_ci NOT NULL, + `customer_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `business_activity_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`customer_id`), + UNIQUE KEY `customer_legal_business_activity_id_economic_code_key` (`business_activity_id`,`economic_code`), + KEY `customer_legal_business_activity_id_idx` (`business_activity_id`), + CONSTRAINT `customer_legal_business_activity_id_fkey` FOREIGN KEY (`business_activity_id`) REFERENCES `business_activities` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT `customer_legal_customer_id_fkey` FOREIGN KEY (`customer_id`) REFERENCES `customers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `customer_legal` +-- + +LOCK TABLES `customer_legal` WRITE; +/*!40000 ALTER TABLE `customer_legal` DISABLE KEYS */; +/*!40000 ALTER TABLE `customer_legal` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `customers` +-- + +DROP TABLE IF EXISTS `customers`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `customers` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `is_favorite` tinyint(1) DEFAULT '0', + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `deleted_at` timestamp NULL DEFAULT NULL, + `type` enum('INDIVIDUAL','LEGAL','UNKNOWN') COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `customers` +-- + +LOCK TABLES `customers` WRITE; +/*!40000 ALTER TABLE `customers` DISABLE KEYS */; +INSERT INTO `customers` VALUES ('01KQ20CKZ8AKZR6R1QKEA5JCYE',0,'2026-04-25 09:44:01','2026-04-25 09:44:01',NULL,'INDIVIDUAL'),('01KQ2M7SFE75328NC05QF6B49E',0,'2026-04-25 15:30:55','2026-04-25 15:30:55',NULL,'LEGAL'); +/*!40000 ALTER TABLE `customers` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `device_brands` +-- + +DROP TABLE IF EXISTS `device_brands`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `device_brands` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `device_brands` +-- + +LOCK TABLES `device_brands` WRITE; +/*!40000 ALTER TABLE `device_brands` DISABLE KEYS */; +/*!40000 ALTER TABLE `device_brands` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `devices` +-- + +DROP TABLE IF EXISTS `devices`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `devices` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `os_version` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `brand_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + KEY `devices_brand_id_fkey` (`brand_id`), + CONSTRAINT `devices_brand_id_fkey` FOREIGN KEY (`brand_id`) REFERENCES `device_brands` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `devices` +-- + +LOCK TABLES `devices` WRITE; +/*!40000 ALTER TABLE `devices` DISABLE KEYS */; +/*!40000 ALTER TABLE `devices` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `good_categories` +-- + +DROP TABLE IF EXISTS `good_categories`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `good_categories` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, + `description` text COLLATE utf8mb4_unicode_ci, + `image_url` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `complex_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `is_default_guild_good` tinyint(1) NOT NULL DEFAULT '0', + `guild_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `deleted_at` timestamp NULL DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `good_categories_guild_id_fkey` (`guild_id`), + KEY `good_categories_complex_id_fkey` (`complex_id`), + CONSTRAINT `good_categories_complex_id_fkey` FOREIGN KEY (`complex_id`) REFERENCES `complexes` (`id`) ON DELETE SET NULL ON UPDATE CASCADE, + CONSTRAINT `good_categories_guild_id_fkey` FOREIGN KEY (`guild_id`) REFERENCES `guilds` (`id`) ON DELETE SET NULL ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `good_categories` +-- + +LOCK TABLES `good_categories` WRITE; +/*!40000 ALTER TABLE `good_categories` DISABLE KEYS */; +INSERT INTO `good_categories` VALUES ('01KPX63KRM17Y5X5NGY0FVMD05','سایر',NULL,NULL,NULL,1,'01KPX63KNQXAR1J032RVMAJ100','2026-04-23 12:47:45','2026-04-23 12:47:45',NULL),('01KPX63KRM4S453DZNRSHYA2V2','طلا',NULL,NULL,NULL,1,'01KPX63KNQXAR1J032RVMAJ100','2026-04-23 12:47:45','2026-04-23 12:47:45',NULL),('01KPX63KRMCRP04S1DGR97WVTQ','شمش',NULL,NULL,NULL,1,'01KPX63KNQXAR1J032RVMAJ100','2026-04-23 12:47:45','2026-04-23 12:47:45',NULL),('01KPX63KRMF31DNYWV2X10C1S7','شمش',NULL,NULL,NULL,1,'01KPX63KNQXAR1J032RVMAJ100','2026-04-23 12:47:45','2026-04-23 12:47:45',NULL),('01KPX63KRMGFVM2JSN7FHE8GGH','سکه',NULL,NULL,NULL,1,'01KPX63KNQXAR1J032RVMAJ100','2026-04-23 12:47:45','2026-04-23 12:47:45',NULL),('01KPX63KRMT4ZR69FSSTADAAV1','زیورآلات',NULL,NULL,NULL,1,'01KPX63KNQXAR1J032RVMAJ100','2026-04-23 12:47:45','2026-04-23 12:47:45',NULL); +/*!40000 ALTER TABLE `good_categories` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `goods` +-- + +DROP TABLE IF EXISTS `goods`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `goods` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `is_default_guild_good` tinyint(1) NOT NULL DEFAULT '0', + `sku` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, + `unit_type` enum('COUNT','GRAM','KILOGRAM','MILLILITER','LITER','METER','HOUR') COLLATE utf8mb4_unicode_ci NOT NULL, + `pricing_model` enum('STANDARD','GOLD') COLLATE utf8mb4_unicode_ci NOT NULL, + `description` text COLLATE utf8mb4_unicode_ci, + `local_sku` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `barcode` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `base_sale_price` decimal(15,0) DEFAULT '0', + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `deleted_at` timestamp NULL DEFAULT NULL, + `category_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `image_url` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `business_activity_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `goods_local_sku_key` (`local_sku`), + UNIQUE KEY `goods_barcode_key` (`barcode`), + KEY `goods_category_id_idx` (`category_id`), + KEY `goods_business_activity_id_fkey` (`business_activity_id`), + CONSTRAINT `goods_business_activity_id_fkey` FOREIGN KEY (`business_activity_id`) REFERENCES `business_activities` (`id`) ON DELETE SET NULL ON UPDATE CASCADE, + CONSTRAINT `goods_category_id_fkey` FOREIGN KEY (`category_id`) REFERENCES `good_categories` (`id`) ON DELETE SET NULL ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `goods` +-- + +LOCK TABLES `goods` WRITE; +/*!40000 ALTER TABLE `goods` DISABLE KEYS */; +INSERT INTO `goods` VALUES ('01KPX63KVV5G03PRGWAY92M6C5','آویز گردنبند طلا',1,'333','GRAM','GOLD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 20:16:50',NULL,'01KPX63KRMT4ZR69FSSTADAAV1','https://s3.ir-thr-at1.arvanstorage.ir/psp-project/good/9880ff55-f351-4bb2-8f92-38d45c26eb11-necklaceـpendant.webp',NULL),('01KPX63KVW1KMWFSGC7S6KD4PQ','انگشتر',1,'','GRAM','GOLD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRMT4ZR69FSSTADAAV1',NULL,NULL),('01KPX63KVW3P0X3870R278E7QS','النگو',1,'','GRAM','GOLD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRMT4ZR69FSSTADAAV1',NULL,NULL),('01KPX63KVW6A25X10BMZZHPVRZ','دست‌بند',1,'','GRAM','GOLD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRMT4ZR69FSSTADAAV1',NULL,NULL),('01KPX63KVWAMXBBJP1Y743N6W7','سرویس',1,'','GRAM','GOLD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRMT4ZR69FSSTADAAV1',NULL,NULL),('01KPX63KVWR5ZM2P536RC4E1G6','گوشواره',1,'','GRAM','GOLD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRMT4ZR69FSSTADAAV1',NULL,NULL),('01KPX63KVWWRQ3SJ78MAAZ5ETE','زنجیر',1,'','GRAM','GOLD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRMT4ZR69FSSTADAAV1',NULL,NULL),('01KPX63KYK0WHPTGGSH5TGXVBZ','طلای مستعمل',1,'','GRAM','GOLD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRM4S453DZNRSHYA2V2',NULL,NULL),('01KPX63KYK3EMYS7MCZVT1YJ0E','طلای شکسته',1,'','GRAM','GOLD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRM4S453DZNRSHYA2V2',NULL,NULL),('01KPX63KYKV1VK0F4W08QN4CGW','طلای آب شده',1,'','GRAM','GOLD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRM4S453DZNRSHYA2V2',NULL,NULL),('01KPX63M4C85AEE19ME3V8RHZ9','مسکوکات خارجی',1,'','COUNT','STANDARD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRMGFVM2JSN7FHE8GGH',NULL,NULL),('01KPX63M4D3E765VH9FD3SWSQT','تمام بهار آزادی (طرح جدید)',1,'','COUNT','STANDARD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRMGFVM2JSN7FHE8GGH',NULL,NULL),('01KPX63M4DSDK234E3XGQGJHS7','تمام بهار آزادی (طرح قدیم)',1,'','COUNT','STANDARD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRMGFVM2JSN7FHE8GGH',NULL,NULL),('01KPX63M4DXETEAHPR3401T469','مسکوکات داخلی (پارسیان)',1,'','COUNT','STANDARD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRMGFVM2JSN7FHE8GGH',NULL,NULL),('01KPX63M7EKNMMTF25QJNJM4QS','شمش استاندارد',1,'','GRAM','GOLD',NULL,NULL,NULL,0,'2026-04-23 12:47:46','2026-04-23 12:47:46',NULL,'01KPX63KRMCRP04S1DGR97WVTQ',NULL,NULL),('01KQ4AQHEKH9HWPAJHG7E1V9WN','دستبند',0,'۱۲۳۲','COUNT','GOLD',NULL,NULL,NULL,0,'2026-04-26 07:23:14','2026-04-26 07:23:26',NULL,'01KPX63KRM4S453DZNRSHYA2V2',NULL,'01KQ05Q8X0EQH4R79038WXXC19'); +/*!40000 ALTER TABLE `goods` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `guilds` +-- + +DROP TABLE IF EXISTS `guilds`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `guilds` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `code` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `guilds` +-- + +LOCK TABLES `guilds` WRITE; +/*!40000 ALTER TABLE `guilds` DISABLE KEYS */; +INSERT INTO `guilds` VALUES ('01KPX63KNQ3PSK1RSBJNV00PMN','میوه و تره‌بار','Fruit','2026-04-23 12:47:45','2026-04-23 12:47:45'),('01KPX63KNQXAR1J032RVMAJ100','طلا','Gold','2026-04-23 12:47:45','2026-04-23 12:47:45'); +/*!40000 ALTER TABLE `guilds` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `license_account_allocation` +-- + +DROP TABLE IF EXISTS `license_account_allocation`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `license_account_allocation` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `license_activation_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `account_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `credit_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `license_account_allocation_account_id_key` (`account_id`), + UNIQUE KEY `license_account_allocation_credit_id_key` (`credit_id`), + KEY `license_account_allocation_license_activation_id_fkey` (`license_activation_id`), + CONSTRAINT `license_account_allocation_account_id_fkey` FOREIGN KEY (`account_id`) REFERENCES `consumer_accounts` (`id`) ON DELETE SET NULL ON UPDATE CASCADE, + CONSTRAINT `license_account_allocation_credit_id_fkey` FOREIGN KEY (`credit_id`) REFERENCES `partner_account_quota_credit` (`id`) ON DELETE SET NULL ON UPDATE CASCADE, + CONSTRAINT `license_account_allocation_license_activation_id_fkey` FOREIGN KEY (`license_activation_id`) REFERENCES `licenses_activated` (`id`) ON DELETE SET NULL ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `license_account_allocation` +-- + +LOCK TABLES `license_account_allocation` WRITE; +/*!40000 ALTER TABLE `license_account_allocation` DISABLE KEYS */; +INSERT INTO `license_account_allocation` VALUES ('01KQ05Q90DZW821MTVDKS88N5V','2026-04-24 16:38:44','2026-04-24 18:29:47','01KQ05Q8YDXXB2J31DP2DHRS58','01KQ0C2K96Z64MRNFXSY1C1WKD',NULL),('01KQ05Q91RPSYHZZSZKNQ48TQ3','2026-04-24 16:38:45','2026-04-24 18:34:28','01KQ05Q8YDXXB2J31DP2DHRS58','01KQ0CB5PW4BKEXR947C9ZAXVP',NULL),('01KQ1WF429J6N7HEKZYE1VXE09','2026-04-25 08:35:29','2026-04-25 08:57:03','01KQ05Q8YDXXB2J31DP2DHRS58','01KQ1XPKGJ869MHG1DHJE2PV47','01KQ04EAYD2B8A4HN9XQ85Y1QD'),('01KQ2J44QGV0HEHWFQA77MRF4V','2026-04-25 14:53:58','2026-04-25 14:57:51','01KQ2J44DCE1XQWTS2Q6Z2A44W','01KQ2JB8RM5AY2KM5FSZE2SF45',NULL),('01KQ2J44T54PN7V035SHS3CYJT','2026-04-25 14:53:58','2026-04-25 14:53:58','01KQ2J44DCE1XQWTS2Q6Z2A44W',NULL,NULL),('01KQ2K5XHTGP8G41VHWYQPDQFY','2026-04-25 15:12:25','2026-04-25 15:12:25','01KQ2K5XAYMF0Z1PRPBWESQPTS',NULL,NULL),('01KQ2K5XM9A2CK5YXNBTD4DB2B','2026-04-25 15:12:25','2026-04-25 15:12:25','01KQ2K5XAYMF0Z1PRPBWESQPTS',NULL,NULL),('01KQ2KBJ2YZ513AE3MRJ60C90M','2026-04-25 15:15:30','2026-04-25 15:15:30','01KQ2J44DCE1XQWTS2Q6Z2A44W',NULL,'01KQ04EAZMAAYZ4HRW9DQ0MWV7'),('01KQ2WB994DRTZMAW6F5M9EV9X','2026-04-25 17:52:38','2026-04-25 17:55:01','01KQ2WB8ZDH4DY0E8M00G888G0','01KQ2WFMYZ3THXKBNMFB1EX0B9',NULL),('01KQ2WB9AWS2D0Z1WJVGH9TSAR','2026-04-25 17:52:38','2026-04-25 17:52:38','01KQ2WB8ZDH4DY0E8M00G888G0',NULL,NULL); +/*!40000 ALTER TABLE `license_account_allocation` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `license_charged_transactions` +-- + +DROP TABLE IF EXISTS `license_charged_transactions`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `license_charged_transactions` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `activation_expires_at` datetime(3) NOT NULL, + `tracking_code` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `purchased_count` int NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `partner_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `license_charged_transactions_tracking_code_key` (`tracking_code`), + KEY `license_charged_transactions_partner_id_fkey` (`partner_id`), + CONSTRAINT `license_charged_transactions_partner_id_fkey` FOREIGN KEY (`partner_id`) REFERENCES `partners` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `license_charged_transactions` +-- + +LOCK TABLES `license_charged_transactions` WRITE; +/*!40000 ALTER TABLE `license_charged_transactions` DISABLE KEYS */; +INSERT INTO `license_charged_transactions` VALUES ('01KQ033MCGMBBNAF9F2YEJ902H','2027-01-04 20:30:00.000','LIC-B01EVKMK',10,'2026-04-24 15:53:04','2026-04-24 15:53:04','01KPX63ME1JTT2YZNF087EA9TW'),('01KQ2GXFRWZFWQF2TTTJ4RKJHJ','2026-10-04 20:30:00.000','LIC-L00F3N48',2,'2026-04-25 14:32:51','2026-04-25 14:32:51','01KPX63ME1JTT2YZNF087EA9TW'); +/*!40000 ALTER TABLE `license_charged_transactions` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `license_renew` +-- + +DROP TABLE IF EXISTS `license_renew`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `license_renew` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `charge_transaction_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `activation_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `expires_at` datetime(3) NOT NULL, + PRIMARY KEY (`id`), + KEY `license_renew_charge_transaction_id_fkey` (`charge_transaction_id`), + KEY `license_renew_activation_id_fkey` (`activation_id`), + CONSTRAINT `license_renew_activation_id_fkey` FOREIGN KEY (`activation_id`) REFERENCES `licenses_activated` (`id`) ON DELETE SET NULL ON UPDATE CASCADE, + CONSTRAINT `license_renew_charge_transaction_id_fkey` FOREIGN KEY (`charge_transaction_id`) REFERENCES `license_renew_charge_transaction` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `license_renew` +-- + +LOCK TABLES `license_renew` WRITE; +/*!40000 ALTER TABLE `license_renew` DISABLE KEYS */; +/*!40000 ALTER TABLE `license_renew` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `license_renew_charge_transaction` +-- + +DROP TABLE IF EXISTS `license_renew_charge_transaction`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `license_renew_charge_transaction` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `activation_expires_at` datetime(3) NOT NULL, + `tracking_code` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `purchased_count` int NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `partner_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `license_renew_charge_transaction_tracking_code_key` (`tracking_code`), + KEY `license_renew_charge_transaction_partner_id_fkey` (`partner_id`), + CONSTRAINT `license_renew_charge_transaction_partner_id_fkey` FOREIGN KEY (`partner_id`) REFERENCES `partners` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `license_renew_charge_transaction` +-- + +LOCK TABLES `license_renew_charge_transaction` WRITE; +/*!40000 ALTER TABLE `license_renew_charge_transaction` DISABLE KEYS */; +/*!40000 ALTER TABLE `license_renew_charge_transaction` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `licenses` +-- + +DROP TABLE IF EXISTS `licenses`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `licenses` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `accounts_limit` int NOT NULL DEFAULT '2', + `charge_transaction_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + KEY `licenses_charge_transaction_id_fkey` (`charge_transaction_id`), + CONSTRAINT `licenses_charge_transaction_id_fkey` FOREIGN KEY (`charge_transaction_id`) REFERENCES `license_charged_transactions` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `licenses` +-- + +LOCK TABLES `licenses` WRITE; +/*!40000 ALTER TABLE `licenses` DISABLE KEYS */; +INSERT INTO `licenses` VALUES ('01KQ033MMNWE0KMCHY8FGBFSMA','2026-04-24 15:53:04','2026-04-24 15:53:04',2,'01KQ033MCGMBBNAF9F2YEJ902H'),('01KQ033MT3Y5GED3A2B0SX3AQP','2026-04-24 15:53:04','2026-04-24 15:53:04',2,'01KQ033MCGMBBNAF9F2YEJ902H'),('01KQ033MZMY26F4E9RS8SKH3G1','2026-04-24 15:53:04','2026-04-24 15:53:04',2,'01KQ033MCGMBBNAF9F2YEJ902H'),('01KQ033N66P32091R1FXC6VVZ6','2026-04-24 15:53:04','2026-04-24 15:53:04',2,'01KQ033MCGMBBNAF9F2YEJ902H'),('01KQ033N7HHDS7JD5ADZ27E6H1','2026-04-24 15:53:04','2026-04-24 15:53:04',2,'01KQ033MCGMBBNAF9F2YEJ902H'),('01KQ033NB49PCHDSCGQGWB333T','2026-04-24 15:53:05','2026-04-24 15:53:05',2,'01KQ033MCGMBBNAF9F2YEJ902H'),('01KQ033ND6VEA9P1P01NXXNH4R','2026-04-24 15:53:05','2026-04-24 15:53:05',2,'01KQ033MCGMBBNAF9F2YEJ902H'),('01KQ033NG49ARA17M385684MCQ','2026-04-24 15:53:05','2026-04-24 15:53:05',2,'01KQ033MCGMBBNAF9F2YEJ902H'),('01KQ033NHFM871YWAC123DGTT9','2026-04-24 15:53:05','2026-04-24 15:53:05',2,'01KQ033MCGMBBNAF9F2YEJ902H'),('01KQ033NP9ZQX9DN84WCN03TF8','2026-04-24 15:53:05','2026-04-24 15:53:05',2,'01KQ033MCGMBBNAF9F2YEJ902H'),('01KQ2GXFVPH7H5FYEEAKC5AC7V','2026-04-25 14:32:51','2026-04-25 14:32:51',2,'01KQ2GXFRWZFWQF2TTTJ4RKJHJ'),('01KQ2GXFX7Y7DC9R0K6BH3F2NN','2026-04-25 14:32:51','2026-04-25 14:32:51',2,'01KQ2GXFRWZFWQF2TTTJ4RKJHJ'); +/*!40000 ALTER TABLE `licenses` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `licenses_activated` +-- + +DROP TABLE IF EXISTS `licenses_activated`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `licenses_activated` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `starts_at` datetime(3) NOT NULL, + `expires_at` datetime(3) NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `license_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `business_activity_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `licenses_activated_id_key` (`id`), + UNIQUE KEY `licenses_activated_license_id_key` (`license_id`), + UNIQUE KEY `licenses_activated_business_activity_id_key` (`business_activity_id`), + CONSTRAINT `licenses_activated_business_activity_id_fkey` FOREIGN KEY (`business_activity_id`) REFERENCES `business_activities` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT `licenses_activated_license_id_fkey` FOREIGN KEY (`license_id`) REFERENCES `licenses` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `licenses_activated` +-- + +LOCK TABLES `licenses_activated` WRITE; +/*!40000 ALTER TABLE `licenses_activated` DISABLE KEYS */; +INSERT INTO `licenses_activated` VALUES ('01KQ05Q8YDXXB2J31DP2DHRS58','2026-04-23 20:30:00.000','2027-04-23 20:30:00.000','2026-04-24 16:38:44','2026-04-24 16:38:44','01KQ033MMNWE0KMCHY8FGBFSMA','01KQ05Q8X0EQH4R79038WXXC19'),('01KQ2J44DCE1XQWTS2Q6Z2A44W','2026-04-24 20:30:00.000','2027-04-24 20:30:00.000','2026-04-25 14:53:57','2026-04-25 14:53:57','01KQ2GXFX7Y7DC9R0K6BH3F2NN','01KQ2J44B6SF32XDKY6SZ16TB4'),('01KQ2K5XAYMF0Z1PRPBWESQPTS','2026-04-24 20:30:00.000','2027-04-24 20:30:00.000','2026-04-25 15:12:24','2026-04-25 15:12:24','01KQ2GXFVPH7H5FYEEAKC5AC7V','01KQ2K5X6AHKR119VJQB7NC4NH'),('01KQ2WB8ZDH4DY0E8M00G888G0','2026-04-29 20:30:00.000','2027-04-29 20:30:00.000','2026-04-25 17:52:37','2026-04-25 17:52:37','01KQ033MT3Y5GED3A2B0SX3AQP','01KQ2WB8XGS33DQVSW3CPH9P13'); +/*!40000 ALTER TABLE `licenses_activated` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `partner_account_quota_charge_transaction` +-- + +DROP TABLE IF EXISTS `partner_account_quota_charge_transaction`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `partner_account_quota_charge_transaction` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `purchased_count` int NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `partner_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `activation_expires_at` datetime(3) NOT NULL, + `tracking_code` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `partner_account_quota_charge_transaction_tracking_code_key` (`tracking_code`), + KEY `partner_account_quota_charge_transaction_partner_id_fkey` (`partner_id`), + CONSTRAINT `partner_account_quota_charge_transaction_partner_id_fkey` FOREIGN KEY (`partner_id`) REFERENCES `partners` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `partner_account_quota_charge_transaction` +-- + +LOCK TABLES `partner_account_quota_charge_transaction` WRITE; +/*!40000 ALTER TABLE `partner_account_quota_charge_transaction` DISABLE KEYS */; +INSERT INTO `partner_account_quota_charge_transaction` VALUES ('01KQ04EAX09SX6BX1NMVXXKZ05',2,'2026-04-24 16:16:23','2026-04-24 16:16:23','01KPX63ME1JTT2YZNF087EA9TW','2026-12-20 20:30:00.000','AQC-A1XYDSK0'),('01KQ2GXVZ5HEC6YKJY1C5J1E03',5,'2026-04-25 14:33:04','2026-04-25 14:33:04','01KPX63ME1JTT2YZNF087EA9TW','2027-01-10 20:30:00.000','AQC-21L5RWEP'); +/*!40000 ALTER TABLE `partner_account_quota_charge_transaction` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `partner_account_quota_credit` +-- + +DROP TABLE IF EXISTS `partner_account_quota_credit`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `partner_account_quota_credit` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `charge_transaction_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `partner_account_quota_credit_charge_transaction_id_fkey` (`charge_transaction_id`), + CONSTRAINT `partner_account_quota_credit_charge_transaction_id_fkey` FOREIGN KEY (`charge_transaction_id`) REFERENCES `partner_account_quota_charge_transaction` (`id`) ON DELETE SET NULL ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `partner_account_quota_credit` +-- + +LOCK TABLES `partner_account_quota_credit` WRITE; +/*!40000 ALTER TABLE `partner_account_quota_credit` DISABLE KEYS */; +INSERT INTO `partner_account_quota_credit` VALUES ('01KQ04EAYD2B8A4HN9XQ85Y1QD','2026-04-24 16:16:23','2026-04-24 16:16:23','01KQ04EAX09SX6BX1NMVXXKZ05'),('01KQ04EAZMAAYZ4HRW9DQ0MWV7','2026-04-24 16:16:23','2026-04-24 16:16:23','01KQ04EAX09SX6BX1NMVXXKZ05'),('01KQ2GXWAQDB2DXE033GB6NHRH','2026-04-25 14:33:04','2026-04-25 14:33:04','01KQ2GXVZ5HEC6YKJY1C5J1E03'),('01KQ2GXWG5S97TXDBZ2136CWWR','2026-04-25 14:33:04','2026-04-25 14:33:04','01KQ2GXVZ5HEC6YKJY1C5J1E03'),('01KQ2GXWHF4CVXDZVP6NDWA960','2026-04-25 14:33:04','2026-04-25 14:33:04','01KQ2GXVZ5HEC6YKJY1C5J1E03'),('01KQ2GXWJQXEBDDS2EJB4HGTT6','2026-04-25 14:33:04','2026-04-25 14:33:04','01KQ2GXVZ5HEC6YKJY1C5J1E03'),('01KQ2GXWN66R11E1BADMM3KQBD','2026-04-25 14:33:04','2026-04-25 14:33:04','01KQ2GXVZ5HEC6YKJY1C5J1E03'); +/*!40000 ALTER TABLE `partner_account_quota_credit` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `partner_accounts` +-- + +DROP TABLE IF EXISTS `partner_accounts`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `partner_accounts` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `role` enum('OWNER','MANAGER','OPERATOR') COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `partner_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `account_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `partner_accounts_account_id_key` (`account_id`), + KEY `partner_accounts_partner_id_fkey` (`partner_id`), + CONSTRAINT `partner_accounts_account_id_fkey` FOREIGN KEY (`account_id`) REFERENCES `accounts` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT `partner_accounts_partner_id_fkey` FOREIGN KEY (`partner_id`) REFERENCES `partners` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `partner_accounts` +-- + +LOCK TABLES `partner_accounts` WRITE; +/*!40000 ALTER TABLE `partner_accounts` DISABLE KEYS */; +INSERT INTO `partner_accounts` VALUES ('01KPX63MF1491CQ2B1MSQFZAX9','OWNER','2026-04-23 12:47:46','2026-04-23 12:47:46','01KPX63ME1JTT2YZNF087EA9TW','01KPX63MEFBXD6E514VJJP5YJC'),('01KPZEE9D28BBHSF0KG491BJ9S','OWNER','2026-04-24 09:51:53','2026-04-24 09:51:53','01KPZEE9A759VE2D2J0MKN2CS2','01KPZEE9CNBHPD2BYQVEQ5F8KD'); +/*!40000 ALTER TABLE `partner_accounts` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `partners` +-- + +DROP TABLE IF EXISTS `partners`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `partners` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `code` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `status` enum('ACTIVE','SUSPENDED') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'ACTIVE', + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `logo_url` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `partners_code_key` (`code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `partners` +-- + +LOCK TABLES `partners` WRITE; +/*!40000 ALTER TABLE `partners` DISABLE KEYS */; +INSERT INTO `partners` VALUES ('01KPX63ME1JTT2YZNF087EA9TW','تیس','TIS','ACTIVE','2026-04-23 12:47:46','2026-04-23 12:47:46',NULL),('01KPZEE9A759VE2D2J0MKN2CS2','راهبر','rah','ACTIVE','2026-04-24 09:51:53','2026-04-24 09:51:53',NULL); +/*!40000 ALTER TABLE `partners` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `permission_business_activities` +-- + +DROP TABLE IF EXISTS `permission_business_activities`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `permission_business_activities` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `role` enum('MANAGER','OPERATOR') COLLATE utf8mb4_unicode_ci NOT NULL, + `business_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `permission_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `permission_business_activities_permission_id_business_id_key` (`permission_id`,`business_id`), + KEY `permission_business_activities_business_id_fkey` (`business_id`), + CONSTRAINT `permission_business_activities_business_id_fkey` FOREIGN KEY (`business_id`) REFERENCES `business_activities` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, + CONSTRAINT `permission_business_activities_permission_id_fkey` FOREIGN KEY (`permission_id`) REFERENCES `permission_consumers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `permission_business_activities` +-- + +LOCK TABLES `permission_business_activities` WRITE; +/*!40000 ALTER TABLE `permission_business_activities` DISABLE KEYS */; +/*!40000 ALTER TABLE `permission_business_activities` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `permission_complexes` +-- + +DROP TABLE IF EXISTS `permission_complexes`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `permission_complexes` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `role` enum('MANAGER','OPERATOR') COLLATE utf8mb4_unicode_ci NOT NULL, + `complex_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `permission_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `permission_complexes_permission_id_complex_id_key` (`permission_id`,`complex_id`), + KEY `permission_complexes_complex_id_fkey` (`complex_id`), + CONSTRAINT `permission_complexes_complex_id_fkey` FOREIGN KEY (`complex_id`) REFERENCES `complexes` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, + CONSTRAINT `permission_complexes_permission_id_fkey` FOREIGN KEY (`permission_id`) REFERENCES `permission_consumers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `permission_complexes` +-- + +LOCK TABLES `permission_complexes` WRITE; +/*!40000 ALTER TABLE `permission_complexes` DISABLE KEYS */; +/*!40000 ALTER TABLE `permission_complexes` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `permission_consumers` +-- + +DROP TABLE IF EXISTS `permission_consumers`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `permission_consumers` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `consumer_account_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `permission_consumers_consumer_account_id_key` (`consumer_account_id`), + CONSTRAINT `permission_consumers_consumer_account_id_fkey` FOREIGN KEY (`consumer_account_id`) REFERENCES `consumer_accounts` (`id`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `permission_consumers` +-- + +LOCK TABLES `permission_consumers` WRITE; +/*!40000 ALTER TABLE `permission_consumers` DISABLE KEYS */; +/*!40000 ALTER TABLE `permission_consumers` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `permission_poses` +-- + +DROP TABLE IF EXISTS `permission_poses`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `permission_poses` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `role` enum('MANAGER','OPERATOR') COLLATE utf8mb4_unicode_ci NOT NULL, + `pos_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `permission_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `permission_poses_permission_id_pos_id_key` (`permission_id`,`pos_id`), + KEY `permission_poses_pos_id_fkey` (`pos_id`), + CONSTRAINT `permission_poses_permission_id_fkey` FOREIGN KEY (`permission_id`) REFERENCES `permission_consumers` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, + CONSTRAINT `permission_poses_pos_id_fkey` FOREIGN KEY (`pos_id`) REFERENCES `poses` (`id`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `permission_poses` +-- + +LOCK TABLES `permission_poses` WRITE; +/*!40000 ALTER TABLE `permission_poses` DISABLE KEYS */; +/*!40000 ALTER TABLE `permission_poses` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `poses` +-- + +DROP TABLE IF EXISTS `poses`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `poses` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `model` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `status` enum('ACTIVE','DISABLED') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'ACTIVE', + `pos_type` enum('PSP','MOBILE','WEB','API') COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `complex_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `device_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `provider_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `serial_number` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `account_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `poses_account_id_key` (`account_id`), + UNIQUE KEY `poses_serial_number_key` (`serial_number`), + KEY `poses_complex_id_fkey` (`complex_id`), + KEY `poses_device_id_fkey` (`device_id`), + KEY `poses_provider_id_fkey` (`provider_id`), + CONSTRAINT `poses_account_id_fkey` FOREIGN KEY (`account_id`) REFERENCES `consumer_accounts` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT `poses_complex_id_fkey` FOREIGN KEY (`complex_id`) REFERENCES `complexes` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT `poses_device_id_fkey` FOREIGN KEY (`device_id`) REFERENCES `devices` (`id`) ON DELETE SET NULL ON UPDATE CASCADE, + CONSTRAINT `poses_provider_id_fkey` FOREIGN KEY (`provider_id`) REFERENCES `providers` (`id`) ON DELETE SET NULL ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `poses` +-- + +LOCK TABLES `poses` WRITE; +/*!40000 ALTER TABLE `poses` DISABLE KEYS */; +INSERT INTO `poses` VALUES ('01KQ0C2KAYAH96XW53ATNT6YZ6','پوز سپهر',NULL,'ACTIVE','WEB','2026-04-24 18:29:47','2026-04-24 18:29:47','01KQ0866BCDC6WPSNMTB0X6MKE',NULL,NULL,NULL,'01KQ0C2K96Z64MRNFXSY1C1WKD'),('01KQ0CB5RBX5JYZNNC0DJ8VKFN','دسکتاپ',NULL,'ACTIVE','WEB','2026-04-24 18:34:28','2026-04-24 18:34:28','01KQ0866BCDC6WPSNMTB0X6MKE',NULL,NULL,NULL,'01KQ0CB5PW4BKEXR947C9ZAXVP'),('01KQ1XPKJ3T1375FAFND7MYNKB','لاین ۱',NULL,'ACTIVE','MOBILE','2026-04-25 08:57:03','2026-04-25 08:57:03','01KQ1WFH94EYY2C46YC29QR895',NULL,NULL,NULL,'01KQ1XPKGJ869MHG1DHJE2PV47'),('01KQ2JB8STAJ8S1QBR6MMG7KX7','پوز سپهر',NULL,'ACTIVE','WEB','2026-04-25 14:57:51','2026-04-25 14:57:51','01KQ2J6YEHGZG8GHE0DFGCFY80',NULL,NULL,NULL,'01KQ2JB8RM5AY2KM5FSZE2SF45'),('01KQ2WFN01GKZK28HTDWMX1H8Z','پوز صادرات',NULL,'ACTIVE','MOBILE','2026-04-25 17:55:01','2026-04-25 17:55:01','01KQ2WCV8D0Q1SB1A471THF096',NULL,NULL,NULL,'01KQ2WFMYZ3THXKBNMFB1EX0B9'); +/*!40000 ALTER TABLE `poses` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `provider_accounts` +-- + +DROP TABLE IF EXISTS `provider_accounts`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `provider_accounts` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `role` enum('OWNER','MANAGER','OPERATOR') COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `provider_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `account_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `provider_accounts_account_id_key` (`account_id`), + KEY `provider_accounts_provider_id_fkey` (`provider_id`), + CONSTRAINT `provider_accounts_account_id_fkey` FOREIGN KEY (`account_id`) REFERENCES `accounts` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT `provider_accounts_provider_id_fkey` FOREIGN KEY (`provider_id`) REFERENCES `providers` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `provider_accounts` +-- + +LOCK TABLES `provider_accounts` WRITE; +/*!40000 ALTER TABLE `provider_accounts` DISABLE KEYS */; +INSERT INTO `provider_accounts` VALUES ('01KPX63VKD61AB8ET3J1MAH522','OWNER','2026-04-23 12:47:53','2026-04-23 12:47:53','01KPX63VJJ29HRTHZ4YQZVVQG5','01KPX63VK0ACPB3JDQV5JBCY0F'); +/*!40000 ALTER TABLE `provider_accounts` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `providers` +-- + +DROP TABLE IF EXISTS `providers`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `providers` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `code` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `status` enum('ACTIVE','SUSPENDED') COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT 'ACTIVE', + `name` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `providers_code_key` (`code`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `providers` +-- + +LOCK TABLES `providers` WRITE; +/*!40000 ALTER TABLE `providers` DISABLE KEYS */; +INSERT INTO `providers` VALUES ('01KPX63VJJ29HRTHZ4YQZVVQG5','Tosan','ACTIVE','توسن','2026-04-23 12:47:53','2026-04-23 12:47:53'); +/*!40000 ALTER TABLE `providers` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `sales_invoice_items` +-- + +DROP TABLE IF EXISTS `sales_invoice_items`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `sales_invoice_items` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `quantity` decimal(10,0) NOT NULL, + `unit_type` enum('COUNT','GRAM','KILOGRAM','MILLILITER','LITER','METER','HOUR') COLLATE utf8mb4_unicode_ci NOT NULL, + `unit_price` decimal(15,2) NOT NULL DEFAULT '0.00', + `total_amount` decimal(15,2) NOT NULL DEFAULT '0.00', + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `discount` decimal(15,2) NOT NULL DEFAULT '0.00', + `notes` text COLLATE utf8mb4_unicode_ci, + `invoice_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `good_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `service_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `payload` json DEFAULT NULL, + PRIMARY KEY (`id`), + KEY `sales_invoice_items_invoice_id_good_id_idx` (`invoice_id`,`good_id`), + KEY `sales_invoice_items_good_id_fkey` (`good_id`), + KEY `sales_invoice_items_service_id_fkey` (`service_id`), + CONSTRAINT `sales_invoice_items_good_id_fkey` FOREIGN KEY (`good_id`) REFERENCES `goods` (`id`) ON DELETE SET NULL ON UPDATE CASCADE, + CONSTRAINT `sales_invoice_items_invoice_id_fkey` FOREIGN KEY (`invoice_id`) REFERENCES `sales_invoices` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT `sales_invoice_items_service_id_fkey` FOREIGN KEY (`service_id`) REFERENCES `services` (`id`) ON DELETE SET NULL ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `sales_invoice_items` +-- + +LOCK TABLES `sales_invoice_items` WRITE; +/*!40000 ALTER TABLE `sales_invoice_items` DISABLE KEYS */; +/*!40000 ALTER TABLE `sales_invoice_items` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `sales_invoice_payments` +-- + +DROP TABLE IF EXISTS `sales_invoice_payments`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `sales_invoice_payments` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `invoice_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `amount` decimal(15,2) NOT NULL, + `payment_method` enum('TERMINAL','CASH','SET_OFF','CARD','BANK','CHECK','OTHER') COLLATE utf8mb4_unicode_ci NOT NULL, + `paid_at` datetime(3) NOT NULL, + `created_at` datetime(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3), + PRIMARY KEY (`id`), + KEY `sales_invoice_payments_invoice_id_idx` (`invoice_id`), + CONSTRAINT `sales_invoice_payments_invoice_id_fkey` FOREIGN KEY (`invoice_id`) REFERENCES `sales_invoices` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `sales_invoice_payments` +-- + +LOCK TABLES `sales_invoice_payments` WRITE; +/*!40000 ALTER TABLE `sales_invoice_payments` DISABLE KEYS */; +/*!40000 ALTER TABLE `sales_invoice_payments` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `sales_invoices` +-- + +DROP TABLE IF EXISTS `sales_invoices`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `sales_invoices` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `code` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, + `total_amount` decimal(15,2) NOT NULL, + `notes` text COLLATE utf8mb4_unicode_ci, + `unknown_customer` json DEFAULT NULL, + `invoice_date` timestamp NULL DEFAULT CURRENT_TIMESTAMP, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `customer_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `account_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `pos_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `sales_invoices_code_key` (`code`), + KEY `sales_invoices_customer_id_fkey` (`customer_id`), + KEY `sales_invoices_pos_id_fkey` (`pos_id`), + KEY `sales_invoices_account_id_fkey` (`account_id`), + CONSTRAINT `sales_invoices_account_id_fkey` FOREIGN KEY (`account_id`) REFERENCES `consumer_accounts` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT `sales_invoices_customer_id_fkey` FOREIGN KEY (`customer_id`) REFERENCES `customers` (`id`) ON DELETE SET NULL ON UPDATE CASCADE, + CONSTRAINT `sales_invoices_pos_id_fkey` FOREIGN KEY (`pos_id`) REFERENCES `poses` (`id`) ON DELETE RESTRICT ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `sales_invoices` +-- + +LOCK TABLES `sales_invoices` WRITE; +/*!40000 ALTER TABLE `sales_invoices` DISABLE KEYS */; +/*!40000 ALTER TABLE `sales_invoices` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `service_categories` +-- + +DROP TABLE IF EXISTS `service_categories`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `service_categories` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, + `description` text COLLATE utf8mb4_unicode_ci, + `image_url` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `account_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `complex_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `deleted_at` timestamp NULL DEFAULT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `service_categories` +-- + +LOCK TABLES `service_categories` WRITE; +/*!40000 ALTER TABLE `service_categories` DISABLE KEYS */; +/*!40000 ALTER TABLE `service_categories` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `services` +-- + +DROP TABLE IF EXISTS `services`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `services` ( + `id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `description` text COLLATE utf8mb4_unicode_ci, + `sku` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, + `local_sku` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `barcode` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `updated_at` timestamp NOT NULL, + `deleted_at` timestamp NULL DEFAULT NULL, + `category_id` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `base_sale_price` decimal(15,0) NOT NULL DEFAULT '0', + `account_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + `complex_id` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `services_sku_key` (`sku`), + UNIQUE KEY `services_local_sku_key` (`local_sku`), + UNIQUE KEY `services_barcode_key` (`barcode`), + KEY `services_category_id_idx` (`category_id`), + CONSTRAINT `services_category_id_fkey` FOREIGN KEY (`category_id`) REFERENCES `service_categories` (`id`) ON DELETE SET NULL ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `services` +-- + +LOCK TABLES `services` WRITE; +/*!40000 ALTER TABLE `services` DISABLE KEYS */; +/*!40000 ALTER TABLE `services` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `trigger_logs` +-- + +DROP TABLE IF EXISTS `trigger_logs`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `trigger_logs` ( + `id` int NOT NULL AUTO_INCREMENT, + `message` text COLLATE utf8mb4_unicode_ci NOT NULL, + `createdAt` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `name` text COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `trigger_logs` +-- + +LOCK TABLES `trigger_logs` WRITE; +/*!40000 ALTER TABLE `trigger_logs` DISABLE KEYS */; +/*!40000 ALTER TABLE `trigger_logs` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Dumping routines for database 'psp' +-- +-- +-- WARNING: can't read the INFORMATION_SCHEMA.libraries table. It's most probably an old server 8.0.45. +-- +/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; + +-- Dump completed on 2026-04-27 9:20:30 diff --git a/req.d.ts b/req.d.ts index f219975..3db81c2 100644 --- a/req.d.ts +++ b/req.d.ts @@ -1,3 +1,5 @@ +/// + import { AccessTokenPayload, IConsumerPayload, IPosPayload } from '@/common/models' import { IPartnerPayload } from '@/common/models/partnerPayload.model' diff --git a/src/common/enums/enums.ts b/src/common/enums/enums.ts index 4d48f4d..348dfce 100644 --- a/src/common/enums/enums.ts +++ b/src/common/enums/enums.ts @@ -21,5 +21,6 @@ export const UploadedFileTypes = { GOOD: 'good', SERVICE: 'service', PROFILE_AVATAR: 'profile_avatar', + PARTNER_LOGO: 'partner_logo', } export type UploadedFileTypes = (typeof UploadedFileTypes)[keyof typeof UploadedFileTypes] diff --git a/src/common/guards/auth-consumer.guard.ts b/src/common/guards/auth-consumer.guard.ts index 88453c2..6e9820d 100644 --- a/src/common/guards/auth-consumer.guard.ts +++ b/src/common/guards/auth-consumer.guard.ts @@ -27,14 +27,14 @@ export class ConsumerGuard { const consumer = await this.prisma.consumer.findFirst({ where: { - consumer_accounts: { + accounts: { some: { id: tokenPayload.account_id, }, }, }, select: { - consumer_accounts: { + accounts: { select: { role: true, }, diff --git a/src/common/guards/auth-partner.guard.ts b/src/common/guards/auth-partner.guard.ts index fee8372..4b96df7 100644 --- a/src/common/guards/auth-partner.guard.ts +++ b/src/common/guards/auth-partner.guard.ts @@ -23,14 +23,14 @@ export class PartnerGuard { const partner = await this.prisma.partner.findFirst({ where: { - partner_accounts: { + accounts: { some: { id: tokenPayload.account_id, }, }, }, select: { - partner_accounts: { + accounts: { select: { role: true, }, diff --git a/src/common/queryConstants/consumer.ts b/src/common/queryConstants/consumer.ts new file mode 100644 index 0000000..b4c6548 --- /dev/null +++ b/src/common/queryConstants/consumer.ts @@ -0,0 +1,31 @@ +import { ConsumerSelect } from '@/generated/prisma/models' + +export const infoSelect: ConsumerSelect = { + legal: { + select: { + name: true, + registration_code: true, + partner: { + select: { + id: true, + name: true, + code: true, + }, + }, + }, + }, + individual: { + select: { + first_name: true, + last_name: true, + mobile_number: true, + partner: { + select: { + id: true, + name: true, + code: true, + }, + }, + }, + }, +} diff --git a/src/common/queryConstants/index.ts b/src/common/queryConstants/index.ts index 184e7b1..56ea3a8 100644 --- a/src/common/queryConstants/index.ts +++ b/src/common/queryConstants/index.ts @@ -1,5 +1,7 @@ -import * as pos from './pos' +import * as CONSUMER from './consumer' +import * as POS from './pos' export const QUERY_CONSTANTS = { - pos, + POS, + CONSUMER, } diff --git a/src/common/utils/index.ts b/src/common/utils/index.ts new file mode 100644 index 0000000..c96eb21 --- /dev/null +++ b/src/common/utils/index.ts @@ -0,0 +1,4 @@ +export * from './jwt-user.util' +export * from './mappers/consumer_mappers.util' +export * from './password.util' +export * from './tracking-code-generator.util' diff --git a/src/common/utils/mappers/consumer_mappers.util.ts b/src/common/utils/mappers/consumer_mappers.util.ts new file mode 100644 index 0000000..dd6b8e6 --- /dev/null +++ b/src/common/utils/mappers/consumer_mappers.util.ts @@ -0,0 +1,27 @@ +export default (consumer: any) => { + const { legal, individual, activation, ...rest } = consumer + + const partner = legal?.partner || individual?.partner + delete legal?.partner + delete individual?.partner + + return { + ...rest, + partner, + legal: legal ? { ...legal } : null, + individual: individual + ? { ...individual, fullname: `${rest?.first_name} ${rest?.last_name}` } + : null, + name: legal ? legal.name : `${individual?.first_name} ${individual?.last_name}`, + // license_info: prepareLicenseInfo(activation), + } +} + +function prepareLicenseInfo(latestLicense: any) { + if (!latestLicense) return null + const { license, ...rest } = latestLicense + + return { + ...rest, + } +} diff --git a/src/generated/prisma/browser.ts b/src/generated/prisma/browser.ts index 7273fe4..676dc75 100644 --- a/src/generated/prisma/browser.ts +++ b/src/generated/prisma/browser.ts @@ -42,6 +42,16 @@ export type ConsumerAccount = Prisma.ConsumerAccountModel * */ export type Consumer = Prisma.ConsumerModel +/** + * Model ConsumerIndividual + * + */ +export type ConsumerIndividual = Prisma.ConsumerIndividualModel +/** + * Model ConsumerLegal + * + */ +export type ConsumerLegal = Prisma.ConsumerLegalModel /** * Model BusinessActivity * diff --git a/src/generated/prisma/client.ts b/src/generated/prisma/client.ts index d811076..4903629 100644 --- a/src/generated/prisma/client.ts +++ b/src/generated/prisma/client.ts @@ -64,6 +64,16 @@ export type ConsumerAccount = Prisma.ConsumerAccountModel * */ export type Consumer = Prisma.ConsumerModel +/** + * Model ConsumerIndividual + * + */ +export type ConsumerIndividual = Prisma.ConsumerIndividualModel +/** + * Model ConsumerLegal + * + */ +export type ConsumerLegal = Prisma.ConsumerLegalModel /** * Model BusinessActivity * diff --git a/src/generated/prisma/commonInputTypes.ts b/src/generated/prisma/commonInputTypes.ts index 5642b85..f54e5c0 100644 --- a/src/generated/prisma/commonInputTypes.ts +++ b/src/generated/prisma/commonInputTypes.ts @@ -161,6 +161,13 @@ export type EnumConsumerRoleWithAggregatesFilter<$PrismaModel = never> = { _max?: Prisma.NestedEnumConsumerRoleFilter<$PrismaModel> } +export type EnumConsumerTypeFilter<$PrismaModel = never> = { + equals?: $Enums.ConsumerType | Prisma.EnumConsumerTypeFieldRefInput<$PrismaModel> + in?: $Enums.ConsumerType[] + notIn?: $Enums.ConsumerType[] + not?: Prisma.NestedEnumConsumerTypeFilter<$PrismaModel> | $Enums.ConsumerType +} + export type EnumConsumerStatusFilter<$PrismaModel = never> = { equals?: $Enums.ConsumerStatus | Prisma.EnumConsumerStatusFieldRefInput<$PrismaModel> in?: $Enums.ConsumerStatus[] @@ -168,6 +175,16 @@ export type EnumConsumerStatusFilter<$PrismaModel = never> = { not?: Prisma.NestedEnumConsumerStatusFilter<$PrismaModel> | $Enums.ConsumerStatus } +export type EnumConsumerTypeWithAggregatesFilter<$PrismaModel = never> = { + equals?: $Enums.ConsumerType | Prisma.EnumConsumerTypeFieldRefInput<$PrismaModel> + in?: $Enums.ConsumerType[] + notIn?: $Enums.ConsumerType[] + not?: Prisma.NestedEnumConsumerTypeWithAggregatesFilter<$PrismaModel> | $Enums.ConsumerType + _count?: Prisma.NestedIntFilter<$PrismaModel> + _min?: Prisma.NestedEnumConsumerTypeFilter<$PrismaModel> + _max?: Prisma.NestedEnumConsumerTypeFilter<$PrismaModel> +} + export type EnumConsumerStatusWithAggregatesFilter<$PrismaModel = never> = { equals?: $Enums.ConsumerStatus | Prisma.EnumConsumerStatusFieldRefInput<$PrismaModel> in?: $Enums.ConsumerStatus[] @@ -461,6 +478,13 @@ export type BoolNullableFilter<$PrismaModel = never> = { not?: Prisma.NestedBoolNullableFilter<$PrismaModel> | boolean | null } +export type EnumCustomerTypeFilter<$PrismaModel = never> = { + equals?: $Enums.CustomerType | Prisma.EnumCustomerTypeFieldRefInput<$PrismaModel> + in?: $Enums.CustomerType[] + notIn?: $Enums.CustomerType[] + not?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> | $Enums.CustomerType +} + export type DateTimeNullableFilter<$PrismaModel = never> = { equals?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel> | null in?: Date[] | string[] | null @@ -472,13 +496,6 @@ export type DateTimeNullableFilter<$PrismaModel = never> = { not?: Prisma.NestedDateTimeNullableFilter<$PrismaModel> | Date | string | null } -export type EnumCustomerTypeFilter<$PrismaModel = never> = { - equals?: $Enums.CustomerType | Prisma.EnumCustomerTypeFieldRefInput<$PrismaModel> - in?: $Enums.CustomerType[] - notIn?: $Enums.CustomerType[] - not?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> | $Enums.CustomerType -} - export type BoolNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel> | null not?: Prisma.NestedBoolNullableWithAggregatesFilter<$PrismaModel> | boolean | null @@ -487,6 +504,16 @@ export type BoolNullableWithAggregatesFilter<$PrismaModel = never> = { _max?: Prisma.NestedBoolNullableFilter<$PrismaModel> } +export type EnumCustomerTypeWithAggregatesFilter<$PrismaModel = never> = { + equals?: $Enums.CustomerType | Prisma.EnumCustomerTypeFieldRefInput<$PrismaModel> + in?: $Enums.CustomerType[] + notIn?: $Enums.CustomerType[] + not?: Prisma.NestedEnumCustomerTypeWithAggregatesFilter<$PrismaModel> | $Enums.CustomerType + _count?: Prisma.NestedIntFilter<$PrismaModel> + _min?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> + _max?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> +} + export type DateTimeNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel> | null in?: Date[] | string[] | null @@ -501,16 +528,6 @@ export type DateTimeNullableWithAggregatesFilter<$PrismaModel = never> = { _max?: Prisma.NestedDateTimeNullableFilter<$PrismaModel> } -export type EnumCustomerTypeWithAggregatesFilter<$PrismaModel = never> = { - equals?: $Enums.CustomerType | Prisma.EnumCustomerTypeFieldRefInput<$PrismaModel> - in?: $Enums.CustomerType[] - notIn?: $Enums.CustomerType[] - not?: Prisma.NestedEnumCustomerTypeWithAggregatesFilter<$PrismaModel> | $Enums.CustomerType - _count?: Prisma.NestedIntFilter<$PrismaModel> - _min?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> - _max?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> -} - export type EnumUnitTypeFilter<$PrismaModel = never> = { equals?: $Enums.UnitType | Prisma.EnumUnitTypeFieldRefInput<$PrismaModel> in?: $Enums.UnitType[] @@ -780,6 +797,13 @@ export type NestedEnumConsumerRoleWithAggregatesFilter<$PrismaModel = never> = { _max?: Prisma.NestedEnumConsumerRoleFilter<$PrismaModel> } +export type NestedEnumConsumerTypeFilter<$PrismaModel = never> = { + equals?: $Enums.ConsumerType | Prisma.EnumConsumerTypeFieldRefInput<$PrismaModel> + in?: $Enums.ConsumerType[] + notIn?: $Enums.ConsumerType[] + not?: Prisma.NestedEnumConsumerTypeFilter<$PrismaModel> | $Enums.ConsumerType +} + export type NestedEnumConsumerStatusFilter<$PrismaModel = never> = { equals?: $Enums.ConsumerStatus | Prisma.EnumConsumerStatusFieldRefInput<$PrismaModel> in?: $Enums.ConsumerStatus[] @@ -787,6 +811,16 @@ export type NestedEnumConsumerStatusFilter<$PrismaModel = never> = { not?: Prisma.NestedEnumConsumerStatusFilter<$PrismaModel> | $Enums.ConsumerStatus } +export type NestedEnumConsumerTypeWithAggregatesFilter<$PrismaModel = never> = { + equals?: $Enums.ConsumerType | Prisma.EnumConsumerTypeFieldRefInput<$PrismaModel> + in?: $Enums.ConsumerType[] + notIn?: $Enums.ConsumerType[] + not?: Prisma.NestedEnumConsumerTypeWithAggregatesFilter<$PrismaModel> | $Enums.ConsumerType + _count?: Prisma.NestedIntFilter<$PrismaModel> + _min?: Prisma.NestedEnumConsumerTypeFilter<$PrismaModel> + _max?: Prisma.NestedEnumConsumerTypeFilter<$PrismaModel> +} + export type NestedEnumConsumerStatusWithAggregatesFilter<$PrismaModel = never> = { equals?: $Enums.ConsumerStatus | Prisma.EnumConsumerStatusFieldRefInput<$PrismaModel> in?: $Enums.ConsumerStatus[] @@ -1053,6 +1087,13 @@ export type NestedBoolNullableFilter<$PrismaModel = never> = { not?: Prisma.NestedBoolNullableFilter<$PrismaModel> | boolean | null } +export type NestedEnumCustomerTypeFilter<$PrismaModel = never> = { + equals?: $Enums.CustomerType | Prisma.EnumCustomerTypeFieldRefInput<$PrismaModel> + in?: $Enums.CustomerType[] + notIn?: $Enums.CustomerType[] + not?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> | $Enums.CustomerType +} + export type NestedDateTimeNullableFilter<$PrismaModel = never> = { equals?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel> | null in?: Date[] | string[] | null @@ -1064,13 +1105,6 @@ export type NestedDateTimeNullableFilter<$PrismaModel = never> = { not?: Prisma.NestedDateTimeNullableFilter<$PrismaModel> | Date | string | null } -export type NestedEnumCustomerTypeFilter<$PrismaModel = never> = { - equals?: $Enums.CustomerType | Prisma.EnumCustomerTypeFieldRefInput<$PrismaModel> - in?: $Enums.CustomerType[] - notIn?: $Enums.CustomerType[] - not?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> | $Enums.CustomerType -} - export type NestedBoolNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: boolean | Prisma.BooleanFieldRefInput<$PrismaModel> | null not?: Prisma.NestedBoolNullableWithAggregatesFilter<$PrismaModel> | boolean | null @@ -1079,6 +1113,16 @@ export type NestedBoolNullableWithAggregatesFilter<$PrismaModel = never> = { _max?: Prisma.NestedBoolNullableFilter<$PrismaModel> } +export type NestedEnumCustomerTypeWithAggregatesFilter<$PrismaModel = never> = { + equals?: $Enums.CustomerType | Prisma.EnumCustomerTypeFieldRefInput<$PrismaModel> + in?: $Enums.CustomerType[] + notIn?: $Enums.CustomerType[] + not?: Prisma.NestedEnumCustomerTypeWithAggregatesFilter<$PrismaModel> | $Enums.CustomerType + _count?: Prisma.NestedIntFilter<$PrismaModel> + _min?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> + _max?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> +} + export type NestedDateTimeNullableWithAggregatesFilter<$PrismaModel = never> = { equals?: Date | string | Prisma.DateTimeFieldRefInput<$PrismaModel> | null in?: Date[] | string[] | null @@ -1093,16 +1137,6 @@ export type NestedDateTimeNullableWithAggregatesFilter<$PrismaModel = never> = { _max?: Prisma.NestedDateTimeNullableFilter<$PrismaModel> } -export type NestedEnumCustomerTypeWithAggregatesFilter<$PrismaModel = never> = { - equals?: $Enums.CustomerType | Prisma.EnumCustomerTypeFieldRefInput<$PrismaModel> - in?: $Enums.CustomerType[] - notIn?: $Enums.CustomerType[] - not?: Prisma.NestedEnumCustomerTypeWithAggregatesFilter<$PrismaModel> | $Enums.CustomerType - _count?: Prisma.NestedIntFilter<$PrismaModel> - _min?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> - _max?: Prisma.NestedEnumCustomerTypeFilter<$PrismaModel> -} - export type NestedEnumUnitTypeFilter<$PrismaModel = never> = { equals?: $Enums.UnitType | Prisma.EnumUnitTypeFieldRefInput<$PrismaModel> in?: $Enums.UnitType[] diff --git a/src/generated/prisma/enums.ts b/src/generated/prisma/enums.ts index 4071eef..7639590 100644 --- a/src/generated/prisma/enums.ts +++ b/src/generated/prisma/enums.ts @@ -238,3 +238,11 @@ export const ApplicationPublisher = { } as const export type ApplicationPublisher = (typeof ApplicationPublisher)[keyof typeof ApplicationPublisher] + + +export const ConsumerType = { + INDIVIDUAL: 'INDIVIDUAL', + LEGAL: 'LEGAL' +} as const + +export type ConsumerType = (typeof ConsumerType)[keyof typeof ConsumerType] diff --git a/src/generated/prisma/internal/class.ts b/src/generated/prisma/internal/class.ts index 70c2bca..2654ec1 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 adminAccounts 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 // 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 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 mobile_number String\n national_code String\n first_name String\n last_name String\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 partner_id String\n partner Partner @relation(fields: [partner_id], references: [id])\n\n consumer_accounts ConsumerAccount[]\n business_activities BusinessActivity[]\n consumer_devices ConsumerDevices[]\n\n @@unique([mobile_number, partner_id])\n @@unique([national_code, partner_id])\n @@map(\"consumers\")\n}\n\nmodel BusinessActivity {\n id String @id @default(ulid())\n economic_code String\n name 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 complexes Complex[]\n permission_businesses PermissionBusiness[]\n license_activation LicenseActivation?\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 goods Good[]\n good_categories GoodCategory[]\n permission_complexes PermissionComplex[]\n customer_individuals CustomerIndividual[]\n customer_legals CustomerLegal[]\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 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 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 consumers Consumer[]\n partner_accounts PartnerAccount[]\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 pos_list Pos[]\n provider_accounts ProviderAccount[]\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 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\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 type CustomerType\n unknown_customer Json?\n customer_individual CustomerIndividual?\n customer_legal CustomerLegal?\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 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 complex_id String\n complex Complex @relation(fields: [complex_id], references: [id])\n\n @@unique([complex_id, national_id])\n @@index([complex_id])\n @@map(\"customer_individuals\")\n}\n\nmodel CustomerLegal {\n company_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 complex_id String\n complex Complex @relation(fields: [complex_id], references: [id])\n\n @@unique([complex_id, registration_number])\n @@index([complex_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\nmodel Good {\n id String @id @default(ulid())\n name String @db.VarChar(255)\n is_default_guild_good Boolean @default(false)\n sku String @db.VarChar(100)\n unit_type UnitType\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 complex_id String?\n category_id String?\n\n category GoodCategory? @relation(fields: [category_id], references: [id])\n complex Complex? @relation(fields: [complex_id], references: [id])\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 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(ulid())\n code String @unique @db.VarChar(100)\n total_amount Decimal @db.Decimal(15, 2)\n notes String? @db.Text\n unknown_customer Json? @db.Json\n invoice_date DateTime? @default(now()) @db.Timestamp(0)\n created_at DateTime @default(now()) @db.Timestamp(0)\n updated_at DateTime @updatedAt @db.Timestamp(0)\n\n customer_id String?\n account_id String\n pos_id String\n\n customer Customer? @relation(fields: [customer_id], references: [id])\n pos Pos @relation(fields: [pos_id], references: [id])\n consumer_account ConsumerAccount @relation(fields: [account_id], references: [id])\n items SalesInvoiceItem[]\n payments SalesInvoicePayment[]\n\n @@map(\"sales_invoices\")\n}\n\nmodel SalesInvoiceItem {\n id String @id @default(ulid())\n quantity Decimal @db.Decimal(10, 0)\n unit_type UnitType\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 invoice_id String\n good_id String?\n service_id String?\n\n payload Json?\n\n invoice SalesInvoice @relation(fields: [invoice_id], references: [id])\n good Good? @relation(fields: [good_id], references: [id])\n service Service? @relation(fields: [service_id], references: [id])\n\n @@index([invoice_id, good_id])\n @@map(\"sales_invoice_items\")\n}\n\nmodel SalesInvoicePayment {\n id String @id @default(ulid())\n invoice_id String\n amount Decimal @db.Decimal(15, 2)\n payment_method PaymentMethodType\n paid_at DateTime\n created_at DateTime @default(now())\n\n invoice SalesInvoice @relation(fields: [invoice_id], references: [id])\n\n @@index([invoice_id])\n @@map(\"sales_invoice_payments\")\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])\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 // 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 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\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 complexes Complex[]\n permission_businesses PermissionBusiness[]\n license_activation LicenseActivation?\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 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 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 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 company_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\nmodel Good {\n id String @id @default(ulid())\n name String @db.VarChar(255)\n is_default_guild_good Boolean @default(false)\n sku String @db.VarChar(100)\n unit_type UnitType\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 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 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(ulid())\n code String @unique @db.VarChar(100)\n total_amount Decimal @db.Decimal(15, 2)\n notes String? @db.Text\n unknown_customer Json? @db.Json\n invoice_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 customer_id String?\n customer Customer? @relation(fields: [customer_id], references: [id])\n\n account_id String\n consumer_account ConsumerAccount @relation(fields: [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\n @@map(\"sales_invoices\")\n}\n\nmodel SalesInvoiceItem {\n id String @id @default(ulid())\n quantity Decimal @db.Decimal(10, 0)\n unit_type UnitType\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 invoice_id String\n good_id String?\n service_id String?\n\n payload Json?\n\n invoice SalesInvoice @relation(fields: [invoice_id], references: [id])\n good Good? @relation(fields: [good_id], references: [id])\n service Service? @relation(fields: [service_id], references: [id])\n\n @@index([invoice_id, good_id])\n @@map(\"sales_invoice_items\")\n}\n\nmodel SalesInvoicePayment {\n id String @id @default(ulid())\n invoice_id String\n amount Decimal @db.Decimal(15, 2)\n payment_method PaymentMethodType\n paid_at DateTime\n created_at DateTime @default(now())\n\n invoice SalesInvoice @relation(fields: [invoice_id], references: [id])\n\n @@index([invoice_id])\n @@map(\"sales_invoice_payments\")\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\":\"adminAccounts\",\"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\"},\"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\":\"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\":\"status\",\"kind\":\"enum\",\"type\":\"ConsumerStatus\"},{\"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\":\"ConsumerToPartner\"},{\"name\":\"consumer_accounts\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"ConsumerToConsumerAccount\"},{\"name\":\"business_activities\",\"kind\":\"object\",\"type\":\"BusinessActivity\",\"relationName\":\"BusinessActivityToConsumer\"},{\"name\":\"consumer_devices\",\"kind\":\"object\",\"type\":\"ConsumerDevices\",\"relationName\":\"ConsumerToConsumerDevices\"}],\"dbName\":\"consumers\"},\"BusinessActivity\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"economic_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\":\"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\":\"complexes\",\"kind\":\"object\",\"type\":\"Complex\",\"relationName\":\"BusinessActivityToComplex\"},{\"name\":\"permission_businesses\",\"kind\":\"object\",\"type\":\"PermissionBusiness\",\"relationName\":\"BusinessActivityToPermissionBusiness\"},{\"name\":\"license_activation\",\"kind\":\"object\",\"type\":\"LicenseActivation\",\"relationName\":\"BusinessActivityToLicenseActivation\"}],\"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\":\"goods\",\"kind\":\"object\",\"type\":\"Good\",\"relationName\":\"ComplexToGood\"},{\"name\":\"good_categories\",\"kind\":\"object\",\"type\":\"GoodCategory\",\"relationName\":\"ComplexToGoodCategory\"},{\"name\":\"permission_complexes\",\"kind\":\"object\",\"type\":\"PermissionComplex\",\"relationName\":\"ComplexToPermissionComplex\"},{\"name\":\"customer_individuals\",\"kind\":\"object\",\"type\":\"CustomerIndividual\",\"relationName\":\"ComplexToCustomerIndividual\"},{\"name\":\"customer_legals\",\"kind\":\"object\",\"type\":\"CustomerLegal\",\"relationName\":\"ComplexToCustomerLegal\"}],\"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\"},\"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\":\"logo_url\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"consumers\",\"kind\":\"object\",\"type\":\"Consumer\",\"relationName\":\"ConsumerToPartner\"},{\"name\":\"partner_accounts\",\"kind\":\"object\",\"type\":\"PartnerAccount\",\"relationName\":\"PartnerToPartnerAccount\"},{\"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\":\"pos_list\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"PosToProvider\"},{\"name\":\"provider_accounts\",\"kind\":\"object\",\"type\":\"ProviderAccount\",\"relationName\":\"ProviderToProviderAccount\"}],\"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\"},\"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\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"deleted_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"type\",\"kind\":\"enum\",\"type\":\"CustomerType\"},{\"name\":\"unknown_customer\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"customer_individual\",\"kind\":\"object\",\"type\":\"CustomerIndividual\",\"relationName\":\"CustomerToCustomerIndividual\"},{\"name\":\"customer_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\":\"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\":\"complex_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"complex\",\"kind\":\"object\",\"type\":\"Complex\",\"relationName\":\"ComplexToCustomerIndividual\"}],\"dbName\":\"customer_individuals\"},\"CustomerLegal\":{\"fields\":[{\"name\":\"company_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\":\"complex_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"complex\",\"kind\":\"object\",\"type\":\"Complex\",\"relationName\":\"ComplexToCustomerLegal\"}],\"dbName\":\"customer_legal\"},\"Good\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_default_guild_good\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"sku\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"unit_type\",\"kind\":\"enum\",\"type\":\"UnitType\"},{\"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\":\"complex_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"category_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"category\",\"kind\":\"object\",\"type\":\"GoodCategory\",\"relationName\":\"GoodToGoodCategory\"},{\"name\":\"complex\",\"kind\":\"object\",\"type\":\"Complex\",\"relationName\":\"ComplexToGood\"},{\"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\"},\"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\":\"notes\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"unknown_customer\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"invoice_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"created_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"updated_at\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"name\":\"customer_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"account_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"pos_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"customer\",\"kind\":\"object\",\"type\":\"Customer\",\"relationName\":\"CustomerToSalesInvoice\"},{\"name\":\"pos\",\"kind\":\"object\",\"type\":\"Pos\",\"relationName\":\"PosToSalesInvoice\"},{\"name\":\"consumer_account\",\"kind\":\"object\",\"type\":\"ConsumerAccount\",\"relationName\":\"ConsumerAccountToSalesInvoice\"},{\"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\":\"unit_type\",\"kind\":\"enum\",\"type\":\"UnitType\"},{\"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\":\"invoice_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"good_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"service_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"payload\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"invoice\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"SalesInvoiceToSalesInvoiceItem\"},{\"name\":\"good\",\"kind\":\"object\",\"type\":\"Good\",\"relationName\":\"GoodToSalesInvoiceItem\"},{\"name\":\"service\",\"kind\":\"object\",\"type\":\"Service\",\"relationName\":\"SalesInvoiceItemToService\"}],\"dbName\":\"sales_invoice_items\"},\"SalesInvoicePayment\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"invoice_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\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"SalesInvoiceToSalesInvoicePayment\"}],\"dbName\":\"sales_invoice_payments\"},\"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\"},\"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\":\"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\":\"complexes\",\"kind\":\"object\",\"type\":\"Complex\",\"relationName\":\"BusinessActivityToComplex\"},{\"name\":\"permission_businesses\",\"kind\":\"object\",\"type\":\"PermissionBusiness\",\"relationName\":\"BusinessActivityToPermissionBusiness\"},{\"name\":\"license_activation\",\"kind\":\"object\",\"type\":\"LicenseActivation\",\"relationName\":\"BusinessActivityToLicenseActivation\"},{\"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\"},\"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\":\"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\"},\"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\":\"company_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\"},\"Good\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"name\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"is_default_guild_good\",\"kind\":\"scalar\",\"type\":\"Boolean\"},{\"name\":\"sku\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"unit_type\",\"kind\":\"enum\",\"type\":\"UnitType\"},{\"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\":\"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\"},\"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\":\"notes\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"unknown_customer\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"invoice_date\",\"kind\":\"scalar\",\"type\":\"DateTime\"},{\"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\":\"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\"}],\"dbName\":\"sales_invoices\"},\"SalesInvoiceItem\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"quantity\",\"kind\":\"scalar\",\"type\":\"Decimal\"},{\"name\":\"unit_type\",\"kind\":\"enum\",\"type\":\"UnitType\"},{\"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\":\"invoice_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"good_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"service_id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"payload\",\"kind\":\"scalar\",\"type\":\"Json\"},{\"name\":\"invoice\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"SalesInvoiceToSalesInvoiceItem\"},{\"name\":\"good\",\"kind\":\"object\",\"type\":\"Good\",\"relationName\":\"GoodToSalesInvoiceItem\"},{\"name\":\"service\",\"kind\":\"object\",\"type\":\"Service\",\"relationName\":\"SalesInvoiceItemToService\"}],\"dbName\":\"sales_invoice_items\"},\"SalesInvoicePayment\":{\"fields\":[{\"name\":\"id\",\"kind\":\"scalar\",\"type\":\"String\"},{\"name\":\"invoice_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\",\"kind\":\"object\",\"type\":\"SalesInvoice\",\"relationName\":\"SalesInvoiceToSalesInvoicePayment\"}],\"dbName\":\"sales_invoice_payments\"},\"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\",\"adminAccounts\",\"_count\",\"admin\",\"admin_account\",\"business_activities\",\"category\",\"complex\",\"customer\",\"customer_individual\",\"customer_legal\",\"sales_invoices\",\"pos\",\"consumers\",\"partner\",\"account\",\"partner_accounts\",\"charge_transaction\",\"license\",\"business_activity\",\"license_renews\",\"activation\",\"license_activation\",\"credits\",\"allocation\",\"credit\",\"account_allocations\",\"licenses\",\"license_charge_transactions\",\"account_quota_charge_transactions\",\"license_renew_charge_transactions\",\"consumer_accounts\",\"consumer\",\"consumer_devices\",\"consumer_account\",\"permission\",\"pos_permissions\",\"complex_permissions\",\"business\",\"business_permissions\",\"account_allocation\",\"items\",\"invoice\",\"payments\",\"good\",\"services\",\"sales_invoice_items\",\"service\",\"goods\",\"guild\",\"good_categories\",\"complexes\",\"permission_businesses\",\"pos_list\",\"permission_complexes\",\"customer_individuals\",\"customer_legals\",\"devices\",\"brand\",\"poses\",\"device\",\"provider\",\"permission_pos\",\"provider_accounts\",\"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\",\"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\",\"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\",\"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\",\"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\",\"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\",\"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\",\"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\",\"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\",\"sku\",\"local_sku\",\"barcode\",\"category_id\",\"base_sale_price\",\"invoice_id\",\"amount\",\"PaymentMethodType\",\"payment_method\",\"paid_at\",\"quantity\",\"UnitType\",\"unit_type\",\"unit_price\",\"total_amount\",\"discount\",\"notes\",\"good_id\",\"service_id\",\"payload\",\"string_contains\",\"string_starts_with\",\"string_ends_with\",\"array_starts_with\",\"array_ends_with\",\"array_contains\",\"code\",\"unknown_customer\",\"invoice_date\",\"customer_id\",\"pos_id\",\"is_default_guild_good\",\"guild_id\",\"GoodPricingModel\",\"pricing_model\",\"company_name\",\"economic_code\",\"registration_number\",\"postal_code\",\"first_name\",\"last_name\",\"national_id\",\"is_favorite\",\"CustomerType\",\"type\",\"message\",\"createdAt\",\"version\",\"build_number\",\"is_minimum_supported\",\"ApplicationReleaseType\",\"release_type\",\"ApplicationPlatform\",\"platform\",\"release_date\",\"uuid\",\"app_version\",\"model\",\"ApplicationPublisher\",\"publisher\",\"os_version\",\"sdk_version\",\"release_number\",\"user_agent\",\"browser_name\",\"fcm_token\",\"consumer_id\",\"PartnerStatus\",\"status\",\"ProviderRole\",\"role\",\"provider_id\",\"BusinessRole\",\"business_id\",\"permission_id\",\"ComplexRole\",\"POSRole\",\"consumer_account_id\",\"logo_url\",\"PartnerRole\",\"partner_id\",\"license_activation_id\",\"credit_id\",\"charge_transaction_id\",\"activation_expires_at\",\"tracking_code\",\"purchased_count\",\"expires_at\",\"activation_id\",\"starts_at\",\"license_id\",\"business_activity_id\",\"accounts_limit\",\"brand_id\",\"serial_number\",\"POSStatus\",\"POSType\",\"pos_type\",\"device_id\",\"branch_code\",\"address\",\"mobile_number\",\"national_code\",\"ConsumerStatus\",\"ConsumerRole\",\"username\",\"password\",\"AccountStatus\",\"AccountType\",\"admin_id\",\"complex_id_registration_number\",\"complex_id_national_id\",\"permission_id_business_id\",\"permission_id_complex_id\",\"permission_id_pos_id\",\"mobile_number_partner_id\",\"national_code_partner_id\",\"economic_code_consumer_id\",\"is\",\"isNot\",\"connectOrCreate\",\"upsert\",\"createMany\",\"set\",\"disconnect\",\"delete\",\"connect\",\"updateMany\",\"deleteMany\",\"_relevance\",\"increment\",\"decrement\",\"multiply\",\"divide\"]"), - graph: "pxSbArAECgUAAJQKACARAAC-CQAg_AQAAJMKADD9BAAAAwAQ_gQAAJMKADD_BAEAAAABgwUBAAAAAYUFQACYCAAhhgVAAJgIACGEBgEAlggAIQEAAAABACAKBQAAlAoAIBEAAL4JACD8BAAAkwoAMP0EAAADABD-BAAAkwoAMP8EAQCWCAAhgwUBAJYIACGFBUAAmAgAIYYFQACYCAAhhAYBAJYIACEDBQAA9BEAIBEAALoRACCYBgAA9REAIAMAAAADACABAAAEADACAAABACABAAAAAwAgAQAAAAMAIAsRAAC-CQAgPwAAvQkAIPwEAAC7CQAw_QQAAAgAEP4EAAC7CQAw_wQBAJYIACGDBQEAlggAIYUFQACYCAAhhgVAAJgIACHdBQAAvAndBSLeBQEAlggAIQEAAAAIACAVCQAAxAkAIA0AAMgIACARAAD4CAAgPgAAkQoAID8AAJIKACBAAAD5CAAg_AQAAI4KADD9BAAACgAQ_gQAAI4KADD_BAEAlggAIYAFAQCWCAAhgwUBAJYIACGEBQEAlggAIYUFQACYCAAhhgVAAJgIACHQBQEAlwgAIdsFAACPCvcFIt4FAQCXCAAh9QUBAJcIACH4BQAAkAr4BSL5BQEAlwgAIQsJAAC_EQAgDQAAuw0AIBEAAK8OACA-AADyEQAgPwAAuREAIEAAALAOACDQBQAAlQoAIN4FAACVCgAg9QUAAJUKACD5BQAAlQoAIJgGAADzEQAgFQkAAMQJACANAADICAAgEQAA-AgAID4AAJEKACA_AACSCgAgQAAA-QgAIPwEAACOCgAw_QQAAAoAEP4EAACOCgAw_wQBAAAAAYAFAQCWCAAhgwUBAAAAAYQFAQCWCAAhhQVAAJgIACGGBUAAmAgAIdAFAQCXCAAh2wUAAI8K9wUi3gUBAJcIACH1BQEAAAAB-AUAAJAK-AUi-QUBAJcIACEDAAAACgAgAQAACwAwAgAADAAgDxgAAOwJACAiAADfCQAgMwAAjAoAIDUAAI0KACA2AAD7CAAg_AQAAIsKADD9BAAADgAQ_gQAAIsKADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIbcFAQCWCAAhuwUBAJYIACHZBQEAlggAIQYYAADaEQAgIgAA0BEAIDMAAO4RACA1AADwEQAgNgAAsg4AIJgGAADxEQAgEBgAAOwJACAiAADfCQAgMwAAjAoAIDUAAI0KACA2AAD7CAAg_AQAAIsKADD9BAAADgAQ_gQAAIsKADD_BAEAAAABgAUBAJYIACGFBUAAmAgAIYYFQACYCAAhtwUBAJYIACG7BQEAlggAIdkFAQCWCAAhjAYAAIoKACADAAAADgAgAQAADwAwAgAAEAAgEAkAAIcKACAyAADICQAgMwAAiQoAIPwEAACICgAw_QQAABIAEP4EAACICgAw_wQBAJYIACGABQEAlggAIYEFAQCXCAAhggUBAJcIACGEBQEAlwgAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIbYFIADXCAAhtwUBAJcIACEJCQAAvxEAIDIAAMIRACAzAADuEQAggQUAAJUKACCCBQAAlQoAIIQFAACVCgAghwUAAJUKACC3BQAAlQoAIJgGAADvEQAgEAkAAIcKACAyAADICQAgMwAAiQoAIPwEAACICgAw_QQAABIAEP4EAACICgAw_wQBAAAAAYAFAQCWCAAhgQUBAJcIACGCBQEAlwgAIYQFAQCXCAAhhQVAAJgIACGGBUAAmAgAIYcFQACZCAAhtgUgANcIACG3BQEAlwgAIQMAAAASACABAAATADACAAAUACAWCAAAhgoAIAkAAIcKACAwAADOCQAg_AQAAIMKADD9BAAAFgAQ_gQAAIMKADD_BAEAlggAIYAFAQCWCAAhgQUBAJcIACGCBQEAlwgAIYQFAQCXCAAhhQVAAJgIACGGBUAAmAgAIYcFQACZCAAhlwUBAJYIACGYBQEAlwgAIZkFAQCXCAAhmgUBAJcIACGbBRAAhQoAIaMFAACACqMFIrYFIADXCAAhuQUAAIQKuQUiDAgAAOwRACAJAAC_EQAgMAAAxxEAIIEFAACVCgAgggUAAJUKACCEBQAAlQoAIIcFAACVCgAgmAUAAJUKACCZBQAAlQoAIJoFAACVCgAgmwUAAJUKACCYBgAA7REAIBYIAACGCgAgCQAAhwoAIDAAAM4JACD8BAAAgwoAMP0EAAAWABD-BAAAgwoAMP8EAQAAAAGABQEAlggAIYEFAQCXCAAhggUBAJcIACGEBQEAlwgAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIZcFAQCWCAAhmAUBAAAAAZkFAQAAAAGaBQEAlwgAIZsFEACFCgAhowUAAIAKowUitgUgANcIACG5BQAAhAq5BSIDAAAAFgAgAQAAFwAwAgAAGAAgAQAAABIAIBEVAACPCQAgMgAAyAkAIDQAAK0IACA3AADkCAAgOAAA-ggAIDkAAMkJACA6AADKCQAg_AQAAMcJADD9BAAAGwAQ_gQAAMcJADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIfIFAQCWCAAh-gUBAJYIACH7BQEAlwgAIQEAAAAbACASLAAA0QkAIC4AAIEKACAxAACCCgAg_AQAAP8JADD9BAAAHQAQ_gQAAP8JADD_BAEAlggAIYUFQACYCAAhnAUBAJYIACGhBRAAzAkAIaMFAACACqMFIqQFEADMCQAhpQUQAMwJACGmBRAAzAkAIacFAQCXCAAhqAUBAJcIACGpBQEAlwgAIaoFAADFCAAgCCwAAMkRACAuAADpEQAgMQAA6hEAIKcFAACVCgAgqAUAAJUKACCpBQAAlQoAIKoFAACVCgAgmAYAAOsRACASLAAA0QkAIC4AAIEKACAxAACCCgAg_AQAAP8JADD9BAAAHQAQ_gQAAP8JADD_BAEAAAABhQVAAJgIACGcBQEAlggAIaEFEADMCQAhowUAAIAKowUipAUQAMwJACGlBRAAzAkAIaYFEADMCQAhpwUBAJcIACGoBQEAlwgAIakFAQCXCAAhqgUAAMUIACADAAAAHQAgAQAAHgAwAgAAHwAgDQsAAMYIACAMAADHCAAgDQAAyAgAIPwEAADCCAAw_QQAACEAEP4EAADCCAAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAhhwVAAJkIACGyBQAAxQgAIMEFIADDCAAhwwUAAMQIwwUiAQAAACEAIAwJAADECQAgCgAAwwkAIPwEAADGCQAw_QQAACMAEP4EAADGCQAwhAUBAJYIACG0BQEAlggAIbsFAQCXCAAhvQUBAJYIACG-BQEAlggAIb8FAQCWCAAhwAUBAJYIACEBAAAAIwAgCwkAAMQJACAKAADDCQAg_AQAAMIJADD9BAAAJQAQ_gQAAMIJADCEBQEAlggAIbQFAQCWCAAhugUBAJYIACG7BQEAlggAIbwFAQCWCAAhvQUBAJYIACEBAAAAJQAgEwoAAP0JACAOAADcCQAgJAAA-AgAICsAAM4JACAtAAD-CQAg_AQAAPwJADD9BAAAJwAQ_gQAAPwJADD_BAEAlggAIYMFAQCWCAAhhQVAAJgIACGGBUAAmAgAIaUFEADMCQAhpwUBAJcIACGxBQEAlggAIbIFAADFCAAgswVAAJkIACG0BQEAlwgAIbUFAQCWCAAhCgoAAL4RACAOAADOEQAgJAAArw4AICsAAMcRACAtAADnEQAgpwUAAJUKACCyBQAAlQoAILMFAACVCgAgtAUAAJUKACCYBgAA6BEAIBMKAAD9CQAgDgAA3AkAICQAAPgIACArAADOCQAgLQAA_gkAIPwEAAD8CQAw_QQAACcAEP4EAAD8CQAw_wQBAAAAAYMFAQCWCAAhhQVAAJgIACGGBUAAmAgAIaUFEADMCQAhpwUBAJcIACGxBQEAAAABsgUAAMUIACCzBUAAmQgAIbQFAQCXCAAhtQUBAJYIACEDAAAAJwAgAQAAKAAwAgAAKQAgAQAAACcAIBAHAACsCAAgEAAA5gkAICEAAPoJACAjAAD7CQAg_AQAAPgJADD9BAAALAAQ_gQAAPgJADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACG-BQEAlggAIb8FAQCWCAAh2wUAAPkJ_wUi5wUBAJYIACH8BQEAlggAIf0FAQCWCAAhBQcAAIYNACAQAADUEQAgIQAA5BEAICMAAOURACCYBgAA5hEAIBIHAACsCAAgEAAA5gkAICEAAPoJACAjAAD7CQAg_AQAAPgJADD9BAAALAAQ_gQAAPgJADD_BAEAAAABhQVAAJgIACGGBUAAmAgAIb4FAQCWCAAhvwUBAJYIACHbBQAA-Qn_BSLnBQEAlggAIfwFAQCWCAAh_QUBAJYIACGKBgAA9gkAIIsGAAD3CQAgAwAAACwAIAEAAC0AMAIAAC4AIAsQAADmCQAgEQAAvgkAIPwEAAD0CQAw_QQAADAAEP4EAAD0CQAw_wQBAJYIACGDBQEAlggAIYUFQACYCAAhhgVAAJgIACHdBQAA9QnnBSLnBQEAlggAIQMQAADUEQAgEQAAuhEAIJgGAADjEQAgCxAAAOYJACARAAC-CQAg_AQAAPQJADD9BAAAMAAQ_gQAAPQJADD_BAEAAAABgwUBAAAAAYUFQACYCAAhhgVAAJgIACHdBQAA9QnnBSLnBQEAlggAIQMAAAAwACABAAAxADACAAAyACAMEAAA5gkAIB0AAPMJACD8BAAA8gkAMP0EAAA0ABD-BAAA8gkAMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIecFAQCWCAAh6wVAAJgIACHsBQEAlggAIe0FAgDOCAAhAxAAANQRACAdAADhEQAgmAYAAOIRACAMEAAA5gkAIB0AAPMJACD8BAAA8gkAMP0EAAA0ABD-BAAA8gkAMP8EAQAAAAGFBUAAmAgAIYYFQACYCAAh5wUBAJYIACHrBUAAmAgAIewFAQAAAAHtBQIAzggAIQMAAAA0ACABAAA1ADACAAA2ACAKEwAA8QkAIBcAAOwJACD8BAAA8AkAMP0EAAA4ABD-BAAA8AkAMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIeoFAQCWCAAh8wUCAM4IACEDEwAA3xEAIBcAANoRACCYBgAA4BEAIAoTAADxCQAgFwAA7AkAIPwEAADwCQAw_QQAADgAEP4EAADwCQAw_wQBAAAAAYUFQACYCAAhhgVAAJgIACHqBQEAlggAIfMFAgDOCAAhAwAAADgAIAEAADkAMAIAADoAIA4UAACOCQAgFQAAjwkAIBYAAJAJACAcAACRCQAg_AQAAI0JADD9BAAAPAAQ_gQAAI0JADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACHuBUAAmAgAIfAFQACYCAAh8QUBAJYIACHyBQEAlggAIQEAAAA8ACALEwAA7wkAIBcAAOwJACD8BAAA7gkAMP0EAAA-ABD-BAAA7gkAMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIeoFAQCWCAAh7gVAAJgIACHvBQEAlwgAIQQTAADdEQAgFwAA2hEAIO8FAACVCgAgmAYAAN4RACALEwAA7wkAIBcAAOwJACD8BAAA7gkAMP0EAAA-ABD-BAAA7gkAMP8EAQAAAAGFBUAAmAgAIYYFQACYCAAh6gUBAJYIACHuBUAAmAgAIe8FAQCXCAAhAwAAAD4AIAEAAD8AMAIAAEAAIAMAAAA-ACABAAA_ADACAABAACABAAAAPgAgAQAAADwAIAwRAAC2CQAgGAAA7AkAIBsAAO0JACD8BAAA6wkAMP0EAABFABD-BAAA6wkAMP8EAQCWCAAhgwUBAJcIACGFBUAAmAgAIYYFQACYCAAh6AUBAJcIACHpBQEAlwgAIQcRAACvDgAgGAAA2hEAIBsAANsRACCDBQAAlQoAIOgFAACVCgAg6QUAAJUKACCYBgAA3BEAIAwRAAC2CQAgGAAA7AkAIBsAAO0JACD8BAAA6wkAMP0EAABFABD-BAAA6wkAMP8EAQAAAAGDBQEAAAABhQVAAJgIACGGBUAAmAgAIegFAQCXCAAh6QUBAAAAAQMAAABFACABAABGADACAABHACABAAAAPAAgDw0AAMgIACAOAADiCQAgEQAAvgkAICIAAN8JACAlAADjCQAgKgAA5AkAIPwEAADgCQAw_QQAAEoAEP4EAADgCQAw_wQBAJYIACGDBQEAlggAIYUFQACYCAAhhgVAAJgIACHZBQEAlggAId0FAADhCYAGIgEAAABKACAJEwAA6gkAIBoAAOQJACD8BAAA6QkAMP0EAABMABD-BAAA6QkAMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIeoFAQCXCAAhAQAAAEwAIAwQAADmCQAgGQAA6AkAIPwEAADnCQAw_QQAAE4AEP4EAADnCQAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAh5wUBAJYIACHrBUAAmAgAIewFAQCWCAAh7QUCAM4IACEBAAAATgAgBBMAANgRACAaAADSEQAg6gUAAJUKACCYBgAA2REAIAkTAADqCQAgGgAA5AkAIPwEAADpCQAw_QQAAEwAEP4EAADpCQAw_wQBAAAAAYUFQACYCAAhhgVAAJgIACHqBQEAlwgAIQMAAABMACABAABQADACAABRACABAAAATAAgAQAAAEUAIAEAAAA-ACABAAAARQAgAQAAADgAIAMQAADUEQAgGQAA1hEAIJgGAADXEQAgDBAAAOYJACAZAADoCQAg_AQAAOcJADD9BAAATgAQ_gQAAOcJADD_BAEAAAABhQVAAJgIACGGBUAAmAgAIecFAQCWCAAh6wVAAJgIACHsBQEAAAAB7QUCAM4IACEDAAAATgAgAQAAWAAwAgAAWQAgDBAAAOYJACAWAACQCQAg_AQAAOUJADD9BAAAWwAQ_gQAAOUJADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACHnBQEAlggAIesFQACYCAAh7AUBAJYIACHtBQIAzggAIQMQAADUEQAgFgAAsRAAIJgGAADVEQAgDBAAAOYJACAWAACQCQAg_AQAAOUJADD9BAAAWwAQ_gQAAOUJADD_BAEAAAABhQVAAJgIACGGBUAAmAgAIecFAQCWCAAh6wVAAJgIACHsBQEAAAAB7QUCAM4IACEDAAAAWwAgAQAAXAAwAgAAXQAgAQAAACwAIAEAAAAwACABAAAANAAgAQAAAE4AIAEAAABbACAHDQAAuw0AIA4AAM4RACARAAC6EQAgIgAA0BEAICUAAMsRACAqAADSEQAgmAYAANMRACAPDQAAyAgAIA4AAOIJACARAAC-CQAgIgAA3wkAICUAAOMJACAqAADkCQAg_AQAAOAJADD9BAAASgAQ_gQAAOAJADD_BAEAAAABgwUBAAAAAYUFQACYCAAhhgVAAJgIACHZBQEAlggAId0FAADhCYAGIgMAAABKACABAABkADACAABlACADAAAADgAgAQAADwAwAgAAEAAgFSIAAN8JACA8AQCWCAAhPgEAlggAIfwEAADdCQAw_QQAAGgAEP4EAADdCQAwhQVAAJgIACGGBUAAmAgAIccFAQCWCAAhzAUBAJYIACHOBQEAlggAIc8FAQCWCAAh0AUBAJYIACHSBQAA3gnSBSLTBQEAlggAIdQFAQCWCAAh1QUBAJYIACHWBQEAlwgAIdcFAQCXCAAh2AUBAJcIACHZBQEAlggAIQUiAADQEQAg1gUAAJUKACDXBQAAlQoAINgFAACVCgAgmAYAANERACAVIgAA3wkAIDwBAJYIACE-AQCWCAAh_AQAAN0JADD9BAAAaAAQ_gQAAN0JADCFBUAAmAgAIYYFQACYCAAhxwUBAJYIACHMBQEAlggAIc4FAQAAAAHPBQEAlggAIdAFAQCWCAAh0gUAAN4J0gUi0wUBAJYIACHUBQEAlggAIdUFAQCWCAAh1gUBAJcIACHXBQEAlwgAIdgFAQCXCAAh2QUBAJYIACEDAAAAaAAgAQAAaQAwAgAAagAgAQAAAEoAIAEAAAAOACABAAAAaAAgAQAAAAoAIAkkAAD4CAAgJgAA-QgAICcAAPoIACApAAD7CAAg_AQAAPcIADD9BAAAcAAQ_gQAAPcIADD_BAEAlggAIeQFAQCWCAAhAQAAAHAAIAkOAADcCQAgJQAA1QkAIPwEAADaCQAw_QQAAHIAEP4EAADaCQAw_wQBAJYIACG1BQEAlggAId0FAADbCeQFIuEFAQCWCAAhAw4AAM4RACAlAADLEQAgmAYAAM8RACAKDgAA3AkAICUAANUJACD8BAAA2gkAMP0EAAByABD-BAAA2gkAMP8EAQAAAAG1BQEAlggAId0FAADbCeQFIuEFAQCWCAAhiQYAANkJACADAAAAcgAgAQAAcwAwAgAAdAAgCQkAAMQJACAlAADVCQAg_AQAANcJADD9BAAAdgAQ_gQAANcJADD_BAEAlggAIYQFAQCWCAAh3QUAANgJ4wUi4QUBAJYIACEDCQAAvxEAICUAAMsRACCYBgAAzREAIAoJAADECQAgJQAA1QkAIPwEAADXCQAw_QQAAHYAEP4EAADXCQAw_wQBAAAAAYQFAQCWCAAh3QUAANgJ4wUi4QUBAJYIACGIBgAA1gkAIAMAAAB2ACABAAB3ADACAAB4ACAJJQAA1QkAICgAAI8JACD8BAAA0wkAMP0EAAB6ABD-BAAA0wkAMP8EAQCWCAAh3QUAANQJ4AUi4AUBAJYIACHhBQEAlggAIQMlAADLEQAgKAAAsBAAIJgGAADMEQAgCiUAANUJACAoAACPCQAg_AQAANMJADD9BAAAegAQ_gQAANMJADD_BAEAAAAB3QUAANQJ4AUi4AUBAJYIACHhBQEAlggAIYcGAADSCQAgAwAAAHoAIAEAAHsAMAIAAHwAIAEAAAByACABAAAAdgAgAQAAAHoAIAEAAABFACADAAAAJwAgAQAAKAAwAgAAKQAgAQAAACcAIAMAAAAdACABAAAeADACAAAfACAKLAAA0QkAIPwEAADPCQAw_QQAAIUBABD-BAAAzwkAMP8EAQCWCAAhhQVAAJgIACGcBQEAlggAIZ0FEADMCQAhnwUAANAJnwUioAVAAJgIACECLAAAyREAIJgGAADKEQAgCiwAANEJACD8BAAAzwkAMP0EAACFAQAQ_gQAAM8JADD_BAEAAAABhQVAAJgIACGcBQEAlggAIZ0FEADMCQAhnwUAANAJnwUioAVAAJgIACEDAAAAhQEAIAEAAIYBADACAACHAQAgAQAAAB0AIAEAAACFAQAgAQAAABYAIBIIAADNCQAgMAAAzgkAIPwEAADLCQAw_QQAAIwBABD-BAAAywkAMP8EAQCWCAAhgAUBAJYIACGBBQEAlwgAIYMFAQCWCAAhhAUBAJYIACGFBUAAmAgAIYYFQACYCAAhhwVAAJkIACGXBQEAlggAIZgFAQCXCAAhmQUBAJcIACGaBQEAlwgAIZsFEADMCQAhAQAAAIwBACANLwAAmggAIPwEAACVCAAw_QQAAI4BABD-BAAAlQgAMP8EAQCWCAAhgAUBAJYIACGBBQEAlwgAIYIFAQCXCAAhgwUBAJYIACGEBQEAlggAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIQEAAACOAQAgCAgAAMYRACAwAADHEQAggQUAAJUKACCHBQAAlQoAIJgFAACVCgAgmQUAAJUKACCaBQAAlQoAIJgGAADIEQAgEggAAM0JACAwAADOCQAg_AQAAMsJADD9BAAAjAEAEP4EAADLCQAw_wQBAAAAAYAFAQCWCAAhgQUBAJcIACGDBQEAlggAIYQFAQCWCAAhhQVAAJgIACGGBUAAmAgAIYcFQACZCAAhlwUBAAAAAZgFAQAAAAGZBQEAAAABmgUBAJcIACGbBRAAzAkAIQMAAACMAQAgAQAAkAEAMAIAAJEBACABAAAAjAEAIAMAAAAdACABAAAeADACAAAfACABAAAAHQAgAQAAAB0AIAoHAACsCAAgNAAArQgAIPwEAACrCAAw_QQAAJcBABD-BAAAqwgAMP8EAQCWCAAhgAUBAJYIACGFBUAAmAgAIYYFQACYCAAhsQUBAJcIACEBAAAAlwEAIAEAAAAbACABAAAAFgAgAQAAAA4AIAEAAAASACAJFQAAsBAAIDIAAMIRACA0AACHDQAgNwAA8g0AIDgAALEOACA5AADDEQAgOgAAxBEAIPsFAACVCgAgmAYAAMURACARFQAAjwkAIDIAAMgJACA0AACtCAAgNwAA5AgAIDgAAPoIACA5AADJCQAgOgAAygkAIPwEAADHCQAw_QQAABsAEP4EAADHCQAw_wQBAAAAAYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIfIFAQCWCAAh-gUBAJYIACH7BQEAlwgAIQMAAAAbACABAACdAQAwAgAAngEAIAMAAAB6ACABAAB7ADACAAB8ACABAAAAPAAgAQAAABsAIAEAAAB6ACADAAAACgAgAQAACwAwAgAADAAgAwAAABYAIAEAABcAMAIAABgAIAMAAAASACABAAATADACAAAUACADAAAAdgAgAQAAdwAwAgAAeAAgBAkAAL8RACAKAAC-EQAguwUAAJUKACCYBgAAwREAIA0JAADECQAgCgAAwwkAIPwEAADGCQAw_QQAACMAEP4EAADGCQAwhAUBAJYIACG0BQEAAAABuwUBAJcIACG9BQEAlggAIb4FAQCWCAAhvwUBAJYIACHABQEAlggAIYYGAADFCQAgAwAAACMAIAEAAKgBADACAACpAQAgAwkAAL8RACAKAAC-EQAgmAYAAMARACAMCQAAxAkAIAoAAMMJACD8BAAAwgkAMP0EAAAlABD-BAAAwgkAMIQFAQCWCAAhtAUBAAAAAboFAQCWCAAhuwUBAJYIACG8BQEAlggAIb0FAQCWCAAhhQYAAMEJACADAAAAJQAgAQAAqwEAMAIAAKwBACABAAAACgAgAQAAABYAIAEAAAASACABAAAAdgAgAQAAACMAIAEAAAAlACALPAAAwAkAID0AAOQIACD8BAAAvwkAMP0EAAC0AQAQ_gQAAL8JADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIdMFAQCXCAAh9AUBAJYIACEBAAAAtAEAIAQ8AAC8EQAgPQAA8g0AINMFAACVCgAgmAYAAL0RACALPAAAwAkAID0AAOQIACD8BAAAvwkAMP0EAAC0AQAQ_gQAAL8JADD_BAEAAAABgAUBAJYIACGFBUAAmAgAIYYFQACYCAAh0wUBAJcIACH0BQEAlggAIQMAAAC0AQAgAQAAtgEAMAIAALcBACABAAAAtAEAIAMAAAAKACABAAALADACAAAMACABAAAACgAgCzcAAOQIACBBAADlCAAg_AQAAOIIADD9BAAAvAEAEP4EAADiCAAw_wQBAJYIACGABQEAlggAIYUFQACYCAAhhgVAAJgIACGxBQEAlggAIdsFAADjCNsFIgEAAAC8AQAgAwAAAHIAIAEAAHMAMAIAAHQAIAMAAAAnACABAAAoADACAAApACABAAAAcgAgAQAAACcAIAMRAAC6EQAgPwAAuREAIJgGAAC7EQAgCxEAAL4JACA_AAC9CQAg_AQAALsJADD9BAAACAAQ_gQAALsJADD_BAEAAAABgwUBAAAAAYUFQACYCAAhhgVAAJgIACHdBQAAvAndBSLeBQEAlggAIQMAAAAIACABAADCAQAwAgAAwwEAIAEAAAAKACABAAAACAAgAQAAADAAIAEAAABKACABAAAAAQAgAwAAAAMAIAEAAAQAMAIAAAEAIAMAAAADACABAAAEADACAAABACADAAAAAwAgAQAABAAwAgAAAQAgBwUAAJgRACARAACyEQAg_wQBAAAAAYMFAQAAAAGFBUAAAAABhgVAAAAAAYQGAQAAAAEBSQAAzQEAIAX_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAABhAYBAAAAAQFJAADPAQAwBwUAAJcRACARAACwEQAg_wQBAJkKACGDBQEAmQoAIYUFQACbCgAhhgVAAJsKACGEBgEAmQoAIQIAAAABACBJAADRAQAgBf8EAQCZCgAhgwUBAJkKACGFBUAAmwoAIYYFQACbCgAhhAYBAJkKACECAAAAAwAgSQAA0wEAIAMAAAABACBOAADNAQAgTwAA0QEAIAEAAAABACABAAAAAwAgAwQAALYRACBUAAC4EQAgVQAAtxEAIAj8BAAAugkAMP0EAADZAQAQ_gQAALoJADD_BAEAhwgAIYMFAQCHCAAhhQVAAIkIACGGBUAAiQgAIYQGAQCHCAAhAwAAAAMAIAEAANgBADBTAADZAQAgAwAAAAMAIAEAAAQAMAIAAAEAIAsDAAC5CQAg_AQAALgJADD9BAAA3wEAEP4EAAC4CQAw_wQBAAAAAYUFQACYCAAhhgVAAJgIACG-BQEAlggAIb8FAQCWCAAh_AUBAAAAAf0FAQAAAAEBAAAA3AEAIAEAAADcAQAgCwMAALkJACD8BAAAuAkAMP0EAADfAQAQ_gQAALgJADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACG-BQEAlggAIb8FAQCWCAAh_AUBAJYIACH9BQEAlwgAIQMDAAC0EQAg_QUAAJUKACCYBgAAtREAIAMAAADfAQAgAQAA4AEAMAIAANwBACADAAAA3wEAIAEAAOABADACAADcAQAgAwAAAN8BACABAADgAQAwAgAA3AEAIAgDAACzEQAg_wQBAAAAAYUFQAAAAAGGBUAAAAABvgUBAAAAAb8FAQAAAAH8BQEAAAAB_QUBAAAAAQFJAADkAQAgB_8EAQAAAAGFBUAAAAABhgVAAAAAAb4FAQAAAAG_BQEAAAAB_AUBAAAAAf0FAQAAAAEBSQAA5gEAMAgDAACkEQAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAhvgUBAJkKACG_BQEAmQoAIfwFAQCZCgAh_QUBAJoKACECAAAA3AEAIEkAAOgBACAH_wQBAJkKACGFBUAAmwoAIYYFQACbCgAhvgUBAJkKACG_BQEAmQoAIfwFAQCZCgAh_QUBAJoKACECAAAA3wEAIEkAAOoBACADAAAA3AEAIE4AAOQBACBPAADoAQAgAQAAANwBACABAAAA3wEAIAQEAAChEQAgVAAAoxEAIFUAAKIRACD9BQAAlQoAIAr8BAAAtwkAMP0EAADwAQAQ_gQAALcJADD_BAEAhwgAIYUFQACJCAAhhgVAAIkIACG-BQEAhwgAIb8FAQCHCAAh_AUBAIcIACH9BQEAiAgAIQMAAADfAQAgAQAA7wEAMFMAAPABACADAAAA3wEAIAEAAOABADACAADcAQAgDAYAALMJACAkAAC2CQAgQgAAtAkAIEMAALUJACD8BAAAsAkAMP0EAAD2AQAQ_gQAALAJADD_BAEAAAABwwUAALIJhAYi2wUAALEJgwYigAYBAAAAAYEGAQCWCAAhAQAAAPMBACABAAAA8wEAIAwGAACzCQAgJAAAtgkAIEIAALQJACBDAAC1CQAg_AQAALAJADD9BAAA9gEAEP4EAACwCQAw_wQBAJYIACHDBQAAsgmEBiLbBQAAsQmDBiKABgEAlggAIYEGAQCWCAAhBQYAAJ0RACAkAACvDgAgQgAAnhEAIEMAAJ8RACCYBgAAoBEAIAMAAAD2AQAgAQAA9wEAMAIAAPMBACADAAAA9gEAIAEAAPcBADACAADzAQAgAwAAAPYBACABAAD3AQAwAgAA8wEAIAkGAACZEQAgJAAAnBEAIEIAAJoRACBDAACbEQAg_wQBAAAAAcMFAAAAhAYC2wUAAACDBgKABgEAAAABgQYBAAAAAQFJAAD7AQAgBf8EAQAAAAHDBQAAAIQGAtsFAAAAgwYCgAYBAAAAAYEGAQAAAAEBSQAA_QEAMAkGAAD_EAAgJAAAghEAIEIAAIARACBDAACBEQAg_wQBAJkKACHDBQAA_hCEBiLbBQAA_RCDBiKABgEAmQoAIYEGAQCZCgAhAgAAAPMBACBJAAD_AQAgBf8EAQCZCgAhwwUAAP4QhAYi2wUAAP0QgwYigAYBAJkKACGBBgEAmQoAIQIAAAD2AQAgSQAAgQIAIAMAAADzAQAgTgAA-wEAIE8AAP8BACABAAAA8wEAIAEAAAD2AQAgAwQAAPoQACBUAAD8EAAgVQAA-xAAIAj8BAAAqQkAMP0EAACHAgAQ_gQAAKkJADD_BAEAhwgAIcMFAACrCYQGItsFAACqCYMGIoAGAQCHCAAhgQYBAIcIACEDAAAA9gEAIAEAAIYCADBTAACHAgAgAwAAAPYBACABAAD3AQAwAgAA8wEAIAEAAABlACABAAAAZQAgAwAAAEoAIAEAAGQAMAIAAGUAIAMAAABKACABAABkADACAABlACADAAAASgAgAQAAZAAwAgAAZQAgDA0AAP4PACAOAAD7DwAgEQAA-g8AICIAAPkQACAlAAD8DwAgKgAA_Q8AIP8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAHZBQEAAAAB3QUAAACABgIBSQAAjwIAIAb_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAAB2QUBAAAAAd0FAAAAgAYCAUkAAJECADAMDQAA4A8AIA4AAN0PACARAADcDwAgIgAA-BAAICUAAN4PACAqAADfDwAg_wQBAJkKACGDBQEAmQoAIYUFQACbCgAhhgVAAJsKACHZBQEAmQoAId0FAADaD4AGIgIAAABlACBJAACTAgAgBv8EAQCZCgAhgwUBAJkKACGFBUAAmwoAIYYFQACbCgAh2QUBAJkKACHdBQAA2g-ABiICAAAASgAgSQAAlQIAIAMAAABlACBOAACPAgAgTwAAkwIAIAEAAABlACABAAAASgAgAwQAAPUQACBUAAD3EAAgVQAA9hAAIAn8BAAApQkAMP0EAACbAgAQ_gQAAKUJADD_BAEAhwgAIYMFAQCHCAAhhQVAAIkIACGGBUAAiQgAIdkFAQCHCAAh3QUAAKYJgAYiAwAAAEoAIAEAAJoCADBTAACbAgAgAwAAAEoAIAEAAGQAMAIAAGUAIAEAAAAuACABAAAALgAgAwAAACwAIAEAAC0AMAIAAC4AIAMAAAAsACABAAAtADACAAAuACADAAAALAAgAQAALQAwAgAALgAgDQcAAIEQACAQAAD0EAAgIQAAgBAAICMAAIIQACD_BAEAAAABhQVAAAAAAYYFQAAAAAG-BQEAAAABvwUBAAAAAdsFAAAA_wUC5wUBAAAAAfwFAQAAAAH9BQEAAAABAUkAAKMCACAJ_wQBAAAAAYUFQAAAAAGGBUAAAAABvgUBAAAAAb8FAQAAAAHbBQAAAP8FAucFAQAAAAH8BQEAAAAB_QUBAAAAAQFJAAClAgAwDQcAALcPACAQAADzEAAgIQAAtg8AICMAALgPACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACG-BQEAmQoAIb8FAQCZCgAh2wUAALQP_wUi5wUBAJkKACH8BQEAmQoAIf0FAQCZCgAhAgAAAC4AIEkAAKcCACAJ_wQBAJkKACGFBUAAmwoAIYYFQACbCgAhvgUBAJkKACG_BQEAmQoAIdsFAAC0D_8FIucFAQCZCgAh_AUBAJkKACH9BQEAmQoAIQIAAAAsACBJAACpAgAgAwAAAC4AIE4AAKMCACBPAACnAgAgAQAAAC4AIAEAAAAsACADBAAA8BAAIFQAAPIQACBVAADxEAAgDPwEAAChCQAw_QQAAK8CABD-BAAAoQkAMP8EAQCHCAAhhQVAAIkIACGGBUAAiQgAIb4FAQCHCAAhvwUBAIcIACHbBQAAogn_BSLnBQEAhwgAIfwFAQCHCAAh_QUBAIcIACEDAAAALAAgAQAArgIAMFMAAK8CACADAAAALAAgAQAALQAwAgAALgAgAQAAABAAIAEAAAAQACADAAAADgAgAQAADwAwAgAAEAAgAwAAAA4AIAEAAA8AMAIAABAAIAMAAAAOACABAAAPADACAAAQACAMGAAAgw0AICIAAIANACAzAADPDwAgNQAAgQ0AIDYAAIINACD_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAABtwUBAAAAAbsFAQAAAAHZBQEAAAABAUkAALcCACAH_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAbcFAQAAAAG7BQEAAAAB2QUBAAAAAQFJAAC5AgAwDBgAALoLACAiAAC3CwAgMwAAzQ8AIDUAALgLACA2AAC5CwAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACG3BQEAmQoAIbsFAQCZCgAh2QUBAJkKACECAAAAEAAgSQAAuwIAIAf_BAEAmQoAIYAFAQCZCgAhhQVAAJsKACGGBUAAmwoAIbcFAQCZCgAhuwUBAJkKACHZBQEAmQoAIQIAAAAOACBJAAC9AgAgAwAAABAAIE4AALcCACBPAAC7AgAgAQAAABAAIAEAAAAOACADBAAA7RAAIFQAAO8QACBVAADuEAAgCvwEAACgCQAw_QQAAMMCABD-BAAAoAkAMP8EAQCHCAAhgAUBAIcIACGFBUAAiQgAIYYFQACJCAAhtwUBAIcIACG7BQEAhwgAIdkFAQCHCAAhAwAAAA4AIAEAAMICADBTAADDAgAgAwAAAA4AIAEAAA8AMAIAABAAIAEAAACeAQAgAQAAAJ4BACADAAAAGwAgAQAAnQEAMAIAAJ4BACADAAAAGwAgAQAAnQEAMAIAAJ4BACADAAAAGwAgAQAAnQEAMAIAAJ4BACAOFQAA7BAAIDIAAPoMACA0AAD7DAAgNwAA-QwAIDgAAPwMACA5AAD9DAAgOgAA_gwAIP8EAQAAAAGABQEAAAABhQVAAAAAAYYFQAAAAAHyBQEAAAAB-gUBAAAAAfsFAQAAAAEBSQAAywIAIAf_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAAB8gUBAAAAAfoFAQAAAAH7BQEAAAABAUkAAM0CADAOFQAA6xAAIDIAAP8LACA0AACADAAgNwAA_gsAIDgAAIEMACA5AACCDAAgOgAAgwwAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAh8gUBAJkKACH6BQEAmQoAIfsFAQCaCgAhAgAAAJ4BACBJAADPAgAgB_8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAh8gUBAJkKACH6BQEAmQoAIfsFAQCaCgAhAgAAABsAIEkAANECACADAAAAngEAIE4AAMsCACBPAADPAgAgAQAAAJ4BACABAAAAGwAgBAQAAOgQACBUAADqEAAgVQAA6RAAIPsFAACVCgAgCvwEAACfCQAw_QQAANcCABD-BAAAnwkAMP8EAQCHCAAhgAUBAIcIACGFBUAAiQgAIYYFQACJCAAh8gUBAIcIACH6BQEAhwgAIfsFAQCICAAhAwAAABsAIAEAANYCADBTAADXAgAgAwAAABsAIAEAAJ0BADACAACeAQAgAQAAAAwAIAEAAAAMACADAAAACgAgAQAACwAwAgAADAAgAwAAAAoAIAEAAAsAMAIAAAwAIAMAAAAKACABAAALADACAAAMACASCQAA7w0AIA0AAPcMACARAAD1DAAgPgAA8wwAID8AAPQMACBAAAD2DAAg_wQBAAAAAYAFAQAAAAGDBQEAAAABhAUBAAAAAYUFQAAAAAGGBUAAAAAB0AUBAAAAAdsFAAAA9wUC3gUBAAAAAfUFAQAAAAH4BQAAAPgFAvkFAQAAAAEBSQAA3wIAIAz_BAEAAAABgAUBAAAAAYMFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAHQBQEAAAAB2wUAAAD3BQLeBQEAAAAB9QUBAAAAAfgFAAAA-AUC-QUBAAAAAQFJAADhAgAwEgkAAO0NACANAADWDAAgEQAA1AwAID4AANIMACA_AADTDAAgQAAA1QwAIP8EAQCZCgAhgAUBAJkKACGDBQEAmQoAIYQFAQCZCgAhhQVAAJsKACGGBUAAmwoAIdAFAQCaCgAh2wUAAM8M9wUi3gUBAJoKACH1BQEAmgoAIfgFAADQDPgFIvkFAQCaCgAhAgAAAAwAIEkAAOMCACAM_wQBAJkKACGABQEAmQoAIYMFAQCZCgAhhAUBAJkKACGFBUAAmwoAIYYFQACbCgAh0AUBAJoKACHbBQAAzwz3BSLeBQEAmgoAIfUFAQCaCgAh-AUAANAM-AUi-QUBAJoKACECAAAACgAgSQAA5QIAIAMAAAAMACBOAADfAgAgTwAA4wIAIAEAAAAMACABAAAACgAgBwQAAOUQACBUAADnEAAgVQAA5hAAINAFAACVCgAg3gUAAJUKACD1BQAAlQoAIPkFAACVCgAgD_wEAACYCQAw_QQAAOsCABD-BAAAmAkAMP8EAQCHCAAhgAUBAIcIACGDBQEAhwgAIYQFAQCHCAAhhQVAAIkIACGGBUAAiQgAIdAFAQCICAAh2wUAAJkJ9wUi3gUBAIgIACH1BQEAiAgAIfgFAACaCfgFIvkFAQCICAAhAwAAAAoAIAEAAOoCADBTAADrAgAgAwAAAAoAIAEAAAsAMAIAAAwAIAg7AACXCQAg_AQAAJYJADD9BAAA8QIAEP4EAACWCQAw_wQBAAAAAYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIQEAAADuAgAgAQAAAO4CACAIOwAAlwkAIPwEAACWCQAw_QQAAPECABD-BAAAlgkAMP8EAQCWCAAhgAUBAJYIACGFBUAAmAgAIYYFQACYCAAhAjsAAOMQACCYBgAA5BAAIAMAAADxAgAgAQAA8gIAMAIAAO4CACADAAAA8QIAIAEAAPICADACAADuAgAgAwAAAPECACABAADyAgAwAgAA7gIAIAU7AADiEAAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAQFJAAD2AgAgBP8EAQAAAAGABQEAAAABhQVAAAAAAYYFQAAAAAEBSQAA-AIAMAU7AADVEAAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACECAAAA7gIAIEkAAPoCACAE_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACECAAAA8QIAIEkAAPwCACADAAAA7gIAIE4AAPYCACBPAAD6AgAgAQAAAO4CACABAAAA8QIAIAMEAADSEAAgVAAA1BAAIFUAANMQACAH_AQAAJUJADD9BAAAggMAEP4EAACVCQAw_wQBAIcIACGABQEAhwgAIYUFQACJCAAhhgVAAIkIACEDAAAA8QIAIAEAAIEDADBTAACCAwAgAwAAAPECACABAADyAgAwAgAA7gIAIAEAAAC3AQAgAQAAALcBACADAAAAtAEAIAEAALYBADACAAC3AQAgAwAAALQBACABAAC2AQAwAgAAtwEAIAMAAAC0AQAgAQAAtgEAMAIAALcBACAIPAAA0BAAID0AANEQACD_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAAB0wUBAAAAAfQFAQAAAAEBSQAAigMAIAb_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAAB0wUBAAAAAfQFAQAAAAEBSQAAjAMAMAg8AADFEAAgPQAAxhAAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAh0wUBAJoKACH0BQEAmQoAIQIAAAC3AQAgSQAAjgMAIAb_BAEAmQoAIYAFAQCZCgAhhQVAAJsKACGGBUAAmwoAIdMFAQCaCgAh9AUBAJkKACECAAAAtAEAIEkAAJADACADAAAAtwEAIE4AAIoDACBPAACOAwAgAQAAALcBACABAAAAtAEAIAQEAADCEAAgVAAAxBAAIFUAAMMQACDTBQAAlQoAIAn8BAAAlAkAMP0EAACWAwAQ_gQAAJQJADD_BAEAhwgAIYAFAQCHCAAhhQVAAIkIACGGBUAAiQgAIdMFAQCICAAh9AUBAIcIACEDAAAAtAEAIAEAAJUDADBTAACWAwAgAwAAALQBACABAAC2AQAwAgAAtwEAIAEAAAA2ACABAAAANgAgAwAAADQAIAEAADUAMAIAADYAIAMAAAA0ACABAAA1ADACAAA2ACADAAAANAAgAQAANQAwAgAANgAgCRAAAMEQACAdAACaDwAg_wQBAAAAAYUFQAAAAAGGBUAAAAAB5wUBAAAAAesFQAAAAAHsBQEAAAAB7QUCAAAAAQFJAACeAwAgB_8EAQAAAAGFBUAAAAABhgVAAAAAAecFAQAAAAHrBUAAAAAB7AUBAAAAAe0FAgAAAAEBSQAAoAMAMAkQAADAEAAgHQAAgw8AIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIecFAQCZCgAh6wVAAJsKACHsBQEAmQoAIe0FAgDCDQAhAgAAADYAIEkAAKIDACAH_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh5wUBAJkKACHrBUAAmwoAIewFAQCZCgAh7QUCAMINACECAAAANAAgSQAApAMAIAMAAAA2ACBOAACeAwAgTwAAogMAIAEAAAA2ACABAAAANAAgBQQAALsQACBUAAC-EAAgVQAAvRAAIOIBAAC8EAAg4wEAAL8QACAK_AQAAJMJADD9BAAAqgMAEP4EAACTCQAw_wQBAIcIACGFBUAAiQgAIYYFQACJCAAh5wUBAIcIACHrBUAAiQgAIewFAQCHCAAh7QUCAMoIACEDAAAANAAgAQAAqQMAMFMAAKoDACADAAAANAAgAQAANQAwAgAANgAgAQAAADoAIAEAAAA6ACADAAAAOAAgAQAAOQAwAgAAOgAgAwAAADgAIAEAADkAMAIAADoAIAMAAAA4ACABAAA5ADACAAA6ACAHEwAAuhAAIBcAAJgPACD_BAEAAAABhQVAAAAAAYYFQAAAAAHqBQEAAAAB8wUCAAAAAQFJAACyAwAgBf8EAQAAAAGFBUAAAAABhgVAAAAAAeoFAQAAAAHzBQIAAAABAUkAALQDADAHEwAAuRAAIBcAAI8PACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHqBQEAmQoAIfMFAgDCDQAhAgAAADoAIEkAALYDACAF_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh6gUBAJkKACHzBQIAwg0AIQIAAAA4ACBJAAC4AwAgAwAAADoAIE4AALIDACBPAAC2AwAgAQAAADoAIAEAAAA4ACAFBAAAtBAAIFQAALcQACBVAAC2EAAg4gEAALUQACDjAQAAuBAAIAj8BAAAkgkAMP0EAAC-AwAQ_gQAAJIJADD_BAEAhwgAIYUFQACJCAAhhgVAAIkIACHqBQEAhwgAIfMFAgDKCAAhAwAAADgAIAEAAL0DADBTAAC-AwAgAwAAADgAIAEAADkAMAIAADoAIA4UAACOCQAgFQAAjwkAIBYAAJAJACAcAACRCQAg_AQAAI0JADD9BAAAPAAQ_gQAAI0JADD_BAEAAAABhQVAAJgIACGGBUAAmAgAIe4FQACYCAAh8AVAAJgIACHxBQEAAAAB8gUBAAAAAQEAAADBAwAgAQAAAMEDACAFFAAArxAAIBUAALAQACAWAACxEAAgHAAAshAAIJgGAACzEAAgAwAAADwAIAEAAMQDADACAADBAwAgAwAAADwAIAEAAMQDADACAADBAwAgAwAAADwAIAEAAMQDADACAADBAwAgCxQAAOELACAVAACWDwAgFgAA4gsAIBwAAOMLACD_BAEAAAABhQVAAAAAAYYFQAAAAAHuBUAAAAAB8AVAAAAAAfEFAQAAAAHyBQEAAAABAUkAAMgDACAH_wQBAAAAAYUFQAAAAAGGBUAAAAAB7gVAAAAAAfAFQAAAAAHxBQEAAAAB8gUBAAAAAQFJAADKAwAwCxQAAMALACAVAACVDwAgFgAAwQsAIBwAAMILACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHuBUAAmwoAIfAFQACbCgAh8QUBAJkKACHyBQEAmQoAIQIAAADBAwAgSQAAzAMAIAf_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHuBUAAmwoAIfAFQACbCgAh8QUBAJkKACHyBQEAmQoAIQIAAAA8ACBJAADOAwAgAwAAAMEDACBOAADIAwAgTwAAzAMAIAEAAADBAwAgAQAAADwAIAMEAACsEAAgVAAArhAAIFUAAK0QACAK_AQAAIwJADD9BAAA1AMAEP4EAACMCQAw_wQBAIcIACGFBUAAiQgAIYYFQACJCAAh7gVAAIkIACHwBUAAiQgAIfEFAQCHCAAh8gUBAIcIACEDAAAAPAAgAQAA0wMAMFMAANQDACADAAAAPAAgAQAAxAMAMAIAAMEDACABAAAAXQAgAQAAAF0AIAMAAABbACABAABcADACAABdACADAAAAWwAgAQAAXAAwAgAAXQAgAwAAAFsAIAEAAFwAMAIAAF0AIAkQAACrEAAgFgAA1A4AIP8EAQAAAAGFBUAAAAABhgVAAAAAAecFAQAAAAHrBUAAAAAB7AUBAAAAAe0FAgAAAAEBSQAA3AMAIAf_BAEAAAABhQVAAAAAAYYFQAAAAAHnBQEAAAAB6wVAAAAAAewFAQAAAAHtBQIAAAABAUkAAN4DADAJEAAAqhAAIBYAAMcOACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHnBQEAmQoAIesFQACbCgAh7AUBAJkKACHtBQIAwg0AIQIAAABdACBJAADgAwAgB_8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIecFAQCZCgAh6wVAAJsKACHsBQEAmQoAIe0FAgDCDQAhAgAAAFsAIEkAAOIDACADAAAAXQAgTgAA3AMAIE8AAOADACABAAAAXQAgAQAAAFsAIAUEAAClEAAgVAAAqBAAIFUAAKcQACDiAQAAphAAIOMBAACpEAAgCvwEAACLCQAw_QQAAOgDABD-BAAAiwkAMP8EAQCHCAAhhQVAAIkIACGGBUAAiQgAIecFAQCHCAAh6wVAAIkIACHsBQEAhwgAIe0FAgDKCAAhAwAAAFsAIAEAAOcDADBTAADoAwAgAwAAAFsAIAEAAFwAMAIAAF0AIAEAAABAACABAAAAQAAgAwAAAD4AIAEAAD8AMAIAAEAAIAMAAAA-ACABAAA_ADACAABAACADAAAAPgAgAQAAPwAwAgAAQAAgCBMAAOALACAXAADSDgAg_wQBAAAAAYUFQAAAAAGGBUAAAAAB6gUBAAAAAe4FQAAAAAHvBQEAAAABAUkAAPADACAG_wQBAAAAAYUFQAAAAAGGBUAAAAAB6gUBAAAAAe4FQAAAAAHvBQEAAAABAUkAAPIDADAIEwAA3gsAIBcAANAOACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHqBQEAmQoAIe4FQACbCgAh7wUBAJoKACECAAAAQAAgSQAA9AMAIAb_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHqBQEAmQoAIe4FQACbCgAh7wUBAJoKACECAAAAPgAgSQAA9gMAIAMAAABAACBOAADwAwAgTwAA9AMAIAEAAABAACABAAAAPgAgBAQAAKIQACBUAACkEAAgVQAAoxAAIO8FAACVCgAgCfwEAACKCQAw_QQAAPwDABD-BAAAigkAMP8EAQCHCAAhhQVAAIkIACGGBUAAiQgAIeoFAQCHCAAh7gVAAIkIACHvBQEAiAgAIQMAAAA-ACABAAD7AwAwUwAA_AMAIAMAAAA-ACABAAA_ADACAABAACABAAAAWQAgAQAAAFkAIAMAAABOACABAABYADACAABZACADAAAATgAgAQAAWAAwAgAAWQAgAwAAAE4AIAEAAFgAMAIAAFkAIAkQAAChEAAgGQAA9w4AIP8EAQAAAAGFBUAAAAABhgVAAAAAAecFAQAAAAHrBUAAAAAB7AUBAAAAAe0FAgAAAAEBSQAAhAQAIAf_BAEAAAABhQVAAAAAAYYFQAAAAAHnBQEAAAAB6wVAAAAAAewFAQAAAAHtBQIAAAABAUkAAIYEADAJEAAAoBAAIBkAAOAOACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHnBQEAmQoAIesFQACbCgAh7AUBAJkKACHtBQIAwg0AIQIAAABZACBJAACIBAAgB_8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIecFAQCZCgAh6wVAAJsKACHsBQEAmQoAIe0FAgDCDQAhAgAAAE4AIEkAAIoEACADAAAAWQAgTgAAhAQAIE8AAIgEACABAAAAWQAgAQAAAE4AIAUEAACbEAAgVAAAnhAAIFUAAJ0QACDiAQAAnBAAIOMBAACfEAAgCvwEAACJCQAw_QQAAJAEABD-BAAAiQkAMP8EAQCHCAAhhQVAAIkIACGGBUAAiQgAIecFAQCHCAAh6wVAAIkIACHsBQEAhwgAIe0FAgDKCAAhAwAAAE4AIAEAAI8EADBTAACQBAAgAwAAAE4AIAEAAFgAMAIAAFkAIAEAAABRACABAAAAUQAgAwAAAEwAIAEAAFAAMAIAAFEAIAMAAABMACABAABQADACAABRACADAAAATAAgAQAAUAAwAgAAUQAgBhMAAJoQACAaAAD1DgAg_wQBAAAAAYUFQAAAAAGGBUAAAAAB6gUBAAAAAQFJAACYBAAgBP8EAQAAAAGFBUAAAAABhgVAAAAAAeoFAQAAAAEBSQAAmgQAMAYTAACZEAAgGgAA7A4AIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIeoFAQCaCgAhAgAAAFEAIEkAAJwEACAE_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh6gUBAJoKACECAAAATAAgSQAAngQAIAMAAABRACBOAACYBAAgTwAAnAQAIAEAAABRACABAAAATAAgBAQAAJYQACBUAACYEAAgVQAAlxAAIOoFAACVCgAgB_wEAACICQAw_QQAAKQEABD-BAAAiAkAMP8EAQCHCAAhhQVAAIkIACGGBUAAiQgAIeoFAQCICAAhAwAAAEwAIAEAAKMEADBTAACkBAAgAwAAAEwAIAEAAFAAMAIAAFEAIAEAAABHACABAAAARwAgAwAAAEUAIAEAAEYAMAIAAEcAIAMAAABFACABAABGADACAABHACADAAAARQAgAQAARgAwAgAARwAgCREAANELACAYAADzDgAgGwAA0gsAIP8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAHoBQEAAAAB6QUBAAAAAQFJAACsBAAgBv8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAHoBQEAAAAB6QUBAAAAAQFJAACuBAAwCREAAM4LACAYAADyDgAgGwAAzwsAIP8EAQCZCgAhgwUBAJoKACGFBUAAmwoAIYYFQACbCgAh6AUBAJoKACHpBQEAmgoAIQIAAABHACBJAACwBAAgBv8EAQCZCgAhgwUBAJoKACGFBUAAmwoAIYYFQACbCgAh6AUBAJoKACHpBQEAmgoAIQIAAABFACBJAACyBAAgAwAAAEcAIE4AAKwEACBPAACwBAAgAQAAAEcAIAEAAABFACAGBAAAkxAAIFQAAJUQACBVAACUEAAggwUAAJUKACDoBQAAlQoAIOkFAACVCgAgCfwEAACHCQAw_QQAALgEABD-BAAAhwkAMP8EAQCHCAAhgwUBAIgIACGFBUAAiQgAIYYFQACJCAAh6AUBAIgIACHpBQEAiAgAIQMAAABFACABAAC3BAAwUwAAuAQAIAMAAABFACABAABGADACAABHACABAAAAMgAgAQAAADIAIAMAAAAwACABAAAxADACAAAyACADAAAAMAAgAQAAMQAwAgAAMgAgAwAAADAAIAEAADEAMAIAADIAIAgQAACSEAAgEQAAqQ8AIP8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAHdBQAAAOcFAucFAQAAAAEBSQAAwAQAIAb_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAAB3QUAAADnBQLnBQEAAAABAUkAAMIEADAIEAAAkRAAIBEAAKcPACD_BAEAmQoAIYMFAQCZCgAhhQVAAJsKACGGBUAAmwoAId0FAAClD-cFIucFAQCZCgAhAgAAADIAIEkAAMQEACAG_wQBAJkKACGDBQEAmQoAIYUFQACbCgAhhgVAAJsKACHdBQAApQ_nBSLnBQEAmQoAIQIAAAAwACBJAADGBAAgAwAAADIAIE4AAMAEACBPAADEBAAgAQAAADIAIAEAAAAwACADBAAAjhAAIFQAAJAQACBVAACPEAAgCfwEAACDCQAw_QQAAMwEABD-BAAAgwkAMP8EAQCHCAAhgwUBAIcIACGFBUAAiQgAIYYFQACJCAAh3QUAAIQJ5wUi5wUBAIcIACEDAAAAMAAgAQAAywQAMFMAAMwEACADAAAAMAAgAQAAMQAwAgAAMgAgDw8AAP4IACASAAD_CAAgHgAAgAkAIB8AAIEJACAgAACCCQAg_AQAAP0IADD9BAAA0gQAEP4EAAD9CAAw_wQBAAAAAYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIbEFAQAAAAHbBQAA4wjbBSLlBQEAlwgAIQEAAADPBAAgAQAAAM8EACAPDwAA_ggAIBIAAP8IACAeAACACQAgHwAAgQkAICAAAIIJACD8BAAA_QgAMP0EAADSBAAQ_gQAAP0IADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIbEFAQCWCAAh2wUAAOMI2wUi5QUBAJcIACEHDwAAiBAAIBIAAIkQACAeAACKEAAgHwAAixAAICAAAIwQACDlBQAAlQoAIJgGAACNEAAgAwAAANIEACABAADTBAAwAgAAzwQAIAMAAADSBAAgAQAA0wQAMAIAAM8EACADAAAA0gQAIAEAANMEADACAADPBAAgDA8AAIMQACASAACEEAAgHgAAhRAAIB8AAIYQACAgAACHEAAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAbEFAQAAAAHbBQAAANsFAuUFAQAAAAEBSQAA1wQAIAf_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAABsQUBAAAAAdsFAAAA2wUC5QUBAAAAAQFJAADZBAAwDA8AALcOACASAAC4DgAgHgAAuQ4AIB8AALoOACAgAAC7DgAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACGxBQEAmQoAIdsFAADTDdsFIuUFAQCaCgAhAgAAAM8EACBJAADbBAAgB_8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJkKACHbBQAA0w3bBSLlBQEAmgoAIQIAAADSBAAgSQAA3QQAIAMAAADPBAAgTgAA1wQAIE8AANsEACABAAAAzwQAIAEAAADSBAAgBAQAALQOACBUAAC2DgAgVQAAtQ4AIOUFAACVCgAgCvwEAAD8CAAw_QQAAOMEABD-BAAA_AgAMP8EAQCHCAAhgAUBAIcIACGFBUAAiQgAIYYFQACJCAAhsQUBAIcIACHbBQAA3wjbBSLlBQEAiAgAIQMAAADSBAAgAQAA4gQAMFMAAOMEACADAAAA0gQAIAEAANMEADACAADPBAAgCSQAAPgIACAmAAD5CAAgJwAA-ggAICkAAPsIACD8BAAA9wgAMP0EAABwABD-BAAA9wgAMP8EAQAAAAHkBQEAAAABAQAAAOYEACABAAAA5gQAIAUkAACvDgAgJgAAsA4AICcAALEOACApAACyDgAgmAYAALMOACADAAAAcAAgAQAA6QQAMAIAAOYEACADAAAAcAAgAQAA6QQAMAIAAOYEACADAAAAcAAgAQAA6QQAMAIAAOYEACAGJAAAqw4AICYAAKwOACAnAACtDgAgKQAArg4AIP8EAQAAAAHkBQEAAAABAUkAAO0EACAC_wQBAAAAAeQFAQAAAAEBSQAA7wQAMAYkAACMDgAgJgAAjQ4AICcAAI4OACApAACPDgAg_wQBAJkKACHkBQEAmQoAIQIAAADmBAAgSQAA8QQAIAL_BAEAmQoAIeQFAQCZCgAhAgAAAHAAIEkAAPMEACADAAAA5gQAIE4AAO0EACBPAADxBAAgAQAAAOYEACABAAAAcAAgAwQAAIkOACBUAACLDgAgVQAAig4AIAX8BAAA9ggAMP0EAAD5BAAQ_gQAAPYIADD_BAEAhwgAIeQFAQCHCAAhAwAAAHAAIAEAAPgEADBTAAD5BAAgAwAAAHAAIAEAAOkEADACAADmBAAgAQAAAHQAIAEAAAB0ACADAAAAcgAgAQAAcwAwAgAAdAAgAwAAAHIAIAEAAHMAMAIAAHQAIAMAAAByACABAABzADACAAB0ACAGDgAAiA4AICUAAPEMACD_BAEAAAABtQUBAAAAAd0FAAAA5AUC4QUBAAAAAQFJAACBBQAgBP8EAQAAAAG1BQEAAAAB3QUAAADkBQLhBQEAAAABAUkAAIMFADAGDgAAhw4AICUAAO8MACD_BAEAmQoAIbUFAQCZCgAh3QUAAO0M5AUi4QUBAJkKACECAAAAdAAgSQAAhQUAIAT_BAEAmQoAIbUFAQCZCgAh3QUAAO0M5AUi4QUBAJkKACECAAAAcgAgSQAAhwUAIAMAAAB0ACBOAACBBQAgTwAAhQUAIAEAAAB0ACABAAAAcgAgAwQAAIQOACBUAACGDgAgVQAAhQ4AIAf8BAAA8ggAMP0EAACNBQAQ_gQAAPIIADD_BAEAhwgAIbUFAQCHCAAh3QUAAPMI5AUi4QUBAIcIACEDAAAAcgAgAQAAjAUAMFMAAI0FACADAAAAcgAgAQAAcwAwAgAAdAAgAQAAAHgAIAEAAAB4ACADAAAAdgAgAQAAdwAwAgAAeAAgAwAAAHYAIAEAAHcAMAIAAHgAIAMAAAB2ACABAAB3ADACAAB4ACAGCQAAgw4AICUAAK4MACD_BAEAAAABhAUBAAAAAd0FAAAA4wUC4QUBAAAAAQFJAACVBQAgBP8EAQAAAAGEBQEAAAAB3QUAAADjBQLhBQEAAAABAUkAAJcFADAGCQAAgg4AICUAAKwMACD_BAEAmQoAIYQFAQCZCgAh3QUAAKoM4wUi4QUBAJkKACECAAAAeAAgSQAAmQUAIAT_BAEAmQoAIYQFAQCZCgAh3QUAAKoM4wUi4QUBAJkKACECAAAAdgAgSQAAmwUAIAMAAAB4ACBOAACVBQAgTwAAmQUAIAEAAAB4ACABAAAAdgAgAwQAAP8NACBUAACBDgAgVQAAgA4AIAf8BAAA7ggAMP0EAAChBQAQ_gQAAO4IADD_BAEAhwgAIYQFAQCHCAAh3QUAAO8I4wUi4QUBAIcIACEDAAAAdgAgAQAAoAUAMFMAAKEFACADAAAAdgAgAQAAdwAwAgAAeAAgAQAAAHwAIAEAAAB8ACADAAAAegAgAQAAewAwAgAAfAAgAwAAAHoAIAEAAHsAMAIAAHwAIAMAAAB6ACABAAB7ADACAAB8ACAGJQAA8gsAICgAAP4NACD_BAEAAAAB3QUAAADgBQLgBQEAAAAB4QUBAAAAAQFJAACpBQAgBP8EAQAAAAHdBQAAAOAFAuAFAQAAAAHhBQEAAAABAUkAAKsFADAGJQAA8AsAICgAAP0NACD_BAEAmQoAId0FAADuC-AFIuAFAQCZCgAh4QUBAJkKACECAAAAfAAgSQAArQUAIAT_BAEAmQoAId0FAADuC-AFIuAFAQCZCgAh4QUBAJkKACECAAAAegAgSQAArwUAIAMAAAB8ACBOAACpBQAgTwAArQUAIAEAAAB8ACABAAAAegAgAwQAAPoNACBUAAD8DQAgVQAA-w0AIAf8BAAA6ggAMP0EAAC1BQAQ_gQAAOoIADD_BAEAhwgAId0FAADrCOAFIuAFAQCHCAAh4QUBAIcIACEDAAAAegAgAQAAtAUAMFMAALUFACADAAAAegAgAQAAewAwAgAAfAAgAQAAAMMBACABAAAAwwEAIAMAAAAIACABAADCAQAwAgAAwwEAIAMAAAAIACABAADCAQAwAgAAwwEAIAMAAAAIACABAADCAQAwAgAAwwEAIAgRAADkDQAgPwAA-Q0AIP8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAHdBQAAAN0FAt4FAQAAAAEBSQAAvQUAIAb_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAAB3QUAAADdBQLeBQEAAAABAUkAAL8FADAIEQAA4g0AID8AAPgNACD_BAEAmQoAIYMFAQCZCgAhhQVAAJsKACGGBUAAmwoAId0FAADgDd0FIt4FAQCZCgAhAgAAAMMBACBJAADBBQAgBv8EAQCZCgAhgwUBAJkKACGFBUAAmwoAIYYFQACbCgAh3QUAAOAN3QUi3gUBAJkKACECAAAACAAgSQAAwwUAIAMAAADDAQAgTgAAvQUAIE8AAMEFACABAAAAwwEAIAEAAAAIACADBAAA9Q0AIFQAAPcNACBVAAD2DQAgCfwEAADmCAAw_QQAAMkFABD-BAAA5ggAMP8EAQCHCAAhgwUBAIcIACGFBUAAiQgAIYYFQACJCAAh3QUAAOcI3QUi3gUBAIcIACEDAAAACAAgAQAAyAUAMFMAAMkFACADAAAACAAgAQAAwgEAMAIAAMMBACALNwAA5AgAIEEAAOUIACD8BAAA4ggAMP0EAAC8AQAQ_gQAAOIIADD_BAEAAAABgAUBAJYIACGFBUAAmAgAIYYFQACYCAAhsQUBAAAAAdsFAADjCNsFIgEAAADMBQAgAQAAAMwFACADNwAA8g0AIEEAAPMNACCYBgAA9A0AIAMAAAC8AQAgAQAAzwUAMAIAAMwFACADAAAAvAEAIAEAAM8FADACAADMBQAgAwAAALwBACABAADPBQAwAgAAzAUAIAg3AADwDQAgQQAA8Q0AIP8EAQAAAAGABQEAAAABhQVAAAAAAYYFQAAAAAGxBQEAAAAB2wUAAADbBQIBSQAA0wUAIAb_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAABsQUBAAAAAdsFAAAA2wUCAUkAANUFADAINwAA1A0AIEEAANUNACD_BAEAmQoAIYAFAQCZCgAhhQVAAJsKACGGBUAAmwoAIbEFAQCZCgAh2wUAANMN2wUiAgAAAMwFACBJAADXBQAgBv8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJkKACHbBQAA0w3bBSICAAAAvAEAIEkAANkFACADAAAAzAUAIE4AANMFACBPAADXBQAgAQAAAMwFACABAAAAvAEAIAMEAADQDQAgVAAA0g0AIFUAANENACAJ_AQAAN4IADD9BAAA3wUAEP4EAADeCAAw_wQBAIcIACGABQEAhwgAIYUFQACJCAAhhgVAAIkIACGxBQEAhwgAIdsFAADfCNsFIgMAAAC8AQAgAQAA3gUAMFMAAN8FACADAAAAvAEAIAEAAM8FADACAADMBQAgAQAAAGoAIAEAAABqACADAAAAaAAgAQAAaQAwAgAAagAgAwAAAGgAIAEAAGkAMAIAAGoAIAMAAABoACABAABpADACAABqACASIgAAzw0AIDwBAAAAAT4BAAAAAYUFQAAAAAGGBUAAAAABxwUBAAAAAcwFAQAAAAHOBQEAAAABzwUBAAAAAdAFAQAAAAHSBQAAANIFAtMFAQAAAAHUBQEAAAAB1QUBAAAAAdYFAQAAAAHXBQEAAAAB2AUBAAAAAdkFAQAAAAEBSQAA5wUAIBE8AQAAAAE-AQAAAAGFBUAAAAABhgVAAAAAAccFAQAAAAHMBQEAAAABzgUBAAAAAc8FAQAAAAHQBQEAAAAB0gUAAADSBQLTBQEAAAAB1AUBAAAAAdUFAQAAAAHWBQEAAAAB1wUBAAAAAdgFAQAAAAHZBQEAAAABAUkAAOkFADASIgAAzg0AIDwBAJkKACE-AQCZCgAhhQVAAJsKACGGBUAAmwoAIccFAQCZCgAhzAUBAJkKACHOBQEAmQoAIc8FAQCZCgAh0AUBAJkKACHSBQAAzQ3SBSLTBQEAmQoAIdQFAQCZCgAh1QUBAJkKACHWBQEAmgoAIdcFAQCaCgAh2AUBAJoKACHZBQEAmQoAIQIAAABqACBJAADrBQAgETwBAJkKACE-AQCZCgAhhQVAAJsKACGGBUAAmwoAIccFAQCZCgAhzAUBAJkKACHOBQEAmQoAIc8FAQCZCgAh0AUBAJkKACHSBQAAzQ3SBSLTBQEAmQoAIdQFAQCZCgAh1QUBAJkKACHWBQEAmgoAIdcFAQCaCgAh2AUBAJoKACHZBQEAmQoAIQIAAABoACBJAADtBQAgAwAAAGoAIE4AAOcFACBPAADrBQAgAQAAAGoAIAEAAABoACAGBAAAyg0AIFQAAMwNACBVAADLDQAg1gUAAJUKACDXBQAAlQoAINgFAACVCgAgFDwBAIcIACE-AQCHCAAh_AQAANoIADD9BAAA8wUAEP4EAADaCAAwhQVAAIkIACGGBUAAiQgAIccFAQCHCAAhzAUBAIcIACHOBQEAhwgAIc8FAQCHCAAh0AUBAIcIACHSBQAA2wjSBSLTBQEAhwgAIdQFAQCHCAAh1QUBAIcIACHWBQEAiAgAIdcFAQCICAAh2AUBAIgIACHZBQEAhwgAIQMAAABoACABAADyBQAwUwAA8wUAIAMAAABoACABAABpADACAABqACAN_AQAANYIADD9BAAA-QUAEP4EAADWCAAw_wQBAAAAAYUFQACYCAAhhgVAAJgIACGnBQAAxQgAIMYFAQCWCAAhxwUBAJYIACHIBSAA1wgAIcoFAADYCMoFIswFAADZCMwFIs0FQACYCAAhAQAAAPYFACABAAAA9gUAIA38BAAA1ggAMP0EAAD5BQAQ_gQAANYIADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACGnBQAAxQgAIMYFAQCWCAAhxwUBAJYIACHIBSAA1wgAIcoFAADYCMoFIswFAADZCMwFIs0FQACYCAAhAqcFAACVCgAgmAYAAMkNACADAAAA-QUAIAEAAPoFADACAAD2BQAgAwAAAPkFACABAAD6BQAwAgAA9gUAIAMAAAD5BQAgAQAA-gUAMAIAAPYFACAK_wQBAAAAAYUFQAAAAAGGBUAAAAABpwWAAAAAAcYFAQAAAAHHBQEAAAAByAUgAAAAAcoFAAAAygUCzAUAAADMBQLNBUAAAAABAUkAAP4FACAK_wQBAAAAAYUFQAAAAAGGBUAAAAABpwWAAAAAAcYFAQAAAAHHBQEAAAAByAUgAAAAAcoFAAAAygUCzAUAAADMBQLNBUAAAAABAUkAAIAGADAK_wQBAJkKACGFBUAAmwoAIYYFQACbCgAhpwWAAAAAAcYFAQCZCgAhxwUBAJkKACHIBSAAigsAIcoFAADHDcoFIswFAADIDcwFIs0FQACbCgAhAgAAAPYFACBJAACCBgAgCv8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIacFgAAAAAHGBQEAmQoAIccFAQCZCgAhyAUgAIoLACHKBQAAxw3KBSLMBQAAyA3MBSLNBUAAmwoAIQIAAAD5BQAgSQAAhAYAIAMAAAD2BQAgTgAA_gUAIE8AAIIGACABAAAA9gUAIAEAAAD5BQAgBAQAAMQNACBUAADGDQAgVQAAxQ0AIKcFAACVCgAgDfwEAADPCAAw_QQAAIoGABD-BAAAzwgAMP8EAQCHCAAhhQVAAIkIACGGBUAAiQgAIacFAAClCAAgxgUBAIcIACHHBQEAhwgAIcgFIACvCAAhygUAANAIygUizAUAANEIzAUizQVAAIkIACEDAAAA-QUAIAEAAIkGADBTAACKBgAgAwAAAPkFACABAAD6BQAwAgAA9gUAIAf8BAAAzQgAMP0EAACQBgAQ_gQAAM0IADD_BAIAAAABgAUBAJYIACHEBQEAlggAIcUFQACYCAAhAQAAAI0GACABAAAAjQYAIAf8BAAAzQgAMP0EAACQBgAQ_gQAAM0IADD_BAIAzggAIYAFAQCWCAAhxAUBAJYIACHFBUAAmAgAIQGYBgAAww0AIAMAAACQBgAgAQAAkQYAMAIAAI0GACADAAAAkAYAIAEAAJEGADACAACNBgAgAwAAAJAGACABAACRBgAwAgAAjQYAIAT_BAIAAAABgAUBAAAAAcQFAQAAAAHFBUAAAAABAUkAAJUGACAE_wQCAAAAAYAFAQAAAAHEBQEAAAABxQVAAAAAAQFJAACXBgAwBP8EAgDCDQAhgAUBAJkKACHEBQEAmQoAIcUFQACbCgAhAgAAAI0GACBJAACZBgAgBP8EAgDCDQAhgAUBAJkKACHEBQEAmQoAIcUFQACbCgAhAgAAAJAGACBJAACbBgAgAwAAAI0GACBOAACVBgAgTwAAmQYAIAEAAACNBgAgAQAAAJAGACAFBAAAvQ0AIFQAAMANACBVAAC_DQAg4gEAAL4NACDjAQAAwQ0AIAf8BAAAyQgAMP0EAAChBgAQ_gQAAMkIADD_BAIAyggAIYAFAQCHCAAhxAUBAIcIACHFBUAAiQgAIQMAAACQBgAgAQAAoAYAMFMAAKEGACADAAAAkAYAIAEAAJEGADACAACNBgAgDQsAAMYIACAMAADHCAAgDQAAyAgAIPwEAADCCAAw_QQAACEAEP4EAADCCAAw_wQBAAAAAYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIbIFAADFCAAgwQUgAMMIACHDBQAAxAjDBSIBAAAApAYAIAEAAACkBgAgBwsAALkNACAMAAC6DQAgDQAAuw0AIIcFAACVCgAgsgUAAJUKACDBBQAAlQoAIJgGAAC8DQAgAwAAACEAIAEAAKcGADACAACkBgAgAwAAACEAIAEAAKcGADACAACkBgAgAwAAACEAIAEAAKcGADACAACkBgAgCgsAALYNACAMAAC3DQAgDQAAuA0AIP8EAQAAAAGFBUAAAAABhgVAAAAAAYcFQAAAAAGyBYAAAAABwQUgAAAAAcMFAAAAwwUCAUkAAKsGACAH_wQBAAAAAYUFQAAAAAGGBUAAAAABhwVAAAAAAbIFgAAAAAHBBSAAAAABwwUAAADDBQIBSQAArQYAMAoLAACgDQAgDAAAoQ0AIA0AAKINACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACGHBUAAnAoAIbIFgAAAAAHBBSAAng0AIcMFAACfDcMFIgIAAACkBgAgSQAArwYAIAf_BAEAmQoAIYUFQACbCgAhhgVAAJsKACGHBUAAnAoAIbIFgAAAAAHBBSAAng0AIcMFAACfDcMFIgIAAAAhACBJAACxBgAgAwAAAKQGACBOAACrBgAgTwAArwYAIAEAAACkBgAgAQAAACEAIAYEAACbDQAgVAAAnQ0AIFUAAJwNACCHBQAAlQoAILIFAACVCgAgwQUAAJUKACAK_AQAALsIADD9BAAAtwYAEP4EAAC7CAAw_wQBAIcIACGFBUAAiQgAIYYFQACJCAAhhwVAAIoIACGyBQAApQgAIMEFIAC8CAAhwwUAAL0IwwUiAwAAACEAIAEAALYGADBTAAC3BgAgAwAAACEAIAEAAKcGADACAACkBgAgAQAAAKkBACABAAAAqQEAIAMAAAAjACABAACoAQAwAgAAqQEAIAMAAAAjACABAACoAQAwAgAAqQEAIAMAAAAjACABAACoAQAwAgAAqQEAIAkJAACaDQAgCgAAnwwAIIQFAQAAAAG0BQEAAAABuwUBAAAAAb0FAQAAAAG-BQEAAAABvwUBAAAAAcAFAQAAAAEBSQAAvwYAIAeEBQEAAAABtAUBAAAAAbsFAQAAAAG9BQEAAAABvgUBAAAAAb8FAQAAAAHABQEAAAABAUkAAMEGADAJCQAAmQ0AIAoAAJ0MACCEBQEAmQoAIbQFAQCZCgAhuwUBAJoKACG9BQEAmQoAIb4FAQCZCgAhvwUBAJkKACHABQEAmQoAIQIAAACpAQAgSQAAwwYAIAeEBQEAmQoAIbQFAQCZCgAhuwUBAJoKACG9BQEAmQoAIb4FAQCZCgAhvwUBAJkKACHABQEAmQoAIQIAAAAjACBJAADFBgAgAwAAAKkBACBOAAC_BgAgTwAAwwYAIAEAAACpAQAgAQAAACMAIAQEAACWDQAgVAAAmA0AIFUAAJcNACC7BQAAlQoAIAr8BAAAuggAMP0EAADLBgAQ_gQAALoIADCEBQEAhwgAIbQFAQCHCAAhuwUBAIgIACG9BQEAhwgAIb4FAQCHCAAhvwUBAIcIACHABQEAhwgAIQMAAAAjACABAADKBgAwUwAAywYAIAMAAAAjACABAACoAQAwAgAAqQEAIAEAAACsAQAgAQAAAKwBACADAAAAJQAgAQAAqwEAMAIAAKwBACADAAAAJQAgAQAAqwEAMAIAAKwBACADAAAAJQAgAQAAqwEAMAIAAKwBACAICQAAlQ0AIAoAAJEMACCEBQEAAAABtAUBAAAAAboFAQAAAAG7BQEAAAABvAUBAAAAAb0FAQAAAAEBSQAA0wYAIAaEBQEAAAABtAUBAAAAAboFAQAAAAG7BQEAAAABvAUBAAAAAb0FAQAAAAEBSQAA1QYAMAgJAACUDQAgCgAAjwwAIIQFAQCZCgAhtAUBAJkKACG6BQEAmQoAIbsFAQCZCgAhvAUBAJkKACG9BQEAmQoAIQIAAACsAQAgSQAA1wYAIAaEBQEAmQoAIbQFAQCZCgAhugUBAJkKACG7BQEAmQoAIbwFAQCZCgAhvQUBAJkKACECAAAAJQAgSQAA2QYAIAMAAACsAQAgTgAA0wYAIE8AANcGACABAAAArAEAIAEAAAAlACADBAAAkQ0AIFQAAJMNACBVAACSDQAgCfwEAAC5CAAw_QQAAN8GABD-BAAAuQgAMIQFAQCHCAAhtAUBAIcIACG6BQEAhwgAIbsFAQCHCAAhvAUBAIcIACG9BQEAhwgAIQMAAAAlACABAADeBgAwUwAA3wYAIAMAAAAlACABAACrAQAwAgAArAEAIAEAAAAYACABAAAAGAAgAwAAABYAIAEAABcAMAIAABgAIAMAAAAWACABAAAXADACAAAYACADAAAAFgAgAQAAFwAwAgAAGAAgEwgAAMQMACAJAACnCwAgMAAAqAsAIP8EAQAAAAGABQEAAAABgQUBAAAAAYIFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABlwUBAAAAAZgFAQAAAAGZBQEAAAABmgUBAAAAAZsFEAAAAAGjBQAAAKMFArYFIAAAAAG5BQAAALkFAgFJAADnBgAgEP8EAQAAAAGABQEAAAABgQUBAAAAAYIFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABlwUBAAAAAZgFAQAAAAGZBQEAAAABmgUBAAAAAZsFEAAAAAGjBQAAAKMFArYFIAAAAAG5BQAAALkFAgFJAADpBgAwEwgAAMIMACAJAACbCwAgMAAAnAsAIP8EAQCZCgAhgAUBAJkKACGBBQEAmgoAIYIFAQCaCgAhhAUBAJoKACGFBUAAmwoAIYYFQACbCgAhhwVAAJwKACGXBQEAmQoAIZgFAQCaCgAhmQUBAJoKACGaBQEAmgoAIZsFEACZCwAhowUAALUKowUitgUgAIoLACG5BQAAmAu5BSICAAAAGAAgSQAA6wYAIBD_BAEAmQoAIYAFAQCZCgAhgQUBAJoKACGCBQEAmgoAIYQFAQCaCgAhhQVAAJsKACGGBUAAmwoAIYcFQACcCgAhlwUBAJkKACGYBQEAmgoAIZkFAQCaCgAhmgUBAJoKACGbBRAAmQsAIaMFAAC1CqMFIrYFIACKCwAhuQUAAJgLuQUiAgAAABYAIEkAAO0GACADAAAAGAAgTgAA5wYAIE8AAOsGACABAAAAGAAgAQAAABYAIA0EAACMDQAgVAAAjw0AIFUAAI4NACDiAQAAjQ0AIOMBAACQDQAggQUAAJUKACCCBQAAlQoAIIQFAACVCgAghwUAAJUKACCYBQAAlQoAIJkFAACVCgAgmgUAAJUKACCbBQAAlQoAIBP8BAAAsggAMP0EAADzBgAQ_gQAALIIADD_BAEAhwgAIYAFAQCHCAAhgQUBAIgIACGCBQEAiAgAIYQFAQCICAAhhQVAAIkIACGGBUAAiQgAIYcFQACKCAAhlwUBAIcIACGYBQEAiAgAIZkFAQCICAAhmgUBAIgIACGbBRAAtAgAIaMFAACkCKMFIrYFIACvCAAhuQUAALMIuQUiAwAAABYAIAEAAPIGADBTAADzBgAgAwAAABYAIAEAABcAMAIAABgAIAEAAAAUACABAAAAFAAgAwAAABIAIAEAABMAMAIAABQAIAMAAAASACABAAATADACAAAUACADAAAAEgAgAQAAEwAwAgAAFAAgDQkAAKsLACAyAACqCwAgMwAAuQwAIP8EAQAAAAGABQEAAAABgQUBAAAAAYIFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABtgUgAAAAAbcFAQAAAAEBSQAA-wYAIAr_BAEAAAABgAUBAAAAAYEFAQAAAAGCBQEAAAABhAUBAAAAAYUFQAAAAAGGBUAAAAABhwVAAAAAAbYFIAAAAAG3BQEAAAABAUkAAP0GADANCQAAjQsAIDIAAIwLACAzAAC3DAAg_wQBAJkKACGABQEAmQoAIYEFAQCaCgAhggUBAJoKACGEBQEAmgoAIYUFQACbCgAhhgVAAJsKACGHBUAAnAoAIbYFIACKCwAhtwUBAJoKACECAAAAFAAgSQAA_wYAIAr_BAEAmQoAIYAFAQCZCgAhgQUBAJoKACGCBQEAmgoAIYQFAQCaCgAhhQVAAJsKACGGBUAAmwoAIYcFQACcCgAhtgUgAIoLACG3BQEAmgoAIQIAAAASACBJAACBBwAgAwAAABQAIE4AAPsGACBPAAD_BgAgAQAAABQAIAEAAAASACAIBAAAiQ0AIFQAAIsNACBVAACKDQAggQUAAJUKACCCBQAAlQoAIIQFAACVCgAghwUAAJUKACC3BQAAlQoAIA38BAAArggAMP0EAACHBwAQ_gQAAK4IADD_BAEAhwgAIYAFAQCHCAAhgQUBAIgIACGCBQEAiAgAIYQFAQCICAAhhQVAAIkIACGGBUAAiQgAIYcFQACKCAAhtgUgAK8IACG3BQEAiAgAIQMAAAASACABAACGBwAwUwAAhwcAIAMAAAASACABAAATADACAAAUACAKBwAArAgAIDQAAK0IACD8BAAAqwgAMP0EAACXAQAQ_gQAAKsIADD_BAEAAAABgAUBAJYIACGFBUAAmAgAIYYFQACYCAAhsQUBAJcIACEBAAAAigcAIAEAAACKBwAgBAcAAIYNACA0AACHDQAgsQUAAJUKACCYBgAAiA0AIAMAAACXAQAgAQAAjQcAMAIAAIoHACADAAAAlwEAIAEAAI0HADACAACKBwAgAwAAAJcBACABAACNBwAwAgAAigcAIAcHAACEDQAgNAAAhQ0AIP8EAQAAAAGABQEAAAABhQVAAAAAAYYFQAAAAAGxBQEAAAABAUkAAJEHACAF_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAbEFAQAAAAEBSQAAkwcAMAcHAAD-CgAgNAAA_woAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJoKACECAAAAigcAIEkAAJUHACAF_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACGxBQEAmgoAIQIAAACXAQAgSQAAlwcAIAMAAACKBwAgTgAAkQcAIE8AAJUHACABAAAAigcAIAEAAACXAQAgBAQAAPsKACBUAAD9CgAgVQAA_AoAILEFAACVCgAgCPwEAACqCAAw_QQAAJ0HABD-BAAAqggAMP8EAQCHCAAhgAUBAIcIACGFBUAAiQgAIYYFQACJCAAhsQUBAIgIACEDAAAAlwEAIAEAAJwHADBTAACdBwAgAwAAAJcBACABAACNBwAwAgAAigcAIAEAAAApACABAAAAKQAgAwAAACcAIAEAACgAMAIAACkAIAMAAAAnACABAAAoADACAAApACADAAAAJwAgAQAAKAAwAgAAKQAgEAoAAPYKACAOAAD3CgAgJAAA-AoAICsAAPkKACAtAAD6CgAg_wQBAAAAAYMFAQAAAAGFBUAAAAABhgVAAAAAAaUFEAAAAAGnBQEAAAABsQUBAAAAAbIFgAAAAAGzBUAAAAABtAUBAAAAAbUFAQAAAAEBSQAApQcAIAv_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAABpQUQAAAAAacFAQAAAAGxBQEAAAABsgWAAAAAAbMFQAAAAAG0BQEAAAABtQUBAAAAAQFJAACnBwAwEAoAANwKACAOAADdCgAgJAAA3goAICsAAN8KACAtAADgCgAg_wQBAJkKACGDBQEAmQoAIYUFQACbCgAhhgVAAJsKACGlBRAAqAoAIacFAQCaCgAhsQUBAJkKACGyBYAAAAABswVAAJwKACG0BQEAmgoAIbUFAQCZCgAhAgAAACkAIEkAAKkHACAL_wQBAJkKACGDBQEAmQoAIYUFQACbCgAhhgVAAJsKACGlBRAAqAoAIacFAQCaCgAhsQUBAJkKACGyBYAAAAABswVAAJwKACG0BQEAmgoAIbUFAQCZCgAhAgAAACcAIEkAAKsHACADAAAAKQAgTgAApQcAIE8AAKkHACABAAAAKQAgAQAAACcAIAkEAADXCgAgVAAA2goAIFUAANkKACDiAQAA2AoAIOMBAADbCgAgpwUAAJUKACCyBQAAlQoAILMFAACVCgAgtAUAAJUKACAO_AQAAKkIADD9BAAAsQcAEP4EAACpCAAw_wQBAIcIACGDBQEAhwgAIYUFQACJCAAhhgVAAIkIACGlBRAAnAgAIacFAQCICAAhsQUBAIcIACGyBQAApQgAILMFQACKCAAhtAUBAIgIACG1BQEAhwgAIQMAAAAnACABAACwBwAwUwAAsQcAIAMAAAAnACABAAAoADACAAApACABAAAAHwAgAQAAAB8AIAMAAAAdACABAAAeADACAAAfACADAAAAHQAgAQAAHgAwAgAAHwAgAwAAAB0AIAEAAB4AMAIAAB8AIA8sAAC6CgAgLgAAuwoAIDEAANYKACD_BAEAAAABhQVAAAAAAZwFAQAAAAGhBRAAAAABowUAAACjBQKkBRAAAAABpQUQAAAAAaYFEAAAAAGnBQEAAAABqAUBAAAAAakFAQAAAAGqBYAAAAABAUkAALkHACAM_wQBAAAAAYUFQAAAAAGcBQEAAAABoQUQAAAAAaMFAAAAowUCpAUQAAAAAaUFEAAAAAGmBRAAAAABpwUBAAAAAagFAQAAAAGpBQEAAAABqgWAAAAAAQFJAAC7BwAwDywAALcKACAuAAC4CgAgMQAA1QoAIP8EAQCZCgAhhQVAAJsKACGcBQEAmQoAIaEFEACoCgAhowUAALUKowUipAUQAKgKACGlBRAAqAoAIaYFEACoCgAhpwUBAJoKACGoBQEAmgoAIakFAQCaCgAhqgWAAAAAAQIAAAAfACBJAAC9BwAgDP8EAQCZCgAhhQVAAJsKACGcBQEAmQoAIaEFEACoCgAhowUAALUKowUipAUQAKgKACGlBRAAqAoAIaYFEACoCgAhpwUBAJoKACGoBQEAmgoAIakFAQCaCgAhqgWAAAAAAQIAAAAdACBJAAC_BwAgAwAAAB8AIE4AALkHACBPAAC9BwAgAQAAAB8AIAEAAAAdACAJBAAA0AoAIFQAANMKACBVAADSCgAg4gEAANEKACDjAQAA1AoAIKcFAACVCgAgqAUAAJUKACCpBQAAlQoAIKoFAACVCgAgD_wEAACjCAAw_QQAAMUHABD-BAAAowgAMP8EAQCHCAAhhQVAAIkIACGcBQEAhwgAIaEFEACcCAAhowUAAKQIowUipAUQAJwIACGlBRAAnAgAIaYFEACcCAAhpwUBAIgIACGoBQEAiAgAIakFAQCICAAhqgUAAKUIACADAAAAHQAgAQAAxAcAMFMAAMUHACADAAAAHQAgAQAAHgAwAgAAHwAgAQAAAIcBACABAAAAhwEAIAMAAACFAQAgAQAAhgEAMAIAAIcBACADAAAAhQEAIAEAAIYBADACAACHAQAgAwAAAIUBACABAACGAQAwAgAAhwEAIAcsAADPCgAg_wQBAAAAAYUFQAAAAAGcBQEAAAABnQUQAAAAAZ8FAAAAnwUCoAVAAAAAAQFJAADNBwAgBv8EAQAAAAGFBUAAAAABnAUBAAAAAZ0FEAAAAAGfBQAAAJ8FAqAFQAAAAAEBSQAAzwcAMAcsAADOCgAg_wQBAJkKACGFBUAAmwoAIZwFAQCZCgAhnQUQAKgKACGfBQAAzQqfBSKgBUAAmwoAIQIAAACHAQAgSQAA0QcAIAb_BAEAmQoAIYUFQACbCgAhnAUBAJkKACGdBRAAqAoAIZ8FAADNCp8FIqAFQACbCgAhAgAAAIUBACBJAADTBwAgAwAAAIcBACBOAADNBwAgTwAA0QcAIAEAAACHAQAgAQAAAIUBACAFBAAAyAoAIFQAAMsKACBVAADKCgAg4gEAAMkKACDjAQAAzAoAIAn8BAAAnwgAMP0EAADZBwAQ_gQAAJ8IADD_BAEAhwgAIYUFQACJCAAhnAUBAIcIACGdBRAAnAgAIZ8FAACgCJ8FIqAFQACJCAAhAwAAAIUBACABAADYBwAwUwAA2QcAIAMAAACFAQAgAQAAhgEAMAIAAIcBACABAAAAkQEAIAEAAACRAQAgAwAAAIwBACABAACQAQAwAgAAkQEAIAMAAACMAQAgAQAAkAEAMAIAAJEBACADAAAAjAEAIAEAAJABADACAACRAQAgDwgAAMcKACAwAAC9CgAg_wQBAAAAAYAFAQAAAAGBBQEAAAABgwUBAAAAAYQFAQAAAAGFBUAAAAABhgVAAAAAAYcFQAAAAAGXBQEAAAABmAUBAAAAAZkFAQAAAAGaBQEAAAABmwUQAAAAAQFJAADhBwAgDf8EAQAAAAGABQEAAAABgQUBAAAAAYMFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABlwUBAAAAAZgFAQAAAAGZBQEAAAABmgUBAAAAAZsFEAAAAAEBSQAA4wcAMA8IAADGCgAgMAAAqgoAIP8EAQCZCgAhgAUBAJkKACGBBQEAmgoAIYMFAQCZCgAhhAUBAJkKACGFBUAAmwoAIYYFQACbCgAhhwVAAJwKACGXBQEAmQoAIZgFAQCaCgAhmQUBAJoKACGaBQEAmgoAIZsFEACoCgAhAgAAAJEBACBJAADlBwAgDf8EAQCZCgAhgAUBAJkKACGBBQEAmgoAIYMFAQCZCgAhhAUBAJkKACGFBUAAmwoAIYYFQACbCgAhhwVAAJwKACGXBQEAmQoAIZgFAQCaCgAhmQUBAJoKACGaBQEAmgoAIZsFEACoCgAhAgAAAIwBACBJAADnBwAgAwAAAJEBACBOAADhBwAgTwAA5QcAIAEAAACRAQAgAQAAAIwBACAKBAAAwQoAIFQAAMQKACBVAADDCgAg4gEAAMIKACDjAQAAxQoAIIEFAACVCgAghwUAAJUKACCYBQAAlQoAIJkFAACVCgAgmgUAAJUKACAQ_AQAAJsIADD9BAAA7QcAEP4EAACbCAAw_wQBAIcIACGABQEAhwgAIYEFAQCICAAhgwUBAIcIACGEBQEAhwgAIYUFQACJCAAhhgVAAIkIACGHBUAAiggAIZcFAQCHCAAhmAUBAIgIACGZBQEAiAgAIZoFAQCICAAhmwUQAJwIACEDAAAAjAEAIAEAAOwHADBTAADtBwAgAwAAAIwBACABAACQAQAwAgAAkQEAIA0vAACaCAAg_AQAAJUIADD9BAAAjgEAEP4EAACVCAAw_wQBAAAAAYAFAQCWCAAhgQUBAJcIACGCBQEAlwgAIYMFAQCWCAAhhAUBAJYIACGFBUAAmAgAIYYFQACYCAAhhwVAAJkIACEBAAAA8AcAIAEAAADwBwAgBS8AAL8KACCBBQAAlQoAIIIFAACVCgAghwUAAJUKACCYBgAAwAoAIAMAAACOAQAgAQAA8wcAMAIAAPAHACADAAAAjgEAIAEAAPMHADACAADwBwAgAwAAAI4BACABAADzBwAwAgAA8AcAIAovAAC-CgAg_wQBAAAAAYAFAQAAAAGBBQEAAAABggUBAAAAAYMFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABAUkAAPcHACAJ_wQBAAAAAYAFAQAAAAGBBQEAAAABggUBAAAAAYMFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABAUkAAPkHADAKLwAAnQoAIP8EAQCZCgAhgAUBAJkKACGBBQEAmgoAIYIFAQCaCgAhgwUBAJkKACGEBQEAmQoAIYUFQACbCgAhhgVAAJsKACGHBUAAnAoAIQIAAADwBwAgSQAA-wcAIAn_BAEAmQoAIYAFAQCZCgAhgQUBAJoKACGCBQEAmgoAIYMFAQCZCgAhhAUBAJkKACGFBUAAmwoAIYYFQACbCgAhhwVAAJwKACECAAAAjgEAIEkAAP0HACADAAAA8AcAIE4AAPcHACBPAAD7BwAgAQAAAPAHACABAAAAjgEAIAYEAACWCgAgVAAAmAoAIFUAAJcKACCBBQAAlQoAIIIFAACVCgAghwUAAJUKACAM_AQAAIYIADD9BAAAgwgAEP4EAACGCAAw_wQBAIcIACGABQEAhwgAIYEFAQCICAAhggUBAIgIACGDBQEAhwgAIYQFAQCHCAAhhQVAAIkIACGGBUAAiQgAIYcFQACKCAAhAwAAAI4BACABAACCCAAwUwAAgwgAIAMAAACOAQAgAQAA8wcAMAIAAPAHACAM_AQAAIYIADD9BAAAgwgAEP4EAACGCAAw_wQBAIcIACGABQEAhwgAIYEFAQCICAAhggUBAIgIACGDBQEAhwgAIYQFAQCHCAAhhQVAAIkIACGGBUAAiQgAIYcFQACKCAAhDwQAAI8IACBUAACUCAAgVQAAlAgAIIgFAQAAAAGJBQEAAAAEigUBAAAABIsFAQAAAAGMBQEAAAABjQUBAAAAAY4FAQAAAAGPBQEAkwgAIZAFAQAAAAGRBQEAAAABkgUBAAAAAZMFAQAAAAEPBAAAjAgAIFQAAJIIACBVAACSCAAgiAUBAAAAAYkFAQAAAAWKBQEAAAAFiwUBAAAAAYwFAQAAAAGNBQEAAAABjgUBAAAAAY8FAQCRCAAhkAUBAAAAAZEFAQAAAAGSBQEAAAABkwUBAAAAAQsEAACPCAAgVAAAkAgAIFUAAJAIACCIBUAAAAABiQVAAAAABIoFQAAAAASLBUAAAAABjAVAAAAAAY0FQAAAAAGOBUAAAAABjwVAAI4IACELBAAAjAgAIFQAAI0IACBVAACNCAAgiAVAAAAAAYkFQAAAAAWKBUAAAAAFiwVAAAAAAYwFQAAAAAGNBUAAAAABjgVAAAAAAY8FQACLCAAhCwQAAIwIACBUAACNCAAgVQAAjQgAIIgFQAAAAAGJBUAAAAAFigVAAAAABYsFQAAAAAGMBUAAAAABjQVAAAAAAY4FQAAAAAGPBUAAiwgAIQiIBQIAAAABiQUCAAAABYoFAgAAAAWLBQIAAAABjAUCAAAAAY0FAgAAAAGOBQIAAAABjwUCAIwIACEIiAVAAAAAAYkFQAAAAAWKBUAAAAAFiwVAAAAAAYwFQAAAAAGNBUAAAAABjgVAAAAAAY8FQACNCAAhCwQAAI8IACBUAACQCAAgVQAAkAgAIIgFQAAAAAGJBUAAAAAEigVAAAAABIsFQAAAAAGMBUAAAAABjQVAAAAAAY4FQAAAAAGPBUAAjggAIQiIBQIAAAABiQUCAAAABIoFAgAAAASLBQIAAAABjAUCAAAAAY0FAgAAAAGOBQIAAAABjwUCAI8IACEIiAVAAAAAAYkFQAAAAASKBUAAAAAEiwVAAAAAAYwFQAAAAAGNBUAAAAABjgVAAAAAAY8FQACQCAAhDwQAAIwIACBUAACSCAAgVQAAkggAIIgFAQAAAAGJBQEAAAAFigUBAAAABYsFAQAAAAGMBQEAAAABjQUBAAAAAY4FAQAAAAGPBQEAkQgAIZAFAQAAAAGRBQEAAAABkgUBAAAAAZMFAQAAAAEMiAUBAAAAAYkFAQAAAAWKBQEAAAAFiwUBAAAAAYwFAQAAAAGNBQEAAAABjgUBAAAAAY8FAQCSCAAhkAUBAAAAAZEFAQAAAAGSBQEAAAABkwUBAAAAAQ8EAACPCAAgVAAAlAgAIFUAAJQIACCIBQEAAAABiQUBAAAABIoFAQAAAASLBQEAAAABjAUBAAAAAY0FAQAAAAGOBQEAAAABjwUBAJMIACGQBQEAAAABkQUBAAAAAZIFAQAAAAGTBQEAAAABDIgFAQAAAAGJBQEAAAAEigUBAAAABIsFAQAAAAGMBQEAAAABjQUBAAAAAY4FAQAAAAGPBQEAlAgAIZAFAQAAAAGRBQEAAAABkgUBAAAAAZMFAQAAAAENLwAAmggAIPwEAACVCAAw_QQAAI4BABD-BAAAlQgAMP8EAQCWCAAhgAUBAJYIACGBBQEAlwgAIYIFAQCXCAAhgwUBAJYIACGEBQEAlggAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIQyIBQEAAAABiQUBAAAABIoFAQAAAASLBQEAAAABjAUBAAAAAY0FAQAAAAGOBQEAAAABjwUBAJQIACGQBQEAAAABkQUBAAAAAZIFAQAAAAGTBQEAAAABDIgFAQAAAAGJBQEAAAAFigUBAAAABYsFAQAAAAGMBQEAAAABjQUBAAAAAY4FAQAAAAGPBQEAkggAIZAFAQAAAAGRBQEAAAABkgUBAAAAAZMFAQAAAAEIiAVAAAAAAYkFQAAAAASKBUAAAAAEiwVAAAAAAYwFQAAAAAGNBUAAAAABjgVAAAAAAY8FQACQCAAhCIgFQAAAAAGJBUAAAAAFigVAAAAABYsFQAAAAAGMBUAAAAABjQVAAAAAAY4FQAAAAAGPBUAAjQgAIQOUBQAAjAEAIJUFAACMAQAglgUAAIwBACAQ_AQAAJsIADD9BAAA7QcAEP4EAACbCAAw_wQBAIcIACGABQEAhwgAIYEFAQCICAAhgwUBAIcIACGEBQEAhwgAIYUFQACJCAAhhgVAAIkIACGHBUAAiggAIZcFAQCHCAAhmAUBAIgIACGZBQEAiAgAIZoFAQCICAAhmwUQAJwIACENBAAAjwgAIFQAAJ4IACBVAACeCAAg4gEAAJ4IACDjAQAAnggAIIgFEAAAAAGJBRAAAAAEigUQAAAABIsFEAAAAAGMBRAAAAABjQUQAAAAAY4FEAAAAAGPBRAAnQgAIQ0EAACPCAAgVAAAnggAIFUAAJ4IACDiAQAAnggAIOMBAACeCAAgiAUQAAAAAYkFEAAAAASKBRAAAAAEiwUQAAAAAYwFEAAAAAGNBRAAAAABjgUQAAAAAY8FEACdCAAhCIgFEAAAAAGJBRAAAAAEigUQAAAABIsFEAAAAAGMBRAAAAABjQUQAAAAAY4FEAAAAAGPBRAAnggAIQn8BAAAnwgAMP0EAADZBwAQ_gQAAJ8IADD_BAEAhwgAIYUFQACJCAAhnAUBAIcIACGdBRAAnAgAIZ8FAACgCJ8FIqAFQACJCAAhBwQAAI8IACBUAACiCAAgVQAAoggAIIgFAAAAnwUCiQUAAACfBQiKBQAAAJ8FCI8FAAChCJ8FIgcEAACPCAAgVAAAoggAIFUAAKIIACCIBQAAAJ8FAokFAAAAnwUIigUAAACfBQiPBQAAoQifBSIEiAUAAACfBQKJBQAAAJ8FCIoFAAAAnwUIjwUAAKIInwUiD_wEAACjCAAw_QQAAMUHABD-BAAAowgAMP8EAQCHCAAhhQVAAIkIACGcBQEAhwgAIaEFEACcCAAhowUAAKQIowUipAUQAJwIACGlBRAAnAgAIaYFEACcCAAhpwUBAIgIACGoBQEAiAgAIakFAQCICAAhqgUAAKUIACAHBAAAjwgAIFQAAKgIACBVAACoCAAgiAUAAACjBQKJBQAAAKMFCIoFAAAAowUIjwUAAKcIowUiDwQAAIwIACBUAACmCAAgVQAApggAIIgFgAAAAAGLBYAAAAABjAWAAAAAAY0FgAAAAAGOBYAAAAABjwWAAAAAAasFAQAAAAGsBQEAAAABrQUBAAAAAa4FgAAAAAGvBYAAAAABsAWAAAAAAQyIBYAAAAABiwWAAAAAAYwFgAAAAAGNBYAAAAABjgWAAAAAAY8FgAAAAAGrBQEAAAABrAUBAAAAAa0FAQAAAAGuBYAAAAABrwWAAAAAAbAFgAAAAAEHBAAAjwgAIFQAAKgIACBVAACoCAAgiAUAAACjBQKJBQAAAKMFCIoFAAAAowUIjwUAAKcIowUiBIgFAAAAowUCiQUAAACjBQiKBQAAAKMFCI8FAACoCKMFIg78BAAAqQgAMP0EAACxBwAQ_gQAAKkIADD_BAEAhwgAIYMFAQCHCAAhhQVAAIkIACGGBUAAiQgAIaUFEACcCAAhpwUBAIgIACGxBQEAhwgAIbIFAAClCAAgswVAAIoIACG0BQEAiAgAIbUFAQCHCAAhCPwEAACqCAAw_QQAAJ0HABD-BAAAqggAMP8EAQCHCAAhgAUBAIcIACGFBUAAiQgAIYYFQACJCAAhsQUBAIgIACEKBwAArAgAIDQAAK0IACD8BAAAqwgAMP0EAACXAQAQ_gQAAKsIADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIbEFAQCXCAAhA5QFAAAOACCVBQAADgAglgUAAA4AIAOUBQAAEgAglQUAABIAIJYFAAASACAN_AQAAK4IADD9BAAAhwcAEP4EAACuCAAw_wQBAIcIACGABQEAhwgAIYEFAQCICAAhggUBAIgIACGEBQEAiAgAIYUFQACJCAAhhgVAAIkIACGHBUAAiggAIbYFIACvCAAhtwUBAIgIACEFBAAAjwgAIFQAALEIACBVAACxCAAgiAUgAAAAAY8FIACwCAAhBQQAAI8IACBUAACxCAAgVQAAsQgAIIgFIAAAAAGPBSAAsAgAIQKIBSAAAAABjwUgALEIACET_AQAALIIADD9BAAA8wYAEP4EAACyCAAw_wQBAIcIACGABQEAhwgAIYEFAQCICAAhggUBAIgIACGEBQEAiAgAIYUFQACJCAAhhgVAAIkIACGHBUAAiggAIZcFAQCHCAAhmAUBAIgIACGZBQEAiAgAIZoFAQCICAAhmwUQALQIACGjBQAApAijBSK2BSAArwgAIbkFAACzCLkFIgcEAACPCAAgVAAAuAgAIFUAALgIACCIBQAAALkFAokFAAAAuQUIigUAAAC5BQiPBQAAtwi5BSINBAAAjAgAIFQAALYIACBVAAC2CAAg4gEAALYIACDjAQAAtggAIIgFEAAAAAGJBRAAAAAFigUQAAAABYsFEAAAAAGMBRAAAAABjQUQAAAAAY4FEAAAAAGPBRAAtQgAIQ0EAACMCAAgVAAAtggAIFUAALYIACDiAQAAtggAIOMBAAC2CAAgiAUQAAAAAYkFEAAAAAWKBRAAAAAFiwUQAAAAAYwFEAAAAAGNBRAAAAABjgUQAAAAAY8FEAC1CAAhCIgFEAAAAAGJBRAAAAAFigUQAAAABYsFEAAAAAGMBRAAAAABjQUQAAAAAY4FEAAAAAGPBRAAtggAIQcEAACPCAAgVAAAuAgAIFUAALgIACCIBQAAALkFAokFAAAAuQUIigUAAAC5BQiPBQAAtwi5BSIEiAUAAAC5BQKJBQAAALkFCIoFAAAAuQUIjwUAALgIuQUiCfwEAAC5CAAw_QQAAN8GABD-BAAAuQgAMIQFAQCHCAAhtAUBAIcIACG6BQEAhwgAIbsFAQCHCAAhvAUBAIcIACG9BQEAhwgAIQr8BAAAuggAMP0EAADLBgAQ_gQAALoIADCEBQEAhwgAIbQFAQCHCAAhuwUBAIgIACG9BQEAhwgAIb4FAQCHCAAhvwUBAIcIACHABQEAhwgAIQr8BAAAuwgAMP0EAAC3BgAQ_gQAALsIADD_BAEAhwgAIYUFQACJCAAhhgVAAIkIACGHBUAAiggAIbIFAAClCAAgwQUgALwIACHDBQAAvQjDBSIFBAAAjAgAIFQAAMEIACBVAADBCAAgiAUgAAAAAY8FIADACAAhBwQAAI8IACBUAAC_CAAgVQAAvwgAIIgFAAAAwwUCiQUAAADDBQiKBQAAAMMFCI8FAAC-CMMFIgcEAACPCAAgVAAAvwgAIFUAAL8IACCIBQAAAMMFAokFAAAAwwUIigUAAADDBQiPBQAAvgjDBSIEiAUAAADDBQKJBQAAAMMFCIoFAAAAwwUIjwUAAL8IwwUiBQQAAIwIACBUAADBCAAgVQAAwQgAIIgFIAAAAAGPBSAAwAgAIQKIBSAAAAABjwUgAMEIACENCwAAxggAIAwAAMcIACANAADICAAg_AQAAMIIADD9BAAAIQAQ_gQAAMIIADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIbIFAADFCAAgwQUgAMMIACHDBQAAxAjDBSICiAUgAAAAAY8FIADBCAAhBIgFAAAAwwUCiQUAAADDBQiKBQAAAMMFCI8FAAC_CMMFIgyIBYAAAAABiwWAAAAAAYwFgAAAAAGNBYAAAAABjgWAAAAAAY8FgAAAAAGrBQEAAAABrAUBAAAAAa0FAQAAAAGuBYAAAAABrwWAAAAAAbAFgAAAAAEOCQAAxAkAIAoAAMMJACD8BAAAxgkAMP0EAAAjABD-BAAAxgkAMIQFAQCWCAAhtAUBAJYIACG7BQEAlwgAIb0FAQCWCAAhvgUBAJYIACG_BQEAlggAIcAFAQCWCAAhjQYAACMAII4GAAAjACANCQAAxAkAIAoAAMMJACD8BAAAwgkAMP0EAAAlABD-BAAAwgkAMIQFAQCWCAAhtAUBAJYIACG6BQEAlggAIbsFAQCWCAAhvAUBAJYIACG9BQEAlggAIY0GAAAlACCOBgAAJQAgA5QFAAAnACCVBQAAJwAglgUAACcAIAf8BAAAyQgAMP0EAAChBgAQ_gQAAMkIADD_BAIAyggAIYAFAQCHCAAhxAUBAIcIACHFBUAAiQgAIQ0EAACPCAAgVAAAjwgAIFUAAI8IACDiAQAAzAgAIOMBAACPCAAgiAUCAAAAAYkFAgAAAASKBQIAAAAEiwUCAAAAAYwFAgAAAAGNBQIAAAABjgUCAAAAAY8FAgDLCAAhDQQAAI8IACBUAACPCAAgVQAAjwgAIOIBAADMCAAg4wEAAI8IACCIBQIAAAABiQUCAAAABIoFAgAAAASLBQIAAAABjAUCAAAAAY0FAgAAAAGOBQIAAAABjwUCAMsIACEIiAUIAAAAAYkFCAAAAASKBQgAAAAEiwUIAAAAAYwFCAAAAAGNBQgAAAABjgUIAAAAAY8FCADMCAAhB_wEAADNCAAw_QQAAJAGABD-BAAAzQgAMP8EAgDOCAAhgAUBAJYIACHEBQEAlggAIcUFQACYCAAhCIgFAgAAAAGJBQIAAAAEigUCAAAABIsFAgAAAAGMBQIAAAABjQUCAAAAAY4FAgAAAAGPBQIAjwgAIQ38BAAAzwgAMP0EAACKBgAQ_gQAAM8IADD_BAEAhwgAIYUFQACJCAAhhgVAAIkIACGnBQAApQgAIMYFAQCHCAAhxwUBAIcIACHIBSAArwgAIcoFAADQCMoFIswFAADRCMwFIs0FQACJCAAhBwQAAI8IACBUAADVCAAgVQAA1QgAIIgFAAAAygUCiQUAAADKBQiKBQAAAMoFCI8FAADUCMoFIgcEAACPCAAgVAAA0wgAIFUAANMIACCIBQAAAMwFAokFAAAAzAUIigUAAADMBQiPBQAA0gjMBSIHBAAAjwgAIFQAANMIACBVAADTCAAgiAUAAADMBQKJBQAAAMwFCIoFAAAAzAUIjwUAANIIzAUiBIgFAAAAzAUCiQUAAADMBQiKBQAAAMwFCI8FAADTCMwFIgcEAACPCAAgVAAA1QgAIFUAANUIACCIBQAAAMoFAokFAAAAygUIigUAAADKBQiPBQAA1AjKBSIEiAUAAADKBQKJBQAAAMoFCIoFAAAAygUIjwUAANUIygUiDfwEAADWCAAw_QQAAPkFABD-BAAA1ggAMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIacFAADFCAAgxgUBAJYIACHHBQEAlggAIcgFIADXCAAhygUAANgIygUizAUAANkIzAUizQVAAJgIACECiAUgAAAAAY8FIACxCAAhBIgFAAAAygUCiQUAAADKBQiKBQAAAMoFCI8FAADVCMoFIgSIBQAAAMwFAokFAAAAzAUIigUAAADMBQiPBQAA0wjMBSIUPAEAhwgAIT4BAIcIACH8BAAA2ggAMP0EAADzBQAQ_gQAANoIADCFBUAAiQgAIYYFQACJCAAhxwUBAIcIACHMBQEAhwgAIc4FAQCHCAAhzwUBAIcIACHQBQEAhwgAIdIFAADbCNIFItMFAQCHCAAh1AUBAIcIACHVBQEAhwgAIdYFAQCICAAh1wUBAIgIACHYBQEAiAgAIdkFAQCHCAAhBwQAAI8IACBUAADdCAAgVQAA3QgAIIgFAAAA0gUCiQUAAADSBQiKBQAAANIFCI8FAADcCNIFIgcEAACPCAAgVAAA3QgAIFUAAN0IACCIBQAAANIFAokFAAAA0gUIigUAAADSBQiPBQAA3AjSBSIEiAUAAADSBQKJBQAAANIFCIoFAAAA0gUIjwUAAN0I0gUiCfwEAADeCAAw_QQAAN8FABD-BAAA3ggAMP8EAQCHCAAhgAUBAIcIACGFBUAAiQgAIYYFQACJCAAhsQUBAIcIACHbBQAA3wjbBSIHBAAAjwgAIFQAAOEIACBVAADhCAAgiAUAAADbBQKJBQAAANsFCIoFAAAA2wUIjwUAAOAI2wUiBwQAAI8IACBUAADhCAAgVQAA4QgAIIgFAAAA2wUCiQUAAADbBQiKBQAAANsFCI8FAADgCNsFIgSIBQAAANsFAokFAAAA2wUIigUAAADbBQiPBQAA4QjbBSILNwAA5AgAIEEAAOUIACD8BAAA4ggAMP0EAAC8AQAQ_gQAAOIIADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIbEFAQCWCAAh2wUAAOMI2wUiBIgFAAAA2wUCiQUAAADbBQiKBQAAANsFCI8FAADhCNsFIgOUBQAACgAglQUAAAoAIJYFAAAKACADlAUAAAgAIJUFAAAIACCWBQAACAAgCfwEAADmCAAw_QQAAMkFABD-BAAA5ggAMP8EAQCHCAAhgwUBAIcIACGFBUAAiQgAIYYFQACJCAAh3QUAAOcI3QUi3gUBAIcIACEHBAAAjwgAIFQAAOkIACBVAADpCAAgiAUAAADdBQKJBQAAAN0FCIoFAAAA3QUIjwUAAOgI3QUiBwQAAI8IACBUAADpCAAgVQAA6QgAIIgFAAAA3QUCiQUAAADdBQiKBQAAAN0FCI8FAADoCN0FIgSIBQAAAN0FAokFAAAA3QUIigUAAADdBQiPBQAA6QjdBSIH_AQAAOoIADD9BAAAtQUAEP4EAADqCAAw_wQBAIcIACHdBQAA6wjgBSLgBQEAhwgAIeEFAQCHCAAhBwQAAI8IACBUAADtCAAgVQAA7QgAIIgFAAAA4AUCiQUAAADgBQiKBQAAAOAFCI8FAADsCOAFIgcEAACPCAAgVAAA7QgAIFUAAO0IACCIBQAAAOAFAokFAAAA4AUIigUAAADgBQiPBQAA7AjgBSIEiAUAAADgBQKJBQAAAOAFCIoFAAAA4AUIjwUAAO0I4AUiB_wEAADuCAAw_QQAAKEFABD-BAAA7ggAMP8EAQCHCAAhhAUBAIcIACHdBQAA7wjjBSLhBQEAhwgAIQcEAACPCAAgVAAA8QgAIFUAAPEIACCIBQAAAOMFAokFAAAA4wUIigUAAADjBQiPBQAA8AjjBSIHBAAAjwgAIFQAAPEIACBVAADxCAAgiAUAAADjBQKJBQAAAOMFCIoFAAAA4wUIjwUAAPAI4wUiBIgFAAAA4wUCiQUAAADjBQiKBQAAAOMFCI8FAADxCOMFIgf8BAAA8ggAMP0EAACNBQAQ_gQAAPIIADD_BAEAhwgAIbUFAQCHCAAh3QUAAPMI5AUi4QUBAIcIACEHBAAAjwgAIFQAAPUIACBVAAD1CAAgiAUAAADkBQKJBQAAAOQFCIoFAAAA5AUIjwUAAPQI5AUiBwQAAI8IACBUAAD1CAAgVQAA9QgAIIgFAAAA5AUCiQUAAADkBQiKBQAAAOQFCI8FAAD0COQFIgSIBQAAAOQFAokFAAAA5AUIigUAAADkBQiPBQAA9QjkBSIF_AQAAPYIADD9BAAA-QQAEP4EAAD2CAAw_wQBAIcIACHkBQEAhwgAIQkkAAD4CAAgJgAA-QgAICcAAPoIACApAAD7CAAg_AQAAPcIADD9BAAAcAAQ_gQAAPcIADD_BAEAlggAIeQFAQCWCAAhEQ0AAMgIACAOAADiCQAgEQAAvgkAICIAAN8JACAlAADjCQAgKgAA5AkAIPwEAADgCQAw_QQAAEoAEP4EAADgCQAw_wQBAJYIACGDBQEAlggAIYUFQACYCAAhhgVAAJgIACHZBQEAlggAId0FAADhCYAGIo0GAABKACCOBgAASgAgA5QFAAByACCVBQAAcgAglgUAAHIAIAOUBQAAdgAglQUAAHYAIJYFAAB2ACADlAUAAHoAIJUFAAB6ACCWBQAAegAgCvwEAAD8CAAw_QQAAOMEABD-BAAA_AgAMP8EAQCHCAAhgAUBAIcIACGFBUAAiQgAIYYFQACJCAAhsQUBAIcIACHbBQAA3wjbBSLlBQEAiAgAIQ8PAAD-CAAgEgAA_wgAIB4AAIAJACAfAACBCQAgIAAAggkAIPwEAAD9CAAw_QQAANIEABD-BAAA_QgAMP8EAQCWCAAhgAUBAJYIACGFBUAAmAgAIYYFQACYCAAhsQUBAJYIACHbBQAA4wjbBSLlBQEAlwgAIQOUBQAALAAglQUAACwAIJYFAAAsACADlAUAADAAIJUFAAAwACCWBQAAMAAgA5QFAAA0ACCVBQAANAAglgUAADQAIAOUBQAATgAglQUAAE4AIJYFAABOACADlAUAAFsAIJUFAABbACCWBQAAWwAgCfwEAACDCQAw_QQAAMwEABD-BAAAgwkAMP8EAQCHCAAhgwUBAIcIACGFBUAAiQgAIYYFQACJCAAh3QUAAIQJ5wUi5wUBAIcIACEHBAAAjwgAIFQAAIYJACBVAACGCQAgiAUAAADnBQKJBQAAAOcFCIoFAAAA5wUIjwUAAIUJ5wUiBwQAAI8IACBUAACGCQAgVQAAhgkAIIgFAAAA5wUCiQUAAADnBQiKBQAAAOcFCI8FAACFCecFIgSIBQAAAOcFAokFAAAA5wUIigUAAADnBQiPBQAAhgnnBSIJ_AQAAIcJADD9BAAAuAQAEP4EAACHCQAw_wQBAIcIACGDBQEAiAgAIYUFQACJCAAhhgVAAIkIACHoBQEAiAgAIekFAQCICAAhB_wEAACICQAw_QQAAKQEABD-BAAAiAkAMP8EAQCHCAAhhQVAAIkIACGGBUAAiQgAIeoFAQCICAAhCvwEAACJCQAw_QQAAJAEABD-BAAAiQkAMP8EAQCHCAAhhQVAAIkIACGGBUAAiQgAIecFAQCHCAAh6wVAAIkIACHsBQEAhwgAIe0FAgDKCAAhCfwEAACKCQAw_QQAAPwDABD-BAAAigkAMP8EAQCHCAAhhQVAAIkIACGGBUAAiQgAIeoFAQCHCAAh7gVAAIkIACHvBQEAiAgAIQr8BAAAiwkAMP0EAADoAwAQ_gQAAIsJADD_BAEAhwgAIYUFQACJCAAhhgVAAIkIACHnBQEAhwgAIesFQACJCAAh7AUBAIcIACHtBQIAyggAIQr8BAAAjAkAMP0EAADUAwAQ_gQAAIwJADD_BAEAhwgAIYUFQACJCAAhhgVAAIkIACHuBUAAiQgAIfAFQACJCAAh8QUBAIcIACHyBQEAhwgAIQ4UAACOCQAgFQAAjwkAIBYAAJAJACAcAACRCQAg_AQAAI0JADD9BAAAPAAQ_gQAAI0JADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACHuBUAAmAgAIfAFQACYCAAh8QUBAJYIACHyBQEAlggAIQwTAADxCQAgFwAA7AkAIPwEAADwCQAw_QQAADgAEP4EAADwCQAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAh6gUBAJYIACHzBQIAzggAIY0GAAA4ACCOBgAAOAAgERgAAOwJACAiAADfCQAgMwAAjAoAIDUAAI0KACA2AAD7CAAg_AQAAIsKADD9BAAADgAQ_gQAAIsKADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIbcFAQCWCAAhuwUBAJYIACHZBQEAlggAIY0GAAAOACCOBgAADgAgA5QFAAA-ACCVBQAAPgAglgUAAD4AIAOUBQAARQAglQUAAEUAIJYFAABFACAI_AQAAJIJADD9BAAAvgMAEP4EAACSCQAw_wQBAIcIACGFBUAAiQgAIYYFQACJCAAh6gUBAIcIACHzBQIAyggAIQr8BAAAkwkAMP0EAACqAwAQ_gQAAJMJADD_BAEAhwgAIYUFQACJCAAhhgVAAIkIACHnBQEAhwgAIesFQACJCAAh7AUBAIcIACHtBQIAyggAIQn8BAAAlAkAMP0EAACWAwAQ_gQAAJQJADD_BAEAhwgAIYAFAQCHCAAhhQVAAIkIACGGBUAAiQgAIdMFAQCICAAh9AUBAIcIACEH_AQAAJUJADD9BAAAggMAEP4EAACVCQAw_wQBAIcIACGABQEAhwgAIYUFQACJCAAhhgVAAIkIACEIOwAAlwkAIPwEAACWCQAw_QQAAPECABD-BAAAlgkAMP8EAQCWCAAhgAUBAJYIACGFBUAAmAgAIYYFQACYCAAhA5QFAAC0AQAglQUAALQBACCWBQAAtAEAIA_8BAAAmAkAMP0EAADrAgAQ_gQAAJgJADD_BAEAhwgAIYAFAQCHCAAhgwUBAIcIACGEBQEAhwgAIYUFQACJCAAhhgVAAIkIACHQBQEAiAgAIdsFAACZCfcFIt4FAQCICAAh9QUBAIgIACH4BQAAmgn4BSL5BQEAiAgAIQcEAACPCAAgVAAAngkAIFUAAJ4JACCIBQAAAPcFAokFAAAA9wUIigUAAAD3BQiPBQAAnQn3BSIHBAAAjwgAIFQAAJwJACBVAACcCQAgiAUAAAD4BQKJBQAAAPgFCIoFAAAA-AUIjwUAAJsJ-AUiBwQAAI8IACBUAACcCQAgVQAAnAkAIIgFAAAA-AUCiQUAAAD4BQiKBQAAAPgFCI8FAACbCfgFIgSIBQAAAPgFAokFAAAA-AUIigUAAAD4BQiPBQAAnAn4BSIHBAAAjwgAIFQAAJ4JACBVAACeCQAgiAUAAAD3BQKJBQAAAPcFCIoFAAAA9wUIjwUAAJ0J9wUiBIgFAAAA9wUCiQUAAAD3BQiKBQAAAPcFCI8FAACeCfcFIgr8BAAAnwkAMP0EAADXAgAQ_gQAAJ8JADD_BAEAhwgAIYAFAQCHCAAhhQVAAIkIACGGBUAAiQgAIfIFAQCHCAAh-gUBAIcIACH7BQEAiAgAIQr8BAAAoAkAMP0EAADDAgAQ_gQAAKAJADD_BAEAhwgAIYAFAQCHCAAhhQVAAIkIACGGBUAAiQgAIbcFAQCHCAAhuwUBAIcIACHZBQEAhwgAIQz8BAAAoQkAMP0EAACvAgAQ_gQAAKEJADD_BAEAhwgAIYUFQACJCAAhhgVAAIkIACG-BQEAhwgAIb8FAQCHCAAh2wUAAKIJ_wUi5wUBAIcIACH8BQEAhwgAIf0FAQCHCAAhBwQAAI8IACBUAACkCQAgVQAApAkAIIgFAAAA_wUCiQUAAAD_BQiKBQAAAP8FCI8FAACjCf8FIgcEAACPCAAgVAAApAkAIFUAAKQJACCIBQAAAP8FAokFAAAA_wUIigUAAAD_BQiPBQAAown_BSIEiAUAAAD_BQKJBQAAAP8FCIoFAAAA_wUIjwUAAKQJ_wUiCfwEAAClCQAw_QQAAJsCABD-BAAApQkAMP8EAQCHCAAhgwUBAIcIACGFBUAAiQgAIYYFQACJCAAh2QUBAIcIACHdBQAApgmABiIHBAAAjwgAIFQAAKgJACBVAACoCQAgiAUAAACABgKJBQAAAIAGCIoFAAAAgAYIjwUAAKcJgAYiBwQAAI8IACBUAACoCQAgVQAAqAkAIIgFAAAAgAYCiQUAAACABgiKBQAAAIAGCI8FAACnCYAGIgSIBQAAAIAGAokFAAAAgAYIigUAAACABgiPBQAAqAmABiII_AQAAKkJADD9BAAAhwIAEP4EAACpCQAw_wQBAIcIACHDBQAAqwmEBiLbBQAAqgmDBiKABgEAhwgAIYEGAQCHCAAhBwQAAI8IACBUAACvCQAgVQAArwkAIIgFAAAAgwYCiQUAAACDBgiKBQAAAIMGCI8FAACuCYMGIgcEAACPCAAgVAAArQkAIFUAAK0JACCIBQAAAIQGAokFAAAAhAYIigUAAACEBgiPBQAArAmEBiIHBAAAjwgAIFQAAK0JACBVAACtCQAgiAUAAACEBgKJBQAAAIQGCIoFAAAAhAYIjwUAAKwJhAYiBIgFAAAAhAYCiQUAAACEBgiKBQAAAIQGCI8FAACtCYQGIgcEAACPCAAgVAAArwkAIFUAAK8JACCIBQAAAIMGAokFAAAAgwYIigUAAACDBgiPBQAArgmDBiIEiAUAAACDBgKJBQAAAIMGCIoFAAAAgwYIjwUAAK8JgwYiDAYAALMJACAkAAC2CQAgQgAAtAkAIEMAALUJACD8BAAAsAkAMP0EAAD2AQAQ_gQAALAJADD_BAEAlggAIcMFAACyCYQGItsFAACxCYMGIoAGAQCWCAAhgQYBAJYIACEEiAUAAACDBgKJBQAAAIMGCIoFAAAAgwYIjwUAAK8JgwYiBIgFAAAAhAYCiQUAAACEBgiKBQAAAIQGCI8FAACtCYQGIgwFAACUCgAgEQAAvgkAIPwEAACTCgAw_QQAAAMAEP4EAACTCgAw_wQBAJYIACGDBQEAlggAIYUFQACYCAAhhgVAAJgIACGEBgEAlggAIY0GAAADACCOBgAAAwAgDREAAL4JACA_AAC9CQAg_AQAALsJADD9BAAACAAQ_gQAALsJADD_BAEAlggAIYMFAQCWCAAhhQVAAJgIACGGBUAAmAgAId0FAAC8Cd0FIt4FAQCWCAAhjQYAAAgAII4GAAAIACANEAAA5gkAIBEAAL4JACD8BAAA9AkAMP0EAAAwABD-BAAA9AkAMP8EAQCWCAAhgwUBAJYIACGFBUAAmAgAIYYFQACYCAAh3QUAAPUJ5wUi5wUBAJYIACGNBgAAMAAgjgYAADAAIBENAADICAAgDgAA4gkAIBEAAL4JACAiAADfCQAgJQAA4wkAICoAAOQJACD8BAAA4AkAMP0EAABKABD-BAAA4AkAMP8EAQCWCAAhgwUBAJYIACGFBUAAmAgAIYYFQACYCAAh2QUBAJYIACHdBQAA4QmABiKNBgAASgAgjgYAAEoAIAr8BAAAtwkAMP0EAADwAQAQ_gQAALcJADD_BAEAhwgAIYUFQACJCAAhhgVAAIkIACG-BQEAhwgAIb8FAQCHCAAh_AUBAIcIACH9BQEAiAgAIQsDAAC5CQAg_AQAALgJADD9BAAA3wEAEP4EAAC4CQAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAhvgUBAJYIACG_BQEAlggAIfwFAQCWCAAh_QUBAJcIACEDlAUAAAMAIJUFAAADACCWBQAAAwAgCPwEAAC6CQAw_QQAANkBABD-BAAAugkAMP8EAQCHCAAhgwUBAIcIACGFBUAAiQgAIYYFQACJCAAhhAYBAIcIACELEQAAvgkAID8AAL0JACD8BAAAuwkAMP0EAAAIABD-BAAAuwkAMP8EAQCWCAAhgwUBAJYIACGFBUAAmAgAIYYFQACYCAAh3QUAALwJ3QUi3gUBAJYIACEEiAUAAADdBQKJBQAAAN0FCIoFAAAA3QUIjwUAAOkI3QUiDTcAAOQIACBBAADlCAAg_AQAAOIIADD9BAAAvAEAEP4EAADiCAAw_wQBAJYIACGABQEAlggAIYUFQACYCAAhhgVAAJgIACGxBQEAlggAIdsFAADjCNsFIo0GAAC8AQAgjgYAALwBACAOBgAAswkAICQAALYJACBCAAC0CQAgQwAAtQkAIPwEAACwCQAw_QQAAPYBABD-BAAAsAkAMP8EAQCWCAAhwwUAALIJhAYi2wUAALEJgwYigAYBAJYIACGBBgEAlggAIY0GAAD2AQAgjgYAAPYBACALPAAAwAkAID0AAOQIACD8BAAAvwkAMP0EAAC0AQAQ_gQAAL8JADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIdMFAQCXCAAh9AUBAJYIACEKOwAAlwkAIPwEAACWCQAw_QQAAPECABD-BAAAlgkAMP8EAQCWCAAhgAUBAJYIACGFBUAAmAgAIYYFQACYCAAhjQYAAPECACCOBgAA8QIAIAKEBQEAAAABvAUBAAAAAQsJAADECQAgCgAAwwkAIPwEAADCCQAw_QQAACUAEP4EAADCCQAwhAUBAJYIACG0BQEAlggAIboFAQCWCAAhuwUBAJYIACG8BQEAlggAIb0FAQCWCAAhDwsAAMYIACAMAADHCAAgDQAAyAgAIPwEAADCCAAw_QQAACEAEP4EAADCCAAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAhhwVAAJkIACGyBQAAxQgAIMEFIADDCAAhwwUAAMQIwwUijQYAACEAII4GAAAhACATFQAAjwkAIDIAAMgJACA0AACtCAAgNwAA5AgAIDgAAPoIACA5AADJCQAgOgAAygkAIPwEAADHCQAw_QQAABsAEP4EAADHCQAw_wQBAJYIACGABQEAlggAIYUFQACYCAAhhgVAAJgIACHyBQEAlggAIfoFAQCWCAAh-wUBAJcIACGNBgAAGwAgjgYAABsAIAKEBQEAAAABwAUBAAAAAQwJAADECQAgCgAAwwkAIPwEAADGCQAw_QQAACMAEP4EAADGCQAwhAUBAJYIACG0BQEAlggAIbsFAQCXCAAhvQUBAJYIACG-BQEAlggAIb8FAQCWCAAhwAUBAJYIACERFQAAjwkAIDIAAMgJACA0AACtCAAgNwAA5AgAIDgAAPoIACA5AADJCQAgOgAAygkAIPwEAADHCQAw_QQAABsAEP4EAADHCQAw_wQBAJYIACGABQEAlggAIYUFQACYCAAhhgVAAJgIACHyBQEAlggAIfoFAQCWCAAh-wUBAJcIACEDlAUAABYAIJUFAAAWACCWBQAAFgAgA5QFAAAjACCVBQAAIwAglgUAACMAIAOUBQAAJQAglQUAACUAIJYFAAAlACASCAAAzQkAIDAAAM4JACD8BAAAywkAMP0EAACMAQAQ_gQAAMsJADD_BAEAlggAIYAFAQCWCAAhgQUBAJcIACGDBQEAlggAIYQFAQCWCAAhhQVAAJgIACGGBUAAmAgAIYcFQACZCAAhlwUBAJYIACGYBQEAlwgAIZkFAQCXCAAhmgUBAJcIACGbBRAAzAkAIQiIBRAAAAABiQUQAAAABIoFEAAAAASLBRAAAAABjAUQAAAAAY0FEAAAAAGOBRAAAAABjwUQAJ4IACEPLwAAmggAIPwEAACVCAAw_QQAAI4BABD-BAAAlQgAMP8EAQCWCAAhgAUBAJYIACGBBQEAlwgAIYIFAQCXCAAhgwUBAJYIACGEBQEAlggAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIY0GAACOAQAgjgYAAI4BACADlAUAAB0AIJUFAAAdACCWBQAAHQAgCiwAANEJACD8BAAAzwkAMP0EAACFAQAQ_gQAAM8JADD_BAEAlggAIYUFQACYCAAhnAUBAJYIACGdBRAAzAkAIZ8FAADQCZ8FIqAFQACYCAAhBIgFAAAAnwUCiQUAAACfBQiKBQAAAJ8FCI8FAACiCJ8FIhUKAAD9CQAgDgAA3AkAICQAAPgIACArAADOCQAgLQAA_gkAIPwEAAD8CQAw_QQAACcAEP4EAAD8CQAw_wQBAJYIACGDBQEAlggAIYUFQACYCAAhhgVAAJgIACGlBRAAzAkAIacFAQCXCAAhsQUBAJYIACGyBQAAxQgAILMFQACZCAAhtAUBAJcIACG1BQEAlggAIY0GAAAnACCOBgAAJwAgAuAFAQAAAAHhBQEAAAABCSUAANUJACAoAACPCQAg_AQAANMJADD9BAAAegAQ_gQAANMJADD_BAEAlggAId0FAADUCeAFIuAFAQCWCAAh4QUBAJYIACEEiAUAAADgBQKJBQAAAOAFCIoFAAAA4AUIjwUAAO0I4AUiCyQAAPgIACAmAAD5CAAgJwAA-ggAICkAAPsIACD8BAAA9wgAMP0EAABwABD-BAAA9wgAMP8EAQCWCAAh5AUBAJYIACGNBgAAcAAgjgYAAHAAIAKEBQEAAAAB4QUBAAAAAQkJAADECQAgJQAA1QkAIPwEAADXCQAw_QQAAHYAEP4EAADXCQAw_wQBAJYIACGEBQEAlggAId0FAADYCeMFIuEFAQCWCAAhBIgFAAAA4wUCiQUAAADjBQiKBQAAAOMFCI8FAADxCOMFIgK1BQEAAAAB4QUBAAAAAQkOAADcCQAgJQAA1QkAIPwEAADaCQAw_QQAAHIAEP4EAADaCQAw_wQBAJYIACG1BQEAlggAId0FAADbCeQFIuEFAQCWCAAhBIgFAAAA5AUCiQUAAADkBQiKBQAAAOQFCI8FAAD1COQFIhcJAADECQAgDQAAyAgAIBEAAPgIACA-AACRCgAgPwAAkgoAIEAAAPkIACD8BAAAjgoAMP0EAAAKABD-BAAAjgoAMP8EAQCWCAAhgAUBAJYIACGDBQEAlggAIYQFAQCWCAAhhQVAAJgIACGGBUAAmAgAIdAFAQCXCAAh2wUAAI8K9wUi3gUBAJcIACH1BQEAlwgAIfgFAACQCvgFIvkFAQCXCAAhjQYAAAoAII4GAAAKACAVIgAA3wkAIDwBAJYIACE-AQCWCAAh_AQAAN0JADD9BAAAaAAQ_gQAAN0JADCFBUAAmAgAIYYFQACYCAAhxwUBAJYIACHMBQEAlggAIc4FAQCWCAAhzwUBAJYIACHQBQEAlggAIdIFAADeCdIFItMFAQCWCAAh1AUBAJYIACHVBQEAlggAIdYFAQCXCAAh1wUBAJcIACHYBQEAlwgAIdkFAQCWCAAhBIgFAAAA0gUCiQUAAADSBQiKBQAAANIFCI8FAADdCNIFIhIHAACsCAAgEAAA5gkAICEAAPoJACAjAAD7CQAg_AQAAPgJADD9BAAALAAQ_gQAAPgJADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACG-BQEAlggAIb8FAQCWCAAh2wUAAPkJ_wUi5wUBAJYIACH8BQEAlggAIf0FAQCWCAAhjQYAACwAII4GAAAsACAPDQAAyAgAIA4AAOIJACARAAC-CQAgIgAA3wkAICUAAOMJACAqAADkCQAg_AQAAOAJADD9BAAASgAQ_gQAAOAJADD_BAEAlggAIYMFAQCWCAAhhQVAAJgIACGGBUAAmAgAIdkFAQCWCAAh3QUAAOEJgAYiBIgFAAAAgAYCiQUAAACABgiKBQAAAIAGCI8FAACoCYAGIhcJAADECQAgDQAAyAgAIBEAAPgIACA-AACRCgAgPwAAkgoAIEAAAPkIACD8BAAAjgoAMP0EAAAKABD-BAAAjgoAMP8EAQCWCAAhgAUBAJYIACGDBQEAlggAIYQFAQCWCAAhhQVAAJgIACGGBUAAmAgAIdAFAQCXCAAh2wUAAI8K9wUi3gUBAJcIACH1BQEAlwgAIfgFAACQCvgFIvkFAQCXCAAhjQYAAAoAII4GAAAKACALJAAA-AgAICYAAPkIACAnAAD6CAAgKQAA-wgAIPwEAAD3CAAw_QQAAHAAEP4EAAD3CAAw_wQBAJYIACHkBQEAlggAIY0GAABwACCOBgAAcAAgDhEAALYJACAYAADsCQAgGwAA7QkAIPwEAADrCQAw_QQAAEUAEP4EAADrCQAw_wQBAJYIACGDBQEAlwgAIYUFQACYCAAhhgVAAJgIACHoBQEAlwgAIekFAQCXCAAhjQYAAEUAII4GAABFACAMEAAA5gkAIBYAAJAJACD8BAAA5QkAMP0EAABbABD-BAAA5QkAMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIecFAQCWCAAh6wVAAJgIACHsBQEAlggAIe0FAgDOCAAhEQ8AAP4IACASAAD_CAAgHgAAgAkAIB8AAIEJACAgAACCCQAg_AQAAP0IADD9BAAA0gQAEP4EAAD9CAAw_wQBAJYIACGABQEAlggAIYUFQACYCAAhhgVAAJgIACGxBQEAlggAIdsFAADjCNsFIuUFAQCXCAAhjQYAANIEACCOBgAA0gQAIAwQAADmCQAgGQAA6AkAIPwEAADnCQAw_QQAAE4AEP4EAADnCQAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAh5wUBAJYIACHrBUAAmAgAIewFAQCWCAAh7QUCAM4IACEDlAUAAEwAIJUFAABMACCWBQAATAAgCRMAAOoJACAaAADkCQAg_AQAAOkJADD9BAAATAAQ_gQAAOkJADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACHqBQEAlwgAIQ4QAADmCQAgGQAA6AkAIPwEAADnCQAw_QQAAE4AEP4EAADnCQAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAh5wUBAJYIACHrBUAAmAgAIewFAQCWCAAh7QUCAM4IACGNBgAATgAgjgYAAE4AIAwRAAC2CQAgGAAA7AkAIBsAAO0JACD8BAAA6wkAMP0EAABFABD-BAAA6wkAMP8EAQCWCAAhgwUBAJcIACGFBUAAmAgAIYYFQACYCAAh6AUBAJcIACHpBQEAlwgAIRAUAACOCQAgFQAAjwkAIBYAAJAJACAcAACRCQAg_AQAAI0JADD9BAAAPAAQ_gQAAI0JADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACHuBUAAmAgAIfAFQACYCAAh8QUBAJYIACHyBQEAlggAIY0GAAA8ACCOBgAAPAAgCxMAAOoJACAaAADkCQAg_AQAAOkJADD9BAAATAAQ_gQAAOkJADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACHqBQEAlwgAIY0GAABMACCOBgAATAAgCxMAAO8JACAXAADsCQAg_AQAAO4JADD9BAAAPgAQ_gQAAO4JADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACHqBQEAlggAIe4FQACYCAAh7wUBAJcIACEOEAAA5gkAIBYAAJAJACD8BAAA5QkAMP0EAABbABD-BAAA5QkAMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIecFAQCWCAAh6wVAAJgIACHsBQEAlggAIe0FAgDOCAAhjQYAAFsAII4GAABbACAKEwAA8QkAIBcAAOwJACD8BAAA8AkAMP0EAAA4ABD-BAAA8AkAMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIeoFAQCWCAAh8wUCAM4IACEOEAAA5gkAIB0AAPMJACD8BAAA8gkAMP0EAAA0ABD-BAAA8gkAMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIecFAQCWCAAh6wVAAJgIACHsBQEAlggAIe0FAgDOCAAhjQYAADQAII4GAAA0ACAMEAAA5gkAIB0AAPMJACD8BAAA8gkAMP0EAAA0ABD-BAAA8gkAMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIecFAQCWCAAh6wVAAJgIACHsBQEAlggAIe0FAgDOCAAhA5QFAAA4ACCVBQAAOAAglgUAADgAIAsQAADmCQAgEQAAvgkAIPwEAAD0CQAw_QQAADAAEP4EAAD0CQAw_wQBAJYIACGDBQEAlggAIYUFQACYCAAhhgVAAJgIACHdBQAA9QnnBSLnBQEAlggAIQSIBQAAAOcFAokFAAAA5wUIigUAAADnBQiPBQAAhgnnBSIC5wUBAAAAAfwFAQAAAAEC5wUBAAAAAf0FAQAAAAEQBwAArAgAIBAAAOYJACAhAAD6CQAgIwAA-wkAIPwEAAD4CQAw_QQAACwAEP4EAAD4CQAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAhvgUBAJYIACG_BQEAlggAIdsFAAD5Cf8FIucFAQCWCAAh_AUBAJYIACH9BQEAlggAIQSIBQAAAP8FAokFAAAA_wUIigUAAAD_BQiPBQAApAn_BSIDlAUAAEoAIJUFAABKACCWBQAASgAgA5QFAABoACCVBQAAaAAglgUAAGgAIBMKAAD9CQAgDgAA3AkAICQAAPgIACArAADOCQAgLQAA_gkAIPwEAAD8CQAw_QQAACcAEP4EAAD8CQAw_wQBAJYIACGDBQEAlggAIYUFQACYCAAhhgVAAJgIACGlBRAAzAkAIacFAQCXCAAhsQUBAJYIACGyBQAAxQgAILMFQACZCAAhtAUBAJcIACG1BQEAlggAIQ8LAADGCAAgDAAAxwgAIA0AAMgIACD8BAAAwggAMP0EAAAhABD-BAAAwggAMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIYcFQACZCAAhsgUAAMUIACDBBSAAwwgAIcMFAADECMMFIo0GAAAhACCOBgAAIQAgA5QFAACFAQAglQUAAIUBACCWBQAAhQEAIBIsAADRCQAgLgAAgQoAIDEAAIIKACD8BAAA_wkAMP0EAAAdABD-BAAA_wkAMP8EAQCWCAAhhQVAAJgIACGcBQEAlggAIaEFEADMCQAhowUAAIAKowUipAUQAMwJACGlBRAAzAkAIaYFEADMCQAhpwUBAJcIACGoBQEAlwgAIakFAQCXCAAhqgUAAMUIACAEiAUAAACjBQKJBQAAAKMFCIoFAAAAowUIjwUAAKgIowUiGAgAAIYKACAJAACHCgAgMAAAzgkAIPwEAACDCgAw_QQAABYAEP4EAACDCgAw_wQBAJYIACGABQEAlggAIYEFAQCXCAAhggUBAJcIACGEBQEAlwgAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIZcFAQCWCAAhmAUBAJcIACGZBQEAlwgAIZoFAQCXCAAhmwUQAIUKACGjBQAAgAqjBSK2BSAA1wgAIbkFAACECrkFIo0GAAAWACCOBgAAFgAgFAgAAM0JACAwAADOCQAg_AQAAMsJADD9BAAAjAEAEP4EAADLCQAw_wQBAJYIACGABQEAlggAIYEFAQCXCAAhgwUBAJYIACGEBQEAlggAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIZcFAQCWCAAhmAUBAJcIACGZBQEAlwgAIZoFAQCXCAAhmwUQAMwJACGNBgAAjAEAII4GAACMAQAgFggAAIYKACAJAACHCgAgMAAAzgkAIPwEAACDCgAw_QQAABYAEP4EAACDCgAw_wQBAJYIACGABQEAlggAIYEFAQCXCAAhggUBAJcIACGEBQEAlwgAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIZcFAQCWCAAhmAUBAJcIACGZBQEAlwgAIZoFAQCXCAAhmwUQAIUKACGjBQAAgAqjBSK2BSAA1wgAIbkFAACECrkFIgSIBQAAALkFAokFAAAAuQUIigUAAAC5BQiPBQAAuAi5BSIIiAUQAAAAAYkFEAAAAAWKBRAAAAAFiwUQAAAAAYwFEAAAAAGNBRAAAAABjgUQAAAAAY8FEAC2CAAhEgkAAIcKACAyAADICQAgMwAAiQoAIPwEAACICgAw_QQAABIAEP4EAACICgAw_wQBAJYIACGABQEAlggAIYEFAQCXCAAhggUBAJcIACGEBQEAlwgAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIbYFIADXCAAhtwUBAJcIACGNBgAAEgAgjgYAABIAIBMVAACPCQAgMgAAyAkAIDQAAK0IACA3AADkCAAgOAAA-ggAIDkAAMkJACA6AADKCQAg_AQAAMcJADD9BAAAGwAQ_gQAAMcJADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIfIFAQCWCAAh-gUBAJYIACH7BQEAlwgAIY0GAAAbACCOBgAAGwAgEAkAAIcKACAyAADICQAgMwAAiQoAIPwEAACICgAw_QQAABIAEP4EAACICgAw_wQBAJYIACGABQEAlggAIYEFAQCXCAAhggUBAJcIACGEBQEAlwgAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIbYFIADXCAAhtwUBAJcIACEMBwAArAgAIDQAAK0IACD8BAAAqwgAMP0EAACXAQAQ_gQAAKsIADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIbEFAQCXCAAhjQYAAJcBACCOBgAAlwEAIAK7BQEAAAAB2QUBAAAAAQ8YAADsCQAgIgAA3wkAIDMAAIwKACA1AACNCgAgNgAA-wgAIPwEAACLCgAw_QQAAA4AEP4EAACLCgAw_wQBAJYIACGABQEAlggAIYUFQACYCAAhhgVAAJgIACG3BQEAlggAIbsFAQCWCAAh2QUBAJYIACEMBwAArAgAIDQAAK0IACD8BAAAqwgAMP0EAACXAQAQ_gQAAKsIADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIbEFAQCXCAAhjQYAAJcBACCOBgAAlwEAIAOUBQAAGwAglQUAABsAIJYFAAAbACAVCQAAxAkAIA0AAMgIACARAAD4CAAgPgAAkQoAID8AAJIKACBAAAD5CAAg_AQAAI4KADD9BAAACgAQ_gQAAI4KADD_BAEAlggAIYAFAQCWCAAhgwUBAJYIACGEBQEAlggAIYUFQACYCAAhhgVAAJgIACHQBQEAlwgAIdsFAACPCvcFIt4FAQCXCAAh9QUBAJcIACH4BQAAkAr4BSL5BQEAlwgAIQSIBQAAAPcFAokFAAAA9wUIigUAAAD3BQiPBQAAngn3BSIEiAUAAAD4BQKJBQAAAPgFCIoFAAAA-AUIjwUAAJwJ-AUiDTwAAMAJACA9AADkCAAg_AQAAL8JADD9BAAAtAEAEP4EAAC_CQAw_wQBAJYIACGABQEAlggAIYUFQACYCAAhhgVAAJgIACHTBQEAlwgAIfQFAQCWCAAhjQYAALQBACCOBgAAtAEAIA03AADkCAAgQQAA5QgAIPwEAADiCAAw_QQAALwBABD-BAAA4ggAMP8EAQCWCAAhgAUBAJYIACGFBUAAmAgAIYYFQACYCAAhsQUBAJYIACHbBQAA4wjbBSKNBgAAvAEAII4GAAC8AQAgCgUAAJQKACARAAC-CQAg_AQAAJMKADD9BAAAAwAQ_gQAAJMKADD_BAEAlggAIYMFAQCWCAAhhQVAAJgIACGGBUAAmAgAIYQGAQCWCAAhDQMAALkJACD8BAAAuAkAMP0EAADfAQAQ_gQAALgJADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACG-BQEAlggAIb8FAQCWCAAh_AUBAJYIACH9BQEAlwgAIY0GAADfAQAgjgYAAN8BACAAAAAAAZIGAQAAAAEBkgYBAAAAAQGSBkAAAAABAZIGQAAAAAELTgAAngoAME8AAKMKADCPBgAAnwoAMJAGAACgCgAwkQYAAKEKACCSBgAAogoAMJMGAACiCgAwlAYAAKIKADCVBgAAogoAMJYGAACkCgAwlwYAAKUKADANMAAAvQoAIP8EAQAAAAGABQEAAAABgQUBAAAAAYMFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABlwUBAAAAAZgFAQAAAAGZBQEAAAABmwUQAAAAAQIAAACRAQAgTgAAvAoAIAMAAACRAQAgTgAAvAoAIE8AAKkKACABSQAApxQAMBIIAADNCQAgMAAAzgkAIPwEAADLCQAw_QQAAIwBABD-BAAAywkAMP8EAQAAAAGABQEAlggAIYEFAQCXCAAhgwUBAJYIACGEBQEAlggAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIZcFAQAAAAGYBQEAAAABmQUBAAAAAZoFAQCXCAAhmwUQAMwJACECAAAAkQEAIEkAAKkKACACAAAApgoAIEkAAKcKACAQ_AQAAKUKADD9BAAApgoAEP4EAAClCgAw_wQBAJYIACGABQEAlggAIYEFAQCXCAAhgwUBAJYIACGEBQEAlggAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIZcFAQCWCAAhmAUBAJcIACGZBQEAlwgAIZoFAQCXCAAhmwUQAMwJACEQ_AQAAKUKADD9BAAApgoAEP4EAAClCgAw_wQBAJYIACGABQEAlggAIYEFAQCXCAAhgwUBAJYIACGEBQEAlggAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIZcFAQCWCAAhmAUBAJcIACGZBQEAlwgAIZoFAQCXCAAhmwUQAMwJACEM_wQBAJkKACGABQEAmQoAIYEFAQCaCgAhgwUBAJkKACGEBQEAmQoAIYUFQACbCgAhhgVAAJsKACGHBUAAnAoAIZcFAQCZCgAhmAUBAJoKACGZBQEAmgoAIZsFEACoCgAhBZIGEAAAAAGZBhAAAAABmgYQAAAAAZsGEAAAAAGcBhAAAAABDTAAAKoKACD_BAEAmQoAIYAFAQCZCgAhgQUBAJoKACGDBQEAmQoAIYQFAQCZCgAhhQVAAJsKACGGBUAAmwoAIYcFQACcCgAhlwUBAJkKACGYBQEAmgoAIZkFAQCaCgAhmwUQAKgKACELTgAAqwoAME8AALAKADCPBgAArAoAMJAGAACtCgAwkQYAAK4KACCSBgAArwoAMJMGAACvCgAwlAYAAK8KADCVBgAArwoAMJYGAACxCgAwlwYAALIKADANLAAAugoAIC4AALsKACD_BAEAAAABhQVAAAAAAZwFAQAAAAGhBRAAAAABowUAAACjBQKkBRAAAAABpQUQAAAAAaYFEAAAAAGnBQEAAAABqAUBAAAAAaoFgAAAAAECAAAAHwAgTgAAuQoAIAMAAAAfACBOAAC5CgAgTwAAtgoAIAFJAACmFAAwEiwAANEJACAuAACBCgAgMQAAggoAIPwEAAD_CQAw_QQAAB0AEP4EAAD_CQAw_wQBAAAAAYUFQACYCAAhnAUBAJYIACGhBRAAzAkAIaMFAACACqMFIqQFEADMCQAhpQUQAMwJACGmBRAAzAkAIacFAQCXCAAhqAUBAJcIACGpBQEAlwgAIaoFAADFCAAgAgAAAB8AIEkAALYKACACAAAAswoAIEkAALQKACAP_AQAALIKADD9BAAAswoAEP4EAACyCgAw_wQBAJYIACGFBUAAmAgAIZwFAQCWCAAhoQUQAMwJACGjBQAAgAqjBSKkBRAAzAkAIaUFEADMCQAhpgUQAMwJACGnBQEAlwgAIagFAQCXCAAhqQUBAJcIACGqBQAAxQgAIA_8BAAAsgoAMP0EAACzCgAQ_gQAALIKADD_BAEAlggAIYUFQACYCAAhnAUBAJYIACGhBRAAzAkAIaMFAACACqMFIqQFEADMCQAhpQUQAMwJACGmBRAAzAkAIacFAQCXCAAhqAUBAJcIACGpBQEAlwgAIaoFAADFCAAgC_8EAQCZCgAhhQVAAJsKACGcBQEAmQoAIaEFEACoCgAhowUAALUKowUipAUQAKgKACGlBRAAqAoAIaYFEACoCgAhpwUBAJoKACGoBQEAmgoAIaoFgAAAAAEBkgYAAACjBQINLAAAtwoAIC4AALgKACD_BAEAmQoAIYUFQACbCgAhnAUBAJkKACGhBRAAqAoAIaMFAAC1CqMFIqQFEACoCgAhpQUQAKgKACGmBRAAqAoAIacFAQCaCgAhqAUBAJoKACGqBYAAAAABBU4AAJ4UACBPAACkFAAgjwYAAJ8UACCQBgAAoxQAIJUGAAApACAHTgAAnBQAIE8AAKEUACCPBgAAnRQAIJAGAACgFAAgkwYAABYAIJQGAAAWACCVBgAAGAAgDSwAALoKACAuAAC7CgAg_wQBAAAAAYUFQAAAAAGcBQEAAAABoQUQAAAAAaMFAAAAowUCpAUQAAAAAaUFEAAAAAGmBRAAAAABpwUBAAAAAagFAQAAAAGqBYAAAAABA04AAJ4UACCPBgAAnxQAIJUGAAApACADTgAAnBQAII8GAACdFAAglQYAABgAIA0wAAC9CgAg_wQBAAAAAYAFAQAAAAGBBQEAAAABgwUBAAAAAYQFAQAAAAGFBUAAAAABhgVAAAAAAYcFQAAAAAGXBQEAAAABmAUBAAAAAZkFAQAAAAGbBRAAAAABBE4AAKsKADCPBgAArAoAMJEGAACuCgAglQYAAK8KADAETgAAngoAMI8GAACfCgAwkQYAAKEKACCVBgAAogoAMAABkwUBAAAAAQAAAAAAB04AAJcUACBPAACaFAAgjwYAAJgUACCQBgAAmRQAIJMGAACOAQAglAYAAI4BACCVBgAA8AcAIANOAACXFAAgjwYAAJgUACCVBgAA8AcAIAAAAAAAAZIGAAAAnwUCBU4AAJIUACBPAACVFAAgjwYAAJMUACCQBgAAlBQAIJUGAAApACADTgAAkhQAII8GAACTFAAglQYAACkAIAAAAAAAB04AAI0UACBPAACQFAAgjwYAAI4UACCQBgAAjxQAIJMGAACMAQAglAYAAIwBACCVBgAAkQEAIANOAACNFAAgjwYAAI4UACCVBgAAkQEAIAAAAAAAB04AAIAUACBPAACLFAAgjwYAAIEUACCQBgAAihQAIJMGAAAhACCUBgAAIQAglQYAAKQGACAFTgAA_hMAIE8AAIgUACCPBgAA_xMAIJAGAACHFAAglQYAAAwAIAVOAAD8EwAgTwAAhRQAII8GAAD9EwAgkAYAAIQUACCVBgAAZQAgC04AAO0KADBPAADxCgAwjwYAAO4KADCQBgAA7woAMJEGAADwCgAgkgYAAK8KADCTBgAArwoAMJQGAACvCgAwlQYAAK8KADCWBgAA8goAMJcGAACyCgAwC04AAOEKADBPAADmCgAwjwYAAOIKADCQBgAA4woAMJEGAADkCgAgkgYAAOUKADCTBgAA5QoAMJQGAADlCgAwlQYAAOUKADCWBgAA5woAMJcGAADoCgAwBf8EAQAAAAGFBUAAAAABnQUQAAAAAZ8FAAAAnwUCoAVAAAAAAQIAAACHAQAgTgAA7AoAIAMAAACHAQAgTgAA7AoAIE8AAOsKACABSQAAgxQAMAosAADRCQAg_AQAAM8JADD9BAAAhQEAEP4EAADPCQAw_wQBAAAAAYUFQACYCAAhnAUBAJYIACGdBRAAzAkAIZ8FAADQCZ8FIqAFQACYCAAhAgAAAIcBACBJAADrCgAgAgAAAOkKACBJAADqCgAgCfwEAADoCgAw_QQAAOkKABD-BAAA6AoAMP8EAQCWCAAhhQVAAJgIACGcBQEAlggAIZ0FEADMCQAhnwUAANAJnwUioAVAAJgIACEJ_AQAAOgKADD9BAAA6QoAEP4EAADoCgAw_wQBAJYIACGFBUAAmAgAIZwFAQCWCAAhnQUQAMwJACGfBQAA0AmfBSKgBUAAmAgAIQX_BAEAmQoAIYUFQACbCgAhnQUQAKgKACGfBQAAzQqfBSKgBUAAmwoAIQX_BAEAmQoAIYUFQACbCgAhnQUQAKgKACGfBQAAzQqfBSKgBUAAmwoAIQX_BAEAAAABhQVAAAAAAZ0FEAAAAAGfBQAAAJ8FAqAFQAAAAAENLgAAuwoAIDEAANYKACD_BAEAAAABhQVAAAAAAaEFEAAAAAGjBQAAAKMFAqQFEAAAAAGlBRAAAAABpgUQAAAAAacFAQAAAAGoBQEAAAABqQUBAAAAAaoFgAAAAAECAAAAHwAgTgAA9QoAIAMAAAAfACBOAAD1CgAgTwAA9AoAIAFJAACCFAAwAgAAAB8AIEkAAPQKACACAAAAswoAIEkAAPMKACAL_wQBAJkKACGFBUAAmwoAIaEFEACoCgAhowUAALUKowUipAUQAKgKACGlBRAAqAoAIaYFEACoCgAhpwUBAJoKACGoBQEAmgoAIakFAQCaCgAhqgWAAAAAAQ0uAAC4CgAgMQAA1QoAIP8EAQCZCgAhhQVAAJsKACGhBRAAqAoAIaMFAAC1CqMFIqQFEACoCgAhpQUQAKgKACGmBRAAqAoAIacFAQCaCgAhqAUBAJoKACGpBQEAmgoAIaoFgAAAAAENLgAAuwoAIDEAANYKACD_BAEAAAABhQVAAAAAAaEFEAAAAAGjBQAAAKMFAqQFEAAAAAGlBRAAAAABpgUQAAAAAacFAQAAAAGoBQEAAAABqQUBAAAAAaoFgAAAAAEDTgAAgBQAII8GAACBFAAglQYAAKQGACADTgAA_hMAII8GAAD_EwAglQYAAAwAIANOAAD8EwAgjwYAAP0TACCVBgAAZQAgBE4AAO0KADCPBgAA7goAMJEGAADwCgAglQYAAK8KADAETgAA4QoAMI8GAADiCgAwkQYAAOQKACCVBgAA5QoAMAAAAAtOAACsCwAwTwAAsQsAMI8GAACtCwAwkAYAAK4LADCRBgAArwsAIJIGAACwCwAwkwYAALALADCUBgAAsAsAMJUGAACwCwAwlgYAALILADCXBgAAswsAMAtOAACACwAwTwAAhQsAMI8GAACBCwAwkAYAAIILADCRBgAAgwsAIJIGAACECwAwkwYAAIQLADCUBgAAhAsAMJUGAACECwAwlgYAAIYLADCXBgAAhwsAMAsJAACrCwAgMgAAqgsAIP8EAQAAAAGABQEAAAABgQUBAAAAAYIFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABtgUgAAAAAQIAAAAUACBOAACpCwAgAwAAABQAIE4AAKkLACBPAACLCwAgAUkAAPsTADAQCQAAhwoAIDIAAMgJACAzAACJCgAg_AQAAIgKADD9BAAAEgAQ_gQAAIgKADD_BAEAAAABgAUBAJYIACGBBQEAlwgAIYIFAQCXCAAhhAUBAJcIACGFBUAAmAgAIYYFQACYCAAhhwVAAJkIACG2BSAA1wgAIbcFAQCXCAAhAgAAABQAIEkAAIsLACACAAAAiAsAIEkAAIkLACAN_AQAAIcLADD9BAAAiAsAEP4EAACHCwAw_wQBAJYIACGABQEAlggAIYEFAQCXCAAhggUBAJcIACGEBQEAlwgAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIbYFIADXCAAhtwUBAJcIACEN_AQAAIcLADD9BAAAiAsAEP4EAACHCwAw_wQBAJYIACGABQEAlggAIYEFAQCXCAAhggUBAJcIACGEBQEAlwgAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIbYFIADXCAAhtwUBAJcIACEJ_wQBAJkKACGABQEAmQoAIYEFAQCaCgAhggUBAJoKACGEBQEAmgoAIYUFQACbCgAhhgVAAJsKACGHBUAAnAoAIbYFIACKCwAhAZIGIAAAAAELCQAAjQsAIDIAAIwLACD_BAEAmQoAIYAFAQCZCgAhgQUBAJoKACGCBQEAmgoAIYQFAQCaCgAhhQVAAJsKACGGBUAAmwoAIYcFQACcCgAhtgUgAIoLACELTgAAjgsAME8AAJMLADCPBgAAjwsAMJAGAACQCwAwkQYAAJELACCSBgAAkgsAMJMGAACSCwAwlAYAAJILADCVBgAAkgsAMJYGAACUCwAwlwYAAJULADAHTgAA7xMAIE8AAPkTACCPBgAA8BMAIJAGAAD4EwAgkwYAABsAIJQGAAAbACCVBgAAngEAIBEJAACnCwAgMAAAqAsAIP8EAQAAAAGABQEAAAABgQUBAAAAAYIFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABlwUBAAAAAZgFAQAAAAGZBQEAAAABmwUQAAAAAaMFAAAAowUCtgUgAAAAAbkFAAAAuQUCAgAAABgAIE4AAKYLACADAAAAGAAgTgAApgsAIE8AAJoLACABSQAA9xMAMBYIAACGCgAgCQAAhwoAIDAAAM4JACD8BAAAgwoAMP0EAAAWABD-BAAAgwoAMP8EAQAAAAGABQEAlggAIYEFAQCXCAAhggUBAJcIACGEBQEAlwgAIYUFQACYCAAhhgVAAJgIACGHBUAAmQgAIZcFAQCWCAAhmAUBAAAAAZkFAQAAAAGaBQEAlwgAIZsFEACFCgAhowUAAIAKowUitgUgANcIACG5BQAAhAq5BSICAAAAGAAgSQAAmgsAIAIAAACWCwAgSQAAlwsAIBP8BAAAlQsAMP0EAACWCwAQ_gQAAJULADD_BAEAlggAIYAFAQCWCAAhgQUBAJcIACGCBQEAlwgAIYQFAQCXCAAhhQVAAJgIACGGBUAAmAgAIYcFQACZCAAhlwUBAJYIACGYBQEAlwgAIZkFAQCXCAAhmgUBAJcIACGbBRAAhQoAIaMFAACACqMFIrYFIADXCAAhuQUAAIQKuQUiE_wEAACVCwAw_QQAAJYLABD-BAAAlQsAMP8EAQCWCAAhgAUBAJYIACGBBQEAlwgAIYIFAQCXCAAhhAUBAJcIACGFBUAAmAgAIYYFQACYCAAhhwVAAJkIACGXBQEAlggAIZgFAQCXCAAhmQUBAJcIACGaBQEAlwgAIZsFEACFCgAhowUAAIAKowUitgUgANcIACG5BQAAhAq5BSIP_wQBAJkKACGABQEAmQoAIYEFAQCaCgAhggUBAJoKACGEBQEAmgoAIYUFQACbCgAhhgVAAJsKACGHBUAAnAoAIZcFAQCZCgAhmAUBAJoKACGZBQEAmgoAIZsFEACZCwAhowUAALUKowUitgUgAIoLACG5BQAAmAu5BSIBkgYAAAC5BQIFkgYQAAAAAZkGEAAAAAGaBhAAAAABmwYQAAAAAZwGEAAAAAERCQAAmwsAIDAAAJwLACD_BAEAmQoAIYAFAQCZCgAhgQUBAJoKACGCBQEAmgoAIYQFAQCaCgAhhQVAAJsKACGGBUAAmwoAIYcFQACcCgAhlwUBAJkKACGYBQEAmgoAIZkFAQCaCgAhmwUQAJkLACGjBQAAtQqjBSK2BSAAigsAIbkFAACYC7kFIgdOAADxEwAgTwAA9RMAII8GAADyEwAgkAYAAPQTACCTBgAAGwAglAYAABsAIJUGAACeAQAgC04AAJ0LADBPAAChCwAwjwYAAJ4LADCQBgAAnwsAMJEGAACgCwAgkgYAAK8KADCTBgAArwoAMJQGAACvCgAwlQYAAK8KADCWBgAAogsAMJcGAACyCgAwDSwAALoKACAxAADWCgAg_wQBAAAAAYUFQAAAAAGcBQEAAAABoQUQAAAAAaMFAAAAowUCpAUQAAAAAaUFEAAAAAGmBRAAAAABpwUBAAAAAakFAQAAAAGqBYAAAAABAgAAAB8AIE4AAKULACADAAAAHwAgTgAApQsAIE8AAKQLACABSQAA8xMAMAIAAAAfACBJAACkCwAgAgAAALMKACBJAACjCwAgC_8EAQCZCgAhhQVAAJsKACGcBQEAmQoAIaEFEACoCgAhowUAALUKowUipAUQAKgKACGlBRAAqAoAIaYFEACoCgAhpwUBAJoKACGpBQEAmgoAIaoFgAAAAAENLAAAtwoAIDEAANUKACD_BAEAmQoAIYUFQACbCgAhnAUBAJkKACGhBRAAqAoAIaMFAAC1CqMFIqQFEACoCgAhpQUQAKgKACGmBRAAqAoAIacFAQCaCgAhqQUBAJoKACGqBYAAAAABDSwAALoKACAxAADWCgAg_wQBAAAAAYUFQAAAAAGcBQEAAAABoQUQAAAAAaMFAAAAowUCpAUQAAAAAaUFEAAAAAGmBRAAAAABpwUBAAAAAakFAQAAAAGqBYAAAAABEQkAAKcLACAwAACoCwAg_wQBAAAAAYAFAQAAAAGBBQEAAAABggUBAAAAAYQFAQAAAAGFBUAAAAABhgVAAAAAAYcFQAAAAAGXBQEAAAABmAUBAAAAAZkFAQAAAAGbBRAAAAABowUAAACjBQK2BSAAAAABuQUAAAC5BQIDTgAA8RMAII8GAADyEwAglQYAAJ4BACAETgAAnQsAMI8GAACeCwAwkQYAAKALACCVBgAArwoAMAsJAACrCwAgMgAAqgsAIP8EAQAAAAGABQEAAAABgQUBAAAAAYIFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABtgUgAAAAAQROAACOCwAwjwYAAI8LADCRBgAAkQsAIJUGAACSCwAwA04AAO8TACCPBgAA8BMAIJUGAACeAQAgChgAAIMNACAiAACADQAgNQAAgQ0AIDYAAIINACD_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAABuwUBAAAAAdkFAQAAAAECAAAAEAAgTgAA_wwAIAMAAAAQACBOAAD_DAAgTwAAtgsAIAFJAADuEwAwEBgAAOwJACAiAADfCQAgMwAAjAoAIDUAAI0KACA2AAD7CAAg_AQAAIsKADD9BAAADgAQ_gQAAIsKADD_BAEAAAABgAUBAJYIACGFBUAAmAgAIYYFQACYCAAhtwUBAJYIACG7BQEAlggAIdkFAQCWCAAhjAYAAIoKACACAAAAEAAgSQAAtgsAIAIAAAC0CwAgSQAAtQsAIAr8BAAAswsAMP0EAAC0CwAQ_gQAALMLADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIbcFAQCWCAAhuwUBAJYIACHZBQEAlggAIQr8BAAAswsAMP0EAAC0CwAQ_gQAALMLADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIbcFAQCWCAAhuwUBAJYIACHZBQEAlggAIQb_BAEAmQoAIYAFAQCZCgAhhQVAAJsKACGGBUAAmwoAIbsFAQCZCgAh2QUBAJkKACEKGAAAugsAICIAALcLACA1AAC4CwAgNgAAuQsAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhuwUBAJkKACHZBQEAmQoAIQVOAACXEwAgTwAA7BMAII8GAACYEwAgkAYAAOsTACCVBgAALgAgC04AAPMLADBPAAD4CwAwjwYAAPQLADCQBgAA9QsAMJEGAAD2CwAgkgYAAPcLADCTBgAA9wsAMJQGAAD3CwAwlQYAAPcLADCWBgAA-QsAMJcGAAD6CwAwC04AAOQLADBPAADpCwAwjwYAAOULADCQBgAA5gsAMJEGAADnCwAgkgYAAOgLADCTBgAA6AsAMJQGAADoCwAwlQYAAOgLADCWBgAA6gsAMJcGAADrCwAwB04AALsLACBPAAC-CwAgjwYAALwLACCQBgAAvQsAIJMGAAA8ACCUBgAAPAAglQYAAMEDACAJFAAA4QsAIBYAAOILACAcAADjCwAg_wQBAAAAAYUFQAAAAAGGBUAAAAAB7gVAAAAAAfAFQAAAAAHxBQEAAAABAgAAAMEDACBOAAC7CwAgAwAAADwAIE4AALsLACBPAAC_CwAgCwAAADwAIBQAAMALACAWAADBCwAgHAAAwgsAIEkAAL8LACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHuBUAAmwoAIfAFQACbCgAh8QUBAJkKACEJFAAAwAsAIBYAAMELACAcAADCCwAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh7gVAAJsKACHwBUAAmwoAIfEFAQCZCgAhBU4AANUTACBPAADpEwAgjwYAANYTACCQBgAA6BMAIJUGAAA6ACALTgAA0wsAME8AANgLADCPBgAA1AsAMJAGAADVCwAwkQYAANYLACCSBgAA1wsAMJMGAADXCwAwlAYAANcLADCVBgAA1wsAMJYGAADZCwAwlwYAANoLADALTgAAwwsAME8AAMgLADCPBgAAxAsAMJAGAADFCwAwkQYAAMYLACCSBgAAxwsAMJMGAADHCwAwlAYAAMcLADCVBgAAxwsAMJYGAADJCwAwlwYAAMoLADAHEQAA0QsAIBsAANILACD_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAAB6QUBAAAAAQIAAABHACBOAADQCwAgAwAAAEcAIE4AANALACBPAADNCwAgAUkAAOcTADAMEQAAtgkAIBgAAOwJACAbAADtCQAg_AQAAOsJADD9BAAARQAQ_gQAAOsJADD_BAEAAAABgwUBAAAAAYUFQACYCAAhhgVAAJgIACHoBQEAlwgAIekFAQAAAAECAAAARwAgSQAAzQsAIAIAAADLCwAgSQAAzAsAIAn8BAAAygsAMP0EAADLCwAQ_gQAAMoLADD_BAEAlggAIYMFAQCXCAAhhQVAAJgIACGGBUAAmAgAIegFAQCXCAAh6QUBAJcIACEJ_AQAAMoLADD9BAAAywsAEP4EAADKCwAw_wQBAJYIACGDBQEAlwgAIYUFQACYCAAhhgVAAJgIACHoBQEAlwgAIekFAQCXCAAhBf8EAQCZCgAhgwUBAJoKACGFBUAAmwoAIYYFQACbCgAh6QUBAJoKACEHEQAAzgsAIBsAAM8LACD_BAEAmQoAIYMFAQCaCgAhhQVAAJsKACGGBUAAmwoAIekFAQCaCgAhB04AAN8TACBPAADlEwAgjwYAAOATACCQBgAA5BMAIJMGAABKACCUBgAASgAglQYAAGUAIAdOAADdEwAgTwAA4hMAII8GAADeEwAgkAYAAOETACCTBgAATAAglAYAAEwAIJUGAABRACAHEQAA0QsAIBsAANILACD_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAAB6QUBAAAAAQNOAADfEwAgjwYAAOATACCVBgAAZQAgA04AAN0TACCPBgAA3hMAIJUGAABRACAGEwAA4AsAIP8EAQAAAAGFBUAAAAABhgVAAAAAAeoFAQAAAAHuBUAAAAABAgAAAEAAIE4AAN8LACADAAAAQAAgTgAA3wsAIE8AAN0LACABSQAA3BMAMAsTAADvCQAgFwAA7AkAIPwEAADuCQAw_QQAAD4AEP4EAADuCQAw_wQBAAAAAYUFQACYCAAhhgVAAJgIACHqBQEAlggAIe4FQACYCAAh7wUBAJcIACECAAAAQAAgSQAA3QsAIAIAAADbCwAgSQAA3AsAIAn8BAAA2gsAMP0EAADbCwAQ_gQAANoLADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACHqBQEAlggAIe4FQACYCAAh7wUBAJcIACEJ_AQAANoLADD9BAAA2wsAEP4EAADaCwAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAh6gUBAJYIACHuBUAAmAgAIe8FAQCXCAAhBf8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIeoFAQCZCgAh7gVAAJsKACEGEwAA3gsAIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIeoFAQCZCgAh7gVAAJsKACEFTgAA1xMAIE8AANoTACCPBgAA2BMAIJAGAADZEwAglQYAAF0AIAYTAADgCwAg_wQBAAAAAYUFQAAAAAGGBUAAAAAB6gUBAAAAAe4FQAAAAAEDTgAA1xMAII8GAADYEwAglQYAAF0AIANOAADVEwAgjwYAANYTACCVBgAAOgAgBE4AANMLADCPBgAA1AsAMJEGAADWCwAglQYAANcLADAETgAAwwsAMI8GAADECwAwkQYAAMYLACCVBgAAxwsAMAQlAADyCwAg_wQBAAAAAd0FAAAA4AUC4QUBAAAAAQIAAAB8ACBOAADxCwAgAwAAAHwAIE4AAPELACBPAADvCwAgAUkAANQTADAKJQAA1QkAICgAAI8JACD8BAAA0wkAMP0EAAB6ABD-BAAA0wkAMP8EAQAAAAHdBQAA1AngBSLgBQEAlggAIeEFAQCWCAAhhwYAANIJACACAAAAfAAgSQAA7wsAIAIAAADsCwAgSQAA7QsAIAf8BAAA6wsAMP0EAADsCwAQ_gQAAOsLADD_BAEAlggAId0FAADUCeAFIuAFAQCWCAAh4QUBAJYIACEH_AQAAOsLADD9BAAA7AsAEP4EAADrCwAw_wQBAJYIACHdBQAA1AngBSLgBQEAlggAIeEFAQCWCAAhA_8EAQCZCgAh3QUAAO4L4AUi4QUBAJkKACEBkgYAAADgBQIEJQAA8AsAIP8EAQCZCgAh3QUAAO4L4AUi4QUBAJkKACEFTgAAzxMAIE8AANITACCPBgAA0BMAIJAGAADREwAglQYAAOYEACAEJQAA8gsAIP8EAQAAAAHdBQAAAOAFAuEFAQAAAAEDTgAAzxMAII8GAADQEwAglQYAAOYEACAMMgAA-gwAIDQAAPsMACA3AAD5DAAgOAAA_AwAIDkAAP0MACA6AAD-DAAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAfoFAQAAAAH7BQEAAAABAgAAAJ4BACBOAAD4DAAgAwAAAJ4BACBOAAD4DAAgTwAA_QsAIAFJAADOEwAwERUAAI8JACAyAADICQAgNAAArQgAIDcAAOQIACA4AAD6CAAgOQAAyQkAIDoAAMoJACD8BAAAxwkAMP0EAAAbABD-BAAAxwkAMP8EAQAAAAGABQEAlggAIYUFQACYCAAhhgVAAJgIACHyBQEAlggAIfoFAQCWCAAh-wUBAJcIACECAAAAngEAIEkAAP0LACACAAAA-wsAIEkAAPwLACAK_AQAAPoLADD9BAAA-wsAEP4EAAD6CwAw_wQBAJYIACGABQEAlggAIYUFQACYCAAhhgVAAJgIACHyBQEAlggAIfoFAQCWCAAh-wUBAJcIACEK_AQAAPoLADD9BAAA-wsAEP4EAAD6CwAw_wQBAJYIACGABQEAlggAIYUFQACYCAAhhgVAAJgIACHyBQEAlggAIfoFAQCWCAAh-wUBAJcIACEG_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACH6BQEAmQoAIfsFAQCaCgAhDDIAAP8LACA0AACADAAgNwAA_gsAIDgAAIEMACA5AACCDAAgOgAAgwwAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAh-gUBAJkKACH7BQEAmgoAIQtOAADFDAAwTwAAygwAMI8GAADGDAAwkAYAAMcMADCRBgAAyAwAIJIGAADJDAAwkwYAAMkMADCUBgAAyQwAMJUGAADJDAAwlgYAAMsMADCXBgAAzAwAMAtOAAC6DAAwTwAAvgwAMI8GAAC7DAAwkAYAALwMADCRBgAAvQwAIJIGAACSCwAwkwYAAJILADCUBgAAkgsAMJUGAACSCwAwlgYAAL8MADCXBgAAlQsAMAtOAACvDAAwTwAAswwAMI8GAACwDAAwkAYAALEMADCRBgAAsgwAIJIGAACECwAwkwYAAIQLADCUBgAAhAsAMJUGAACECwAwlgYAALQMADCXBgAAhwsAMAtOAACgDAAwTwAApQwAMI8GAAChDAAwkAYAAKIMADCRBgAAowwAIJIGAACkDAAwkwYAAKQMADCUBgAApAwAMJUGAACkDAAwlgYAAKYMADCXBgAApwwAMAtOAACSDAAwTwAAlwwAMI8GAACTDAAwkAYAAJQMADCRBgAAlQwAIJIGAACWDAAwkwYAAJYMADCUBgAAlgwAMJUGAACWDAAwlgYAAJgMADCXBgAAmQwAMAtOAACEDAAwTwAAiQwAMI8GAACFDAAwkAYAAIYMADCRBgAAhwwAIJIGAACIDAAwkwYAAIgMADCUBgAAiAwAMJUGAACIDAAwlgYAAIoMADCXBgAAiwwAMAYKAACRDAAgtAUBAAAAAboFAQAAAAG7BQEAAAABvAUBAAAAAb0FAQAAAAECAAAArAEAIE4AAJAMACADAAAArAEAIE4AAJAMACBPAACODAAgAUkAAM0TADAMCQAAxAkAIAoAAMMJACD8BAAAwgkAMP0EAAAlABD-BAAAwgkAMIQFAQCWCAAhtAUBAAAAAboFAQCWCAAhuwUBAJYIACG8BQEAlggAIb0FAQCWCAAhhQYAAMEJACACAAAArAEAIEkAAI4MACACAAAAjAwAIEkAAI0MACAJ_AQAAIsMADD9BAAAjAwAEP4EAACLDAAwhAUBAJYIACG0BQEAlggAIboFAQCWCAAhuwUBAJYIACG8BQEAlggAIb0FAQCWCAAhCfwEAACLDAAw_QQAAIwMABD-BAAAiwwAMIQFAQCWCAAhtAUBAJYIACG6BQEAlggAIbsFAQCWCAAhvAUBAJYIACG9BQEAlggAIQW0BQEAmQoAIboFAQCZCgAhuwUBAJkKACG8BQEAmQoAIb0FAQCZCgAhBgoAAI8MACC0BQEAmQoAIboFAQCZCgAhuwUBAJkKACG8BQEAmQoAIb0FAQCZCgAhBU4AAMgTACBPAADLEwAgjwYAAMkTACCQBgAAyhMAIJUGAACkBgAgBgoAAJEMACC0BQEAAAABugUBAAAAAbsFAQAAAAG8BQEAAAABvQUBAAAAAQNOAADIEwAgjwYAAMkTACCVBgAApAYAIAcKAACfDAAgtAUBAAAAAbsFAQAAAAG9BQEAAAABvgUBAAAAAb8FAQAAAAHABQEAAAABAgAAAKkBACBOAACeDAAgAwAAAKkBACBOAACeDAAgTwAAnAwAIAFJAADHEwAwDQkAAMQJACAKAADDCQAg_AQAAMYJADD9BAAAIwAQ_gQAAMYJADCEBQEAlggAIbQFAQAAAAG7BQEAlwgAIb0FAQCWCAAhvgUBAJYIACG_BQEAlggAIcAFAQCWCAAhhgYAAMUJACACAAAAqQEAIEkAAJwMACACAAAAmgwAIEkAAJsMACAK_AQAAJkMADD9BAAAmgwAEP4EAACZDAAwhAUBAJYIACG0BQEAlggAIbsFAQCXCAAhvQUBAJYIACG-BQEAlggAIb8FAQCWCAAhwAUBAJYIACEK_AQAAJkMADD9BAAAmgwAEP4EAACZDAAwhAUBAJYIACG0BQEAlggAIbsFAQCXCAAhvQUBAJYIACG-BQEAlggAIb8FAQCWCAAhwAUBAJYIACEGtAUBAJkKACG7BQEAmgoAIb0FAQCZCgAhvgUBAJkKACG_BQEAmQoAIcAFAQCZCgAhBwoAAJ0MACC0BQEAmQoAIbsFAQCaCgAhvQUBAJkKACG-BQEAmQoAIb8FAQCZCgAhwAUBAJkKACEFTgAAwhMAIE8AAMUTACCPBgAAwxMAIJAGAADEEwAglQYAAKQGACAHCgAAnwwAILQFAQAAAAG7BQEAAAABvQUBAAAAAb4FAQAAAAG_BQEAAAABwAUBAAAAAQNOAADCEwAgjwYAAMMTACCVBgAApAYAIAQlAACuDAAg_wQBAAAAAd0FAAAA4wUC4QUBAAAAAQIAAAB4ACBOAACtDAAgAwAAAHgAIE4AAK0MACBPAACrDAAgAUkAAMETADAKCQAAxAkAICUAANUJACD8BAAA1wkAMP0EAAB2ABD-BAAA1wkAMP8EAQAAAAGEBQEAlggAId0FAADYCeMFIuEFAQCWCAAhiAYAANYJACACAAAAeAAgSQAAqwwAIAIAAACoDAAgSQAAqQwAIAf8BAAApwwAMP0EAACoDAAQ_gQAAKcMADD_BAEAlggAIYQFAQCWCAAh3QUAANgJ4wUi4QUBAJYIACEH_AQAAKcMADD9BAAAqAwAEP4EAACnDAAw_wQBAJYIACGEBQEAlggAId0FAADYCeMFIuEFAQCWCAAhA_8EAQCZCgAh3QUAAKoM4wUi4QUBAJkKACEBkgYAAADjBQIEJQAArAwAIP8EAQCZCgAh3QUAAKoM4wUi4QUBAJkKACEFTgAAvBMAIE8AAL8TACCPBgAAvRMAIJAGAAC-EwAglQYAAOYEACAEJQAArgwAIP8EAQAAAAHdBQAAAOMFAuEFAQAAAAEDTgAAvBMAII8GAAC9EwAglQYAAOYEACALMgAAqgsAIDMAALkMACD_BAEAAAABgAUBAAAAAYEFAQAAAAGCBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABtgUgAAAAAbcFAQAAAAECAAAAFAAgTgAAuAwAIAMAAAAUACBOAAC4DAAgTwAAtgwAIAFJAAC7EwAwAgAAABQAIEkAALYMACACAAAAiAsAIEkAALUMACAJ_wQBAJkKACGABQEAmQoAIYEFAQCaCgAhggUBAJoKACGFBUAAmwoAIYYFQACbCgAhhwVAAJwKACG2BSAAigsAIbcFAQCaCgAhCzIAAIwLACAzAAC3DAAg_wQBAJkKACGABQEAmQoAIYEFAQCaCgAhggUBAJoKACGFBUAAmwoAIYYFQACbCgAhhwVAAJwKACG2BSAAigsAIbcFAQCaCgAhB04AALYTACBPAAC5EwAgjwYAALcTACCQBgAAuBMAIJMGAACXAQAglAYAAJcBACCVBgAAigcAIAsyAACqCwAgMwAAuQwAIP8EAQAAAAGABQEAAAABgQUBAAAAAYIFAQAAAAGFBUAAAAABhgVAAAAAAYcFQAAAAAG2BSAAAAABtwUBAAAAAQNOAAC2EwAgjwYAALcTACCVBgAAigcAIBEIAADEDAAgMAAAqAsAIP8EAQAAAAGABQEAAAABgQUBAAAAAYIFAQAAAAGFBUAAAAABhgVAAAAAAYcFQAAAAAGXBQEAAAABmAUBAAAAAZkFAQAAAAGaBQEAAAABmwUQAAAAAaMFAAAAowUCtgUgAAAAAbkFAAAAuQUCAgAAABgAIE4AAMMMACADAAAAGAAgTgAAwwwAIE8AAMEMACABSQAAtRMAMAIAAAAYACBJAADBDAAgAgAAAJYLACBJAADADAAgD_8EAQCZCgAhgAUBAJkKACGBBQEAmgoAIYIFAQCaCgAhhQVAAJsKACGGBUAAmwoAIYcFQACcCgAhlwUBAJkKACGYBQEAmgoAIZkFAQCaCgAhmgUBAJoKACGbBRAAmQsAIaMFAAC1CqMFIrYFIACKCwAhuQUAAJgLuQUiEQgAAMIMACAwAACcCwAg_wQBAJkKACGABQEAmQoAIYEFAQCaCgAhggUBAJoKACGFBUAAmwoAIYYFQACbCgAhhwVAAJwKACGXBQEAmQoAIZgFAQCaCgAhmQUBAJoKACGaBQEAmgoAIZsFEACZCwAhowUAALUKowUitgUgAIoLACG5BQAAmAu5BSIHTgAAsBMAIE8AALMTACCPBgAAsRMAIJAGAACyEwAgkwYAABIAIJQGAAASACCVBgAAFAAgEQgAAMQMACAwAACoCwAg_wQBAAAAAYAFAQAAAAGBBQEAAAABggUBAAAAAYUFQAAAAAGGBUAAAAABhwVAAAAAAZcFAQAAAAGYBQEAAAABmQUBAAAAAZoFAQAAAAGbBRAAAAABowUAAACjBQK2BSAAAAABuQUAAAC5BQIDTgAAsBMAII8GAACxEwAglQYAABQAIBANAAD3DAAgEQAA9QwAID4AAPMMACA_AAD0DAAgQAAA9gwAIP8EAQAAAAGABQEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAAB0AUBAAAAAdsFAAAA9wUC3gUBAAAAAfUFAQAAAAH4BQAAAPgFAvkFAQAAAAECAAAADAAgTgAA8gwAIAMAAAAMACBOAADyDAAgTwAA0QwAIAFJAACvEwAwFQkAAMQJACANAADICAAgEQAA-AgAID4AAJEKACA_AACSCgAgQAAA-QgAIPwEAACOCgAw_QQAAAoAEP4EAACOCgAw_wQBAAAAAYAFAQCWCAAhgwUBAAAAAYQFAQCWCAAhhQVAAJgIACGGBUAAmAgAIdAFAQCXCAAh2wUAAI8K9wUi3gUBAJcIACH1BQEAAAAB-AUAAJAK-AUi-QUBAJcIACECAAAADAAgSQAA0QwAIAIAAADNDAAgSQAAzgwAIA_8BAAAzAwAMP0EAADNDAAQ_gQAAMwMADD_BAEAlggAIYAFAQCWCAAhgwUBAJYIACGEBQEAlggAIYUFQACYCAAhhgVAAJgIACHQBQEAlwgAIdsFAACPCvcFIt4FAQCXCAAh9QUBAJcIACH4BQAAkAr4BSL5BQEAlwgAIQ_8BAAAzAwAMP0EAADNDAAQ_gQAAMwMADD_BAEAlggAIYAFAQCWCAAhgwUBAJYIACGEBQEAlggAIYUFQACYCAAhhgVAAJgIACHQBQEAlwgAIdsFAACPCvcFIt4FAQCXCAAh9QUBAJcIACH4BQAAkAr4BSL5BQEAlwgAIQv_BAEAmQoAIYAFAQCZCgAhgwUBAJkKACGFBUAAmwoAIYYFQACbCgAh0AUBAJoKACHbBQAAzwz3BSLeBQEAmgoAIfUFAQCaCgAh-AUAANAM-AUi-QUBAJoKACEBkgYAAAD3BQIBkgYAAAD4BQIQDQAA1gwAIBEAANQMACA-AADSDAAgPwAA0wwAIEAAANUMACD_BAEAmQoAIYAFAQCZCgAhgwUBAJkKACGFBUAAmwoAIYYFQACbCgAh0AUBAJoKACHbBQAAzwz3BSLeBQEAmgoAIfUFAQCaCgAh-AUAANAM-AUi-QUBAJoKACEHTgAAnRMAIE8AAK0TACCPBgAAnhMAIJAGAACsEwAgkwYAALQBACCUBgAAtAEAIJUGAAC3AQAgB04AAJsTACBPAACqEwAgjwYAAJwTACCQBgAAqRMAIJMGAAC8AQAglAYAALwBACCVBgAAzAUAIAVOAACZEwAgTwAApxMAII8GAACaEwAgkAYAAKYTACCVBgAAZQAgC04AAOMMADBPAADoDAAwjwYAAOQMADCQBgAA5QwAMJEGAADmDAAgkgYAAOcMADCTBgAA5wwAMJQGAADnDAAwlQYAAOcMADCWBgAA6QwAMJcGAADqDAAwC04AANcMADBPAADcDAAwjwYAANgMADCQBgAA2QwAMJEGAADaDAAgkgYAANsMADCTBgAA2wwAMJQGAADbDAAwlQYAANsMADCWBgAA3QwAMJcGAADeDAAwDgoAAPYKACAkAAD4CgAgKwAA-QoAIC0AAPoKACD_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAABpQUQAAAAAacFAQAAAAGxBQEAAAABsgWAAAAAAbMFQAAAAAG0BQEAAAABAgAAACkAIE4AAOIMACADAAAAKQAgTgAA4gwAIE8AAOEMACABSQAApRMAMBMKAAD9CQAgDgAA3AkAICQAAPgIACArAADOCQAgLQAA_gkAIPwEAAD8CQAw_QQAACcAEP4EAAD8CQAw_wQBAAAAAYMFAQCWCAAhhQVAAJgIACGGBUAAmAgAIaUFEADMCQAhpwUBAJcIACGxBQEAAAABsgUAAMUIACCzBUAAmQgAIbQFAQCXCAAhtQUBAJYIACECAAAAKQAgSQAA4QwAIAIAAADfDAAgSQAA4AwAIA78BAAA3gwAMP0EAADfDAAQ_gQAAN4MADD_BAEAlggAIYMFAQCWCAAhhQVAAJgIACGGBUAAmAgAIaUFEADMCQAhpwUBAJcIACGxBQEAlggAIbIFAADFCAAgswVAAJkIACG0BQEAlwgAIbUFAQCWCAAhDvwEAADeDAAw_QQAAN8MABD-BAAA3gwAMP8EAQCWCAAhgwUBAJYIACGFBUAAmAgAIYYFQACYCAAhpQUQAMwJACGnBQEAlwgAIbEFAQCWCAAhsgUAAMUIACCzBUAAmQgAIbQFAQCXCAAhtQUBAJYIACEK_wQBAJkKACGDBQEAmQoAIYUFQACbCgAhhgVAAJsKACGlBRAAqAoAIacFAQCaCgAhsQUBAJkKACGyBYAAAAABswVAAJwKACG0BQEAmgoAIQ4KAADcCgAgJAAA3goAICsAAN8KACAtAADgCgAg_wQBAJkKACGDBQEAmQoAIYUFQACbCgAhhgVAAJsKACGlBRAAqAoAIacFAQCaCgAhsQUBAJkKACGyBYAAAAABswVAAJwKACG0BQEAmgoAIQ4KAAD2CgAgJAAA-AoAICsAAPkKACAtAAD6CgAg_wQBAAAAAYMFAQAAAAGFBUAAAAABhgVAAAAAAaUFEAAAAAGnBQEAAAABsQUBAAAAAbIFgAAAAAGzBUAAAAABtAUBAAAAAQQlAADxDAAg_wQBAAAAAd0FAAAA5AUC4QUBAAAAAQIAAAB0ACBOAADwDAAgAwAAAHQAIE4AAPAMACBPAADuDAAgAUkAAKQTADAKDgAA3AkAICUAANUJACD8BAAA2gkAMP0EAAByABD-BAAA2gkAMP8EAQAAAAG1BQEAlggAId0FAADbCeQFIuEFAQCWCAAhiQYAANkJACACAAAAdAAgSQAA7gwAIAIAAADrDAAgSQAA7AwAIAf8BAAA6gwAMP0EAADrDAAQ_gQAAOoMADD_BAEAlggAIbUFAQCWCAAh3QUAANsJ5AUi4QUBAJYIACEH_AQAAOoMADD9BAAA6wwAEP4EAADqDAAw_wQBAJYIACG1BQEAlggAId0FAADbCeQFIuEFAQCWCAAhA_8EAQCZCgAh3QUAAO0M5AUi4QUBAJkKACEBkgYAAADkBQIEJQAA7wwAIP8EAQCZCgAh3QUAAO0M5AUi4QUBAJkKACEFTgAAnxMAIE8AAKITACCPBgAAoBMAIJAGAAChEwAglQYAAOYEACAEJQAA8QwAIP8EAQAAAAHdBQAAAOQFAuEFAQAAAAEDTgAAnxMAII8GAACgEwAglQYAAOYEACAQDQAA9wwAIBEAAPUMACA-AADzDAAgPwAA9AwAIEAAAPYMACD_BAEAAAABgAUBAAAAAYMFAQAAAAGFBUAAAAABhgVAAAAAAdAFAQAAAAHbBQAAAPcFAt4FAQAAAAH1BQEAAAAB-AUAAAD4BQL5BQEAAAABA04AAJ0TACCPBgAAnhMAIJUGAAC3AQAgA04AAJsTACCPBgAAnBMAIJUGAADMBQAgA04AAJkTACCPBgAAmhMAIJUGAABlACAETgAA4wwAMI8GAADkDAAwkQYAAOYMACCVBgAA5wwAMAROAADXDAAwjwYAANgMADCRBgAA2gwAIJUGAADbDAAwDDIAAPoMACA0AAD7DAAgNwAA-QwAIDgAAPwMACA5AAD9DAAgOgAA_gwAIP8EAQAAAAGABQEAAAABhQVAAAAAAYYFQAAAAAH6BQEAAAAB-wUBAAAAAQROAADFDAAwjwYAAMYMADCRBgAAyAwAIJUGAADJDAAwBE4AALoMADCPBgAAuwwAMJEGAAC9DAAglQYAAJILADAETgAArwwAMI8GAACwDAAwkQYAALIMACCVBgAAhAsAMAROAACgDAAwjwYAAKEMADCRBgAAowwAIJUGAACkDAAwBE4AAJIMADCPBgAAkwwAMJEGAACVDAAglQYAAJYMADAETgAAhAwAMI8GAACFDAAwkQYAAIcMACCVBgAAiAwAMAoYAACDDQAgIgAAgA0AIDUAAIENACA2AACCDQAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAbsFAQAAAAHZBQEAAAABA04AAJcTACCPBgAAmBMAIJUGAAAuACAETgAA8wsAMI8GAAD0CwAwkQYAAPYLACCVBgAA9wsAMAROAADkCwAwjwYAAOULADCRBgAA5wsAIJUGAADoCwAwA04AALsLACCPBgAAvAsAIJUGAADBAwAgBE4AAKwLADCPBgAArQsAMJEGAACvCwAglQYAALALADAETgAAgAsAMI8GAACBCwAwkQYAAIMLACCVBgAAhAsAMAAAAZMFAQAAAAEAAAAAAAAAAAAAAAVOAACSEwAgTwAAlRMAII8GAACTEwAgkAYAAJQTACCVBgAAngEAIANOAACSEwAgjwYAAJMTACCVBgAAngEAIAAAAAVOAACNEwAgTwAAkBMAII8GAACOEwAgkAYAAI8TACCVBgAAngEAIANOAACNEwAgjwYAAI4TACCVBgAAngEAIAAAAAGSBiAAAAABAZIGAAAAwwUCB04AALENACBPAAC0DQAgjwYAALINACCQBgAAsw0AIJMGAAAjACCUBgAAIwAglQYAAKkBACAHTgAArA0AIE8AAK8NACCPBgAArQ0AIJAGAACuDQAgkwYAACUAIJQGAAAlACCVBgAArAEAIAtOAACjDQAwTwAApw0AMI8GAACkDQAwkAYAAKUNADCRBgAApg0AIJIGAADbDAAwkwYAANsMADCUBgAA2wwAMJUGAADbDAAwlgYAAKgNADCXBgAA3gwAMA4OAAD3CgAgJAAA-AoAICsAAPkKACAtAAD6CgAg_wQBAAAAAYMFAQAAAAGFBUAAAAABhgVAAAAAAaUFEAAAAAGnBQEAAAABsQUBAAAAAbIFgAAAAAGzBUAAAAABtQUBAAAAAQIAAAApACBOAACrDQAgAwAAACkAIE4AAKsNACBPAACqDQAgAUkAAIwTADACAAAAKQAgSQAAqg0AIAIAAADfDAAgSQAAqQ0AIAr_BAEAmQoAIYMFAQCZCgAhhQVAAJsKACGGBUAAmwoAIaUFEACoCgAhpwUBAJoKACGxBQEAmQoAIbIFgAAAAAGzBUAAnAoAIbUFAQCZCgAhDg4AAN0KACAkAADeCgAgKwAA3woAIC0AAOAKACD_BAEAmQoAIYMFAQCZCgAhhQVAAJsKACGGBUAAmwoAIaUFEACoCgAhpwUBAJoKACGxBQEAmQoAIbIFgAAAAAGzBUAAnAoAIbUFAQCZCgAhDg4AAPcKACAkAAD4CgAgKwAA-QoAIC0AAPoKACD_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAABpQUQAAAAAacFAQAAAAGxBQEAAAABsgWAAAAAAbMFQAAAAAG1BQEAAAABBgkAAJUNACCEBQEAAAABugUBAAAAAbsFAQAAAAG8BQEAAAABvQUBAAAAAQIAAACsAQAgTgAArA0AIAMAAAAlACBOAACsDQAgTwAAsA0AIAgAAAAlACAJAACUDQAgSQAAsA0AIIQFAQCZCgAhugUBAJkKACG7BQEAmQoAIbwFAQCZCgAhvQUBAJkKACEGCQAAlA0AIIQFAQCZCgAhugUBAJkKACG7BQEAmQoAIbwFAQCZCgAhvQUBAJkKACEHCQAAmg0AIIQFAQAAAAG7BQEAAAABvQUBAAAAAb4FAQAAAAG_BQEAAAABwAUBAAAAAQIAAACpAQAgTgAAsQ0AIAMAAAAjACBOAACxDQAgTwAAtQ0AIAkAAAAjACAJAACZDQAgSQAAtQ0AIIQFAQCZCgAhuwUBAJoKACG9BQEAmQoAIb4FAQCZCgAhvwUBAJkKACHABQEAmQoAIQcJAACZDQAghAUBAJkKACG7BQEAmgoAIb0FAQCZCgAhvgUBAJkKACG_BQEAmQoAIcAFAQCZCgAhA04AALENACCPBgAAsg0AIJUGAACpAQAgA04AAKwNACCPBgAArQ0AIJUGAACsAQAgBE4AAKMNADCPBgAApA0AMJEGAACmDQAglQYAANsMADAECQAAvxEAIAoAAL4RACC7BQAAlQoAIJgGAADBEQAgAwkAAL8RACAKAAC-EQAgmAYAAMARACAAAZMFAQAAAAEAAAAAAAWSBgIAAAABmQYCAAAAAZoGAgAAAAGbBgIAAAABnAYCAAAAAQGTBQEAAAABAAAAAZIGAAAAygUCAZIGAAAAzAUCAZMFAQAAAAEAAAABkgYAAADSBQIFTgAAhxMAIE8AAIoTACCPBgAAiBMAIJAGAACJEwAglQYAAC4AIANOAACHEwAgjwYAAIgTACCVBgAALgAgAAAAAZIGAAAA2wUCC04AAOUNADBPAADpDQAwjwYAAOYNADCQBgAA5w0AMJEGAADoDQAgkgYAAMkMADCTBgAAyQwAMJQGAADJDAAwlQYAAMkMADCWBgAA6g0AMJcGAADMDAAwC04AANYNADBPAADbDQAwjwYAANcNADCQBgAA2A0AMJEGAADZDQAgkgYAANoNADCTBgAA2g0AMJQGAADaDQAwlQYAANoNADCWBgAA3A0AMJcGAADdDQAwBhEAAOQNACD_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAAB3QUAAADdBQICAAAAwwEAIE4AAOMNACADAAAAwwEAIE4AAOMNACBPAADhDQAgAUkAAIYTADALEQAAvgkAID8AAL0JACD8BAAAuwkAMP0EAAAIABD-BAAAuwkAMP8EAQAAAAGDBQEAAAABhQVAAJgIACGGBUAAmAgAId0FAAC8Cd0FIt4FAQCWCAAhAgAAAMMBACBJAADhDQAgAgAAAN4NACBJAADfDQAgCfwEAADdDQAw_QQAAN4NABD-BAAA3Q0AMP8EAQCWCAAhgwUBAJYIACGFBUAAmAgAIYYFQACYCAAh3QUAALwJ3QUi3gUBAJYIACEJ_AQAAN0NADD9BAAA3g0AEP4EAADdDQAw_wQBAJYIACGDBQEAlggAIYUFQACYCAAhhgVAAJgIACHdBQAAvAndBSLeBQEAlggAIQX_BAEAmQoAIYMFAQCZCgAhhQVAAJsKACGGBUAAmwoAId0FAADgDd0FIgGSBgAAAN0FAgYRAADiDQAg_wQBAJkKACGDBQEAmQoAIYUFQACbCgAhhgVAAJsKACHdBQAA4A3dBSIFTgAAgRMAIE8AAIQTACCPBgAAghMAIJAGAACDEwAglQYAAPMBACAGEQAA5A0AIP8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAHdBQAAAN0FAgNOAACBEwAgjwYAAIITACCVBgAA8wEAIBAJAADvDQAgDQAA9wwAIBEAAPUMACA-AADzDAAgQAAA9gwAIP8EAQAAAAGABQEAAAABgwUBAAAAAYQFAQAAAAGFBUAAAAABhgVAAAAAAdAFAQAAAAHbBQAAAPcFAvUFAQAAAAH4BQAAAPgFAvkFAQAAAAECAAAADAAgTgAA7g0AIAMAAAAMACBOAADuDQAgTwAA7A0AIAFJAACAEwAwAgAAAAwAIEkAAOwNACACAAAAzQwAIEkAAOsNACAL_wQBAJkKACGABQEAmQoAIYMFAQCZCgAhhAUBAJkKACGFBUAAmwoAIYYFQACbCgAh0AUBAJoKACHbBQAAzwz3BSL1BQEAmgoAIfgFAADQDPgFIvkFAQCaCgAhEAkAAO0NACANAADWDAAgEQAA1AwAID4AANIMACBAAADVDAAg_wQBAJkKACGABQEAmQoAIYMFAQCZCgAhhAUBAJkKACGFBUAAmwoAIYYFQACbCgAh0AUBAJoKACHbBQAAzwz3BSL1BQEAmgoAIfgFAADQDPgFIvkFAQCaCgAhBU4AAPsSACBPAAD-EgAgjwYAAPwSACCQBgAA_RIAIJUGAACeAQAgEAkAAO8NACANAAD3DAAgEQAA9QwAID4AAPMMACBAAAD2DAAg_wQBAAAAAYAFAQAAAAGDBQEAAAABhAUBAAAAAYUFQAAAAAGGBUAAAAAB0AUBAAAAAdsFAAAA9wUC9QUBAAAAAfgFAAAA-AUC-QUBAAAAAQNOAAD7EgAgjwYAAPwSACCVBgAAngEAIAROAADlDQAwjwYAAOYNADCRBgAA6A0AIJUGAADJDAAwBE4AANYNADCPBgAA1w0AMJEGAADZDQAglQYAANoNADAAAAGTBQEAAAABAAAABU4AAPYSACBPAAD5EgAgjwYAAPcSACCQBgAA-BIAIJUGAADMBQAgA04AAPYSACCPBgAA9xIAIJUGAADMBQAgAAAABU4AAPESACBPAAD0EgAgjwYAAPISACCQBgAA8xIAIJUGAAAQACADTgAA8RIAII8GAADyEgAglQYAABAAIAAAAAVOAADsEgAgTwAA7xIAII8GAADtEgAgkAYAAO4SACCVBgAAngEAIANOAADsEgAgjwYAAO0SACCVBgAAngEAIAAAAAVOAADnEgAgTwAA6hIAII8GAADoEgAgkAYAAOkSACCVBgAADAAgA04AAOcSACCPBgAA6BIAIJUGAAAMACAAAAAFTgAA3xIAIE8AAOUSACCPBgAA4BIAIJAGAADkEgAglQYAAGUAIAtOAACiDgAwTwAApg4AMI8GAACjDgAwkAYAAKQOADCRBgAApQ4AIJIGAADnDAAwkwYAAOcMADCUBgAA5wwAMJUGAADnDAAwlgYAAKcOADCXBgAA6gwAMAtOAACZDgAwTwAAnQ4AMI8GAACaDgAwkAYAAJsOADCRBgAAnA4AIJIGAACkDAAwkwYAAKQMADCUBgAApAwAMJUGAACkDAAwlgYAAJ4OADCXBgAApwwAMAtOAACQDgAwTwAAlA4AMI8GAACRDgAwkAYAAJIOADCRBgAAkw4AIJIGAADoCwAwkwYAAOgLADCUBgAA6AsAMJUGAADoCwAwlgYAAJUOADCXBgAA6wsAMAQoAAD-DQAg_wQBAAAAAd0FAAAA4AUC4AUBAAAAAQIAAAB8ACBOAACYDgAgAwAAAHwAIE4AAJgOACBPAACXDgAgAUkAAOMSADACAAAAfAAgSQAAlw4AIAIAAADsCwAgSQAAlg4AIAP_BAEAmQoAId0FAADuC-AFIuAFAQCZCgAhBCgAAP0NACD_BAEAmQoAId0FAADuC-AFIuAFAQCZCgAhBCgAAP4NACD_BAEAAAAB3QUAAADgBQLgBQEAAAABBAkAAIMOACD_BAEAAAABhAUBAAAAAd0FAAAA4wUCAgAAAHgAIE4AAKEOACADAAAAeAAgTgAAoQ4AIE8AAKAOACABSQAA4hIAMAIAAAB4ACBJAACgDgAgAgAAAKgMACBJAACfDgAgA_8EAQCZCgAhhAUBAJkKACHdBQAAqgzjBSIECQAAgg4AIP8EAQCZCgAhhAUBAJkKACHdBQAAqgzjBSIECQAAgw4AIP8EAQAAAAGEBQEAAAAB3QUAAADjBQIEDgAAiA4AIP8EAQAAAAG1BQEAAAAB3QUAAADkBQICAAAAdAAgTgAAqg4AIAMAAAB0ACBOAACqDgAgTwAAqQ4AIAFJAADhEgAwAgAAAHQAIEkAAKkOACACAAAA6wwAIEkAAKgOACAD_wQBAJkKACG1BQEAmQoAId0FAADtDOQFIgQOAACHDgAg_wQBAJkKACG1BQEAmQoAId0FAADtDOQFIgQOAACIDgAg_wQBAAAAAbUFAQAAAAHdBQAAAOQFAgNOAADfEgAgjwYAAOASACCVBgAAZQAgBE4AAKIOADCPBgAAow4AMJEGAAClDgAglQYAAOcMADAETgAAmQ4AMI8GAACaDgAwkQYAAJwOACCVBgAApAwAMAROAACQDgAwjwYAAJEOADCRBgAAkw4AIJUGAADoCwAwBw0AALsNACAOAADOEQAgEQAAuhEAICIAANARACAlAADLEQAgKgAA0hEAIJgGAADTEQAgAAAAAZMFAQAAAAEAAAALTgAAqg8AME8AAK8PADCPBgAAqw8AMJAGAACsDwAwkQYAAK0PACCSBgAArg8AMJMGAACuDwAwlAYAAK4PADCVBgAArg8AMJYGAACwDwAwlwYAALEPADALTgAAmw8AME8AAKAPADCPBgAAnA8AMJAGAACdDwAwkQYAAJ4PACCSBgAAnw8AMJMGAACfDwAwlAYAAJ8PADCVBgAAnw8AMJYGAAChDwAwlwYAAKIPADALTgAA-A4AME8AAP0OADCPBgAA-Q4AMJAGAAD6DgAwkQYAAPsOACCSBgAA_A4AMJMGAAD8DgAwlAYAAPwOADCVBgAA_A4AMJYGAAD-DgAwlwYAAP8OADALTgAA1Q4AME8AANoOADCPBgAA1g4AMJAGAADXDgAwkQYAANgOACCSBgAA2Q4AMJMGAADZDgAwlAYAANkOADCVBgAA2Q4AMJYGAADbDgAwlwYAANwOADALTgAAvA4AME8AAMEOADCPBgAAvQ4AMJAGAAC-DgAwkQYAAL8OACCSBgAAwA4AMJMGAADADgAwlAYAAMAOADCVBgAAwA4AMJYGAADCDgAwlwYAAMMOADAHFgAA1A4AIP8EAQAAAAGFBUAAAAABhgVAAAAAAesFQAAAAAHsBQEAAAAB7QUCAAAAAQIAAABdACBOAADTDgAgAwAAAF0AIE4AANMOACBPAADGDgAgAUkAAN4SADAMEAAA5gkAIBYAAJAJACD8BAAA5QkAMP0EAABbABD-BAAA5QkAMP8EAQAAAAGFBUAAmAgAIYYFQACYCAAh5wUBAJYIACHrBUAAmAgAIewFAQAAAAHtBQIAzggAIQIAAABdACBJAADGDgAgAgAAAMQOACBJAADFDgAgCvwEAADDDgAw_QQAAMQOABD-BAAAww4AMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIecFAQCWCAAh6wVAAJgIACHsBQEAlggAIe0FAgDOCAAhCvwEAADDDgAw_QQAAMQOABD-BAAAww4AMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIecFAQCWCAAh6wVAAJgIACHsBQEAlggAIe0FAgDOCAAhBv8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIesFQACbCgAh7AUBAJkKACHtBQIAwg0AIQcWAADHDgAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh6wVAAJsKACHsBQEAmQoAIe0FAgDCDQAhC04AAMgOADBPAADMDgAwjwYAAMkOADCQBgAAyg4AMJEGAADLDgAgkgYAANcLADCTBgAA1wsAMJQGAADXCwAwlQYAANcLADCWBgAAzQ4AMJcGAADaCwAwBhcAANIOACD_BAEAAAABhQVAAAAAAYYFQAAAAAHuBUAAAAAB7wUBAAAAAQIAAABAACBOAADRDgAgAwAAAEAAIE4AANEOACBPAADPDgAgAUkAAN0SADACAAAAQAAgSQAAzw4AIAIAAADbCwAgSQAAzg4AIAX_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHuBUAAmwoAIe8FAQCaCgAhBhcAANAOACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHuBUAAmwoAIe8FAQCaCgAhB04AANgSACBPAADbEgAgjwYAANkSACCQBgAA2hIAIJMGAAA8ACCUBgAAPAAglQYAAMEDACAGFwAA0g4AIP8EAQAAAAGFBUAAAAABhgVAAAAAAe4FQAAAAAHvBQEAAAABA04AANgSACCPBgAA2RIAIJUGAADBAwAgBxYAANQOACD_BAEAAAABhQVAAAAAAYYFQAAAAAHrBUAAAAAB7AUBAAAAAe0FAgAAAAEETgAAyA4AMI8GAADJDgAwkQYAAMsOACCVBgAA1wsAMAcZAAD3DgAg_wQBAAAAAYUFQAAAAAGGBUAAAAAB6wVAAAAAAewFAQAAAAHtBQIAAAABAgAAAFkAIE4AAPYOACADAAAAWQAgTgAA9g4AIE8AAN8OACABSQAA1xIAMAwQAADmCQAgGQAA6AkAIPwEAADnCQAw_QQAAE4AEP4EAADnCQAw_wQBAAAAAYUFQACYCAAhhgVAAJgIACHnBQEAlggAIesFQACYCAAh7AUBAAAAAe0FAgDOCAAhAgAAAFkAIEkAAN8OACACAAAA3Q4AIEkAAN4OACAK_AQAANwOADD9BAAA3Q4AEP4EAADcDgAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAh5wUBAJYIACHrBUAAmAgAIewFAQCWCAAh7QUCAM4IACEK_AQAANwOADD9BAAA3Q4AEP4EAADcDgAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAh5wUBAJYIACHrBUAAmAgAIewFAQCWCAAh7QUCAM4IACEG_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh6wVAAJsKACHsBQEAmQoAIe0FAgDCDQAhBxkAAOAOACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHrBUAAmwoAIewFAQCZCgAh7QUCAMINACELTgAA4Q4AME8AAOYOADCPBgAA4g4AMJAGAADjDgAwkQYAAOQOACCSBgAA5Q4AMJMGAADlDgAwlAYAAOUOADCVBgAA5Q4AMJYGAADnDgAwlwYAAOgOADAEGgAA9Q4AIP8EAQAAAAGFBUAAAAABhgVAAAAAAQIAAABRACBOAAD0DgAgAwAAAFEAIE4AAPQOACBPAADrDgAgAUkAANYSADAJEwAA6gkAIBoAAOQJACD8BAAA6QkAMP0EAABMABD-BAAA6QkAMP8EAQAAAAGFBUAAmAgAIYYFQACYCAAh6gUBAJcIACECAAAAUQAgSQAA6w4AIAIAAADpDgAgSQAA6g4AIAf8BAAA6A4AMP0EAADpDgAQ_gQAAOgOADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACHqBQEAlwgAIQf8BAAA6A4AMP0EAADpDgAQ_gQAAOgOADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACHqBQEAlwgAIQP_BAEAmQoAIYUFQACbCgAhhgVAAJsKACEEGgAA7A4AIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIQdOAADtDgAgTwAA8A4AII8GAADuDgAgkAYAAO8OACCTBgAARQAglAYAAEUAIJUGAABHACAHEQAA0QsAIBgAAPMOACD_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAAB6AUBAAAAAQIAAABHACBOAADtDgAgAwAAAEUAIE4AAO0OACBPAADxDgAgCQAAAEUAIBEAAM4LACAYAADyDgAgSQAA8Q4AIP8EAQCZCgAhgwUBAJoKACGFBUAAmwoAIYYFQACbCgAh6AUBAJoKACEHEQAAzgsAIBgAAPIOACD_BAEAmQoAIYMFAQCaCgAhhQVAAJsKACGGBUAAmwoAIegFAQCaCgAhB04AANESACBPAADUEgAgjwYAANISACCQBgAA0xIAIJMGAAA8ACCUBgAAPAAglQYAAMEDACADTgAA0RIAII8GAADSEgAglQYAAMEDACAEGgAA9Q4AIP8EAQAAAAGFBUAAAAABhgVAAAAAAQNOAADtDgAgjwYAAO4OACCVBgAARwAgBxkAAPcOACD_BAEAAAABhQVAAAAAAYYFQAAAAAHrBUAAAAAB7AUBAAAAAe0FAgAAAAEETgAA4Q4AMI8GAADiDgAwkQYAAOQOACCVBgAA5Q4AMAcdAACaDwAg_wQBAAAAAYUFQAAAAAGGBUAAAAAB6wVAAAAAAewFAQAAAAHtBQIAAAABAgAAADYAIE4AAJkPACADAAAANgAgTgAAmQ8AIE8AAIIPACABSQAA0BIAMAwQAADmCQAgHQAA8wkAIPwEAADyCQAw_QQAADQAEP4EAADyCQAw_wQBAAAAAYUFQACYCAAhhgVAAJgIACHnBQEAlggAIesFQACYCAAh7AUBAAAAAe0FAgDOCAAhAgAAADYAIEkAAIIPACACAAAAgA8AIEkAAIEPACAK_AQAAP8OADD9BAAAgA8AEP4EAAD_DgAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAh5wUBAJYIACHrBUAAmAgAIewFAQCWCAAh7QUCAM4IACEK_AQAAP8OADD9BAAAgA8AEP4EAAD_DgAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAh5wUBAJYIACHrBUAAmAgAIewFAQCWCAAh7QUCAM4IACEG_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh6wVAAJsKACHsBQEAmQoAIe0FAgDCDQAhBx0AAIMPACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHrBUAAmwoAIewFAQCZCgAh7QUCAMINACELTgAAhA8AME8AAIkPADCPBgAAhQ8AMJAGAACGDwAwkQYAAIcPACCSBgAAiA8AMJMGAACIDwAwlAYAAIgPADCVBgAAiA8AMJYGAACKDwAwlwYAAIsPADAFFwAAmA8AIP8EAQAAAAGFBUAAAAABhgVAAAAAAfMFAgAAAAECAAAAOgAgTgAAlw8AIAMAAAA6ACBOAACXDwAgTwAAjg8AIAFJAADPEgAwChMAAPEJACAXAADsCQAg_AQAAPAJADD9BAAAOAAQ_gQAAPAJADD_BAEAAAABhQVAAJgIACGGBUAAmAgAIeoFAQCWCAAh8wUCAM4IACECAAAAOgAgSQAAjg8AIAIAAACMDwAgSQAAjQ8AIAj8BAAAiw8AMP0EAACMDwAQ_gQAAIsPADD_BAEAlggAIYUFQACYCAAhhgVAAJgIACHqBQEAlggAIfMFAgDOCAAhCPwEAACLDwAw_QQAAIwPABD-BAAAiw8AMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIeoFAQCWCAAh8wUCAM4IACEE_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh8wUCAMINACEFFwAAjw8AIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIfMFAgDCDQAhB04AAJAPACBPAACTDwAgjwYAAJEPACCQBgAAkg8AIJMGAAA8ACCUBgAAPAAglQYAAMEDACAJFQAAlg8AIBYAAOILACAcAADjCwAg_wQBAAAAAYUFQAAAAAGGBUAAAAAB7gVAAAAAAfAFQAAAAAHyBQEAAAABAgAAAMEDACBOAACQDwAgAwAAADwAIE4AAJAPACBPAACUDwAgCwAAADwAIBUAAJUPACAWAADBCwAgHAAAwgsAIEkAAJQPACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHuBUAAmwoAIfAFQACbCgAh8gUBAJkKACEJFQAAlQ8AIBYAAMELACAcAADCCwAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh7gVAAJsKACHwBUAAmwoAIfIFAQCZCgAhBU4AAMoSACBPAADNEgAgjwYAAMsSACCQBgAAzBIAIJUGAAAQACADTgAAyhIAII8GAADLEgAglQYAABAAIAUXAACYDwAg_wQBAAAAAYUFQAAAAAGGBUAAAAAB8wUCAAAAAQNOAACQDwAgjwYAAJEPACCVBgAAwQMAIAcdAACaDwAg_wQBAAAAAYUFQAAAAAGGBUAAAAAB6wVAAAAAAewFAQAAAAHtBQIAAAABBE4AAIQPADCPBgAAhQ8AMJEGAACHDwAglQYAAIgPADAGEQAAqQ8AIP8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAHdBQAAAOcFAgIAAAAyACBOAACoDwAgAwAAADIAIE4AAKgPACBPAACmDwAgAUkAAMkSADALEAAA5gkAIBEAAL4JACD8BAAA9AkAMP0EAAAwABD-BAAA9AkAMP8EAQAAAAGDBQEAAAABhQVAAJgIACGGBUAAmAgAId0FAAD1CecFIucFAQCWCAAhAgAAADIAIEkAAKYPACACAAAAow8AIEkAAKQPACAJ_AQAAKIPADD9BAAAow8AEP4EAACiDwAw_wQBAJYIACGDBQEAlggAIYUFQACYCAAhhgVAAJgIACHdBQAA9QnnBSLnBQEAlggAIQn8BAAAog8AMP0EAACjDwAQ_gQAAKIPADD_BAEAlggAIYMFAQCWCAAhhQVAAJgIACGGBUAAmAgAId0FAAD1CecFIucFAQCWCAAhBf8EAQCZCgAhgwUBAJkKACGFBUAAmwoAIYYFQACbCgAh3QUAAKUP5wUiAZIGAAAA5wUCBhEAAKcPACD_BAEAmQoAIYMFAQCZCgAhhQVAAJsKACGGBUAAmwoAId0FAAClD-cFIgVOAADEEgAgTwAAxxIAII8GAADFEgAgkAYAAMYSACCVBgAA8wEAIAYRAACpDwAg_wQBAAAAAYMFAQAAAAGFBUAAAAABhgVAAAAAAd0FAAAA5wUCA04AAMQSACCPBgAAxRIAIJUGAADzAQAgCwcAAIEQACAhAACAEAAgIwAAghAAIP8EAQAAAAGFBUAAAAABhgVAAAAAAb4FAQAAAAG_BQEAAAAB2wUAAAD_BQL8BQEAAAAB_QUBAAAAAQIAAAAuACBOAAD_DwAgAwAAAC4AIE4AAP8PACBPAAC1DwAgAUkAAMMSADASBwAArAgAIBAAAOYJACAhAAD6CQAgIwAA-wkAIPwEAAD4CQAw_QQAACwAEP4EAAD4CQAw_wQBAAAAAYUFQACYCAAhhgVAAJgIACG-BQEAlggAIb8FAQCWCAAh2wUAAPkJ_wUi5wUBAJYIACH8BQEAlggAIf0FAQCWCAAhigYAAPYJACCLBgAA9wkAIAIAAAAuACBJAAC1DwAgAgAAALIPACBJAACzDwAgDPwEAACxDwAw_QQAALIPABD-BAAAsQ8AMP8EAQCWCAAhhQVAAJgIACGGBUAAmAgAIb4FAQCWCAAhvwUBAJYIACHbBQAA-Qn_BSLnBQEAlggAIfwFAQCWCAAh_QUBAJYIACEM_AQAALEPADD9BAAAsg8AEP4EAACxDwAw_wQBAJYIACGFBUAAmAgAIYYFQACYCAAhvgUBAJYIACG_BQEAlggAIdsFAAD5Cf8FIucFAQCWCAAh_AUBAJYIACH9BQEAlggAIQj_BAEAmQoAIYUFQACbCgAhhgVAAJsKACG-BQEAmQoAIb8FAQCZCgAh2wUAALQP_wUi_AUBAJkKACH9BQEAmQoAIQGSBgAAAP8FAgsHAAC3DwAgIQAAtg8AICMAALgPACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACG-BQEAmQoAIb8FAQCZCgAh2wUAALQP_wUi_AUBAJkKACH9BQEAmQoAIQtOAADQDwAwTwAA1Q8AMI8GAADRDwAwkAYAANIPADCRBgAA0w8AIJIGAADUDwAwkwYAANQPADCUBgAA1A8AMJUGAADUDwAwlgYAANYPADCXBgAA1w8AMAtOAADFDwAwTwAAyQ8AMI8GAADGDwAwkAYAAMcPADCRBgAAyA8AIJIGAACwCwAwkwYAALALADCUBgAAsAsAMJUGAACwCwAwlgYAAMoPADCXBgAAswsAMAtOAAC5DwAwTwAAvg8AMI8GAAC6DwAwkAYAALsPADCRBgAAvA8AIJIGAAC9DwAwkwYAAL0PADCUBgAAvQ8AMJUGAAC9DwAwlgYAAL8PADCXBgAAwA8AMBA8AQAAAAE-AQAAAAGFBUAAAAABhgVAAAAAAccFAQAAAAHMBQEAAAABzgUBAAAAAc8FAQAAAAHQBQEAAAAB0gUAAADSBQLTBQEAAAAB1AUBAAAAAdUFAQAAAAHWBQEAAAAB1wUBAAAAAdgFAQAAAAECAAAAagAgTgAAxA8AIAMAAABqACBOAADEDwAgTwAAww8AIAFJAADCEgAwFSIAAN8JACA8AQCWCAAhPgEAlggAIfwEAADdCQAw_QQAAGgAEP4EAADdCQAwhQVAAJgIACGGBUAAmAgAIccFAQCWCAAhzAUBAJYIACHOBQEAAAABzwUBAJYIACHQBQEAlggAIdIFAADeCdIFItMFAQCWCAAh1AUBAJYIACHVBQEAlggAIdYFAQCXCAAh1wUBAJcIACHYBQEAlwgAIdkFAQCWCAAhAgAAAGoAIEkAAMMPACACAAAAwQ8AIEkAAMIPACAUPAEAlggAIT4BAJYIACH8BAAAwA8AMP0EAADBDwAQ_gQAAMAPADCFBUAAmAgAIYYFQACYCAAhxwUBAJYIACHMBQEAlggAIc4FAQCWCAAhzwUBAJYIACHQBQEAlggAIdIFAADeCdIFItMFAQCWCAAh1AUBAJYIACHVBQEAlggAIdYFAQCXCAAh1wUBAJcIACHYBQEAlwgAIdkFAQCWCAAhFDwBAJYIACE-AQCWCAAh_AQAAMAPADD9BAAAwQ8AEP4EAADADwAwhQVAAJgIACGGBUAAmAgAIccFAQCWCAAhzAUBAJYIACHOBQEAlggAIc8FAQCWCAAh0AUBAJYIACHSBQAA3gnSBSLTBQEAlggAIdQFAQCWCAAh1QUBAJYIACHWBQEAlwgAIdcFAQCXCAAh2AUBAJcIACHZBQEAlggAIRA8AQCZCgAhPgEAmQoAIYUFQACbCgAhhgVAAJsKACHHBQEAmQoAIcwFAQCZCgAhzgUBAJkKACHPBQEAmQoAIdAFAQCZCgAh0gUAAM0N0gUi0wUBAJkKACHUBQEAmQoAIdUFAQCZCgAh1gUBAJoKACHXBQEAmgoAIdgFAQCaCgAhEDwBAJkKACE-AQCZCgAhhQVAAJsKACGGBUAAmwoAIccFAQCZCgAhzAUBAJkKACHOBQEAmQoAIc8FAQCZCgAh0AUBAJkKACHSBQAAzQ3SBSLTBQEAmQoAIdQFAQCZCgAh1QUBAJkKACHWBQEAmgoAIdcFAQCaCgAh2AUBAJoKACEQPAEAAAABPgEAAAABhQVAAAAAAYYFQAAAAAHHBQEAAAABzAUBAAAAAc4FAQAAAAHPBQEAAAAB0AUBAAAAAdIFAAAA0gUC0wUBAAAAAdQFAQAAAAHVBQEAAAAB1gUBAAAAAdcFAQAAAAHYBQEAAAABChgAAIMNACAzAADPDwAgNQAAgQ0AIDYAAIINACD_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAABtwUBAAAAAbsFAQAAAAECAAAAEAAgTgAAzg8AIAMAAAAQACBOAADODwAgTwAAzA8AIAFJAADBEgAwAgAAABAAIEkAAMwPACACAAAAtAsAIEkAAMsPACAG_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACG3BQEAmQoAIbsFAQCZCgAhChgAALoLACAzAADNDwAgNQAAuAsAIDYAALkLACD_BAEAmQoAIYAFAQCZCgAhhQVAAJsKACGGBUAAmwoAIbcFAQCZCgAhuwUBAJkKACEFTgAAvBIAIE8AAL8SACCPBgAAvRIAIJAGAAC-EgAglQYAAIoHACAKGAAAgw0AIDMAAM8PACA1AACBDQAgNgAAgg0AIP8EAQAAAAGABQEAAAABhQVAAAAAAYYFQAAAAAG3BQEAAAABuwUBAAAAAQNOAAC8EgAgjwYAAL0SACCVBgAAigcAIAoNAAD-DwAgDgAA-w8AIBEAAPoPACAlAAD8DwAgKgAA_Q8AIP8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAHdBQAAAIAGAgIAAABlACBOAAD5DwAgAwAAAGUAIE4AAPkPACBPAADbDwAgAUkAALsSADAPDQAAyAgAIA4AAOIJACARAAC-CQAgIgAA3wkAICUAAOMJACAqAADkCQAg_AQAAOAJADD9BAAASgAQ_gQAAOAJADD_BAEAAAABgwUBAAAAAYUFQACYCAAhhgVAAJgIACHZBQEAlggAId0FAADhCYAGIgIAAABlACBJAADbDwAgAgAAANgPACBJAADZDwAgCfwEAADXDwAw_QQAANgPABD-BAAA1w8AMP8EAQCWCAAhgwUBAJYIACGFBUAAmAgAIYYFQACYCAAh2QUBAJYIACHdBQAA4QmABiIJ_AQAANcPADD9BAAA2A8AEP4EAADXDwAw_wQBAJYIACGDBQEAlggAIYUFQACYCAAhhgVAAJgIACHZBQEAlggAId0FAADhCYAGIgX_BAEAmQoAIYMFAQCZCgAhhQVAAJsKACGGBUAAmwoAId0FAADaD4AGIgGSBgAAAIAGAgoNAADgDwAgDgAA3Q8AIBEAANwPACAlAADeDwAgKgAA3w8AIP8EAQCZCgAhgwUBAJkKACGFBUAAmwoAIYYFQACbCgAh3QUAANoPgAYiBU4AALUSACBPAAC5EgAgjwYAALYSACCQBgAAuBIAIJUGAADzAQAgB04AAPQPACBPAAD3DwAgjwYAAPUPACCQBgAA9g8AIJMGAAAKACCUBgAACgAglQYAAAwAIAdOAADvDwAgTwAA8g8AII8GAADwDwAgkAYAAPEPACCTBgAAcAAglAYAAHAAIJUGAADmBAAgB04AAOoPACBPAADtDwAgjwYAAOsPACCQBgAA7A8AIJMGAABFACCUBgAARQAglQYAAEcAIAtOAADhDwAwTwAA5Q8AMI8GAADiDwAwkAYAAOMPADCRBgAA5A8AIJIGAADbDAAwkwYAANsMADCUBgAA2wwAMJUGAADbDAAwlgYAAOYPADCXBgAA3gwAMA4KAAD2CgAgDgAA9woAICsAAPkKACAtAAD6CgAg_wQBAAAAAYUFQAAAAAGGBUAAAAABpQUQAAAAAacFAQAAAAGxBQEAAAABsgWAAAAAAbMFQAAAAAG0BQEAAAABtQUBAAAAAQIAAAApACBOAADpDwAgAwAAACkAIE4AAOkPACBPAADoDwAgAUkAALcSADACAAAAKQAgSQAA6A8AIAIAAADfDAAgSQAA5w8AIAr_BAEAmQoAIYUFQACbCgAhhgVAAJsKACGlBRAAqAoAIacFAQCaCgAhsQUBAJkKACGyBYAAAAABswVAAJwKACG0BQEAmgoAIbUFAQCZCgAhDgoAANwKACAOAADdCgAgKwAA3woAIC0AAOAKACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACGlBRAAqAoAIacFAQCaCgAhsQUBAJkKACGyBYAAAAABswVAAJwKACG0BQEAmgoAIbUFAQCZCgAhDgoAAPYKACAOAAD3CgAgKwAA-QoAIC0AAPoKACD_BAEAAAABhQVAAAAAAYYFQAAAAAGlBRAAAAABpwUBAAAAAbEFAQAAAAGyBYAAAAABswVAAAAAAbQFAQAAAAG1BQEAAAABBxgAAPMOACAbAADSCwAg_wQBAAAAAYUFQAAAAAGGBUAAAAAB6AUBAAAAAekFAQAAAAECAAAARwAgTgAA6g8AIAMAAABFACBOAADqDwAgTwAA7g8AIAkAAABFACAYAADyDgAgGwAAzwsAIEkAAO4PACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHoBQEAmgoAIekFAQCaCgAhBxgAAPIOACAbAADPCwAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh6AUBAJoKACHpBQEAmgoAIQQmAACsDgAgJwAArQ4AICkAAK4OACD_BAEAAAABAgAAAOYEACBOAADvDwAgAwAAAHAAIE4AAO8PACBPAADzDwAgBgAAAHAAICYAAI0OACAnAACODgAgKQAAjw4AIEkAAPMPACD_BAEAmQoAIQQmAACNDgAgJwAAjg4AICkAAI8OACD_BAEAmQoAIRAJAADvDQAgDQAA9wwAID4AAPMMACA_AAD0DAAgQAAA9gwAIP8EAQAAAAGABQEAAAABhAUBAAAAAYUFQAAAAAGGBUAAAAAB0AUBAAAAAdsFAAAA9wUC3gUBAAAAAfUFAQAAAAH4BQAAAPgFAvkFAQAAAAECAAAADAAgTgAA9A8AIAMAAAAKACBOAAD0DwAgTwAA-A8AIBIAAAAKACAJAADtDQAgDQAA1gwAID4AANIMACA_AADTDAAgQAAA1QwAIEkAAPgPACD_BAEAmQoAIYAFAQCZCgAhhAUBAJkKACGFBUAAmwoAIYYFQACbCgAh0AUBAJoKACHbBQAAzwz3BSLeBQEAmgoAIfUFAQCaCgAh-AUAANAM-AUi-QUBAJoKACEQCQAA7Q0AIA0AANYMACA-AADSDAAgPwAA0wwAIEAAANUMACD_BAEAmQoAIYAFAQCZCgAhhAUBAJkKACGFBUAAmwoAIYYFQACbCgAh0AUBAJoKACHbBQAAzwz3BSLeBQEAmgoAIfUFAQCaCgAh-AUAANAM-AUi-QUBAJoKACEKDQAA_g8AIA4AAPsPACARAAD6DwAgJQAA_A8AICoAAP0PACD_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAAB3QUAAACABgIDTgAAtRIAII8GAAC2EgAglQYAAPMBACADTgAA9A8AII8GAAD1DwAglQYAAAwAIANOAADvDwAgjwYAAPAPACCVBgAA5gQAIANOAADqDwAgjwYAAOsPACCVBgAARwAgBE4AAOEPADCPBgAA4g8AMJEGAADkDwAglQYAANsMADALBwAAgRAAICEAAIAQACAjAACCEAAg_wQBAAAAAYUFQAAAAAGGBUAAAAABvgUBAAAAAb8FAQAAAAHbBQAAAP8FAvwFAQAAAAH9BQEAAAABBE4AANAPADCPBgAA0Q8AMJEGAADTDwAglQYAANQPADAETgAAxQ8AMI8GAADGDwAwkQYAAMgPACCVBgAAsAsAMAROAAC5DwAwjwYAALoPADCRBgAAvA8AIJUGAAC9DwAwBE4AAKoPADCPBgAAqw8AMJEGAACtDwAglQYAAK4PADAETgAAmw8AMI8GAACcDwAwkQYAAJ4PACCVBgAAnw8AMAROAAD4DgAwjwYAAPkOADCRBgAA-w4AIJUGAAD8DgAwBE4AANUOADCPBgAA1g4AMJEGAADYDgAglQYAANkOADAETgAAvA4AMI8GAAC9DgAwkQYAAL8OACCVBgAAwA4AMAAAAAAAAZMFAQAAAAEAAAAFTgAAsBIAIE8AALMSACCPBgAAsRIAIJAGAACyEgAglQYAAM8EACADTgAAsBIAII8GAACxEgAglQYAAM8EACAAAAAAAAAHTgAAqxIAIE8AAK4SACCPBgAArBIAIJAGAACtEgAgkwYAAE4AIJQGAABOACCVBgAAWQAgA04AAKsSACCPBgAArBIAIJUGAABZACAAAAAAAAVOAACmEgAgTwAAqRIAII8GAACnEgAgkAYAAKgSACCVBgAAzwQAIANOAACmEgAgjwYAAKcSACCVBgAAzwQAIAAAAAAAAAAABU4AAKESACBPAACkEgAgjwYAAKISACCQBgAAoxIAIJUGAADPBAAgA04AAKESACCPBgAAohIAIJUGAADPBAAgAAAAAxMAAN8RACAXAADaEQAgmAYAAOARACAGGAAA2hEAICIAANARACAzAADuEQAgNQAA8BEAIDYAALIOACCYBgAA8REAIAAAAZMFAQAAAAEAAAAAAAVOAACcEgAgTwAAnxIAII8GAACdEgAgkAYAAJ4SACCVBgAANgAgA04AAJwSACCPBgAAnRIAIJUGAAA2ACAAAAAAAAVOAACXEgAgTwAAmhIAII8GAACYEgAgkAYAAJkSACCVBgAAzwQAIANOAACXEgAgjwYAAJgSACCVBgAAzwQAIAAAAAVOAACREgAgTwAAlRIAII8GAACSEgAgkAYAAJQSACCVBgAA7gIAIAtOAADHEAAwTwAAyxAAMI8GAADIEAAwkAYAAMkQADCRBgAAyhAAIJIGAADJDAAwkwYAAMkMADCUBgAAyQwAMJUGAADJDAAwlgYAAMwQADCXBgAAzAwAMBAJAADvDQAgDQAA9wwAIBEAAPUMACA_AAD0DAAgQAAA9gwAIP8EAQAAAAGABQEAAAABgwUBAAAAAYQFAQAAAAGFBUAAAAABhgVAAAAAAdAFAQAAAAHbBQAAAPcFAt4FAQAAAAH1BQEAAAAB-AUAAAD4BQICAAAADAAgTgAAzxAAIAMAAAAMACBOAADPEAAgTwAAzhAAIAFJAACTEgAwAgAAAAwAIEkAAM4QACACAAAAzQwAIEkAAM0QACAL_wQBAJkKACGABQEAmQoAIYMFAQCZCgAhhAUBAJkKACGFBUAAmwoAIYYFQACbCgAh0AUBAJoKACHbBQAAzwz3BSLeBQEAmgoAIfUFAQCaCgAh-AUAANAM-AUiEAkAAO0NACANAADWDAAgEQAA1AwAID8AANMMACBAAADVDAAg_wQBAJkKACGABQEAmQoAIYMFAQCZCgAhhAUBAJkKACGFBUAAmwoAIYYFQACbCgAh0AUBAJoKACHbBQAAzwz3BSLeBQEAmgoAIfUFAQCaCgAh-AUAANAM-AUiEAkAAO8NACANAAD3DAAgEQAA9QwAID8AAPQMACBAAAD2DAAg_wQBAAAAAYAFAQAAAAGDBQEAAAABhAUBAAAAAYUFQAAAAAGGBUAAAAAB0AUBAAAAAdsFAAAA9wUC3gUBAAAAAfUFAQAAAAH4BQAAAPgFAgNOAACREgAgjwYAAJISACCVBgAA7gIAIAROAADHEAAwjwYAAMgQADCRBgAAyhAAIJUGAADJDAAwAAAAC04AANYQADBPAADbEAAwjwYAANcQADCQBgAA2BAAMJEGAADZEAAgkgYAANoQADCTBgAA2hAAMJQGAADaEAAwlQYAANoQADCWBgAA3BAAMJcGAADdEAAwBj0AANEQACD_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAAB0wUBAAAAAQIAAAC3AQAgTgAA4RAAIAMAAAC3AQAgTgAA4RAAIE8AAOAQACABSQAAkBIAMAs8AADACQAgPQAA5AgAIPwEAAC_CQAw_QQAALQBABD-BAAAvwkAMP8EAQAAAAGABQEAlggAIYUFQACYCAAhhgVAAJgIACHTBQEAlwgAIfQFAQCWCAAhAgAAALcBACBJAADgEAAgAgAAAN4QACBJAADfEAAgCfwEAADdEAAw_QQAAN4QABD-BAAA3RAAMP8EAQCWCAAhgAUBAJYIACGFBUAAmAgAIYYFQACYCAAh0wUBAJcIACH0BQEAlggAIQn8BAAA3RAAMP0EAADeEAAQ_gQAAN0QADD_BAEAlggAIYAFAQCWCAAhhQVAAJgIACGGBUAAmAgAIdMFAQCXCAAh9AUBAJYIACEF_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACHTBQEAmgoAIQY9AADGEAAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACHTBQEAmgoAIQY9AADREAAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAdMFAQAAAAEETgAA1hAAMI8GAADXEAAwkQYAANkQACCVBgAA2hAAMAABkwUBAAAAAQAAAAAAAAVOAACLEgAgTwAAjhIAII8GAACMEgAgkAYAAI0SACCVBgAAEAAgA04AAIsSACCPBgAAjBIAIJUGAAAQACAAAAAAAAAFTgAAhhIAIE8AAIkSACCPBgAAhxIAIJAGAACIEgAglQYAAM8EACADTgAAhhIAII8GAACHEgAglQYAAM8EACAAAAAFTgAAgRIAIE8AAIQSACCPBgAAghIAIJAGAACDEgAglQYAAC4AIANOAACBEgAgjwYAAIISACCVBgAALgAgAAAAAZIGAAAAgwYCAZIGAAAAhAYCB04AAJIRACBPAACVEQAgjwYAAJMRACCQBgAAlBEAIJMGAAADACCUBgAAAwAglQYAAAEAIAdOAACNEQAgTwAAkBEAII8GAACOEQAgkAYAAI8RACCTBgAACAAglAYAAAgAIJUGAADDAQAgB04AAIgRACBPAACLEQAgjwYAAIkRACCQBgAAihEAIJMGAAAwACCUBgAAMAAglQYAADIAIAdOAACDEQAgTwAAhhEAII8GAACEEQAgkAYAAIURACCTBgAASgAglAYAAEoAIJUGAABlACAKDQAA_g8AIA4AAPsPACAiAAD5EAAgJQAA_A8AICoAAP0PACD_BAEAAAABhQVAAAAAAYYFQAAAAAHZBQEAAAAB3QUAAACABgICAAAAZQAgTgAAgxEAIAMAAABKACBOAACDEQAgTwAAhxEAIAwAAABKACANAADgDwAgDgAA3Q8AICIAAPgQACAlAADeDwAgKgAA3w8AIEkAAIcRACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHZBQEAmQoAId0FAADaD4AGIgoNAADgDwAgDgAA3Q8AICIAAPgQACAlAADeDwAgKgAA3w8AIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIdkFAQCZCgAh3QUAANoPgAYiBhAAAJIQACD_BAEAAAABhQVAAAAAAYYFQAAAAAHdBQAAAOcFAucFAQAAAAECAAAAMgAgTgAAiBEAIAMAAAAwACBOAACIEQAgTwAAjBEAIAgAAAAwACAQAACREAAgSQAAjBEAIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAId0FAAClD-cFIucFAQCZCgAhBhAAAJEQACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHdBQAApQ_nBSLnBQEAmQoAIQY_AAD5DQAg_wQBAAAAAYUFQAAAAAGGBUAAAAAB3QUAAADdBQLeBQEAAAABAgAAAMMBACBOAACNEQAgAwAAAAgAIE4AAI0RACBPAACREQAgCAAAAAgAID8AAPgNACBJAACREQAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh3QUAAOAN3QUi3gUBAJkKACEGPwAA-A0AIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAId0FAADgDd0FIt4FAQCZCgAhBQUAAJgRACD_BAEAAAABhQVAAAAAAYYFQAAAAAGEBgEAAAABAgAAAAEAIE4AAJIRACADAAAAAwAgTgAAkhEAIE8AAJYRACAHAAAAAwAgBQAAlxEAIEkAAJYRACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACGEBgEAmQoAIQUFAACXEQAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAhhAYBAJkKACEFTgAA_BEAIE8AAP8RACCPBgAA_REAIJAGAAD-EQAglQYAANwBACADTgAA_BEAII8GAAD9EQAglQYAANwBACADTgAAkhEAII8GAACTEQAglQYAAAEAIANOAACNEQAgjwYAAI4RACCVBgAAwwEAIANOAACIEQAgjwYAAIkRACCVBgAAMgAgA04AAIMRACCPBgAAhBEAIJUGAABlACADBQAA9BEAIBEAALoRACCYBgAA9REAIAMRAAC6EQAgPwAAuREAIJgGAAC7EQAgAxAAANQRACARAAC6EQAgmAYAAOMRACABkwUBAAAAAQAAAAtOAAClEQAwTwAAqhEAMI8GAACmEQAwkAYAAKcRADCRBgAAqBEAIJIGAACpEQAwkwYAAKkRADCUBgAAqREAMJUGAACpEQAwlgYAAKsRADCXBgAArBEAMAURAACyEQAg_wQBAAAAAYMFAQAAAAGFBUAAAAABhgVAAAAAAQIAAAABACBOAACxEQAgAwAAAAEAIE4AALERACBPAACvEQAgAUkAAPsRADAKBQAAlAoAIBEAAL4JACD8BAAAkwoAMP0EAAADABD-BAAAkwoAMP8EAQAAAAGDBQEAAAABhQVAAJgIACGGBUAAmAgAIYQGAQCWCAAhAgAAAAEAIEkAAK8RACACAAAArREAIEkAAK4RACAI_AQAAKwRADD9BAAArREAEP4EAACsEQAw_wQBAJYIACGDBQEAlggAIYUFQACYCAAhhgVAAJgIACGEBgEAlggAIQj8BAAArBEAMP0EAACtEQAQ_gQAAKwRADD_BAEAlggAIYMFAQCWCAAhhQVAAJgIACGGBUAAmAgAIYQGAQCWCAAhBP8EAQCZCgAhgwUBAJkKACGFBUAAmwoAIYYFQACbCgAhBREAALARACD_BAEAmQoAIYMFAQCZCgAhhQVAAJsKACGGBUAAmwoAIQVOAAD2EQAgTwAA-REAII8GAAD3EQAgkAYAAPgRACCVBgAA8wEAIAURAACyEQAg_wQBAAAAAYMFAQAAAAGFBUAAAAABhgVAAAAAAQNOAAD2EQAgjwYAAPcRACCVBgAA8wEAIAROAAClEQAwjwYAAKYRADCRBgAAqBEAIJUGAACpEQAwAAGTBQEAAAABAAAAAzcAAPINACBBAADzDQAgmAYAAPQNACAFBgAAnREAICQAAK8OACBCAACeEQAgQwAAnxEAIJgGAACgEQAgAZMFAQAAAAECOwAA4xAAIJgGAADkEAAgAZMFAQAAAAEHCwAAuQ0AIAwAALoNACANAAC7DQAghwUAAJUKACCyBQAAlQoAIMEFAACVCgAgmAYAALwNACAJFQAAsBAAIDIAAMIRACA0AACHDQAgNwAA8g0AIDgAALEOACA5AADDEQAgOgAAxBEAIPsFAACVCgAgmAYAAMURACABkwUBAAAAAQGTBQEAAAABAAAAAZMFAQAAAAEFLwAAvwoAIIEFAACVCgAgggUAAJUKACCHBQAAlQoAIJgGAADACgAgAAGTBQEAAAABCgoAAL4RACAOAADOEQAgJAAArw4AICsAAMcRACAtAADnEQAgpwUAAJUKACCyBQAAlQoAILMFAACVCgAgtAUAAJUKACCYBgAA6BEAIAGTBQEAAAABBSQAAK8OACAmAACwDgAgJwAAsQ4AICkAALIOACCYBgAAsw4AIAGTBQEAAAABAZMFAQAAAAELCQAAvxEAIA0AALsNACARAACvDgAgPgAA8hEAID8AALkRACBAAACwDgAg0AUAAJUKACDeBQAAlQoAIPUFAACVCgAg-QUAAJUKACCYBgAA8xEAIAGTBQEAAAABBQcAAIYNACAQAADUEQAgIQAA5BEAICMAAOURACCYBgAA5hEAIAGTBQEAAAABBxEAAK8OACAYAADaEQAgGwAA2xEAIIMFAACVCgAg6AUAAJUKACDpBQAAlQoAIJgGAADcEQAgAZMFAQAAAAEHDwAAiBAAIBIAAIkQACAeAACKEAAgHwAAixAAICAAAIwQACDlBQAAlQoAIJgGAACNEAAgAZMFAQAAAAEAAZMFAQAAAAEDEAAA1BEAIBkAANYRACCYBgAA1xEAIAGTBQEAAAABBRQAAK8QACAVAACwEAAgFgAAsRAAIBwAALIQACCYBgAAsxAAIAQTAADYEQAgGgAA0hEAIOoFAACVCgAgmAYAANkRACABkwUBAAAAAQMQAADUEQAgFgAAsRAAIJgGAADVEQAgAZMFAQAAAAEDEAAA1BEAIB0AAOERACCYBgAA4hEAIAGTBQEAAAABAAGTBQEAAAABAZMFAQAAAAEAAAGTBQEAAAABAAGTBQEAAAABDAgAAOwRACAJAAC_EQAgMAAAxxEAIIEFAACVCgAgggUAAJUKACCEBQAAlQoAIIcFAACVCgAgmAUAAJUKACCZBQAAlQoAIJoFAACVCgAgmwUAAJUKACCYBgAA7REAIAgIAADGEQAgMAAAxxEAIIEFAACVCgAghwUAAJUKACCYBQAAlQoAIJkFAACVCgAgmgUAAJUKACCYBgAAyBEAIAGTBQEAAAABCQkAAL8RACAyAADCEQAgMwAA7hEAIIEFAACVCgAgggUAAJUKACCEBQAAlQoAIIcFAACVCgAgtwUAAJUKACCYBgAA7xEAIAGTBQEAAAABBAcAAIYNACA0AACHDQAgsQUAAJUKACCYBgAAiA0AIAGTBQEAAAABAAGTBQEAAAABBDwAALwRACA9AADyDQAg0wUAAJUKACCYBgAAvREAIAGTBQEAAAABAwMAALQRACD9BQAAlQoAIJgGAAC1EQAgAZMFAQAAAAEIJAAAnBEAIEIAAJoRACBDAACbEQAg_wQBAAAAAcMFAAAAhAYC2wUAAACDBgKABgEAAAABgQYBAAAAAQIAAADzAQAgTgAA9hEAIAMAAAD2AQAgTgAA9hEAIE8AAPoRACAKAAAA9gEAICQAAIIRACBCAACAEQAgQwAAgREAIEkAAPoRACD_BAEAmQoAIcMFAAD-EIQGItsFAAD9EIMGIoAGAQCZCgAhgQYBAJkKACEIJAAAghEAIEIAAIARACBDAACBEQAg_wQBAJkKACHDBQAA_hCEBiLbBQAA_RCDBiKABgEAmQoAIYEGAQCZCgAhBP8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAEH_wQBAAAAAYUFQAAAAAGGBUAAAAABvgUBAAAAAb8FAQAAAAH8BQEAAAAB_QUBAAAAAQIAAADcAQAgTgAA_BEAIAMAAADfAQAgTgAA_BEAIE8AAIASACAJAAAA3wEAIEkAAIASACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACG-BQEAmQoAIb8FAQCZCgAh_AUBAJkKACH9BQEAmgoAIQf_BAEAmQoAIYUFQACbCgAhhgVAAJsKACG-BQEAmQoAIb8FAQCZCgAh_AUBAJkKACH9BQEAmgoAIQwHAACBEAAgEAAA9BAAICMAAIIQACD_BAEAAAABhQVAAAAAAYYFQAAAAAG-BQEAAAABvwUBAAAAAdsFAAAA_wUC5wUBAAAAAfwFAQAAAAH9BQEAAAABAgAAAC4AIE4AAIESACADAAAALAAgTgAAgRIAIE8AAIUSACAOAAAALAAgBwAAtw8AIBAAAPMQACAjAAC4DwAgSQAAhRIAIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIb4FAQCZCgAhvwUBAJkKACHbBQAAtA__BSLnBQEAmQoAIfwFAQCZCgAh_QUBAJkKACEMBwAAtw8AIBAAAPMQACAjAAC4DwAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAhvgUBAJkKACG_BQEAmQoAIdsFAAC0D_8FIucFAQCZCgAh_AUBAJkKACH9BQEAmQoAIQsSAACEEAAgHgAAhRAAIB8AAIYQACAgAACHEAAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAbEFAQAAAAHbBQAAANsFAuUFAQAAAAECAAAAzwQAIE4AAIYSACADAAAA0gQAIE4AAIYSACBPAACKEgAgDQAAANIEACASAAC4DgAgHgAAuQ4AIB8AALoOACAgAAC7DgAgSQAAihIAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJkKACHbBQAA0w3bBSLlBQEAmgoAIQsSAAC4DgAgHgAAuQ4AIB8AALoOACAgAAC7DgAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACGxBQEAmQoAIdsFAADTDdsFIuUFAQCaCgAhCxgAAIMNACAiAACADQAgMwAAzw8AIDYAAIINACD_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAABtwUBAAAAAbsFAQAAAAHZBQEAAAABAgAAABAAIE4AAIsSACADAAAADgAgTgAAixIAIE8AAI8SACANAAAADgAgGAAAugsAICIAALcLACAzAADNDwAgNgAAuQsAIEkAAI8SACD_BAEAmQoAIYAFAQCZCgAhhQVAAJsKACGGBUAAmwoAIbcFAQCZCgAhuwUBAJkKACHZBQEAmQoAIQsYAAC6CwAgIgAAtwsAIDMAAM0PACA2AAC5CwAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACG3BQEAmQoAIbsFAQCZCgAh2QUBAJkKACEF_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAdMFAQAAAAEE_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAQIAAADuAgAgTgAAkRIAIAv_BAEAAAABgAUBAAAAAYMFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAHQBQEAAAAB2wUAAAD3BQLeBQEAAAAB9QUBAAAAAfgFAAAA-AUCAwAAAPECACBOAACREgAgTwAAlhIAIAYAAADxAgAgSQAAlhIAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhBP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhCw8AAIMQACASAACEEAAgHwAAhhAAICAAAIcQACD_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAABsQUBAAAAAdsFAAAA2wUC5QUBAAAAAQIAAADPBAAgTgAAlxIAIAMAAADSBAAgTgAAlxIAIE8AAJsSACANAAAA0gQAIA8AALcOACASAAC4DgAgHwAAug4AICAAALsOACBJAACbEgAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACGxBQEAmQoAIdsFAADTDdsFIuUFAQCaCgAhCw8AALcOACASAAC4DgAgHwAAug4AICAAALsOACD_BAEAmQoAIYAFAQCZCgAhhQVAAJsKACGGBUAAmwoAIbEFAQCZCgAh2wUAANMN2wUi5QUBAJoKACEIEAAAwRAAIP8EAQAAAAGFBUAAAAABhgVAAAAAAecFAQAAAAHrBUAAAAAB7AUBAAAAAe0FAgAAAAECAAAANgAgTgAAnBIAIAMAAAA0ACBOAACcEgAgTwAAoBIAIAoAAAA0ACAQAADAEAAgSQAAoBIAIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIecFAQCZCgAh6wVAAJsKACHsBQEAmQoAIe0FAgDCDQAhCBAAAMAQACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHnBQEAmQoAIesFQACbCgAh7AUBAJkKACHtBQIAwg0AIQsPAACDEAAgEgAAhBAAIB4AAIUQACAfAACGEAAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAbEFAQAAAAHbBQAAANsFAuUFAQAAAAECAAAAzwQAIE4AAKESACADAAAA0gQAIE4AAKESACBPAAClEgAgDQAAANIEACAPAAC3DgAgEgAAuA4AIB4AALkOACAfAAC6DgAgSQAApRIAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJkKACHbBQAA0w3bBSLlBQEAmgoAIQsPAAC3DgAgEgAAuA4AIB4AALkOACAfAAC6DgAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACGxBQEAmQoAIdsFAADTDdsFIuUFAQCaCgAhCw8AAIMQACASAACEEAAgHgAAhRAAICAAAIcQACD_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAABsQUBAAAAAdsFAAAA2wUC5QUBAAAAAQIAAADPBAAgTgAAphIAIAMAAADSBAAgTgAAphIAIE8AAKoSACANAAAA0gQAIA8AALcOACASAAC4DgAgHgAAuQ4AICAAALsOACBJAACqEgAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACGxBQEAmQoAIdsFAADTDdsFIuUFAQCaCgAhCw8AALcOACASAAC4DgAgHgAAuQ4AICAAALsOACD_BAEAmQoAIYAFAQCZCgAhhQVAAJsKACGGBUAAmwoAIbEFAQCZCgAh2wUAANMN2wUi5QUBAJoKACEIEAAAoRAAIP8EAQAAAAGFBUAAAAABhgVAAAAAAecFAQAAAAHrBUAAAAAB7AUBAAAAAe0FAgAAAAECAAAAWQAgTgAAqxIAIAMAAABOACBOAACrEgAgTwAArxIAIAoAAABOACAQAACgEAAgSQAArxIAIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIecFAQCZCgAh6wVAAJsKACHsBQEAmQoAIe0FAgDCDQAhCBAAAKAQACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHnBQEAmQoAIesFQACbCgAh7AUBAJkKACHtBQIAwg0AIQsPAACDEAAgHgAAhRAAIB8AAIYQACAgAACHEAAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAbEFAQAAAAHbBQAAANsFAuUFAQAAAAECAAAAzwQAIE4AALASACADAAAA0gQAIE4AALASACBPAAC0EgAgDQAAANIEACAPAAC3DgAgHgAAuQ4AIB8AALoOACAgAAC7DgAgSQAAtBIAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJkKACHbBQAA0w3bBSLlBQEAmgoAIQsPAAC3DgAgHgAAuQ4AIB8AALoOACAgAAC7DgAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACGxBQEAmQoAIdsFAADTDdsFIuUFAQCaCgAhCAYAAJkRACBCAACaEQAgQwAAmxEAIP8EAQAAAAHDBQAAAIQGAtsFAAAAgwYCgAYBAAAAAYEGAQAAAAECAAAA8wEAIE4AALUSACAK_wQBAAAAAYUFQAAAAAGGBUAAAAABpQUQAAAAAacFAQAAAAGxBQEAAAABsgWAAAAAAbMFQAAAAAG0BQEAAAABtQUBAAAAAQMAAAD2AQAgTgAAtRIAIE8AALoSACAKAAAA9gEAIAYAAP8QACBCAACAEQAgQwAAgREAIEkAALoSACD_BAEAmQoAIcMFAAD-EIQGItsFAAD9EIMGIoAGAQCZCgAhgQYBAJkKACEIBgAA_xAAIEIAAIARACBDAACBEQAg_wQBAJkKACHDBQAA_hCEBiLbBQAA_RCDBiKABgEAmQoAIYEGAQCZCgAhBf8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAHdBQAAAIAGAgY0AACFDQAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAbEFAQAAAAECAAAAigcAIE4AALwSACADAAAAlwEAIE4AALwSACBPAADAEgAgCAAAAJcBACA0AAD_CgAgSQAAwBIAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJoKACEGNAAA_woAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJoKACEG_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAbcFAQAAAAG7BQEAAAABEDwBAAAAAT4BAAAAAYUFQAAAAAGGBUAAAAABxwUBAAAAAcwFAQAAAAHOBQEAAAABzwUBAAAAAdAFAQAAAAHSBQAAANIFAtMFAQAAAAHUBQEAAAAB1QUBAAAAAdYFAQAAAAHXBQEAAAAB2AUBAAAAAQj_BAEAAAABhQVAAAAAAYYFQAAAAAG-BQEAAAABvwUBAAAAAdsFAAAA_wUC_AUBAAAAAf0FAQAAAAEIBgAAmREAICQAAJwRACBCAACaEQAg_wQBAAAAAcMFAAAAhAYC2wUAAACDBgKABgEAAAABgQYBAAAAAQIAAADzAQAgTgAAxBIAIAMAAAD2AQAgTgAAxBIAIE8AAMgSACAKAAAA9gEAIAYAAP8QACAkAACCEQAgQgAAgBEAIEkAAMgSACD_BAEAmQoAIcMFAAD-EIQGItsFAAD9EIMGIoAGAQCZCgAhgQYBAJkKACEIBgAA_xAAICQAAIIRACBCAACAEQAg_wQBAJkKACHDBQAA_hCEBiLbBQAA_RCDBiKABgEAmQoAIYEGAQCZCgAhBf8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAHdBQAAAOcFAgsiAACADQAgMwAAzw8AIDUAAIENACA2AACCDQAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAbcFAQAAAAG7BQEAAAAB2QUBAAAAAQIAAAAQACBOAADKEgAgAwAAAA4AIE4AAMoSACBPAADOEgAgDQAAAA4AICIAALcLACAzAADNDwAgNQAAuAsAIDYAALkLACBJAADOEgAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACG3BQEAmQoAIbsFAQCZCgAh2QUBAJkKACELIgAAtwsAIDMAAM0PACA1AAC4CwAgNgAAuQsAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhtwUBAJkKACG7BQEAmQoAIdkFAQCZCgAhBP8EAQAAAAGFBUAAAAABhgVAAAAAAfMFAgAAAAEG_wQBAAAAAYUFQAAAAAGGBUAAAAAB6wVAAAAAAewFAQAAAAHtBQIAAAABChQAAOELACAVAACWDwAgFgAA4gsAIP8EAQAAAAGFBUAAAAABhgVAAAAAAe4FQAAAAAHwBUAAAAAB8QUBAAAAAfIFAQAAAAECAAAAwQMAIE4AANESACADAAAAPAAgTgAA0RIAIE8AANUSACAMAAAAPAAgFAAAwAsAIBUAAJUPACAWAADBCwAgSQAA1RIAIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIe4FQACbCgAh8AVAAJsKACHxBQEAmQoAIfIFAQCZCgAhChQAAMALACAVAACVDwAgFgAAwQsAIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIe4FQACbCgAh8AVAAJsKACHxBQEAmQoAIfIFAQCZCgAhA_8EAQAAAAGFBUAAAAABhgVAAAAAAQb_BAEAAAABhQVAAAAAAYYFQAAAAAHrBUAAAAAB7AUBAAAAAe0FAgAAAAEKFAAA4QsAIBUAAJYPACAcAADjCwAg_wQBAAAAAYUFQAAAAAGGBUAAAAAB7gVAAAAAAfAFQAAAAAHxBQEAAAAB8gUBAAAAAQIAAADBAwAgTgAA2BIAIAMAAAA8ACBOAADYEgAgTwAA3BIAIAwAAAA8ACAUAADACwAgFQAAlQ8AIBwAAMILACBJAADcEgAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh7gVAAJsKACHwBUAAmwoAIfEFAQCZCgAh8gUBAJkKACEKFAAAwAsAIBUAAJUPACAcAADCCwAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh7gVAAJsKACHwBUAAmwoAIfEFAQCZCgAh8gUBAJkKACEF_wQBAAAAAYUFQAAAAAGGBUAAAAAB7gVAAAAAAe8FAQAAAAEG_wQBAAAAAYUFQAAAAAGGBUAAAAAB6wVAAAAAAewFAQAAAAHtBQIAAAABCw0AAP4PACAOAAD7DwAgEQAA-g8AICIAAPkQACAqAAD9DwAg_wQBAAAAAYMFAQAAAAGFBUAAAAABhgVAAAAAAdkFAQAAAAHdBQAAAIAGAgIAAABlACBOAADfEgAgA_8EAQAAAAG1BQEAAAAB3QUAAADkBQID_wQBAAAAAYQFAQAAAAHdBQAAAOMFAgP_BAEAAAAB3QUAAADgBQLgBQEAAAABAwAAAEoAIE4AAN8SACBPAADmEgAgDQAAAEoAIA0AAOAPACAOAADdDwAgEQAA3A8AICIAAPgQACAqAADfDwAgSQAA5hIAIP8EAQCZCgAhgwUBAJkKACGFBUAAmwoAIYYFQACbCgAh2QUBAJkKACHdBQAA2g-ABiILDQAA4A8AIA4AAN0PACARAADcDwAgIgAA-BAAICoAAN8PACD_BAEAmQoAIYMFAQCZCgAhhQVAAJsKACGGBUAAmwoAIdkFAQCZCgAh3QUAANoPgAYiEQkAAO8NACANAAD3DAAgEQAA9QwAID4AAPMMACA_AAD0DAAg_wQBAAAAAYAFAQAAAAGDBQEAAAABhAUBAAAAAYUFQAAAAAGGBUAAAAAB0AUBAAAAAdsFAAAA9wUC3gUBAAAAAfUFAQAAAAH4BQAAAPgFAvkFAQAAAAECAAAADAAgTgAA5xIAIAMAAAAKACBOAADnEgAgTwAA6xIAIBMAAAAKACAJAADtDQAgDQAA1gwAIBEAANQMACA-AADSDAAgPwAA0wwAIEkAAOsSACD_BAEAmQoAIYAFAQCZCgAhgwUBAJkKACGEBQEAmQoAIYUFQACbCgAhhgVAAJsKACHQBQEAmgoAIdsFAADPDPcFIt4FAQCaCgAh9QUBAJoKACH4BQAA0Az4BSL5BQEAmgoAIREJAADtDQAgDQAA1gwAIBEAANQMACA-AADSDAAgPwAA0wwAIP8EAQCZCgAhgAUBAJkKACGDBQEAmQoAIYQFAQCZCgAhhQVAAJsKACGGBUAAmwoAIdAFAQCaCgAh2wUAAM8M9wUi3gUBAJoKACH1BQEAmgoAIfgFAADQDPgFIvkFAQCaCgAhDRUAAOwQACAyAAD6DAAgNAAA-wwAIDcAAPkMACA5AAD9DAAgOgAA_gwAIP8EAQAAAAGABQEAAAABhQVAAAAAAYYFQAAAAAHyBQEAAAAB-gUBAAAAAfsFAQAAAAECAAAAngEAIE4AAOwSACADAAAAGwAgTgAA7BIAIE8AAPASACAPAAAAGwAgFQAA6xAAIDIAAP8LACA0AACADAAgNwAA_gsAIDkAAIIMACA6AACDDAAgSQAA8BIAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAh8gUBAJkKACH6BQEAmQoAIfsFAQCaCgAhDRUAAOsQACAyAAD_CwAgNAAAgAwAIDcAAP4LACA5AACCDAAgOgAAgwwAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAh8gUBAJkKACH6BQEAmQoAIfsFAQCaCgAhCxgAAIMNACAiAACADQAgMwAAzw8AIDUAAIENACD_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAABtwUBAAAAAbsFAQAAAAHZBQEAAAABAgAAABAAIE4AAPESACADAAAADgAgTgAA8RIAIE8AAPUSACANAAAADgAgGAAAugsAICIAALcLACAzAADNDwAgNQAAuAsAIEkAAPUSACD_BAEAmQoAIYAFAQCZCgAhhQVAAJsKACGGBUAAmwoAIbcFAQCZCgAhuwUBAJkKACHZBQEAmQoAIQsYAAC6CwAgIgAAtwsAIDMAAM0PACA1AAC4CwAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACG3BQEAmQoAIbsFAQCZCgAh2QUBAJkKACEHNwAA8A0AIP8EAQAAAAGABQEAAAABhQVAAAAAAYYFQAAAAAGxBQEAAAAB2wUAAADbBQICAAAAzAUAIE4AAPYSACADAAAAvAEAIE4AAPYSACBPAAD6EgAgCQAAALwBACA3AADUDQAgSQAA-hIAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJkKACHbBQAA0w3bBSIHNwAA1A0AIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJkKACHbBQAA0w3bBSINFQAA7BAAIDIAAPoMACA0AAD7DAAgOAAA_AwAIDkAAP0MACA6AAD-DAAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAfIFAQAAAAH6BQEAAAAB-wUBAAAAAQIAAACeAQAgTgAA-xIAIAMAAAAbACBOAAD7EgAgTwAA_xIAIA8AAAAbACAVAADrEAAgMgAA_wsAIDQAAIAMACA4AACBDAAgOQAAggwAIDoAAIMMACBJAAD_EgAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACHyBQEAmQoAIfoFAQCZCgAh-wUBAJoKACENFQAA6xAAIDIAAP8LACA0AACADAAgOAAAgQwAIDkAAIIMACA6AACDDAAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACHyBQEAmQoAIfoFAQCZCgAh-wUBAJoKACEL_wQBAAAAAYAFAQAAAAGDBQEAAAABhAUBAAAAAYUFQAAAAAGGBUAAAAAB0AUBAAAAAdsFAAAA9wUC9QUBAAAAAfgFAAAA-AUC-QUBAAAAAQgGAACZEQAgJAAAnBEAIEMAAJsRACD_BAEAAAABwwUAAACEBgLbBQAAAIMGAoAGAQAAAAGBBgEAAAABAgAAAPMBACBOAACBEwAgAwAAAPYBACBOAACBEwAgTwAAhRMAIAoAAAD2AQAgBgAA_xAAICQAAIIRACBDAACBEQAgSQAAhRMAIP8EAQCZCgAhwwUAAP4QhAYi2wUAAP0QgwYigAYBAJkKACGBBgEAmQoAIQgGAAD_EAAgJAAAghEAIEMAAIERACD_BAEAmQoAIcMFAAD-EIQGItsFAAD9EIMGIoAGAQCZCgAhgQYBAJkKACEF_wQBAAAAAYMFAQAAAAGFBUAAAAABhgVAAAAAAd0FAAAA3QUCDAcAAIEQACAQAAD0EAAgIQAAgBAAIP8EAQAAAAGFBUAAAAABhgVAAAAAAb4FAQAAAAG_BQEAAAAB2wUAAAD_BQLnBQEAAAAB_AUBAAAAAf0FAQAAAAECAAAALgAgTgAAhxMAIAMAAAAsACBOAACHEwAgTwAAixMAIA4AAAAsACAHAAC3DwAgEAAA8xAAICEAALYPACBJAACLEwAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAhvgUBAJkKACG_BQEAmQoAIdsFAAC0D_8FIucFAQCZCgAh_AUBAJkKACH9BQEAmQoAIQwHAAC3DwAgEAAA8xAAICEAALYPACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACG-BQEAmQoAIb8FAQCZCgAh2wUAALQP_wUi5wUBAJkKACH8BQEAmQoAIf0FAQCZCgAhCv8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAGlBRAAAAABpwUBAAAAAbEFAQAAAAGyBYAAAAABswVAAAAAAbUFAQAAAAENFQAA7BAAIDIAAPoMACA0AAD7DAAgNwAA-QwAIDgAAPwMACA6AAD-DAAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAfIFAQAAAAH6BQEAAAAB-wUBAAAAAQIAAACeAQAgTgAAjRMAIAMAAAAbACBOAACNEwAgTwAAkRMAIA8AAAAbACAVAADrEAAgMgAA_wsAIDQAAIAMACA3AAD-CwAgOAAAgQwAIDoAAIMMACBJAACREwAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACHyBQEAmQoAIfoFAQCZCgAh-wUBAJoKACENFQAA6xAAIDIAAP8LACA0AACADAAgNwAA_gsAIDgAAIEMACA6AACDDAAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACHyBQEAmQoAIfoFAQCZCgAh-wUBAJoKACENFQAA7BAAIDIAAPoMACA0AAD7DAAgNwAA-QwAIDgAAPwMACA5AAD9DAAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAfIFAQAAAAH6BQEAAAAB-wUBAAAAAQIAAACeAQAgTgAAkhMAIAMAAAAbACBOAACSEwAgTwAAlhMAIA8AAAAbACAVAADrEAAgMgAA_wsAIDQAAIAMACA3AAD-CwAgOAAAgQwAIDkAAIIMACBJAACWEwAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACHyBQEAmQoAIfoFAQCZCgAh-wUBAJoKACENFQAA6xAAIDIAAP8LACA0AACADAAgNwAA_gsAIDgAAIEMACA5AACCDAAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACHyBQEAmQoAIfoFAQCZCgAh-wUBAJoKACEMEAAA9BAAICEAAIAQACAjAACCEAAg_wQBAAAAAYUFQAAAAAGGBUAAAAABvgUBAAAAAb8FAQAAAAHbBQAAAP8FAucFAQAAAAH8BQEAAAAB_QUBAAAAAQIAAAAuACBOAACXEwAgCw0AAP4PACARAAD6DwAgIgAA-RAAICUAAPwPACAqAAD9DwAg_wQBAAAAAYMFAQAAAAGFBUAAAAABhgVAAAAAAdkFAQAAAAHdBQAAAIAGAgIAAABlACBOAACZEwAgB0EAAPENACD_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAABsQUBAAAAAdsFAAAA2wUCAgAAAMwFACBOAACbEwAgBzwAANAQACD_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAAB0wUBAAAAAfQFAQAAAAECAAAAtwEAIE4AAJ0TACAFJAAAqw4AICcAAK0OACApAACuDgAg_wQBAAAAAeQFAQAAAAECAAAA5gQAIE4AAJ8TACADAAAAcAAgTgAAnxMAIE8AAKMTACAHAAAAcAAgJAAAjA4AICcAAI4OACApAACPDgAgSQAAoxMAIP8EAQCZCgAh5AUBAJkKACEFJAAAjA4AICcAAI4OACApAACPDgAg_wQBAJkKACHkBQEAmQoAIQP_BAEAAAAB3QUAAADkBQLhBQEAAAABCv8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAGlBRAAAAABpwUBAAAAAbEFAQAAAAGyBYAAAAABswVAAAAAAbQFAQAAAAEDAAAASgAgTgAAmRMAIE8AAKgTACANAAAASgAgDQAA4A8AIBEAANwPACAiAAD4EAAgJQAA3g8AICoAAN8PACBJAACoEwAg_wQBAJkKACGDBQEAmQoAIYUFQACbCgAhhgVAAJsKACHZBQEAmQoAId0FAADaD4AGIgsNAADgDwAgEQAA3A8AICIAAPgQACAlAADeDwAgKgAA3w8AIP8EAQCZCgAhgwUBAJkKACGFBUAAmwoAIYYFQACbCgAh2QUBAJkKACHdBQAA2g-ABiIDAAAAvAEAIE4AAJsTACBPAACrEwAgCQAAALwBACBBAADVDQAgSQAAqxMAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJkKACHbBQAA0w3bBSIHQQAA1Q0AIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJkKACHbBQAA0w3bBSIDAAAAtAEAIE4AAJ0TACBPAACuEwAgCQAAALQBACA8AADFEAAgSQAArhMAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAh0wUBAJoKACH0BQEAmQoAIQc8AADFEAAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACHTBQEAmgoAIfQFAQCZCgAhC_8EAQAAAAGABQEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAAB0AUBAAAAAdsFAAAA9wUC3gUBAAAAAfUFAQAAAAH4BQAAAPgFAvkFAQAAAAEMCQAAqwsAIDMAALkMACD_BAEAAAABgAUBAAAAAYEFAQAAAAGCBQEAAAABhAUBAAAAAYUFQAAAAAGGBUAAAAABhwVAAAAAAbYFIAAAAAG3BQEAAAABAgAAABQAIE4AALATACADAAAAEgAgTgAAsBMAIE8AALQTACAOAAAAEgAgCQAAjQsAIDMAALcMACBJAAC0EwAg_wQBAJkKACGABQEAmQoAIYEFAQCaCgAhggUBAJoKACGEBQEAmgoAIYUFQACbCgAhhgVAAJsKACGHBUAAnAoAIbYFIACKCwAhtwUBAJoKACEMCQAAjQsAIDMAALcMACD_BAEAmQoAIYAFAQCZCgAhgQUBAJoKACGCBQEAmgoAIYQFAQCaCgAhhQVAAJsKACGGBUAAmwoAIYcFQACcCgAhtgUgAIoLACG3BQEAmgoAIQ__BAEAAAABgAUBAAAAAYEFAQAAAAGCBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABlwUBAAAAAZgFAQAAAAGZBQEAAAABmgUBAAAAAZsFEAAAAAGjBQAAAKMFArYFIAAAAAG5BQAAALkFAgYHAACEDQAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAbEFAQAAAAECAAAAigcAIE4AALYTACADAAAAlwEAIE4AALYTACBPAAC6EwAgCAAAAJcBACAHAAD-CgAgSQAAuhMAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJoKACEGBwAA_goAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAhsQUBAJoKACEJ_wQBAAAAAYAFAQAAAAGBBQEAAAABggUBAAAAAYUFQAAAAAGGBUAAAAABhwVAAAAAAbYFIAAAAAG3BQEAAAABBSQAAKsOACAmAACsDgAgKQAArg4AIP8EAQAAAAHkBQEAAAABAgAAAOYEACBOAAC8EwAgAwAAAHAAIE4AALwTACBPAADAEwAgBwAAAHAAICQAAIwOACAmAACNDgAgKQAAjw4AIEkAAMATACD_BAEAmQoAIeQFAQCZCgAhBSQAAIwOACAmAACNDgAgKQAAjw4AIP8EAQCZCgAh5AUBAJkKACED_wQBAAAAAd0FAAAA4wUC4QUBAAAAAQkMAAC3DQAgDQAAuA0AIP8EAQAAAAGFBUAAAAABhgVAAAAAAYcFQAAAAAGyBYAAAAABwQUgAAAAAcMFAAAAwwUCAgAAAKQGACBOAADCEwAgAwAAACEAIE4AAMITACBPAADGEwAgCwAAACEAIAwAAKENACANAACiDQAgSQAAxhMAIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIYcFQACcCgAhsgWAAAAAAcEFIACeDQAhwwUAAJ8NwwUiCQwAAKENACANAACiDQAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAhhwVAAJwKACGyBYAAAAABwQUgAJ4NACHDBQAAnw3DBSIGtAUBAAAAAbsFAQAAAAG9BQEAAAABvgUBAAAAAb8FAQAAAAHABQEAAAABCQsAALYNACANAAC4DQAg_wQBAAAAAYUFQAAAAAGGBUAAAAABhwVAAAAAAbIFgAAAAAHBBSAAAAABwwUAAADDBQICAAAApAYAIE4AAMgTACADAAAAIQAgTgAAyBMAIE8AAMwTACALAAAAIQAgCwAAoA0AIA0AAKINACBJAADMEwAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAhhwVAAJwKACGyBYAAAAABwQUgAJ4NACHDBQAAnw3DBSIJCwAAoA0AIA0AAKINACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACGHBUAAnAoAIbIFgAAAAAHBBSAAng0AIcMFAACfDcMFIgW0BQEAAAABugUBAAAAAbsFAQAAAAG8BQEAAAABvQUBAAAAAQb_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAAB-gUBAAAAAfsFAQAAAAEFJAAAqw4AICYAAKwOACAnAACtDgAg_wQBAAAAAeQFAQAAAAECAAAA5gQAIE4AAM8TACADAAAAcAAgTgAAzxMAIE8AANMTACAHAAAAcAAgJAAAjA4AICYAAI0OACAnAACODgAgSQAA0xMAIP8EAQCZCgAh5AUBAJkKACEFJAAAjA4AICYAAI0OACAnAACODgAg_wQBAJkKACHkBQEAmQoAIQP_BAEAAAAB3QUAAADgBQLhBQEAAAABBhMAALoQACD_BAEAAAABhQVAAAAAAYYFQAAAAAHqBQEAAAAB8wUCAAAAAQIAAAA6ACBOAADVEwAgCBAAAKsQACD_BAEAAAABhQVAAAAAAYYFQAAAAAHnBQEAAAAB6wVAAAAAAewFAQAAAAHtBQIAAAABAgAAAF0AIE4AANcTACADAAAAWwAgTgAA1xMAIE8AANsTACAKAAAAWwAgEAAAqhAAIEkAANsTACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHnBQEAmQoAIesFQACbCgAh7AUBAJkKACHtBQIAwg0AIQgQAACqEAAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAh5wUBAJkKACHrBUAAmwoAIewFAQCZCgAh7QUCAMINACEF_wQBAAAAAYUFQAAAAAGGBUAAAAAB6gUBAAAAAe4FQAAAAAEFEwAAmhAAIP8EAQAAAAGFBUAAAAABhgVAAAAAAeoFAQAAAAECAAAAUQAgTgAA3RMAIAsNAAD-DwAgDgAA-w8AIBEAAPoPACAiAAD5EAAgJQAA_A8AIP8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAHZBQEAAAAB3QUAAACABgICAAAAZQAgTgAA3xMAIAMAAABMACBOAADdEwAgTwAA4xMAIAcAAABMACATAACZEAAgSQAA4xMAIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIeoFAQCaCgAhBRMAAJkQACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACHqBQEAmgoAIQMAAABKACBOAADfEwAgTwAA5hMAIA0AAABKACANAADgDwAgDgAA3Q8AIBEAANwPACAiAAD4EAAgJQAA3g8AIEkAAOYTACD_BAEAmQoAIYMFAQCZCgAhhQVAAJsKACGGBUAAmwoAIdkFAQCZCgAh3QUAANoPgAYiCw0AAOAPACAOAADdDwAgEQAA3A8AICIAAPgQACAlAADeDwAg_wQBAJkKACGDBQEAmQoAIYUFQACbCgAhhgVAAJsKACHZBQEAmQoAId0FAADaD4AGIgX_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAAB6QUBAAAAAQMAAAA4ACBOAADVEwAgTwAA6hMAIAgAAAA4ACATAAC5EAAgSQAA6hMAIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIeoFAQCZCgAh8wUCAMINACEGEwAAuRAAIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIeoFAQCZCgAh8wUCAMINACEDAAAALAAgTgAAlxMAIE8AAO0TACAOAAAALAAgEAAA8xAAICEAALYPACAjAAC4DwAgSQAA7RMAIP8EAQCZCgAhhQVAAJsKACGGBUAAmwoAIb4FAQCZCgAhvwUBAJkKACHbBQAAtA__BSLnBQEAmQoAIfwFAQCZCgAh_QUBAJkKACEMEAAA8xAAICEAALYPACAjAAC4DwAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAhvgUBAJkKACG_BQEAmQoAIdsFAAC0D_8FIucFAQCZCgAh_AUBAJkKACH9BQEAmQoAIQb_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAABuwUBAAAAAdkFAQAAAAENFQAA7BAAIDIAAPoMACA3AAD5DAAgOAAA_AwAIDkAAP0MACA6AAD-DAAg_wQBAAAAAYAFAQAAAAGFBUAAAAABhgVAAAAAAfIFAQAAAAH6BQEAAAAB-wUBAAAAAQIAAACeAQAgTgAA7xMAIA0VAADsEAAgNAAA-wwAIDcAAPkMACA4AAD8DAAgOQAA_QwAIDoAAP4MACD_BAEAAAABgAUBAAAAAYUFQAAAAAGGBUAAAAAB8gUBAAAAAfoFAQAAAAH7BQEAAAABAgAAAJ4BACBOAADxEwAgC_8EAQAAAAGFBUAAAAABnAUBAAAAAaEFEAAAAAGjBQAAAKMFAqQFEAAAAAGlBRAAAAABpgUQAAAAAacFAQAAAAGpBQEAAAABqgWAAAAAAQMAAAAbACBOAADxEwAgTwAA9hMAIA8AAAAbACAVAADrEAAgNAAAgAwAIDcAAP4LACA4AACBDAAgOQAAggwAIDoAAIMMACBJAAD2EwAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACHyBQEAmQoAIfoFAQCZCgAh-wUBAJoKACENFQAA6xAAIDQAAIAMACA3AAD-CwAgOAAAgQwAIDkAAIIMACA6AACDDAAg_wQBAJkKACGABQEAmQoAIYUFQACbCgAhhgVAAJsKACHyBQEAmQoAIfoFAQCZCgAh-wUBAJoKACEP_wQBAAAAAYAFAQAAAAGBBQEAAAABggUBAAAAAYQFAQAAAAGFBUAAAAABhgVAAAAAAYcFQAAAAAGXBQEAAAABmAUBAAAAAZkFAQAAAAGbBRAAAAABowUAAACjBQK2BSAAAAABuQUAAAC5BQIDAAAAGwAgTgAA7xMAIE8AAPoTACAPAAAAGwAgFQAA6xAAIDIAAP8LACA3AAD-CwAgOAAAgQwAIDkAAIIMACA6AACDDAAgSQAA-hMAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAh8gUBAJkKACH6BQEAmQoAIfsFAQCaCgAhDRUAAOsQACAyAAD_CwAgNwAA_gsAIDgAAIEMACA5AACCDAAgOgAAgwwAIP8EAQCZCgAhgAUBAJkKACGFBUAAmwoAIYYFQACbCgAh8gUBAJkKACH6BQEAmQoAIfsFAQCaCgAhCf8EAQAAAAGABQEAAAABgQUBAAAAAYIFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABtgUgAAAAAQsOAAD7DwAgEQAA-g8AICIAAPkQACAlAAD8DwAgKgAA_Q8AIP8EAQAAAAGDBQEAAAABhQVAAAAAAYYFQAAAAAHZBQEAAAAB3QUAAACABgICAAAAZQAgTgAA_BMAIBEJAADvDQAgEQAA9QwAID4AAPMMACA_AAD0DAAgQAAA9gwAIP8EAQAAAAGABQEAAAABgwUBAAAAAYQFAQAAAAGFBUAAAAABhgVAAAAAAdAFAQAAAAHbBQAAAPcFAt4FAQAAAAH1BQEAAAAB-AUAAAD4BQL5BQEAAAABAgAAAAwAIE4AAP4TACAJCwAAtg0AIAwAALcNACD_BAEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABsgWAAAAAAcEFIAAAAAHDBQAAAMMFAgIAAACkBgAgTgAAgBQAIAv_BAEAAAABhQVAAAAAAaEFEAAAAAGjBQAAAKMFAqQFEAAAAAGlBRAAAAABpgUQAAAAAacFAQAAAAGoBQEAAAABqQUBAAAAAaoFgAAAAAEF_wQBAAAAAYUFQAAAAAGdBRAAAAABnwUAAACfBQKgBUAAAAABAwAAAEoAIE4AAPwTACBPAACGFAAgDQAAAEoAIA4AAN0PACARAADcDwAgIgAA-BAAICUAAN4PACAqAADfDwAgSQAAhhQAIP8EAQCZCgAhgwUBAJkKACGFBUAAmwoAIYYFQACbCgAh2QUBAJkKACHdBQAA2g-ABiILDgAA3Q8AIBEAANwPACAiAAD4EAAgJQAA3g8AICoAAN8PACD_BAEAmQoAIYMFAQCZCgAhhQVAAJsKACGGBUAAmwoAIdkFAQCZCgAh3QUAANoPgAYiAwAAAAoAIE4AAP4TACBPAACJFAAgEwAAAAoAIAkAAO0NACARAADUDAAgPgAA0gwAID8AANMMACBAAADVDAAgSQAAiRQAIP8EAQCZCgAhgAUBAJkKACGDBQEAmQoAIYQFAQCZCgAhhQVAAJsKACGGBUAAmwoAIdAFAQCaCgAh2wUAAM8M9wUi3gUBAJoKACH1BQEAmgoAIfgFAADQDPgFIvkFAQCaCgAhEQkAAO0NACARAADUDAAgPgAA0gwAID8AANMMACBAAADVDAAg_wQBAJkKACGABQEAmQoAIYMFAQCZCgAhhAUBAJkKACGFBUAAmwoAIYYFQACbCgAh0AUBAJoKACHbBQAAzwz3BSLeBQEAmgoAIfUFAQCaCgAh-AUAANAM-AUi-QUBAJoKACEDAAAAIQAgTgAAgBQAIE8AAIwUACALAAAAIQAgCwAAoA0AIAwAAKENACBJAACMFAAg_wQBAJkKACGFBUAAmwoAIYYFQACbCgAhhwVAAJwKACGyBYAAAAABwQUgAJ4NACHDBQAAnw3DBSIJCwAAoA0AIAwAAKENACD_BAEAmQoAIYUFQACbCgAhhgVAAJsKACGHBUAAnAoAIbIFgAAAAAHBBSAAng0AIcMFAACfDcMFIg4IAADHCgAg_wQBAAAAAYAFAQAAAAGBBQEAAAABgwUBAAAAAYQFAQAAAAGFBUAAAAABhgVAAAAAAYcFQAAAAAGXBQEAAAABmAUBAAAAAZkFAQAAAAGaBQEAAAABmwUQAAAAAQIAAACRAQAgTgAAjRQAIAMAAACMAQAgTgAAjRQAIE8AAJEUACAQAAAAjAEAIAgAAMYKACBJAACRFAAg_wQBAJkKACGABQEAmQoAIYEFAQCaCgAhgwUBAJkKACGEBQEAmQoAIYUFQACbCgAhhgVAAJsKACGHBUAAnAoAIZcFAQCZCgAhmAUBAJoKACGZBQEAmgoAIZoFAQCaCgAhmwUQAKgKACEOCAAAxgoAIP8EAQCZCgAhgAUBAJkKACGBBQEAmgoAIYMFAQCZCgAhhAUBAJkKACGFBUAAmwoAIYYFQACbCgAhhwVAAJwKACGXBQEAmQoAIZgFAQCaCgAhmQUBAJoKACGaBQEAmgoAIZsFEACoCgAhDwoAAPYKACAOAAD3CgAgJAAA-AoAICsAAPkKACD_BAEAAAABgwUBAAAAAYUFQAAAAAGGBUAAAAABpQUQAAAAAacFAQAAAAGxBQEAAAABsgWAAAAAAbMFQAAAAAG0BQEAAAABtQUBAAAAAQIAAAApACBOAACSFAAgAwAAACcAIE4AAJIUACBPAACWFAAgEQAAACcAIAoAANwKACAOAADdCgAgJAAA3goAICsAAN8KACBJAACWFAAg_wQBAJkKACGDBQEAmQoAIYUFQACbCgAhhgVAAJsKACGlBRAAqAoAIacFAQCaCgAhsQUBAJkKACGyBYAAAAABswVAAJwKACG0BQEAmgoAIbUFAQCZCgAhDwoAANwKACAOAADdCgAgJAAA3goAICsAAN8KACD_BAEAmQoAIYMFAQCZCgAhhQVAAJsKACGGBUAAmwoAIaUFEACoCgAhpwUBAJoKACGxBQEAmQoAIbIFgAAAAAGzBUAAnAoAIbQFAQCaCgAhtQUBAJkKACEJ_wQBAAAAAYAFAQAAAAGBBQEAAAABggUBAAAAAYMFAQAAAAGEBQEAAAABhQVAAAAAAYYFQAAAAAGHBUAAAAABAgAAAPAHACBOAACXFAAgAwAAAI4BACBOAACXFAAgTwAAmxQAIAsAAACOAQAgSQAAmxQAIP8EAQCZCgAhgAUBAJkKACGBBQEAmgoAIYIFAQCaCgAhgwUBAJkKACGEBQEAmQoAIYUFQACbCgAhhgVAAJsKACGHBUAAnAoAIQn_BAEAmQoAIYAFAQCZCgAhgQUBAJoKACGCBQEAmgoAIYMFAQCZCgAhhAUBAJkKACGFBUAAmwoAIYYFQACbCgAhhwVAAJwKACESCAAAxAwAIAkAAKcLACD_BAEAAAABgAUBAAAAAYEFAQAAAAGCBQEAAAABhAUBAAAAAYUFQAAAAAGGBUAAAAABhwVAAAAAAZcFAQAAAAGYBQEAAAABmQUBAAAAAZoFAQAAAAGbBRAAAAABowUAAACjBQK2BSAAAAABuQUAAAC5BQICAAAAGAAgTgAAnBQAIA8KAAD2CgAgDgAA9woAICQAAPgKACAtAAD6CgAg_wQBAAAAAYMFAQAAAAGFBUAAAAABhgVAAAAAAaUFEAAAAAGnBQEAAAABsQUBAAAAAbIFgAAAAAGzBUAAAAABtAUBAAAAAbUFAQAAAAECAAAAKQAgTgAAnhQAIAMAAAAWACBOAACcFAAgTwAAohQAIBQAAAAWACAIAADCDAAgCQAAmwsAIEkAAKIUACD_BAEAmQoAIYAFAQCZCgAhgQUBAJoKACGCBQEAmgoAIYQFAQCaCgAhhQVAAJsKACGGBUAAmwoAIYcFQACcCgAhlwUBAJkKACGYBQEAmgoAIZkFAQCaCgAhmgUBAJoKACGbBRAAmQsAIaMFAAC1CqMFIrYFIACKCwAhuQUAAJgLuQUiEggAAMIMACAJAACbCwAg_wQBAJkKACGABQEAmQoAIYEFAQCaCgAhggUBAJoKACGEBQEAmgoAIYUFQACbCgAhhgVAAJsKACGHBUAAnAoAIZcFAQCZCgAhmAUBAJoKACGZBQEAmgoAIZoFAQCaCgAhmwUQAJkLACGjBQAAtQqjBSK2BSAAigsAIbkFAACYC7kFIgMAAAAnACBOAACeFAAgTwAApRQAIBEAAAAnACAKAADcCgAgDgAA3QoAICQAAN4KACAtAADgCgAgSQAApRQAIP8EAQCZCgAhgwUBAJkKACGFBUAAmwoAIYYFQACbCgAhpQUQAKgKACGnBQEAmgoAIbEFAQCZCgAhsgWAAAAAAbMFQACcCgAhtAUBAJoKACG1BQEAmQoAIQ8KAADcCgAgDgAA3QoAICQAAN4KACAtAADgCgAg_wQBAJkKACGDBQEAmQoAIYUFQACbCgAhhgVAAJsKACGlBRAAqAoAIacFAQCaCgAhsQUBAJkKACGyBYAAAAABswVAAJwKACG0BQEAmgoAIbUFAQCZCgAhC_8EAQAAAAGFBUAAAAABnAUBAAAAAaEFEAAAAAGjBQAAAKMFAqQFEAAAAAGlBRAAAAABpgUQAAAAAacFAQAAAAGoBQEAAAABqgWAAAAAAQz_BAEAAAABgAUBAAAAAYEFAQAAAAGDBQEAAAABhAUBAAAAAYUFQAAAAAGGBUAAAAABhwVAAAAAAZcFAQAAAAGYBQEAAAABmQUBAAAAAZsFEAAAAAECBQACEQAEAgMFAQQAAwEDBgAEBgcBJMgBE0IJBUPHARYCEQAEPwAGAwQAPDcNB0HEAQUHBAA7CQAIDb8BDhEAEz61ATc_vQEGQL4BJwgEADYVAAkypQEMNKYBCzekAQc4pwEoOaoBEDqtAREGBAA1GKEBGSIAFDMACjWfAQg2oAEpAwQANAcRCTQVCwQEADMJmQEIMhkMM5gBCgQEADIIGgsJHAgwIA0DLAAOLosBDDGNAS4GBAAtCiIPDgAHJAATK4QBDS2IASwEBAASCyQQDCYRDSoOAgkACAoADwIJAAgKAA8BDSsABwQAKw2CAQ4ObwcRAAQiABQlcSYqgQEdBQQAJQdnCRAAFSFmEyNrJAYEACMPLxQSMxYeNxcfWh8gXhsCEAAVEQAEAwQAIhAAFR07GAITABcXPRkFBAAhFAAYFQAJFkEaHEgdAhMAGxdEGQMEABwQABUWQhoBFkMAAxFLExhJGRtNHgITTx8aVB0DBAAgEAAVGVIeARlTAAIWVQAcVgABHVcABQ9fABJgAB5hAB9iACBjAAEiABQDB20AIWwAI24ABQQAKiQAEyZ1Jyd5KCl9KQIOAAclACYCCQAIJQAmAiUAJigACQMmfgAnfwApgAEAAQ2DAQABLAAOAiuJAQAtigEAAwQAMQiPAS8wlAENAgQAMC-SAS4BL5MBAAEwlQEAATCWAQABMpoBAAIHmwEANJwBAAI1ogEANqMBAAYyrwEANLABADeuAQA4sQEAObIBADqzAQADBAA6PAA4PboBBwIEADk7uAE3ATu5AQABPbsBAAINwQEAQMABAAI3xQEAQcYBAAADBAA_VABAVQBBAAAAAwQAP1QAQFUAQQMEAERUAEVVAEYAAAADBABEVABFVQBGAwQASVQASlUASwAAAAMEAElUAEpVAEsDBABOVABPVQBQAAAAAwQATlQAT1UAUAMEAFNUAFRVAFUAAAADBABTVABUVQBVAwQAWFQAWVUAWgAAAAMEAFhUAFlVAFoDBABdVABeVQBfAAAAAwQAXVQAXlUAXwMEAGJUAGNVAGQAAAADBABiVABjVQBkAwQAZ1QAaFUAaQAAAAMEAGdUAGhVAGkDBABsVABtVQBuAAAAAwQAbFQAbVUAbgUEAHFUAHRVAHXiAQBy4wEAcwAAAAAABQQAcVQAdFUAdeIBAHLjAQBzBQQAeFQAe1UAfOIBAHnjAQB6AAAAAAAFBAB4VAB7VQB84gEAeeMBAHoDBAB_VACAAVUAgQEAAAADBAB_VACAAVUAgQEFBACEAVQAhwFVAIgB4gEAhQHjAQCGAQAAAAAABQQAhAFUAIcBVQCIAeIBAIUB4wEAhgEDBACLAVQAjAFVAI0BAAAAAwQAiwFUAIwBVQCNAQUEAJABVACTAVUAlAHiAQCRAeMBAJIBAAAAAAAFBACQAVQAkwFVAJQB4gEAkQHjAQCSAQMEAJcBVACYAVUAmQEAAAADBACXAVQAmAFVAJkBAwQAnAFUAJ0BVQCeAQAAAAMEAJwBVACdAVUAngEDBAChAVQAogFVAKMBAAAAAwQAoQFUAKIBVQCjAQMEAKYBVACnAVUAqAEAAAADBACmAVQApwFVAKgBAwQAqwFUAKwBVQCtAQAAAAMEAKsBVACsAVUArQEDBACwAVQAsQFVALIBAAAAAwQAsAFUALEBVQCyAQMEALUBVAC2AVUAtwEAAAADBAC1AVQAtgFVALcBAwQAugFUALsBVQC8AQAAAAMEALoBVAC7AVUAvAEDBAC_AVQAwAFVAMEBAAAAAwQAvwFUAMABVQDBAQMEAMQBVADFAVUAxgEAAAADBADEAVQAxQFVAMYBAwQAyQFUAMoBVQDLAQAAAAMEAMkBVADKAVUAywEAAwQAzwFUANABVQDRAQAAAAMEAM8BVADQAVUA0QEABQQA1QFUANgBVQDZAeIBANYB4wEA1wEAAAAAAAUEANUBVADYAVUA2QHiAQDWAeMBANcBAwQA3AFUAN0BVQDeAQAAAAMEANwBVADdAVUA3gEDBADhAVQA4gFVAOMBAAAAAwQA4QFUAOIBVQDjAQMEAOYBVADnAVUA6AEAAAADBADmAVQA5wFVAOgBBQQA6wFUAO4BVQDvAeIBAOwB4wEA7QEAAAAAAAUEAOsBVADuAVUA7wHiAQDsAeMBAO0BAwQA8gFUAPMBVQD0AQAAAAMEAPIBVADzAVUA9AEDBAD3AVQA-AFVAPkBAAAAAwQA9wFUAPgBVQD5AQUEAPwBVAD_AVUAgALiAQD9AeMBAP4BAAAAAAAFBAD8AVQA_wFVAIAC4gEA_QHjAQD-AQUEAIMCVACGAlUAhwLiAQCEAuMBAIUCAAAAAAAFBACDAlQAhgJVAIcC4gEAhALjAQCFAgUEAIoCVACNAlUAjgLiAQCLAuMBAIwCAAAAAAAFBACKAlQAjQJVAI4C4gEAiwLjAQCMAgUEAJECVACUAlUAlQLiAQCSAuMBAJMCAAAAAAAFBACRAlQAlAJVAJUC4gEAkgLjAQCTAgMEAJgCVACZAlUAmgIAAAADBACYAlQAmQJVAJoCRAIBRckBAUbKAQFHywEBSMwBAUrOAQFL0AE9TNIBAU3UAT1Q1QEBUdYBAVLXAT1W2gE-V9sBQljdAQJZ3gECWuEBAlviAQJc4wECXeUBAl7nAT1f6QECYOsBPWHsAQJi7QECY-4BPWTxAUNl8gFHZvQBBGf1AQRo-AEEafkBBGr6AQRr_AEEbP4BPW2AAgRuggI9b4MCBHCEAgRxhQI9cogCSHOJAkx0igITdYsCE3aMAhN3jQITeI4CE3mQAhN6kgI9e5QCE3yWAj19lwITfpgCE3-ZAj2AAZwCTYEBnQJRggGeAhSDAZ8CFIQBoAIUhQGhAhSGAaICFIcBpAIUiAGmAj2JAagCFIoBqgI9iwGrAhSMAawCFI0BrQI9jgGwAlKPAbECVpABsgIJkQGzAgmSAbQCCZMBtQIJlAG2AgmVAbgCCZYBugI9lwG8AgmYAb4CPZkBvwIJmgHAAgmbAcECPZwBxAJXnQHFAlueAcYCCJ8BxwIIoAHIAgihAckCCKIBygIIowHMAgikAc4CPaUB0AIIpgHSAj2nAdMCCKgB1AIIqQHVAj2qAdgCXKsB2QJgrAHaAgetAdsCB64B3AIHrwHdAgewAd4CB7EB4AIHsgHiAj2zAeQCB7QB5gI9tQHnAge2AegCB7cB6QI9uAHsAmG5Ae0CZboB7wI4uwHwAji8AfMCOL0B9AI4vgH1Aji_AfcCOMAB-QI9wQH7AjjCAf0CPcMB_gI4xAH_AjjFAYADPcYBgwNmxwGEA2rIAYUDN8kBhgM3ygGHAzfLAYgDN8wBiQM3zQGLAzfOAY0DPc8BjwM30AGRAz3RAZIDN9IBkwM30wGUAz3UAZcDa9UBmANv1gGZAxfXAZoDF9gBmwMX2QGcAxfaAZ0DF9sBnwMX3AGhAz3dAaMDF94BpQM93wGmAxfgAacDF-EBqAM95AGrA3DlAawDduYBrQMY5wGuAxjoAa8DGOkBsAMY6gGxAxjrAbMDGOwBtQM97QG3AxjuAbkDPe8BugMY8AG7AxjxAbwDPfIBvwN38wHAA330AcIDGfUBwwMZ9gHFAxn3AcYDGfgBxwMZ-QHJAxn6AcsDPfsBzQMZ_AHPAz39AdADGf4B0QMZ_wHSAz2AAtUDfoEC1gOCAYIC1wMbgwLYAxuEAtkDG4UC2gMbhgLbAxuHAt0DG4gC3wM9iQLhAxuKAuMDPYsC5AMbjALlAxuNAuYDPY4C6QODAY8C6gOJAZAC6wMakQLsAxqSAu0DGpMC7gMalALvAxqVAvEDGpYC8wM9lwL1AxqYAvcDPZkC-AMamgL5AxqbAvoDPZwC_QOKAZ0C_gOOAZ4C_wMfnwKABB-gAoEEH6ECggQfogKDBB-jAoUEH6QChwQ9pQKJBB-mAosEPacCjAQfqAKNBB-pAo4EPaoCkQSPAasCkgSVAawCkwQerQKUBB6uApUEHq8ClgQesAKXBB6xApkEHrICmwQ9swKdBB60Ap8EPbUCoAQetgKhBB63AqIEPbgCpQSWAbkCpgSaAboCpwQduwKoBB28AqkEHb0CqgQdvgKrBB2_Aq0EHcACrwQ9wQKxBB3CArMEPcMCtAQdxAK1BB3FArYEPcYCuQSbAccCugSfAcgCuwQWyQK8BBbKAr0EFssCvgQWzAK_BBbNAsEEFs4CwwQ9zwLFBBbQAscEPdECyAQW0gLJBBbTAsoEPdQCzQSgAdUCzgSkAdYC0AQV1wLRBBXYAtQEFdkC1QQV2gLWBBXbAtgEFdwC2gQ93QLcBBXeAt4EPd8C3wQV4ALgBBXhAuEEPeIC5ASlAeMC5QSpAeQC5wQm5QLoBCbmAuoEJucC6wQm6ALsBCbpAu4EJuoC8AQ96wLyBCbsAvQEPe0C9QQm7gL2BCbvAvcEPfAC-gSqAfEC-wSuAfIC_AQn8wL9BCf0Av4EJ_UC_wQn9gKABSf3AoIFJ_gChAU9-QKGBSf6AogFPfsCiQUn_AKKBSf9AosFPf4CjgWvAf8CjwWzAYADkAUogQORBSiCA5IFKIMDkwUohAOUBSiFA5YFKIYDmAU9hwOaBSiIA5wFPYkDnQUoigOeBSiLA58FPYwDogW0AY0DowW4AY4DpAUpjwOlBSmQA6YFKZEDpwUpkgOoBSmTA6oFKZQDrAU9lQOuBSmWA7AFPZcDsQUpmAOyBSmZA7MFPZoDtgW5AZsDtwW9AZwDuAUFnQO5BQWeA7oFBZ8DuwUFoAO8BQWhA74FBaIDwAU9owPCBQWkA8QFPaUDxQUFpgPGBQWnA8cFPagDygW-AakDywXCAaoDzQUGqwPOBQasA9AFBq0D0QUGrgPSBQavA9QFBrAD1gU9sQPYBQayA9oFPbMD2wUGtAPcBQa1A90FPbYD4AXDAbcD4QXHAbgD4gUkuQPjBSS6A-QFJLsD5QUkvAPmBSS9A-gFJL4D6gU9vwPsBSTAA-4FPcED7wUkwgPwBSTDA_EFPcQD9AXIAcUD9QXMAcYD9wXNAccD-AXNAcgD-wXNAckD_AXNAcoD_QXNAcsD_wXNAcwDgQY9zQODBs0BzgOFBj3PA4YGzQHQA4cGzQHRA4gGPdIDiwbOAdMDjAbSAdQDjgbTAdUDjwbTAdYDkgbTAdcDkwbTAdgDlAbTAdkDlgbTAdoDmAY92wOaBtMB3AOcBj3dA50G0wHeA54G0wHfA58GPeADogbUAeEDowbaAeIDpQYP4wOmBg_kA6gGD-UDqQYP5gOqBg_nA6wGD-gDrgY96QOwBg_qA7IGPesDswYP7AO0Bg_tA7UGPe4DuAbbAe8DuQbfAfADugYQ8QO7BhDyA7wGEPMDvQYQ9AO-BhD1A8AGEPYDwgY99wPEBhD4A8YGPfkDxwYQ-gPIBhD7A8kGPfwDzAbgAf0DzQbkAf4DzgYR_wPPBhGABNAGEYEE0QYRggTSBhGDBNQGEYQE1gY9hQTYBhGGBNoGPYcE2wYRiATcBhGJBN0GPYoE4AblAYsE4QbpAYwE4gYMjQTjBgyOBOQGDI8E5QYMkATmBgyRBOgGDJIE6gY9kwTsBgyUBO4GPZUE7wYMlgTwBgyXBPEGPZgE9AbqAZkE9QbwAZoE9gYLmwT3BgucBPgGC50E-QYLngT6BgufBPwGC6AE_gY9oQSABwuiBIIHPaMEgwcLpASEBwulBIUHPaYEiAfxAacEiQf1AagEiwcKqQSMBwqqBI4HCqsEjwcKrASQBwqtBJIHCq4ElAc9rwSWBwqwBJgHPbEEmQcKsgSaBwqzBJsHPbQEngf2AbUEnwf6AbYEoAcOtwShBw64BKIHDrkEowcOugSkBw67BKYHDrwEqAc9vQSqBw6-BKwHPb8ErQcOwASuBw7BBK8HPcIEsgf7AcMEsweBAsQEtAcNxQS1Bw3GBLYHDccEtwcNyAS4Bw3JBLoHDcoEvAc9ywS-Bw3MBMAHPc0EwQcNzgTCBw3PBMMHPdAExgeCAtEExweIAtIEyAcs0wTJByzUBMoHLNUEywcs1gTMByzXBM4HLNgE0Ac92QTSByzaBNQHPdsE1Qcs3ATWByzdBNcHPd4E2geJAt8E2wePAuAE3Acu4QTdBy7iBN4HLuME3wcu5ATgBy7lBOIHLuYE5Ac95wTmBy7oBOgHPekE6Qcu6gTqBy7rBOsHPewE7geQAu0E7weWAu4E8Qcv7wTyBy_wBPQHL_EE9Qcv8gT2By_zBPgHL_QE-gc99QT8By_2BP4HPfcE_wcv-ASACC_5BIEIPfoEhAiXAvsEhQibAg" + strings: JSON.parse("[\"where\",\"orderBy\",\"cursor\",\"accounts\",\"_count\",\"admin\",\"admin_account\",\"business_activities\",\"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\",\"payments\",\"good\",\"services\",\"sales_invoice_items\",\"service\",\"goods\",\"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\",\"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\",\"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\",\"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\",\"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\",\"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\",\"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\",\"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\",\"sku\",\"local_sku\",\"barcode\",\"category_id\",\"base_sale_price\",\"invoice_id\",\"amount\",\"PaymentMethodType\",\"payment_method\",\"paid_at\",\"quantity\",\"UnitType\",\"unit_type\",\"unit_price\",\"total_amount\",\"discount\",\"notes\",\"good_id\",\"service_id\",\"payload\",\"string_contains\",\"string_starts_with\",\"string_ends_with\",\"array_starts_with\",\"array_ends_with\",\"array_contains\",\"code\",\"unknown_customer\",\"invoice_date\",\"customer_id\",\"pos_id\",\"is_default_guild_good\",\"guild_id\",\"GoodPricingModel\",\"pricing_model\",\"business_activity_id\",\"company_name\",\"economic_code\",\"registration_number\",\"postal_code\",\"first_name\",\"last_name\",\"national_id\",\"mobile_number\",\"is_favorite\",\"CustomerType\",\"type\",\"message\",\"createdAt\",\"version\",\"build_number\",\"is_minimum_supported\",\"ApplicationReleaseType\",\"release_type\",\"ApplicationPlatform\",\"platform\",\"release_date\",\"uuid\",\"app_version\",\"model\",\"ApplicationPublisher\",\"publisher\",\"os_version\",\"sdk_version\",\"release_number\",\"user_agent\",\"browser_name\",\"fcm_token\",\"consumer_id\",\"PartnerStatus\",\"status\",\"ProviderRole\",\"role\",\"provider_id\",\"BusinessRole\",\"business_id\",\"permission_id\",\"ComplexRole\",\"POSRole\",\"consumer_account_id\",\"logo_url\",\"PartnerRole\",\"partner_id\",\"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\",\"serial_number\",\"POSStatus\",\"POSType\",\"pos_type\",\"device_id\",\"branch_code\",\"address\",\"registration_code\",\"national_code\",\"ConsumerType\",\"ConsumerStatus\",\"ConsumerRole\",\"username\",\"password\",\"AccountStatus\",\"AccountType\",\"admin_id\",\"business_activity_id_economic_code\",\"business_activity_id_national_id\",\"permission_id_business_id\",\"permission_id_complex_id\",\"permission_id_pos_id\",\"partner_id_registration_code\",\"mobile_number_consumer_id\",\"partner_id_national_code\",\"economic_code_consumer_id\",\"is\",\"isNot\",\"connectOrCreate\",\"upsert\",\"createMany\",\"set\",\"disconnect\",\"delete\",\"connect\",\"updateMany\",\"deleteMany\",\"_relevance\",\"increment\",\"decrement\",\"multiply\",\"divide\"]"), + graph: "pBWnAswECgUAANMKACARAACtCgAglQUAANIKADCWBQAAAwAQlwUAANIKADCYBQEAAAABnAUBAAAAAZ4FQADKCAAhnwVAAMoIACGfBgEAyAgAIQEAAAABACAKBQAA0woAIBEAAK0KACCVBQAA0goAMJYFAAADABCXBQAA0goAMJgFAQDICAAhnAUBAMgIACGeBUAAyggAIZ8FQADKCAAhnwYBAMgIACEDBQAA4RIAIBEAAMsSACC0BgAA4hIAIAMAAAADACABAAAEADACAAABACABAAAAAwAgAQAAAAMAIAsRAACtCgAgPQAA0QoAIJUFAADPCgAwlgUAAAgAEJcFAADPCgAwmAUBAMgIACGcBQEAyAgAIZ4FQADKCAAhnwVAAMoIACH4BQAA0Ar4BSL5BQEAyAgAIQEAAAAIACADEQAAyxIAID0AAN4SACC0BgAA4BIAIAsRAACtCgAgPQAA0QoAIJUFAADPCgAwlgUAAAgAEJcFAADPCgAwmAUBAAAAAZwFAQAAAAGeBUAAyggAIZ8FQADKCAAh-AUAANAK-AUi-QUBAMgIACEDAAAACAAgAQAACgAwAgAACwAgFQ0AAPkIACARAACqCQAgJQAAkAoAIDwAAM0KACA9AADOCgAgPgAAqwkAIJUFAADKCgAwlgUAAA0AEJcFAADKCgAwmAUBAMgIACGZBQEAyAgAIZwFAQDICAAhnQUBAMgIACGeBUAAyggAIZ8FQADKCAAh6wUBAMkIACH2BQAAywqRBiL5BQEAyQgAIY8GAQDJCAAhkgYAAMwKkgYikwYBAMkIACELDQAA-g0AIBEAAO4OACAlAAC0EgAgPAAA3RIAID0AAN4SACA-AADvDgAg6wUAANQKACD5BQAA1AoAII8GAADUCgAgkwYAANQKACC0BgAA3xIAIBUNAAD5CAAgEQAAqgkAICUAAJAKACA8AADNCgAgPQAAzgoAID4AAKsJACCVBQAAygoAMJYFAAANABCXBQAAygoAMJgFAQAAAAGZBQEAyAgAIZwFAQAAAAGdBQEAyAgAIZ4FQADKCAAhnwVAAMoIACHrBQEAyQgAIfYFAADLCpEGIvkFAQDJCAAhjwYBAAAAAZIGAADMCpIGIpMGAQDJCAAhAwAAAA0AIAEAAA4AMAIAAA8AIBIOAACnCgAgGAAAnQoAIDEAAMEKACAyAADGCgAgNAAAxwoAIDUAAK0JACA2AADICgAgNwAAyQoAIJUFAADFCgAwlgUAABEAEJcFAADFCgAwmAUBAMgIACGZBQEAyAgAIZ4FQADKCAAhnwVAAMoIACHQBQEAyAgAIdUFAQDICAAh9AUBAMgIACEJDgAAyBIAIBgAAL8SACAxAADWEgAgMgAA1xIAIDQAANkSACA1AADxDgAgNgAA2hIAIDcAANsSACC0BgAA3BIAIBMOAACnCgAgGAAAnQoAIDEAAMEKACAyAADGCgAgNAAAxwoAIDUAAK0JACA2AADICgAgNwAAyQoAIJUFAADFCgAwlgUAABEAEJcFAADFCgAwmAUBAAAAAZkFAQDICAAhngVAAMoIACGfBUAAyggAIdAFAQDICAAh1QUBAMgIACH0BQEAyAgAIagGAADECgAgAwAAABEAIAEAABIAMAIAABMAIBAlAADDCgAgMQAAwQoAIDIAAMIKACCVBQAAwAoAMJYFAAAVABCXBQAAwAoAMJgFAQDICAAhmQUBAMgIACGaBQEAyQgAIZsFAQDJCAAhnQUBAMkIACGeBUAAyggAIZ8FQADKCAAhoAVAAMsIACHPBSAAiAkAIdAFAQDJCAAhCSUAALQSACAxAADWEgAgMgAA1xIAIJoFAADUCgAgmwUAANQKACCdBQAA1AoAIKAFAADUCgAg0AUAANQKACC0BgAA2BIAIBAlAADDCgAgMQAAwQoAIDIAAMIKACCVBQAAwAoAMJYFAAAVABCXBQAAwAoAMJgFAQAAAAGZBQEAyAgAIZoFAQDJCAAhmwUBAMkIACGdBQEAyQgAIZ4FQADKCAAhnwVAAMoIACGgBUAAywgAIc8FIACICQAh0AUBAMkIACEDAAAAFQAgAQAAFgAwAgAAFwAgFggAAL4KACAJAAC_CgAgLwAAhQoAIJUFAAC7CgAwlgUAABkAEJcFAAC7CgAwmAUBAMgIACGZBQEAyAgAIZoFAQDJCAAhmwUBAMkIACGeBUAAyggAIZ8FQADKCAAhoAVAAMsIACGwBQEAyAgAIbEFAQDJCAAhsgUBAMkIACGzBQEAyQgAIbQFEAC9CgAhvAUAALgKvAUizwUgAIgJACHSBQAAvArSBSLTBQEAyQgAIQwIAADUEgAgCQAAtRAAIC8AAK4SACCaBQAA1AoAIJsFAADUCgAgoAUAANQKACCxBQAA1AoAILIFAADUCgAgswUAANQKACC0BQAA1AoAINMFAADUCgAgtAYAANUSACAWCAAAvgoAIAkAAL8KACAvAACFCgAglQUAALsKADCWBQAAGQAQlwUAALsKADCYBQEAAAABmQUBAMgIACGaBQEAyQgAIZsFAQDJCAAhngVAAMoIACGfBUAAyggAIaAFQADLCAAhsAUBAMgIACGxBQEAAAABsgUBAAAAAbMFAQDJCAAhtAUQAL0KACG8BQAAuAq8BSLPBSAAiAkAIdIFAAC8CtIFItMFAQDJCAAhAwAAABkAIAEAABoAMAIAABsAIAEAAAAVACABAAAAEQAgEisAAIgKACAtAAC5CgAgMAAAugoAIJUFAAC3CgAwlgUAAB8AEJcFAAC3CgAwmAUBAMgIACGeBUAAyggAIbUFAQDICAAhugUQAIMKACG8BQAAuAq8BSK9BRAAgwoAIb4FEACDCgAhvwUQAIMKACHABQEAyQgAIcEFAQDJCAAhwgUBAMkIACHDBQAAiwkAIAgrAACwEgAgLQAA0RIAIDAAANISACDABQAA1AoAIMEFAADUCgAgwgUAANQKACDDBQAA1AoAILQGAADTEgAgEisAAIgKACAtAAC5CgAgMAAAugoAIJUFAAC3CgAwlgUAAB8AEJcFAAC3CgAwmAUBAAAAAZ4FQADKCAAhtQUBAMgIACG6BRAAgwoAIbwFAAC4CrwFIr0FEACDCgAhvgUQAIMKACG_BRAAgwoAIcAFAQDJCAAhwQUBAMkIACHCBQEAyQgAIcMFAACLCQAgAwAAAB8AIAEAACAAMAIAACEAIAwLAAD3CAAgDAAA-AgAIA0AAPkIACCVBQAA9AgAMJYFAAAjABCXBQAA9AgAMJgFAQDICAAhngVAAMoIACGfBUAAyggAIaAFQADLCAAh3AUgAPUIACHeBQAA9gjeBSIBAAAAIwAgDQkAAMIJACAKAAD-CQAglQUAAIAKADCWBQAAJQAQlwUAAIAKADDNBQEAyAgAIdMFAQDICAAh1QUBAMkIACHXBQEAyAgAIdgFAQDICAAh2QUBAMgIACHaBQEAyAgAIdsFAQDICAAhAQAAACUAIAsJAADCCQAgCgAA_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_CAAhAxAAALgSACAdAADGEgAgtAYAAMcSACAMEAAAlgoAIB0AAKQKACCVBQAAowoAMJYFAABEABCXBQAAowoAMJgFAQAAAAGeBUAAyggAIZ8FQADKCAAhggYBAMgIACGGBkAAyggAIYcGAQAAAAGIBgIA_wgAIQMAAABEACABAABFADACAABGACAKFAAAogoAIBcAAJ0KACCVBQAAoQoAMJYFAABIABCXBQAAoQoAMJgFAQDICAAhngVAAMoIACGfBUAAyggAIYUGAQDICAAhjQYCAP8IACEDFAAAxBIAIBcAAL8SACC0BgAAxRIAIAoUAACiCgAgFwAAnQoAIJUFAAChCgAwlgUAAEgAEJcFAAChCgAwmAUBAAAAAZ4FQADKCAAhnwVAAMoIACGFBgEAyAgAIY0GAgD_CAAhAwAAAEgAIAEAAEkAMAIAAEoAIA4JAADCCQAgFQAAwQkAIBYAAMMJACAcAADECQAglQUAAMAJADCWBQAATAAQlwUAAMAJADCYBQEAyAgAIZ4FQADKCAAhnwVAAMoIACHTBQEAyAgAIYkGQADKCAAhiwZAAMoIACGMBgEAyAgAIQEAAABMACALFAAAoAoAIBcAAJ0KACCVBQAAnwoAMJYFAABOABCXBQAAnwoAMJgFAQDICAAhngVAAMoIACGfBUAAyggAIYUGAQDICAAhiQZAAMoIACGKBgEAyQgAIQQUAADCEgAgFwAAvxIAIIoGAADUCgAgtAYAAMMSACALFAAAoAoAIBcAAJ0KACCVBQAAnwoAMJYFAABOABCXBQAAnwoAMJgFAQAAAAGeBUAAyggAIZ8FQADKCAAhhQYBAMgIACGJBkAAyggAIYoGAQDJCAAhAwAAAE4AIAEAAE8AMAIAAFAAIAMAAABOACABAABPADACAABQACABAAAATgAgAQAAAEwAIAwRAAD1CQAgGAAAnQoAIBsAAJ4KACCVBQAAnAoAMJYFAABVABCXBQAAnAoAMJgFAQDICAAhnAUBAMkIACGeBUAAyggAIZ8FQADKCAAhgwYBAMkIACGEBgEAyQgAIQcRAADuDgAgGAAAvxIAIBsAAMASACCcBQAA1AoAIIMGAADUCgAghAYAANQKACC0BgAAwRIAIAwRAAD1CQAgGAAAnQoAIBsAAJ4KACCVBQAAnAoAMJYFAABVABCXBQAAnAoAMJgFAQAAAAGcBQEAAAABngVAAMoIACGfBUAAyggAIYMGAQDJCAAhhAYBAAAAAQMAAABVACABAABWADACAABXACABAAAATAAgAQAAAC4AIAkUAACaCgAgGgAAmwoAIJUFAACZCgAwlgUAAFsAEJcFAACZCgAwmAUBAMgIACGeBUAAyggAIZ8FQADKCAAhhQYBAMkIACEBAAAAWwAgDBAAAJYKACAZAACYCgAglQUAAJcKADCWBQAAXQAQlwUAAJcKADCYBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGCBgEAyAgAIYYGQADKCAAhhwYBAMgIACGIBgIA_wgAIQEAAABdACAEFAAAvBIAIBoAAL0SACCFBgAA1AoAILQGAAC-EgAgCRQAAJoKACAaAACbCgAglQUAAJkKADCWBQAAWwAQlwUAAJkKADCYBQEAAAABngVAAMoIACGfBUAAyggAIYUGAQDJCAAhAwAAAFsAIAEAAF8AMAIAAGAAIAEAAABbACABAAAAVQAgAQAAAE4AIAEAAABVACABAAAASAAgAxAAALgSACAZAAC6EgAgtAYAALsSACAMEAAAlgoAIBkAAJgKACCVBQAAlwoAMJYFAABdABCXBQAAlwoAMJgFAQAAAAGeBUAAyggAIZ8FQADKCAAhggYBAMgIACGGBkAAyggAIYcGAQAAAAGIBgIA_wgAIQMAAABdACABAABnADACAABoACAMEAAAlgoAIBYAAMMJACCVBQAAlQoAMJYFAABqABCXBQAAlQoAMJgFAQDICAAhngVAAMoIACGfBUAAyggAIYIGAQDICAAhhgZAAMoIACGHBgEAyAgAIYgGAgD_CAAhAxAAALgSACAWAAC2EAAgtAYAALkSACAMEAAAlgoAIBYAAMMJACCVBQAAlQoAMJYFAABqABCXBQAAlQoAMJgFAQAAAAGeBUAAyggAIZ8FQADKCAAhggYBAMgIACGGBkAAyggAIYcGAQAAAAGIBgIA_wgAIQMAAABqACABAABrADACAABsACABAAAAOQAgAQAAADcAIAEAAABAACABAAAARAAgAQAAAF0AIAEAAABqACABAAAAQAAgAQAAAC4AIAEAAAARACABAAAAMwAgAQAAAA0AIAkiAACqCQAgJAAAqwkAICYAAKwJACAoAACtCQAglQUAAKkJADCWBQAAeQAQlwUAAKkJADCYBQEAyAgAIf8FAQDICAAhAQAAAHkAIAkhAACUCgAgIwAAjAoAIJUFAACSCgAwlgUAAHsAEJcFAACSCgAwmAUBAMgIACHOBQEAyAgAIfgFAACTCv8FIvwFAQDICAAhAyEAALYSACAjAACyEgAgtAYAALcSACAKIQAAlAoAICMAAIwKACCVBQAAkgoAMJYFAAB7ABCXBQAAkgoAMJgFAQAAAAHOBQEAyAgAIfgFAACTCv8FIvwFAQDICAAhpAYAAJEKACADAAAAewAgAQAAfAAwAgAAfQAgCSMAAIwKACAlAACQCgAglQUAAI4KADCWBQAAfwAQlwUAAI4KADCYBQEAyAgAIZ0FAQDICAAh-AUAAI8K_gUi_AUBAMgIACEDIwAAshIAICUAALQSACC0BgAAtRIAIAojAACMCgAgJQAAkAoAIJUFAACOCgAwlgUAAH8AEJcFAACOCgAwmAUBAAAAAZ0FAQDICAAh-AUAAI8K_gUi_AUBAMgIACGjBgAAjQoAIAMAAAB_ACABAACAAQAwAgAAgQEAIAkjAACMCgAgJwAAwgkAIJUFAACKCgAwlgUAAIMBABCXBQAAigoAMJgFAQDICAAh-AUAAIsK-wUi-wUBAMgIACH8BQEAyAgAIQMjAACyEgAgJwAAtRAAILQGAACzEgAgCiMAAIwKACAnAADCCQAglQUAAIoKADCWBQAAgwEAEJcFAACKCgAwmAUBAAAAAfgFAACLCvsFIvsFAQDICAAh_AUBAMgIACGiBgAAiQoAIAMAAACDAQAgAQAAhAEAMAIAAIUBACABAAAAewAgAQAAAH8AIAEAAACDAQAgAQAAAFUAIAMAAAApACABAAAqADACAAArACABAAAAKQAgAwAAAB8AIAEAACAAMAIAACEAIAorAACICgAglQUAAIYKADCWBQAAjgEAEJcFAACGCgAwmAUBAMgIACGeBUAAyggAIbUFAQDICAAhtgUQAIMKACG4BQAAhwq4BSK5BUAAyggAIQIrAACwEgAgtAYAALESACAKKwAAiAoAIJUFAACGCgAwlgUAAI4BABCXBQAAhgoAMJgFAQAAAAGeBUAAyggAIbUFAQDICAAhtgUQAIMKACG4BQAAhwq4BSK5BUAAyggAIQMAAACOAQAgAQAAjwEAMAIAAJABACABAAAAHwAgAQAAAI4BACABAAAAGQAgEggAAIQKACAvAACFCgAglQUAAIIKADCWBQAAlQEAEJcFAACCCgAwmAUBAMgIACGZBQEAyAgAIZoFAQDJCAAhnAUBAMgIACGdBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGgBUAAywgAIbAFAQDICAAhsQUBAMkIACGyBQEAyQgAIbMFAQDJCAAhtAUQAIMKACEBAAAAlQEAIA0uAADMCAAglQUAAMcIADCWBQAAlwEAEJcFAADHCAAwmAUBAMgIACGZBQEAyAgAIZoFAQDJCAAhmwUBAMkIACGcBQEAyAgAIZ0FAQDICAAhngVAAMoIACGfBUAAyggAIaAFQADLCAAhAQAAAJcBACAICAAArRIAIC8AAK4SACCaBQAA1AoAIKAFAADUCgAgsQUAANQKACCyBQAA1AoAILMFAADUCgAgtAYAAK8SACASCAAAhAoAIC8AAIUKACCVBQAAggoAMJYFAACVAQAQlwUAAIIKADCYBQEAAAABmQUBAMgIACGaBQEAyQgAIZwFAQDICAAhnQUBAMgIACGeBUAAyggAIZ8FQADKCAAhoAVAAMsIACGwBQEAAAABsQUBAAAAAbIFAQAAAAGzBQEAyQgAIbQFEACDCgAhAwAAAJUBACABAACZAQAwAgAAmgEAIAEAAACVAQAgAwAAAB8AIAEAACAAMAIAACEAIAEAAAAfACABAAAAHwAgCgcAAN4IACAzAADfCAAglQUAAN0IADCWBQAAoAEAEJcFAADdCAAwmAUBAMgIACGZBQEAyAgAIZ4FQADKCAAhnwVAAMoIACHKBQEAyQgAIQEAAACgAQAgDgkAAMIJACAzAADfCAAgOAAAlwkAIDkAAKwJACCVBQAAgQoAMJYFAACiAQAQlwUAAIEKADCYBQEAyAgAIZkFAQDICAAhngVAAMoIACGfBUAAyggAIdMFAQDICAAhlAYBAMgIACGVBgEAyQgAIQEAAACiAQAgAQAAABkAIAEAAAARACABAAAAFQAgBgkAALUQACAzAADGDQAgOAAAsg4AIDkAAPAOACCVBgAA1AoAILQGAACsEgAgDgkAAMIJACAzAADfCAAgOAAAlwkAIDkAAKwJACCVBQAAgQoAMJYFAACiAQAQlwUAAIEKADCYBQEAAAABmQUBAMgIACGeBUAAyggAIZ8FQADKCAAh0wUBAMgIACGUBgEAyAgAIZUGAQDJCAAhAwAAAKIBACABAACnAQAwAgAAqAEAIAMAAACDAQAgAQAAhAEAMAIAAIUBACABAAAATAAgAwAAABkAIAEAABoAMAIAABsAIAQJAAC1EAAgCgAAqRIAINUFAADUCgAgtAYAAKsSACAOCQAAwgkAIAoAAP4JACCVBQAAgAoAMJYFAAAlABCXBQAAgAoAMM0FAQAAAAHTBQEAyAgAIdUFAQDJCAAh1wUBAMgIACHYBQEAyAgAIdkFAQDICAAh2gUBAMgIACHbBQEAyAgAIaEGAAD_CQAgAwAAACUAIAEAAK0BADACAACuAQAgBAkAALUQACAKAACpEgAg1gUAANQKACC0BgAAqhIAIAwJAADCCQAgCgAA_gkAIJUFAAD9CQAwlgUAACcAEJcFAAD9CQAwzQUBAAAAAdMFAQDICAAh1AUBAMgIACHVBQEAyAgAIdYFAQDJCAAh1wUBAMgIACGgBgAA_AkAIAMAAAAnACABAACwAQAwAgAAsQEAIAEAAACiAQAgAQAAAIMBACABAAAAGQAgAQAAACUAIAEAAAAnACADAAAADQAgAQAADgAwAgAADwAgAwAAABUAIAEAABYAMAIAABcAIAMAAAB_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_AADzCQAgQAAA9AkAIJUFAADvCQAwlgUAAP0BABCXBQAA7wkAMJgFAQAAAAHeBQAA8QmfBiL2BQAA8AmeBiKbBgEAAAABnAYBAMgIACEBAAAA-gEAIAEAAAD6AQAgDAYAAPIJACAiAAD1CQAgPwAA8wkAIEAAAPQJACCVBQAA7wkAMJYFAAD9AQAQlwUAAO8JADCYBQEAyAgAId4FAADxCZ8GIvYFAADwCZ4GIpsGAQDICAAhnAYBAMgIACEFBgAAixIAICIAAO4OACA_AACMEgAgQAAAjRIAILQGAACOEgAgAwAAAP0BACABAAD-AQAwAgAA-gEAIAMAAAD9AQAgAQAA_gEAMAIAAPoBACADAAAA_QEAIAEAAP4BADACAAD6AQAgCQYAAIcSACAiAACKEgAgPwAAiBIAIEAAAIkSACCYBQEAAAAB3gUAAACfBgL2BQAAAJ4GApsGAQAAAAGcBgEAAAABAUYAAIICACAFmAUBAAAAAd4FAAAAnwYC9gUAAACeBgKbBgEAAAABnAYBAAAAAQFGAACEAgAwCQYAAO0RACAiAADwEQAgPwAA7hEAIEAAAO8RACCYBQEA2AoAId4FAADsEZ8GIvYFAADrEZ4GIpsGAQDYCgAhnAYBANgKACECAAAA-gEAIEYAAIYCACAFmAUBANgKACHeBQAA7BGfBiL2BQAA6xGeBiKbBgEA2AoAIZwGAQDYCgAhAgAAAP0BACBGAACIAgAgAwAAAPoBACBLAACCAgAgTAAAhgIAIAEAAAD6AQAgAQAAAP0BACADBAAA6BEAIFEAAOoRACBSAADpEQAgCJUFAADoCQAwlgUAAI4CABCXBQAA6AkAMJgFAQC5CAAh3gUAAOoJnwYi9gUAAOkJngYimwYBALkIACGcBgEAuQgAIQMAAAD9AQAgAQAAjQIAMFAAAI4CACADAAAA_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_EAAgngVAANoKACGfBUAA2goAIdgFAQDYCgAh2QUBANgKACHbBQEA2AoAIfQFAQDYCgAhggYBANgKACGXBgEA2AoAIQIAAAA-ACBGAADFAgAgCJ4FQADaCgAhnwVAANoKACHYBQEA2AoAIdkFAQDYCgAh2wUBANgKACH0BQEA2AoAIYIGAQDYCgAhlwYBANgKACECAAAANwAgRgAAxwIAIAMAAAA-ACBLAADBAgAgTAAAxQIAIAEAAAA-ACABAAAANwAgAwQAAPwQACBRAAD-EAAgUgAA_RAAIAuVBQAA1QkAMJYFAADNAgAQlwUAANUJADCeBUAAuwgAIZ8FQAC7CAAh2AUBALkIACHZBQEAuQgAIdsFAQC5CAAh9AUBALkIACGCBgEAuQgAIZcGAQC5CAAhAwAAADcAIAEAAMwCADBQAADNAgAgAwAAADcAIAEAAD0AMAIAAD4AIAEAAABCACABAAAAQgAgAwAAAEAAIAEAAEEAMAIAAEIAIAMAAABAACABAABBADACAABCACADAAAAQAAgAQAAQQAwAgAAQgAgCA4AAOgPACAQAAD7EAAgmQUBAAAAAZ4FQAAAAAGfBUAAAAAB9AUBAAAAAYIGAQAAAAGWBgEAAAABAUYAANUCACAGmQUBAAAAAZ4FQAAAAAGfBUAAAAAB9AUBAAAAAYIGAQAAAAGWBgEAAAABAUYAANcCADAIDgAA5g8AIBAAAPoQACCZBQEA2AoAIZ4FQADaCgAhnwVAANoKACH0BQEA2AoAIYIGAQDYCgAhlgYBANgKACECAAAAQgAgRgAA2QIAIAaZBQEA2AoAIZ4FQADaCgAhnwVAANoKACH0BQEA2AoAIYIGAQDYCgAhlgYBANgKACECAAAAQAAgRgAA2wIAIAMAAABCACBLAADVAgAgTAAA2QIAIAEAAABCACABAAAAQAAgAwQAAPcQACBRAAD5EAAgUgAA-BAAIAmVBQAA1AkAMJYFAADhAgAQlwUAANQJADCZBQEAuQgAIZ4FQAC7CAAhnwVAALsIACH0BQEAuQgAIYIGAQC5CAAhlgYBALkIACEDAAAAQAAgAQAA4AIAMFAAAOECACADAAAAQAAgAQAAQQAwAgAAQgAgAQAAABMAIAEAAAATACADAAAAEQAgAQAAEgAwAgAAEwAgAwAAABEAIAEAABIAMAIAABMAIAMAAAARACABAAASADACAAATACAPDgAAvA0AIBgAAL8NACAxAADADQAgMgAA9hAAIDQAAL0NACA1AAC-DQAgNgAAwQ0AIDcAAMINACCYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAAB0AUBAAAAAdUFAQAAAAH0BQEAAAABAUYAAOkCACAHmAUBAAAAAZkFAQAAAAGeBUAAAAABnwVAAAAAAdAFAQAAAAHVBQEAAAAB9AUBAAAAAQFGAADrAgAwDw4AAPYLACAYAAD5CwAgMQAA-gsAIDIAAPUQACA0AAD3CwAgNQAA-AsAIDYAAPsLACA3AAD8CwAgmAUBANgKACGZBQEA2AoAIZ4FQADaCgAhnwVAANoKACHQBQEA2AoAIdUFAQDYCgAh9AUBANgKACECAAAAEwAgRgAA7QIAIAeYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIdAFAQDYCgAh1QUBANgKACH0BQEA2AoAIQIAAAARACBGAADvAgAgAwAAABMAIEsAAOkCACBMAADtAgAgAQAAABMAIAEAAAARACADBAAA8hAAIFEAAPQQACBSAADzEAAgCpUFAADTCQAwlgUAAPUCABCXBQAA0wkAMJgFAQC5CAAhmQUBALkIACGeBUAAuwgAIZ8FQAC7CAAh0AUBALkIACHVBQEAuQgAIfQFAQC5CAAhAwAAABEAIAEAAPQCADBQAAD1AgAgAwAAABEAIAEAABIAMAIAABMAIAEAAACoAQAgAQAAAKgBACADAAAAogEAIAEAAKcBADACAACoAQAgAwAAAKIBACABAACnAQAwAgAAqAEAIAMAAACiAQAgAQAApwEAMAIAAKgBACALCQAA8RAAIDMAALkNACA4AAC4DQAgOQAAug0AIJgFAQAAAAGZBQEAAAABngVAAAAAAZ8FQAAAAAHTBQEAAAABlAYBAAAAAZUGAQAAAAEBRgAA_QIAIAeYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAAB0wUBAAAAAZQGAQAAAAGVBgEAAAABAUYAAP8CADALCQAA8BAAIDMAAOgMACA4AADnDAAgOQAA6QwAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh0wUBANgKACGUBgEA2AoAIZUGAQDZCgAhAgAAAKgBACBGAACBAwAgB5gFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh0wUBANgKACGUBgEA2AoAIZUGAQDZCgAhAgAAAKIBACBGAACDAwAgAwAAAKgBACBLAAD9AgAgTAAAgQMAIAEAAACoAQAgAQAAAKIBACAEBAAA7RAAIFEAAO8QACBSAADuEAAglQYAANQKACAKlQUAANIJADCWBQAAiQMAEJcFAADSCQAwmAUBALkIACGZBQEAuQgAIZ4FQAC7CAAhnwVAALsIACHTBQEAuQgAIZQGAQC5CAAhlQYBALoIACEDAAAAogEAIAEAAIgDADBQAACJAwAgAwAAAKIBACABAACnAQAwAgAAqAEAIAEAAAAPACABAAAADwAgAwAAAA0AIAEAAA4AMAIAAA8AIAMAAAANACABAAAOADACAAAPACADAAAADQAgAQAADgAwAgAADwAgEg0AALYNACARAAC0DQAgJQAAnw4AIDwAALINACA9AACzDQAgPgAAtQ0AIJgFAQAAAAGZBQEAAAABnAUBAAAAAZ0FAQAAAAGeBUAAAAABnwVAAAAAAesFAQAAAAH2BQAAAJEGAvkFAQAAAAGPBgEAAAABkgYAAACSBgKTBgEAAAABAUYAAJEDACAMmAUBAAAAAZkFAQAAAAGcBQEAAAABnQUBAAAAAZ4FQAAAAAGfBUAAAAAB6wUBAAAAAfYFAAAAkQYC-QUBAAAAAY8GAQAAAAGSBgAAAJIGApMGAQAAAAEBRgAAkwMAMBINAACVDQAgEQAAkw0AICUAAJ0OACA8AACRDQAgPQAAkg0AID4AAJQNACCYBQEA2AoAIZkFAQDYCgAhnAUBANgKACGdBQEA2AoAIZ4FQADaCgAhnwVAANoKACHrBQEA2QoAIfYFAACODZEGIvkFAQDZCgAhjwYBANkKACGSBgAAjw2SBiKTBgEA2QoAIQIAAAAPACBGAACVAwAgDJgFAQDYCgAhmQUBANgKACGcBQEA2AoAIZ0FAQDYCgAhngVAANoKACGfBUAA2goAIesFAQDZCgAh9gUAAI4NkQYi-QUBANkKACGPBgEA2QoAIZIGAACPDZIGIpMGAQDZCgAhAgAAAA0AIEYAAJcDACADAAAADwAgSwAAkQMAIEwAAJUDACABAAAADwAgAQAAAA0AIAcEAADqEAAgUQAA7BAAIFIAAOsQACDrBQAA1AoAIPkFAADUCgAgjwYAANQKACCTBgAA1AoAIA-VBQAAywkAMJYFAACdAwAQlwUAAMsJADCYBQEAuQgAIZkFAQC5CAAhnAUBALkIACGdBQEAuQgAIZ4FQAC7CAAhnwVAALsIACHrBQEAuggAIfYFAADMCZEGIvkFAQC6CAAhjwYBALoIACGSBgAAzQmSBiKTBgEAuggAIQMAAAANACABAACcAwAwUAAAnQMAIAMAAAANACABAAAOADACAAAPACAIDwAAygkAIJUFAADJCQAwlgUAAKMDABCXBQAAyQkAMJgFAQAAAAGZBQEAyAgAIZ4FQADKCAAhnwVAAMoIACEBAAAAoAMAIAEAAACgAwAgCA8AAMoJACCVBQAAyQkAMJYFAACjAwAQlwUAAMkJADCYBQEAyAgAIZkFAQDICAAhngVAAMoIACGfBUAAyggAIQIPAADoEAAgtAYAAOkQACADAAAAowMAIAEAAKQDADACAACgAwAgAwAAAKMDACABAACkAwAwAgAAoAMAIAMAAACjAwAgAQAApAMAMAIAAKADACAFDwAA5xAAIJgFAQAAAAGZBQEAAAABngVAAAAAAZ8FQAAAAAEBRgAAqAMAIASYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAABAUYAAKoDADAFDwAA2hAAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhAgAAAKADACBGAACsAwAgBJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhAgAAAKMDACBGAACuAwAgAwAAAKADACBLAACoAwAgTAAArAMAIAEAAACgAwAgAQAAAKMDACADBAAA1xAAIFEAANkQACBSAADYEAAgB5UFAADICQAwlgUAALQDABCXBQAAyAkAMJgFAQC5CAAhmQUBALkIACGeBUAAuwgAIZ8FQAC7CAAhAwAAAKMDACABAACzAwAwUAAAtAMAIAMAAACjAwAgAQAApAMAMAIAAKADACABAAAAwQEAIAEAAADBAQAgAwAAAL4BACABAADAAQAwAgAAwQEAIAMAAAC-AQAgAQAAwAEAMAIAAMEBACADAAAAvgEAIAEAAMABADACAADBAQAgCDoAANUQACA7AADWEAAgmAUBAAAAAZkFAQAAAAGeBUAAAAABnwVAAAAAAe4FAQAAAAGOBgEAAAABAUYAALwDACAGmAUBAAAAAZkFAQAAAAGeBUAAAAABnwVAAAAAAe4FAQAAAAGOBgEAAAABAUYAAL4DADAIOgAAyhAAIDsAAMsQACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIe4FAQDZCgAhjgYBANgKACECAAAAwQEAIEYAAMADACAGmAUBANgKACGZBQEA2AoAIZ4FQADaCgAhnwVAANoKACHuBQEA2QoAIY4GAQDYCgAhAgAAAL4BACBGAADCAwAgAwAAAMEBACBLAAC8AwAgTAAAwAMAIAEAAADBAQAgAQAAAL4BACAEBAAAxxAAIFEAAMkQACBSAADIEAAg7gUAANQKACAJlQUAAMcJADCWBQAAyAMAEJcFAADHCQAwmAUBALkIACGZBQEAuQgAIZ4FQAC7CAAhnwVAALsIACHuBQEAuggAIY4GAQC5CAAhAwAAAL4BACABAADHAwAwUAAAyAMAIAMAAAC-AQAgAQAAwAEAMAIAAMEBACABAAAARgAgAQAAAEYAIAMAAABEACABAABFADACAABGACADAAAARAAgAQAARQAwAgAARgAgAwAAAEQAIAEAAEUAMAIAAEYAIAkQAADGEAAgHQAA2g8AIJgFAQAAAAGeBUAAAAABnwVAAAAAAYIGAQAAAAGGBkAAAAABhwYBAAAAAYgGAgAAAAEBRgAA0AMAIAeYBQEAAAABngVAAAAAAZ8FQAAAAAGCBgEAAAABhgZAAAAAAYcGAQAAAAGIBgIAAAABAUYAANIDADAJEAAAxRAAIB0AAMMPACCYBQEA2AoAIZ4FQADaCgAhnwVAANoKACGCBgEA2AoAIYYGQADaCgAhhwYBANgKACGIBgIAgQ4AIQIAAABGACBGAADUAwAgB5gFAQDYCgAhngVAANoKACGfBUAA2goAIYIGAQDYCgAhhgZAANoKACGHBgEA2AoAIYgGAgCBDgAhAgAAAEQAIEYAANYDACADAAAARgAgSwAA0AMAIEwAANQDACABAAAARgAgAQAAAEQAIAUEAADAEAAgUQAAwxAAIFIAAMIQACD7AQAAwRAAIPwBAADEEAAgCpUFAADGCQAwlgUAANwDABCXBQAAxgkAMJgFAQC5CAAhngVAALsIACGfBUAAuwgAIYIGAQC5CAAhhgZAALsIACGHBgEAuQgAIYgGAgD7CAAhAwAAAEQAIAEAANsDADBQAADcAwAgAwAAAEQAIAEAAEUAMAIAAEYAIAEAAABKACABAAAASgAgAwAAAEgAIAEAAEkAMAIAAEoAIAMAAABIACABAABJADACAABKACADAAAASAAgAQAASQAwAgAASgAgBxQAAL8QACAXAADYDwAgmAUBAAAAAZ4FQAAAAAGfBUAAAAABhQYBAAAAAY0GAgAAAAEBRgAA5AMAIAWYBQEAAAABngVAAAAAAZ8FQAAAAAGFBgEAAAABjQYCAAAAAQFGAADmAwAwBxQAAL4QACAXAADPDwAgmAUBANgKACGeBUAA2goAIZ8FQADaCgAhhQYBANgKACGNBgIAgQ4AIQIAAABKACBGAADoAwAgBZgFAQDYCgAhngVAANoKACGfBUAA2goAIYUGAQDYCgAhjQYCAIEOACECAAAASAAgRgAA6gMAIAMAAABKACBLAADkAwAgTAAA6AMAIAEAAABKACABAAAASAAgBQQAALkQACBRAAC8EAAgUgAAuxAAIPsBAAC6EAAg_AEAAL0QACAIlQUAAMUJADCWBQAA8AMAEJcFAADFCQAwmAUBALkIACGeBUAAuwgAIZ8FQAC7CAAhhQYBALkIACGNBgIA-wgAIQMAAABIACABAADvAwAwUAAA8AMAIAMAAABIACABAABJADACAABKACAOCQAAwgkAIBUAAMEJACAWAADDCQAgHAAAxAkAIJUFAADACQAwlgUAAEwAEJcFAADACQAwmAUBAAAAAZ4FQADKCAAhnwVAAMoIACHTBQEAAAABiQZAAMoIACGLBkAAyggAIYwGAQAAAAEBAAAA8wMAIAEAAADzAwAgBQkAALUQACAVAAC0EAAgFgAAthAAIBwAALcQACC0BgAAuBAAIAMAAABMACABAAD2AwAwAgAA8wMAIAMAAABMACABAAD2AwAwAgAA8wMAIAMAAABMACABAAD2AwAwAgAA8wMAIAsJAADWDwAgFQAAygwAIBYAAMsMACAcAADMDAAgmAUBAAAAAZ4FQAAAAAGfBUAAAAAB0wUBAAAAAYkGQAAAAAGLBkAAAAABjAYBAAAAAQFGAAD6AwAgB5gFAQAAAAGeBUAAAAABnwVAAAAAAdMFAQAAAAGJBkAAAAABiwZAAAAAAYwGAQAAAAEBRgAA_AMAMAsJAADVDwAgFQAAqQwAIBYAAKoMACAcAACrDAAgmAUBANgKACGeBUAA2goAIZ8FQADaCgAh0wUBANgKACGJBkAA2goAIYsGQADaCgAhjAYBANgKACECAAAA8wMAIEYAAP4DACAHmAUBANgKACGeBUAA2goAIZ8FQADaCgAh0wUBANgKACGJBkAA2goAIYsGQADaCgAhjAYBANgKACECAAAATAAgRgAAgAQAIAMAAADzAwAgSwAA-gMAIEwAAP4DACABAAAA8wMAIAEAAABMACADBAAAsRAAIFEAALMQACBSAACyEAAgCpUFAAC_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-AUAAIEQggYiggYBANgKACECAAAAOQAgRgAA-AQAIAMAAAA7ACBLAADyBAAgTAAA9gQAIAEAAAA7ACABAAAAOQAgAwQAAJMQACBRAACVEAAgUgAAlBAAIAmVBQAAtgkAMJYFAAD-BAAQlwUAALYJADCYBQEAuQgAIZwFAQC5CAAhngVAALsIACGfBUAAuwgAIfgFAAC3CYIGIoIGAQC5CAAhAwAAADkAIAEAAP0EADBQAAD-BAAgAwAAADkAIAEAADoAMAIAADsAIBADAACwCQAgEgAAsQkAIBMAALIJACAeAACzCQAgHwAAtAkAICAAALUJACCVBQAArwkAMJYFAACEBQAQlwUAAK8JADCYBQEAAAABmQUBAMgIACGeBUAAyggAIZ8FQADKCAAhygUBAAAAAfYFAACVCfYFIoAGAQDJCAAhAQAAAIEFACABAAAAgQUAIBADAACwCQAgEgAAsQkAIBMAALIJACAeAACzCQAgHwAAtAkAICAAALUJACCVBQAArwkAMJYFAACEBQAQlwUAAK8JADCYBQEAyAgAIZkFAQDICAAhngVAAMoIACGfBUAAyggAIcoFAQDICAAh9gUAAJUJ9gUigAYBAMkIACEIAwAAjBAAIBIAAI0QACATAACOEAAgHgAAjxAAIB8AAJAQACAgAACREAAggAYAANQKACC0BgAAkhAAIAMAAACEBQAgAQAAhQUAMAIAAIEFACADAAAAhAUAIAEAAIUFADACAACBBQAgAwAAAIQFACABAACFBQAwAgAAgQUAIA0DAACGEAAgEgAAhxAAIBMAAIgQACAeAACJEAAgHwAAihAAICAAAIsQACCYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAABygUBAAAAAfYFAAAA9gUCgAYBAAAAAQFGAACJBQAgB5gFAQAAAAGZBQEAAAABngVAAAAAAZ8FQAAAAAHKBQEAAAAB9gUAAAD2BQKABgEAAAABAUYAAIsFADANAwAA9g4AIBIAAPcOACATAAD4DgAgHgAA-Q4AIB8AAPoOACAgAAD7DgAgmAUBANgKACGZBQEA2AoAIZ4FQADaCgAhnwVAANoKACHKBQEA2AoAIfYFAACSDvYFIoAGAQDZCgAhAgAAAIEFACBGAACNBQAgB5gFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhygUBANgKACH2BQAAkg72BSKABgEA2QoAIQIAAACEBQAgRgAAjwUAIAMAAACBBQAgSwAAiQUAIEwAAI0FACABAAAAgQUAIAEAAACEBQAgBAQAAPMOACBRAAD1DgAgUgAA9A4AIIAGAADUCgAgCpUFAACuCQAwlgUAAJUFABCXBQAArgkAMJgFAQC5CAAhmQUBALkIACGeBUAAuwgAIZ8FQAC7CAAhygUBALkIACH2BQAAkQn2BSKABgEAuggAIQMAAACEBQAgAQAAlAUAMFAAAJUFACADAAAAhAUAIAEAAIUFADACAACBBQAgCSIAAKoJACAkAACrCQAgJgAArAkAICgAAK0JACCVBQAAqQkAMJYFAAB5ABCXBQAAqQkAMJgFAQAAAAH_BQEAAAABAQAAAJgFACABAAAAmAUAIAUiAADuDgAgJAAA7w4AICYAAPAOACAoAADxDgAgtAYAAPIOACADAAAAeQAgAQAAmwUAMAIAAJgFACADAAAAeQAgAQAAmwUAMAIAAJgFACADAAAAeQAgAQAAmwUAMAIAAJgFACAGIgAA6g4AICQAAOsOACAmAADsDgAgKAAA7Q4AIJgFAQAAAAH_BQEAAAABAUYAAJ8FACACmAUBAAAAAf8FAQAAAAEBRgAAoQUAMAYiAADLDgAgJAAAzA4AICYAAM0OACAoAADODgAgmAUBANgKACH_BQEA2AoAIQIAAACYBQAgRgAAowUAIAKYBQEA2AoAIf8FAQDYCgAhAgAAAHkAIEYAAKUFACADAAAAmAUAIEsAAJ8FACBMAACjBQAgAQAAAJgFACABAAAAeQAgAwQAAMgOACBRAADKDgAgUgAAyQ4AIAWVBQAAqAkAMJYFAACrBQAQlwUAAKgJADCYBQEAuQgAIf8FAQC5CAAhAwAAAHkAIAEAAKoFADBQAACrBQAgAwAAAHkAIAEAAJsFADACAACYBQAgAQAAAH0AIAEAAAB9ACADAAAAewAgAQAAfAAwAgAAfQAgAwAAAHsAIAEAAHwAMAIAAH0AIAMAAAB7ACABAAB8ADACAAB9ACAGIQAAxw4AICMAALANACCYBQEAAAABzgUBAAAAAfgFAAAA_wUC_AUBAAAAAQFGAACzBQAgBJgFAQAAAAHOBQEAAAAB-AUAAAD_BQL8BQEAAAABAUYAALUFADAGIQAAxg4AICMAAK4NACCYBQEA2AoAIc4FAQDYCgAh-AUAAKwN_wUi_AUBANgKACECAAAAfQAgRgAAtwUAIASYBQEA2AoAIc4FAQDYCgAh-AUAAKwN_wUi_AUBANgKACECAAAAewAgRgAAuQUAIAMAAAB9ACBLAACzBQAgTAAAtwUAIAEAAAB9ACABAAAAewAgAwQAAMMOACBRAADFDgAgUgAAxA4AIAeVBQAApAkAMJYFAAC_BQAQlwUAAKQJADCYBQEAuQgAIc4FAQC5CAAh-AUAAKUJ_wUi_AUBALkIACEDAAAAewAgAQAAvgUAMFAAAL8FACADAAAAewAgAQAAfAAwAgAAfQAgAQAAAIEBACABAAAAgQEAIAMAAAB_ACABAACAAQAwAgAAgQEAIAMAAAB_ACABAACAAQAwAgAAgQEAIAMAAAB_ACABAACAAQAwAgAAgQEAIAYjAAD4DAAgJQAAwg4AIJgFAQAAAAGdBQEAAAAB-AUAAAD-BQL8BQEAAAABAUYAAMcFACAEmAUBAAAAAZ0FAQAAAAH4BQAAAP4FAvwFAQAAAAEBRgAAyQUAMAYjAAD2DAAgJQAAwQ4AIJgFAQDYCgAhnQUBANgKACH4BQAA9Az-BSL8BQEA2AoAIQIAAACBAQAgRgAAywUAIASYBQEA2AoAIZ0FAQDYCgAh-AUAAPQM_gUi_AUBANgKACECAAAAfwAgRgAAzQUAIAMAAACBAQAgSwAAxwUAIEwAAMsFACABAAAAgQEAIAEAAAB_ACADBAAAvg4AIFEAAMAOACBSAAC_DgAgB5UFAACgCQAwlgUAANMFABCXBQAAoAkAMJgFAQC5CAAhnQUBALkIACH4BQAAoQn-BSL8BQEAuQgAIQMAAAB_ACABAADSBQAwUAAA0wUAIAMAAAB_ACABAACAAQAwAgAAgQEAIAEAAACFAQAgAQAAAIUBACADAAAAgwEAIAEAAIQBADACAACFAQAgAwAAAIMBACABAACEAQAwAgAAhQEAIAMAAACDAQAgAQAAhAEAMAIAAIUBACAGIwAA2wwAICcAAL0OACCYBQEAAAAB-AUAAAD7BQL7BQEAAAAB_AUBAAAAAQFGAADbBQAgBJgFAQAAAAH4BQAAAPsFAvsFAQAAAAH8BQEAAAABAUYAAN0FADAGIwAA2QwAICcAALwOACCYBQEA2AoAIfgFAADXDPsFIvsFAQDYCgAh_AUBANgKACECAAAAhQEAIEYAAN8FACAEmAUBANgKACH4BQAA1wz7BSL7BQEA2AoAIfwFAQDYCgAhAgAAAIMBACBGAADhBQAgAwAAAIUBACBLAADbBQAgTAAA3wUAIAEAAACFAQAgAQAAAIMBACADBAAAuQ4AIFEAALsOACBSAAC6DgAgB5UFAACcCQAwlgUAAOcFABCXBQAAnAkAMJgFAQC5CAAh-AUAAJ0J-wUi-wUBALkIACH8BQEAuQgAIQMAAACDAQAgAQAA5gUAMFAAAOcFACADAAAAgwEAIAEAAIQBADACAACFAQAgAQAAAAsAIAEAAAALACADAAAACAAgAQAACgAwAgAACwAgAwAAAAgAIAEAAAoAMAIAAAsAIAMAAAAIACABAAAKADACAAALACAIEQAArg4AID0AALgOACCYBQEAAAABnAUBAAAAAZ4FQAAAAAGfBUAAAAAB-AUAAAD4BQL5BQEAAAABAUYAAO8FACAGmAUBAAAAAZwFAQAAAAGeBUAAAAABnwVAAAAAAfgFAAAA-AUC-QUBAAAAAQFGAADxBQAwCBEAAKwOACA9AAC3DgAgmAUBANgKACGcBQEA2AoAIZ4FQADaCgAhnwVAANoKACH4BQAAqg74BSL5BQEA2AoAIQIAAAALACBGAADzBQAgBpgFAQDYCgAhnAUBANgKACGeBUAA2goAIZ8FQADaCgAh-AUAAKoO-AUi-QUBANgKACECAAAACAAgRgAA9QUAIAMAAAALACBLAADvBQAgTAAA8wUAIAEAAAALACABAAAACAAgAwQAALQOACBRAAC2DgAgUgAAtQ4AIAmVBQAAmAkAMJYFAAD7BQAQlwUAAJgJADCYBQEAuQgAIZwFAQC5CAAhngVAALsIACGfBUAAuwgAIfgFAACZCfgFIvkFAQC5CAAhAwAAAAgAIAEAAPoFADBQAAD7BQAgAwAAAAgAIAEAAAoAMAIAAAsAIAsDAACWCQAgOAAAlwkAIJUFAACUCQAwlgUAAMYBABCXBQAAlAkAMJgFAQAAAAGZBQEAyAgAIZ4FQADKCAAhnwVAAMoIACHKBQEAAAAB9gUAAJUJ9gUiAQAAAP4FACABAAAA_gUAIAMDAACxDgAgOAAAsg4AILQGAACzDgAgAwAAAMYBACABAACBBgAwAgAA_gUAIAMAAADGAQAgAQAAgQYAMAIAAP4FACADAAAAxgEAIAEAAIEGADACAAD-BQAgCAMAAK8OACA4AACwDgAgmAUBAAAAAZkFAQAAAAGeBUAAAAABnwVAAAAAAcoFAQAAAAH2BQAAAPYFAgFGAACFBgAgBpgFAQAAAAGZBQEAAAABngVAAAAAAZ8FQAAAAAHKBQEAAAAB9gUAAAD2BQIBRgAAhwYAMAgDAACTDgAgOAAAlA4AIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhygUBANgKACH2BQAAkg72BSICAAAA_gUAIEYAAIkGACAGmAUBANgKACGZBQEA2AoAIZ4FQADaCgAhnwVAANoKACHKBQEA2AoAIfYFAACSDvYFIgIAAADGAQAgRgAAiwYAIAMAAAD-BQAgSwAAhQYAIEwAAIkGACABAAAA_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-CAAwlgUAAMIGABCXBQAA_ggAMJgFAgAAAAGZBQEAyAgAId8FAQDICAAh4AVAAMoIACEBAAAAvwYAIAEAAAC_BgAgB5UFAAD-CAAwlgUAAMIGABCXBQAA_ggAMJgFAgD_CAAhmQUBAMgIACHfBQEAyAgAIeAFQADKCAAhAbQGAACCDgAgAwAAAMIGACABAADDBgAwAgAAvwYAIAMAAADCBgAgAQAAwwYAMAIAAL8GACADAAAAwgYAIAEAAMMGADACAAC_BgAgBJgFAgAAAAGZBQEAAAAB3wUBAAAAAeAFQAAAAAEBRgAAxwYAIASYBQIAAAABmQUBAAAAAd8FAQAAAAHgBUAAAAABAUYAAMkGADAEmAUCAIEOACGZBQEA2AoAId8FAQDYCgAh4AVAANoKACECAAAAvwYAIEYAAMsGACAEmAUCAIEOACGZBQEA2AoAId8FAQDYCgAh4AVAANoKACECAAAAwgYAIEYAAM0GACADAAAAvwYAIEsAAMcGACBMAADLBgAgAQAAAL8GACABAAAAwgYAIAUEAAD8DQAgUQAA_w0AIFIAAP4NACD7AQAA_Q0AIPwBAACADgAgB5UFAAD6CAAwlgUAANMGABCXBQAA-ggAMJgFAgD7CAAhmQUBALkIACHfBQEAuQgAIeAFQAC7CAAhAwAAAMIGACABAADSBgAwUAAA0wYAIAMAAADCBgAgAQAAwwYAMAIAAL8GACAMCwAA9wgAIAwAAPgIACANAAD5CAAglQUAAPQIADCWBQAAIwAQlwUAAPQIADCYBQEAAAABngVAAMoIACGfBUAAyggAIaAFQADLCAAh3AUgAPUIACHeBQAA9gjeBSIBAAAA1gYAIAEAAADWBgAgBgsAAPgNACAMAAD5DQAgDQAA-g0AIKAFAADUCgAg3AUAANQKACC0BgAA-w0AIAMAAAAjACABAADZBgAwAgAA1gYAIAMAAAAjACABAADZBgAwAgAA1gYAIAMAAAAjACABAADZBgAwAgAA1gYAIAkLAAD1DQAgDAAA9g0AIA0AAPcNACCYBQEAAAABngVAAAAAAZ8FQAAAAAGgBUAAAAAB3AUgAAAAAd4FAAAA3gUCAUYAAN0GACAGmAUBAAAAAZ4FQAAAAAGfBUAAAAABoAVAAAAAAdwFIAAAAAHeBQAAAN4FAgFGAADfBgAwCQsAAN8NACAMAADgDQAgDQAA4Q0AIJgFAQDYCgAhngVAANoKACGfBUAA2goAIaAFQADbCgAh3AUgAN0NACHeBQAA3g3eBSICAAAA1gYAIEYAAOEGACAGmAUBANgKACGeBUAA2goAIZ8FQADaCgAhoAVAANsKACHcBSAA3Q0AId4FAADeDd4FIgIAAAAjACBGAADjBgAgAwAAANYGACBLAADdBgAgTAAA4QYAIAEAAADWBgAgAQAAACMAIAUEAADaDQAgUQAA3A0AIFIAANsNACCgBQAA1AoAINwFAADUCgAgCZUFAADtCAAwlgUAAOkGABCXBQAA7QgAMJgFAQC5CAAhngVAALsIACGfBUAAuwgAIaAFQAC8CAAh3AUgAO4IACHeBQAA7wjeBSIDAAAAIwAgAQAA6AYAMFAAAOkGACADAAAAIwAgAQAA2QYAMAIAANYGACABAAAArgEAIAEAAACuAQAgAwAAACUAIAEAAK0BADACAACuAQAgAwAAACUAIAEAAK0BADACAACuAQAgAwAAACUAIAEAAK0BADACAACuAQAgCgkAANkNACAKAACYDAAgzQUBAAAAAdMFAQAAAAHVBQEAAAAB1wUBAAAAAdgFAQAAAAHZBQEAAAAB2gUBAAAAAdsFAQAAAAEBRgAA8QYAIAjNBQEAAAAB0wUBAAAAAdUFAQAAAAHXBQEAAAAB2AUBAAAAAdkFAQAAAAHaBQEAAAAB2wUBAAAAAQFGAADzBgAwCgkAANgNACAKAACWDAAgzQUBANgKACHTBQEA2AoAIdUFAQDZCgAh1wUBANgKACHYBQEA2AoAIdkFAQDYCgAh2gUBANgKACHbBQEA2AoAIQIAAACuAQAgRgAA9QYAIAjNBQEA2AoAIdMFAQDYCgAh1QUBANkKACHXBQEA2AoAIdgFAQDYCgAh2QUBANgKACHaBQEA2AoAIdsFAQDYCgAhAgAAACUAIEYAAPcGACADAAAArgEAIEsAAPEGACBMAAD1BgAgAQAAAK4BACABAAAAJQAgBAQAANUNACBRAADXDQAgUgAA1g0AINUFAADUCgAgC5UFAADsCAAwlgUAAP0GABCXBQAA7AgAMM0FAQC5CAAh0wUBALkIACHVBQEAuggAIdcFAQC5CAAh2AUBALkIACHZBQEAuQgAIdoFAQC5CAAh2wUBALkIACEDAAAAJQAgAQAA_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_BwAwAgAAvAcAIAcHAADDDQAgMwAAxA0AIJgFAQAAAAGZBQEAAAABngVAAAAAAZ8FQAAAAAHKBQEAAAABAUYAAMMHACAFmAUBAAAAAZkFAQAAAAGeBUAAAAABnwVAAAAAAcoFAQAAAAEBRgAAxQcAMAcHAAC9CwAgMwAAvgsAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhygUBANkKACECAAAAvAcAIEYAAMcHACAFmAUBANgKACGZBQEA2AoAIZ4FQADaCgAhnwVAANoKACHKBQEA2QoAIQIAAACgAQAgRgAAyQcAIAMAAAC8BwAgSwAAwwcAIEwAAMcHACABAAAAvAcAIAEAAACgAQAgBAQAALoLACBRAAC8CwAgUgAAuwsAIMoFAADUCgAgCJUFAADcCAAwlgUAAM8HABCXBQAA3AgAMJgFAQC5CAAhmQUBALkIACGeBUAAuwgAIZ8FQAC7CAAhygUBALoIACEDAAAAoAEAIAEAAM4HADBQAADPBwAgAwAAAKABACABAAC_BwAwAgAAvAcAIAEAAAArACABAAAAKwAgAwAAACkAIAEAACoAMAIAACsAIAMAAAApACABAAAqADACAAArACADAAAAKQAgAQAAKgAwAgAAKwAgEAoAALULACAhAAC3CwAgIgAAtgsAICoAALgLACAsAAC5CwAgmAUBAAAAAZwFAQAAAAGeBUAAAAABnwVAAAAAAb4FEAAAAAHABQEAAAABygUBAAAAAcsFgAAAAAHMBUAAAAABzQUBAAAAAc4FAQAAAAEBRgAA1wcAIAuYBQEAAAABnAUBAAAAAZ4FQAAAAAGfBUAAAAABvgUQAAAAAcAFAQAAAAHKBQEAAAABywWAAAAAAcwFQAAAAAHNBQEAAAABzgUBAAAAAQFGAADZBwAwEAoAAJsLACAhAACdCwAgIgAAnAsAICoAAJ4LACAsAACfCwAgmAUBANgKACGcBQEA2AoAIZ4FQADaCgAhnwVAANoKACG-BRAA5woAIcAFAQDZCgAhygUBANgKACHLBYAAAAABzAVAANsKACHNBQEA2QoAIc4FAQDYCgAhAgAAACsAIEYAANsHACALmAUBANgKACGcBQEA2AoAIZ4FQADaCgAhnwVAANoKACG-BRAA5woAIcAFAQDZCgAhygUBANgKACHLBYAAAAABzAVAANsKACHNBQEA2QoAIc4FAQDYCgAhAgAAACkAIEYAAN0HACADAAAAKwAgSwAA1wcAIEwAANsHACABAAAAKwAgAQAAACkAIAkEAACWCwAgUQAAmQsAIFIAAJgLACD7AQAAlwsAIPwBAACaCwAgwAUAANQKACDLBQAA1AoAIMwFAADUCgAgzQUAANQKACAOlQUAANsIADCWBQAA4wcAEJcFAADbCAAwmAUBALkIACGcBQEAuQgAIZ4FQAC7CAAhnwVAALsIACG-BRAAzggAIcAFAQC6CAAhygUBALkIACHLBQAA1wgAIMwFQAC8CAAhzQUBALoIACHOBQEAuQgAIQMAAAApACABAADiBwAwUAAA4wcAIAMAAAApACABAAAqADACAAArACABAAAAIQAgAQAAACEAIAMAAAAfACABAAAgADACAAAhACADAAAAHwAgAQAAIAAwAgAAIQAgAwAAAB8AIAEAACAAMAIAACEAIA8rAAD5CgAgLQAA-goAIDAAAJULACCYBQEAAAABngVAAAAAAbUFAQAAAAG6BRAAAAABvAUAAAC8BQK9BRAAAAABvgUQAAAAAb8FEAAAAAHABQEAAAABwQUBAAAAAcIFAQAAAAHDBYAAAAABAUYAAOsHACAMmAUBAAAAAZ4FQAAAAAG1BQEAAAABugUQAAAAAbwFAAAAvAUCvQUQAAAAAb4FEAAAAAG_BRAAAAABwAUBAAAAAcEFAQAAAAHCBQEAAAABwwWAAAAAAQFGAADtBwAwDysAAPYKACAtAAD3CgAgMAAAlAsAIJgFAQDYCgAhngVAANoKACG1BQEA2AoAIboFEADnCgAhvAUAAPQKvAUivQUQAOcKACG-BRAA5woAIb8FEADnCgAhwAUBANkKACHBBQEA2QoAIcIFAQDZCgAhwwWAAAAAAQIAAAAhACBGAADvBwAgDJgFAQDYCgAhngVAANoKACG1BQEA2AoAIboFEADnCgAhvAUAAPQKvAUivQUQAOcKACG-BRAA5woAIb8FEADnCgAhwAUBANkKACHBBQEA2QoAIcIFAQDZCgAhwwWAAAAAAQIAAAAfACBGAADxBwAgAwAAACEAIEsAAOsHACBMAADvBwAgAQAAACEAIAEAAAAfACAJBAAAjwsAIFEAAJILACBSAACRCwAg-wEAAJALACD8AQAAkwsAIMAFAADUCgAgwQUAANQKACDCBQAA1AoAIMMFAADUCgAgD5UFAADVCAAwlgUAAPcHABCXBQAA1QgAMJgFAQC5CAAhngVAALsIACG1BQEAuQgAIboFEADOCAAhvAUAANYIvAUivQUQAM4IACG-BRAAzggAIb8FEADOCAAhwAUBALoIACHBBQEAuggAIcIFAQC6CAAhwwUAANcIACADAAAAHwAgAQAA9gcAMFAAAPcHACADAAAAHwAgAQAAIAAwAgAAIQAgAQAAAJABACABAAAAkAEAIAMAAACOAQAgAQAAjwEAMAIAAJABACADAAAAjgEAIAEAAI8BADACAACQAQAgAwAAAI4BACABAACPAQAwAgAAkAEAIAcrAACOCwAgmAUBAAAAAZ4FQAAAAAG1BQEAAAABtgUQAAAAAbgFAAAAuAUCuQVAAAAAAQFGAAD_BwAgBpgFAQAAAAGeBUAAAAABtQUBAAAAAbYFEAAAAAG4BQAAALgFArkFQAAAAAEBRgAAgQgAMAcrAACNCwAgmAUBANgKACGeBUAA2goAIbUFAQDYCgAhtgUQAOcKACG4BQAAjAu4BSK5BUAA2goAIQIAAACQAQAgRgAAgwgAIAaYBQEA2AoAIZ4FQADaCgAhtQUBANgKACG2BRAA5woAIbgFAACMC7gFIrkFQADaCgAhAgAAAI4BACBGAACFCAAgAwAAAJABACBLAAD_BwAgTAAAgwgAIAEAAACQAQAgAQAAAI4BACAFBAAAhwsAIFEAAIoLACBSAACJCwAg-wEAAIgLACD8AQAAiwsAIAmVBQAA0QgAMJYFAACLCAAQlwUAANEIADCYBQEAuQgAIZ4FQAC7CAAhtQUBALkIACG2BRAAzggAIbgFAADSCLgFIrkFQAC7CAAhAwAAAI4BACABAACKCAAwUAAAiwgAIAMAAACOAQAgAQAAjwEAMAIAAJABACABAAAAmgEAIAEAAACaAQAgAwAAAJUBACABAACZAQAwAgAAmgEAIAMAAACVAQAgAQAAmQEAMAIAAJoBACADAAAAlQEAIAEAAJkBADACAACaAQAgDwgAAIYLACAvAAD8CgAgmAUBAAAAAZkFAQAAAAGaBQEAAAABnAUBAAAAAZ0FAQAAAAGeBUAAAAABnwVAAAAAAaAFQAAAAAGwBQEAAAABsQUBAAAAAbIFAQAAAAGzBQEAAAABtAUQAAAAAQFGAACTCAAgDZgFAQAAAAGZBQEAAAABmgUBAAAAAZwFAQAAAAGdBQEAAAABngVAAAAAAZ8FQAAAAAGgBUAAAAABsAUBAAAAAbEFAQAAAAGyBQEAAAABswUBAAAAAbQFEAAAAAEBRgAAlQgAMA8IAACFCwAgLwAA6QoAIJgFAQDYCgAhmQUBANgKACGaBQEA2QoAIZwFAQDYCgAhnQUBANgKACGeBUAA2goAIZ8FQADaCgAhoAVAANsKACGwBQEA2AoAIbEFAQDZCgAhsgUBANkKACGzBQEA2QoAIbQFEADnCgAhAgAAAJoBACBGAACXCAAgDZgFAQDYCgAhmQUBANgKACGaBQEA2QoAIZwFAQDYCgAhnQUBANgKACGeBUAA2goAIZ8FQADaCgAhoAVAANsKACGwBQEA2AoAIbEFAQDZCgAhsgUBANkKACGzBQEA2QoAIbQFEADnCgAhAgAAAJUBACBGAACZCAAgAwAAAJoBACBLAACTCAAgTAAAlwgAIAEAAACaAQAgAQAAAJUBACAKBAAAgAsAIFEAAIMLACBSAACCCwAg-wEAAIELACD8AQAAhAsAIJoFAADUCgAgoAUAANQKACCxBQAA1AoAILIFAADUCgAgswUAANQKACAQlQUAAM0IADCWBQAAnwgAEJcFAADNCAAwmAUBALkIACGZBQEAuQgAIZoFAQC6CAAhnAUBALkIACGdBQEAuQgAIZ4FQAC7CAAhnwVAALsIACGgBUAAvAgAIbAFAQC5CAAhsQUBALoIACGyBQEAuggAIbMFAQC6CAAhtAUQAM4IACEDAAAAlQEAIAEAAJ4IADBQAACfCAAgAwAAAJUBACABAACZAQAwAgAAmgEAIA0uAADMCAAglQUAAMcIADCWBQAAlwEAEJcFAADHCAAwmAUBAAAAAZkFAQDICAAhmgUBAMkIACGbBQEAyQgAIZwFAQDICAAhnQUBAMgIACGeBUAAyggAIZ8FQADKCAAhoAVAAMsIACEBAAAAoggAIAEAAACiCAAgBS4AAP4KACCaBQAA1AoAIJsFAADUCgAgoAUAANQKACC0BgAA_woAIAMAAACXAQAgAQAApQgAMAIAAKIIACADAAAAlwEAIAEAAKUIADACAACiCAAgAwAAAJcBACABAAClCAAwAgAAoggAIAouAAD9CgAgmAUBAAAAAZkFAQAAAAGaBQEAAAABmwUBAAAAAZwFAQAAAAGdBQEAAAABngVAAAAAAZ8FQAAAAAGgBUAAAAABAUYAAKkIACAJmAUBAAAAAZkFAQAAAAGaBQEAAAABmwUBAAAAAZwFAQAAAAGdBQEAAAABngVAAAAAAZ8FQAAAAAGgBUAAAAABAUYAAKsIADAKLgAA3AoAIJgFAQDYCgAhmQUBANgKACGaBQEA2QoAIZsFAQDZCgAhnAUBANgKACGdBQEA2AoAIZ4FQADaCgAhnwVAANoKACGgBUAA2woAIQIAAACiCAAgRgAArQgAIAmYBQEA2AoAIZkFAQDYCgAhmgUBANkKACGbBQEA2QoAIZwFAQDYCgAhnQUBANgKACGeBUAA2goAIZ8FQADaCgAhoAVAANsKACECAAAAlwEAIEYAAK8IACADAAAAoggAIEsAAKkIACBMAACtCAAgAQAAAKIIACABAAAAlwEAIAYEAADVCgAgUQAA1woAIFIAANYKACCaBQAA1AoAIJsFAADUCgAgoAUAANQKACAMlQUAALgIADCWBQAAtQgAEJcFAAC4CAAwmAUBALkIACGZBQEAuQgAIZoFAQC6CAAhmwUBALoIACGcBQEAuQgAIZ0FAQC5CAAhngVAALsIACGfBUAAuwgAIaAFQAC8CAAhAwAAAJcBACABAAC0CAAwUAAAtQgAIAMAAACXAQAgAQAApQgAMAIAAKIIACAMlQUAALgIADCWBQAAtQgAEJcFAAC4CAAwmAUBALkIACGZBQEAuQgAIZoFAQC6CAAhmwUBALoIACGcBQEAuQgAIZ0FAQC5CAAhngVAALsIACGfBUAAuwgAIaAFQAC8CAAhDwQAAMEIACBRAADGCAAgUgAAxggAIKEFAQAAAAGiBQEAAAAEowUBAAAABKQFAQAAAAGlBQEAAAABpgUBAAAAAacFAQAAAAGoBQEAxQgAIakFAQAAAAGqBQEAAAABqwUBAAAAAawFAQAAAAEPBAAAvggAIFEAAMQIACBSAADECAAgoQUBAAAAAaIFAQAAAAWjBQEAAAAFpAUBAAAAAaUFAQAAAAGmBQEAAAABpwUBAAAAAagFAQDDCAAhqQUBAAAAAaoFAQAAAAGrBQEAAAABrAUBAAAAAQsEAADBCAAgUQAAwggAIFIAAMIIACChBUAAAAABogVAAAAABKMFQAAAAASkBUAAAAABpQVAAAAAAaYFQAAAAAGnBUAAAAABqAVAAMAIACELBAAAvggAIFEAAL8IACBSAAC_CAAgoQVAAAAAAaIFQAAAAAWjBUAAAAAFpAVAAAAAAaUFQAAAAAGmBUAAAAABpwVAAAAAAagFQAC9CAAhCwQAAL4IACBRAAC_CAAgUgAAvwgAIKEFQAAAAAGiBUAAAAAFowVAAAAABaQFQAAAAAGlBUAAAAABpgVAAAAAAacFQAAAAAGoBUAAvQgAIQihBQIAAAABogUCAAAABaMFAgAAAAWkBQIAAAABpQUCAAAAAaYFAgAAAAGnBQIAAAABqAUCAL4IACEIoQVAAAAAAaIFQAAAAAWjBUAAAAAFpAVAAAAAAaUFQAAAAAGmBUAAAAABpwVAAAAAAagFQAC_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_gkAIJUFAAD9CQAwlgUAACcAEJcFAAD9CQAwzQUBAMgIACHTBQEAyAgAIdQFAQDICAAh1QUBAMgIACHWBQEAyQgAIdcFAQDICAAhqQYAACcAIKoGAAAnACADrQUAACkAIK4FAAApACCvBQAAKQAgB5UFAAD6CAAwlgUAANMGABCXBQAA-ggAMJgFAgD7CAAhmQUBALkIACHfBQEAuQgAIeAFQAC7CAAhDQQAAMEIACBRAADBCAAgUgAAwQgAIPsBAAD9CAAg_AEAAMEIACChBQIAAAABogUCAAAABKMFAgAAAASkBQIAAAABpQUCAAAAAaYFAgAAAAGnBQIAAAABqAUCAPwIACENBAAAwQgAIFEAAMEIACBSAADBCAAg-wEAAP0IACD8AQAAwQgAIKEFAgAAAAGiBQIAAAAEowUCAAAABKQFAgAAAAGlBQIAAAABpgUCAAAAAacFAgAAAAGoBQIA_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-AUAAJkJ-AUi-QUBALkIACEHBAAAwQgAIFEAAJsJACBSAACbCQAgoQUAAAD4BQKiBQAAAPgFCKMFAAAA-AUIqAUAAJoJ-AUiBwQAAMEIACBRAACbCQAgUgAAmwkAIKEFAAAA-AUCogUAAAD4BQijBQAAAPgFCKgFAACaCfgFIgShBQAAAPgFAqIFAAAA-AUIowUAAAD4BQioBQAAmwn4BSIHlQUAAJwJADCWBQAA5wUAEJcFAACcCQAwmAUBALkIACH4BQAAnQn7BSL7BQEAuQgAIfwFAQC5CAAhBwQAAMEIACBRAACfCQAgUgAAnwkAIKEFAAAA-wUCogUAAAD7BQijBQAAAPsFCKgFAACeCfsFIgcEAADBCAAgUQAAnwkAIFIAAJ8JACChBQAAAPsFAqIFAAAA-wUIowUAAAD7BQioBQAAngn7BSIEoQUAAAD7BQKiBQAAAPsFCKMFAAAA-wUIqAUAAJ8J-wUiB5UFAACgCQAwlgUAANMFABCXBQAAoAkAMJgFAQC5CAAhnQUBALkIACH4BQAAoQn-BSL8BQEAuQgAIQcEAADBCAAgUQAAowkAIFIAAKMJACChBQAAAP4FAqIFAAAA_gUIowUAAAD-BQioBQAAogn-BSIHBAAAwQgAIFEAAKMJACBSAACjCQAgoQUAAAD-BQKiBQAAAP4FCKMFAAAA_gUIqAUAAKIJ_gUiBKEFAAAA_gUCogUAAAD-BQijBQAAAP4FCKgFAACjCf4FIgeVBQAApAkAMJYFAAC_BQAQlwUAAKQJADCYBQEAuQgAIc4FAQC5CAAh-AUAAKUJ_wUi_AUBALkIACEHBAAAwQgAIFEAAKcJACBSAACnCQAgoQUAAAD_BQKiBQAAAP8FCKMFAAAA_wUIqAUAAKYJ_wUiBwQAAMEIACBRAACnCQAgUgAApwkAIKEFAAAA_wUCogUAAAD_BQijBQAAAP8FCKgFAACmCf8FIgShBQAAAP8FAqIFAAAA_wUIowUAAAD_BQioBQAApwn_BSIFlQUAAKgJADCWBQAAqwUAEJcFAACoCQAwmAUBALkIACH_BQEAuQgAIQkiAACqCQAgJAAAqwkAICYAAKwJACAoAACtCQAglQUAAKkJADCWBQAAeQAQlwUAAKkJADCYBQEAyAgAIf8FAQDICAAhEQ0AAPkIACAOAACnCgAgEQAArQoAICEAALIKACAjAACzCgAgKQAAmwoAIJUFAACwCgAwlgUAAC4AEJcFAACwCgAwmAUBAMgIACGcBQEAyAgAIZ4FQADKCAAhnwVAAMoIACH0BQEAyAgAIfgFAACxCpsGIqkGAAAuACCqBgAALgAgA60FAAB7ACCuBQAAewAgrwUAAHsAIAOtBQAAfwAgrgUAAH8AIK8FAAB_ACADrQUAAIMBACCuBQAAgwEAIK8FAACDAQAgCpUFAACuCQAwlgUAAJUFABCXBQAArgkAMJgFAQC5CAAhmQUBALkIACGeBUAAuwgAIZ8FQAC7CAAhygUBALkIACH2BQAAkQn2BSKABgEAuggAIRADAACwCQAgEgAAsQkAIBMAALIJACAeAACzCQAgHwAAtAkAICAAALUJACCVBQAArwkAMJYFAACEBQAQlwUAAK8JADCYBQEAyAgAIZkFAQDICAAhngVAAMoIACGfBUAAyggAIcoFAQDICAAh9gUAAJUJ9gUigAYBAMkIACEDrQUAADkAIK4FAAA5ACCvBQAAOQAgA60FAAA3ACCuBQAANwAgrwUAADcAIAOtBQAAQAAgrgUAAEAAIK8FAABAACADrQUAAEQAIK4FAABEACCvBQAARAAgA60FAABdACCuBQAAXQAgrwUAAF0AIAOtBQAAagAgrgUAAGoAIK8FAABqACAJlQUAALYJADCWBQAA_gQAEJcFAAC2CQAwmAUBALkIACGcBQEAuQgAIZ4FQAC7CAAhnwVAALsIACH4BQAAtwmCBiKCBgEAuQgAIQcEAADBCAAgUQAAuQkAIFIAALkJACChBQAAAIIGAqIFAAAAggYIowUAAACCBgioBQAAuAmCBiIHBAAAwQgAIFEAALkJACBSAAC5CQAgoQUAAACCBgKiBQAAAIIGCKMFAAAAggYIqAUAALgJggYiBKEFAAAAggYCogUAAACCBgijBQAAAIIGCKgFAAC5CYIGIgmVBQAAugkAMJYFAADqBAAQlwUAALoJADCYBQEAuQgAIZwFAQC6CAAhngVAALsIACGfBUAAuwgAIYMGAQC6CAAhhAYBALoIACEHlQUAALsJADCWBQAA1gQAEJcFAAC7CQAwmAUBALkIACGeBUAAuwgAIZ8FQAC7CAAhhQYBALoIACEKlQUAALwJADCWBQAAwgQAEJcFAAC8CQAwmAUBALkIACGeBUAAuwgAIZ8FQAC7CAAhggYBALkIACGGBkAAuwgAIYcGAQC5CAAhiAYCAPsIACEJlQUAAL0JADCWBQAArgQAEJcFAAC9CQAwmAUBALkIACGeBUAAuwgAIZ8FQAC7CAAhhQYBALkIACGJBkAAuwgAIYoGAQC6CAAhCpUFAAC-CQAwlgUAAJoEABCXBQAAvgkAMJgFAQC5CAAhngVAALsIACGfBUAAuwgAIYIGAQC5CAAhhgZAALsIACGHBgEAuQgAIYgGAgD7CAAhCpUFAAC_CQAwlgUAAIYEABCXBQAAvwkAMJgFAQC5CAAhngVAALsIACGfBUAAuwgAIdMFAQC5CAAhiQZAALsIACGLBkAAuwgAIYwGAQC5CAAhDgkAAMIJACAVAADBCQAgFgAAwwkAIBwAAMQJACCVBQAAwAkAMJYFAABMABCXBQAAwAkAMJgFAQDICAAhngVAAMoIACGfBUAAyggAIdMFAQDICAAhiQZAAMoIACGLBkAAyggAIYwGAQDICAAhDBQAAKIKACAXAACdCgAglQUAAKEKADCWBQAASAAQlwUAAKEKADCYBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGFBgEAyAgAIY0GAgD_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_AADzCQAgQAAA9AkAIJUFAADvCQAwlgUAAP0BABCXBQAA7wkAMJgFAQDICAAh3gUAAPEJnwYi9gUAAPAJngYimwYBAMgIACGcBgEAyAgAIQShBQAAAJ4GAqIFAAAAngYIowUAAACeBgioBQAA7gmeBiIEoQUAAACfBgKiBQAAAJ8GCKMFAAAAnwYIqAUAAOwJnwYiDAUAANMKACARAACtCgAglQUAANIKADCWBQAAAwAQlwUAANIKADCYBQEAyAgAIZwFAQDICAAhngVAAMoIACGfBUAAyggAIZ8GAQDICAAhqQYAAAMAIKoGAAADACANEQAArQoAID0AANEKACCVBQAAzwoAMJYFAAAIABCXBQAAzwoAMJgFAQDICAAhnAUBAMgIACGeBUAAyggAIZ8FQADKCAAh-AUAANAK-AUi-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_AUBAAAAAQkjAACMCgAgJwAAwgkAIJUFAACKCgAwlgUAAIMBABCXBQAAigoAMJgFAQDICAAh-AUAAIsK-wUi-wUBAMgIACH8BQEAyAgAIQShBQAAAPsFAqIFAAAA-wUIowUAAAD7BQioBQAAnwn7BSILIgAAqgkAICQAAKsJACAmAACsCQAgKAAArQkAIJUFAACpCQAwlgUAAHkAEJcFAACpCQAwmAUBAMgIACH_BQEAyAgAIakGAAB5ACCqBgAAeQAgAp0FAQAAAAH8BQEAAAABCSMAAIwKACAlAACQCgAglQUAAI4KADCWBQAAfwAQlwUAAI4KADCYBQEAyAgAIZ0FAQDICAAh-AUAAI8K_gUi_AUBAMgIACEEoQUAAAD-BQKiBQAAAP4FCKMFAAAA_gUIqAUAAKMJ_gUiEAkAAMIJACAzAADfCAAgOAAAlwkAIDkAAKwJACCVBQAAgQoAMJYFAACiAQAQlwUAAIEKADCYBQEAyAgAIZkFAQDICAAhngVAAMoIACGfBUAAyggAIdMFAQDICAAhlAYBAMgIACGVBgEAyQgAIakGAACiAQAgqgYAAKIBACACzgUBAAAAAfwFAQAAAAEJIQAAlAoAICMAAIwKACCVBQAAkgoAMJYFAAB7ABCXBQAAkgoAMJgFAQDICAAhzgUBAMgIACH4BQAAkwr_BSL8BQEAyAgAIQShBQAAAP8FAqIFAAAA_wUIowUAAAD_BQioBQAApwn_BSIXDQAA-QgAIBEAAKoJACAlAACQCgAgPAAAzQoAID0AAM4KACA-AACrCQAglQUAAMoKADCWBQAADQAQlwUAAMoKADCYBQEAyAgAIZkFAQDICAAhnAUBAMgIACGdBQEAyAgAIZ4FQADKCAAhnwVAAMoIACHrBQEAyQgAIfYFAADLCpEGIvkFAQDJCAAhjwYBAMkIACGSBgAAzAqSBiKTBgEAyQgAIakGAAANACCqBgAADQAgDBAAAJYKACAWAADDCQAglQUAAJUKADCWBQAAagAQlwUAAJUKADCYBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGCBgEAyAgAIYYGQADKCAAhhwYBAMgIACGIBgIA_wgAIRIDAACwCQAgEgAAsQkAIBMAALIJACAeAACzCQAgHwAAtAkAICAAALUJACCVBQAArwkAMJYFAACEBQAQlwUAAK8JADCYBQEAyAgAIZkFAQDICAAhngVAAMoIACGfBUAAyggAIcoFAQDICAAh9gUAAJUJ9gUigAYBAMkIACGpBgAAhAUAIKoGAACEBQAgDBAAAJYKACAZAACYCgAglQUAAJcKADCWBQAAXQAQlwUAAJcKADCYBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGCBgEAyAgAIYYGQADKCAAhhwYBAMgIACGIBgIA_wgAIQOtBQAAWwAgrgUAAFsAIK8FAABbACAJFAAAmgoAIBoAAJsKACCVBQAAmQoAMJYFAABbABCXBQAAmQoAMJgFAQDICAAhngVAAMoIACGfBUAAyggAIYUGAQDJCAAhDhAAAJYKACAZAACYCgAglQUAAJcKADCWBQAAXQAQlwUAAJcKADCYBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGCBgEAyAgAIYYGQADKCAAhhwYBAMgIACGIBgIA_wgAIakGAABdACCqBgAAXQAgDhEAAPUJACAYAACdCgAgGwAAngoAIJUFAACcCgAwlgUAAFUAEJcFAACcCgAwmAUBAMgIACGcBQEAyQgAIZ4FQADKCAAhnwVAAMoIACGDBgEAyQgAIYQGAQDJCAAhqQYAAFUAIKoGAABVACAMEQAA9QkAIBgAAJ0KACAbAACeCgAglQUAAJwKADCWBQAAVQAQlwUAAJwKADCYBQEAyAgAIZwFAQDJCAAhngVAAMoIACGfBUAAyggAIYMGAQDJCAAhhAYBAMkIACEQCQAAwgkAIBUAAMEJACAWAADDCQAgHAAAxAkAIJUFAADACQAwlgUAAEwAEJcFAADACQAwmAUBAMgIACGeBUAAyggAIZ8FQADKCAAh0wUBAMgIACGJBkAAyggAIYsGQADKCAAhjAYBAMgIACGpBgAATAAgqgYAAEwAIAsUAACaCgAgGgAAmwoAIJUFAACZCgAwlgUAAFsAEJcFAACZCgAwmAUBAMgIACGeBUAAyggAIZ8FQADKCAAhhQYBAMkIACGpBgAAWwAgqgYAAFsAIAsUAACgCgAgFwAAnQoAIJUFAACfCgAwlgUAAE4AEJcFAACfCgAwmAUBAMgIACGeBUAAyggAIZ8FQADKCAAhhQYBAMgIACGJBkAAyggAIYoGAQDJCAAhDhAAAJYKACAWAADDCQAglQUAAJUKADCWBQAAagAQlwUAAJUKADCYBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGCBgEAyAgAIYYGQADKCAAhhwYBAMgIACGIBgIA_wgAIakGAABqACCqBgAAagAgChQAAKIKACAXAACdCgAglQUAAKEKADCWBQAASAAQlwUAAKEKADCYBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGFBgEAyAgAIY0GAgD_CAAhDhAAAJYKACAdAACkCgAglQUAAKMKADCWBQAARAAQlwUAAKMKADCYBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGCBgEAyAgAIYYGQADKCAAhhwYBAMgIACGIBgIA_wgAIakGAABEACCqBgAARAAgDBAAAJYKACAdAACkCgAglQUAAKMKADCWBQAARAAQlwUAAKMKADCYBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGCBgEAyAgAIYYGQADKCAAhhwYBAMgIACGIBgIA_wgAIQOtBQAASAAgrgUAAEgAIK8FAABIACACggYBAAAAAZYGAQAAAAELDgAApwoAIBAAAJYKACCVBQAApgoAMJYFAABAABCXBQAApgoAMJkFAQDICAAhngVAAMoIACGfBUAAyggAIfQFAQDICAAhggYBAMgIACGWBgEAyAgAIQ8DAADgCQAgBwAA3ggAIAsAAOIJACAMAADjCQAgDwAA4QkAIJUFAADdCQAwlgUAAKgCABCXBQAA3QkAMJgFAQDICAAhngVAAMoIACGfBUAAyggAId4FAADeCZkGIvYFAADfCZoGIqkGAACoAgAgqgYAAKgCACAC2wUBAAAAAfQFAQAAAAECggYBAAAAAZcGAQAAAAENDgAApwoAIBAAAJYKACCVBQAAqgoAMJYFAAA3ABCXBQAAqgoAMJ4FQADKCAAhnwVAAMoIACHYBQEAyAgAIdkFAQDICAAh2wUBAMgIACH0BQEAyAgAIYIGAQDICAAhlwYBAMgIACELEAAAlgoAIBEAAK0KACCVBQAAqwoAMJYFAAA5ABCXBQAAqwoAMJgFAQDICAAhnAUBAMgIACGeBUAAyggAIZ8FQADKCAAh-AUAAKwKggYiggYBAMgIACEEoQUAAACCBgKiBQAAAIIGCKMFAAAAggYIqAUAALkJggYiDgYAAPIJACAiAAD1CQAgPwAA8wkAIEAAAPQJACCVBQAA7wkAMJYFAAD9AQAQlwUAAO8JADCYBQEAyAgAId4FAADxCZ8GIvYFAADwCZ4GIpsGAQDICAAhnAYBAMgIACGpBgAA_QEAIKoGAAD9AQAgFQ4AAKcKACA6AQDICAAhPAEAyAgAIZUFAACuCgAwlgUAADMAEJcFAACuCgAwngVAAMoIACGfBUAAyggAIeIFAQDICAAh5wUBAMgIACHpBQEAyAgAIeoFAQDICAAh6wUBAMgIACHtBQAArwrtBSLuBQEAyAgAIe8FAQDICAAh8AUBAMgIACHxBQEAyQgAIfIFAQDJCAAh8wUBAMkIACH0BQEAyAgAIQShBQAAAO0FAqIFAAAA7QUIowUAAADtBQioBQAAjwntBSIPDQAA-QgAIA4AAKcKACARAACtCgAgIQAAsgoAICMAALMKACApAACbCgAglQUAALAKADCWBQAALgAQlwUAALAKADCYBQEAyAgAIZwFAQDICAAhngVAAMoIACGfBUAAyggAIfQFAQDICAAh-AUAALEKmwYiBKEFAAAAmwYCogUAAACbBgijBQAAAJsGCKgFAADnCZsGIhcNAAD5CAAgEQAAqgkAICUAAJAKACA8AADNCgAgPQAAzgoAID4AAKsJACCVBQAAygoAMJYFAAANABCXBQAAygoAMJgFAQDICAAhmQUBAMgIACGcBQEAyAgAIZ0FAQDICAAhngVAAMoIACGfBUAAyggAIesFAQDJCAAh9gUAAMsKkQYi-QUBAMkIACGPBgEAyQgAIZIGAADMCpIGIpMGAQDJCAAhqQYAAA0AIKoGAAANACALIgAAqgkAICQAAKsJACAmAACsCQAgKAAArQkAIJUFAACpCQAwlgUAAHkAEJcFAACpCQAwmAUBAMgIACH_BQEAyAgAIakGAAB5ACCqBgAAeQAgEwoAALUKACAhAACUCgAgIgAAqgkAICoAAIUKACAsAAC2CgAglQUAALQKADCWBQAAKQAQlwUAALQKADCYBQEAyAgAIZwFAQDICAAhngVAAMoIACGfBUAAyggAIb4FEACDCgAhwAUBAMkIACHKBQEAyAgAIcsFAACLCQAgzAVAAMsIACHNBQEAyQgAIc4FAQDICAAhDgsAAPcIACAMAAD4CAAgDQAA-QgAIJUFAAD0CAAwlgUAACMAEJcFAAD0CAAwmAUBAMgIACGeBUAAyggAIZ8FQADKCAAhoAVAAMsIACHcBSAA9QgAId4FAAD2CN4FIqkGAAAjACCqBgAAIwAgA60FAACOAQAgrgUAAI4BACCvBQAAjgEAIBIrAACICgAgLQAAuQoAIDAAALoKACCVBQAAtwoAMJYFAAAfABCXBQAAtwoAMJgFAQDICAAhngVAAMoIACG1BQEAyAgAIboFEACDCgAhvAUAALgKvAUivQUQAIMKACG-BRAAgwoAIb8FEACDCgAhwAUBAMkIACHBBQEAyQgAIcIFAQDJCAAhwwUAAIsJACAEoQUAAAC8BQKiBQAAALwFCKMFAAAAvAUIqAUAANoIvAUiGAgAAL4KACAJAAC_CgAgLwAAhQoAIJUFAAC7CgAwlgUAABkAEJcFAAC7CgAwmAUBAMgIACGZBQEAyAgAIZoFAQDJCAAhmwUBAMkIACGeBUAAyggAIZ8FQADKCAAhoAVAAMsIACGwBQEAyAgAIbEFAQDJCAAhsgUBAMkIACGzBQEAyQgAIbQFEAC9CgAhvAUAALgKvAUizwUgAIgJACHSBQAAvArSBSLTBQEAyQgAIakGAAAZACCqBgAAGQAgFAgAAIQKACAvAACFCgAglQUAAIIKADCWBQAAlQEAEJcFAACCCgAwmAUBAMgIACGZBQEAyAgAIZoFAQDJCAAhnAUBAMgIACGdBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGgBUAAywgAIbAFAQDICAAhsQUBAMkIACGyBQEAyQgAIbMFAQDJCAAhtAUQAIMKACGpBgAAlQEAIKoGAACVAQAgFggAAL4KACAJAAC_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_AoAIJgFAQAAAAGZBQEAAAABmgUBAAAAAZwFAQAAAAGdBQEAAAABngVAAAAAAZ8FQAAAAAGgBUAAAAABsAUBAAAAAbEFAQAAAAGyBQEAAAABtAUQAAAAAQIAAACaAQAgSwAA-woAIAMAAACaAQAgSwAA-woAIEwAAOgKACABRgAApBUAMBIIAACECgAgLwAAhQoAIJUFAACCCgAwlgUAAJUBABCXBQAAggoAMJgFAQAAAAGZBQEAyAgAIZoFAQDJCAAhnAUBAMgIACGdBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGgBUAAywgAIbAFAQAAAAGxBQEAAAABsgUBAAAAAbMFAQDJCAAhtAUQAIMKACECAAAAmgEAIEYAAOgKACACAAAA5QoAIEYAAOYKACAQlQUAAOQKADCWBQAA5QoAEJcFAADkCgAwmAUBAMgIACGZBQEAyAgAIZoFAQDJCAAhnAUBAMgIACGdBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGgBUAAywgAIbAFAQDICAAhsQUBAMkIACGyBQEAyQgAIbMFAQDJCAAhtAUQAIMKACEQlQUAAOQKADCWBQAA5QoAEJcFAADkCgAwmAUBAMgIACGZBQEAyAgAIZoFAQDJCAAhnAUBAMgIACGdBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGgBUAAywgAIbAFAQDICAAhsQUBAMkIACGyBQEAyQgAIbMFAQDJCAAhtAUQAIMKACEMmAUBANgKACGZBQEA2AoAIZoFAQDZCgAhnAUBANgKACGdBQEA2AoAIZ4FQADaCgAhnwVAANoKACGgBUAA2woAIbAFAQDYCgAhsQUBANkKACGyBQEA2QoAIbQFEADnCgAhBa4GEAAAAAG1BhAAAAABtgYQAAAAAbcGEAAAAAG4BhAAAAABDS8AAOkKACCYBQEA2AoAIZkFAQDYCgAhmgUBANkKACGcBQEA2AoAIZ0FAQDYCgAhngVAANoKACGfBUAA2goAIaAFQADbCgAhsAUBANgKACGxBQEA2QoAIbIFAQDZCgAhtAUQAOcKACELSwAA6goAMEwAAO8KADCrBgAA6woAMKwGAADsCgAwrQYAAO0KACCuBgAA7goAMK8GAADuCgAwsAYAAO4KADCxBgAA7goAMLIGAADwCgAwswYAAPEKADANKwAA-QoAIC0AAPoKACCYBQEAAAABngVAAAAAAbUFAQAAAAG6BRAAAAABvAUAAAC8BQK9BRAAAAABvgUQAAAAAb8FEAAAAAHABQEAAAABwQUBAAAAAcMFgAAAAAECAAAAIQAgSwAA-AoAIAMAAAAhACBLAAD4CgAgTAAA9QoAIAFGAACjFQAwEisAAIgKACAtAAC5CgAgMAAAugoAIJUFAAC3CgAwlgUAAB8AEJcFAAC3CgAwmAUBAAAAAZ4FQADKCAAhtQUBAMgIACG6BRAAgwoAIbwFAAC4CrwFIr0FEACDCgAhvgUQAIMKACG_BRAAgwoAIcAFAQDJCAAhwQUBAMkIACHCBQEAyQgAIcMFAACLCQAgAgAAACEAIEYAAPUKACACAAAA8goAIEYAAPMKACAPlQUAAPEKADCWBQAA8goAEJcFAADxCgAwmAUBAMgIACGeBUAAyggAIbUFAQDICAAhugUQAIMKACG8BQAAuAq8BSK9BRAAgwoAIb4FEACDCgAhvwUQAIMKACHABQEAyQgAIcEFAQDJCAAhwgUBAMkIACHDBQAAiwkAIA-VBQAA8QoAMJYFAADyCgAQlwUAAPEKADCYBQEAyAgAIZ4FQADKCAAhtQUBAMgIACG6BRAAgwoAIbwFAAC4CrwFIr0FEACDCgAhvgUQAIMKACG_BRAAgwoAIcAFAQDJCAAhwQUBAMkIACHCBQEAyQgAIcMFAACLCQAgC5gFAQDYCgAhngVAANoKACG1BQEA2AoAIboFEADnCgAhvAUAAPQKvAUivQUQAOcKACG-BRAA5woAIb8FEADnCgAhwAUBANkKACHBBQEA2QoAIcMFgAAAAAEBrgYAAAC8BQINKwAA9goAIC0AAPcKACCYBQEA2AoAIZ4FQADaCgAhtQUBANgKACG6BRAA5woAIbwFAAD0CrwFIr0FEADnCgAhvgUQAOcKACG_BRAA5woAIcAFAQDZCgAhwQUBANkKACHDBYAAAAABBUsAAJsVACBMAAChFQAgqwYAAJwVACCsBgAAoBUAILEGAAArACAHSwAAmRUAIEwAAJ4VACCrBgAAmhUAIKwGAACdFQAgrwYAABkAILAGAAAZACCxBgAAGwAgDSsAAPkKACAtAAD6CgAgmAUBAAAAAZ4FQAAAAAG1BQEAAAABugUQAAAAAbwFAAAAvAUCvQUQAAAAAb4FEAAAAAG_BRAAAAABwAUBAAAAAcEFAQAAAAHDBYAAAAABA0sAAJsVACCrBgAAnBUAILEGAAArACADSwAAmRUAIKsGAACaFQAgsQYAABsAIA0vAAD8CgAgmAUBAAAAAZkFAQAAAAGaBQEAAAABnAUBAAAAAZ0FAQAAAAGeBUAAAAABnwVAAAAAAaAFQAAAAAGwBQEAAAABsQUBAAAAAbIFAQAAAAG0BRAAAAABBEsAAOoKADCrBgAA6woAMK0GAADtCgAgsQYAAO4KADAESwAA3QoAMKsGAADeCgAwrQYAAOAKACCxBgAA4QoAMAABrAUBAAAAAQAAAAAAB0sAAJQVACBMAACXFQAgqwYAAJUVACCsBgAAlhUAIK8GAACXAQAgsAYAAJcBACCxBgAAoggAIANLAACUFQAgqwYAAJUVACCxBgAAoggAIAAAAAAAAa4GAAAAuAUCBUsAAI8VACBMAACSFQAgqwYAAJAVACCsBgAAkRUAILEGAAArACADSwAAjxUAIKsGAACQFQAgsQYAACsAIAAAAAAAB0sAAIoVACBMAACNFQAgqwYAAIsVACCsBgAAjBUAIK8GAACVAQAgsAYAAJUBACCxBgAAmgEAIANLAACKFQAgqwYAAIsVACCxBgAAmgEAIAAAAAAAB0sAAP0UACBMAACIFQAgqwYAAP4UACCsBgAAhxUAIK8GAAAjACCwBgAAIwAgsQYAANYGACAFSwAA-xQAIEwAAIUVACCrBgAA_BQAIKwGAACEFQAgsQYAADAAIAVLAAD5FAAgTAAAghUAIKsGAAD6FAAgrAYAAIEVACCxBgAADwAgC0sAAKwLADBMAACwCwAwqwYAAK0LADCsBgAArgsAMK0GAACvCwAgrgYAAO4KADCvBgAA7goAMLAGAADuCgAwsQYAAO4KADCyBgAAsQsAMLMGAADxCgAwC0sAAKALADBMAAClCwAwqwYAAKELADCsBgAAogsAMK0GAACjCwAgrgYAAKQLADCvBgAApAsAMLAGAACkCwAwsQYAAKQLADCyBgAApgsAMLMGAACnCwAwBZgFAQAAAAGeBUAAAAABtgUQAAAAAbgFAAAAuAUCuQVAAAAAAQIAAACQAQAgSwAAqwsAIAMAAACQAQAgSwAAqwsAIEwAAKoLACABRgAAgBUAMAorAACICgAglQUAAIYKADCWBQAAjgEAEJcFAACGCgAwmAUBAAAAAZ4FQADKCAAhtQUBAMgIACG2BRAAgwoAIbgFAACHCrgFIrkFQADKCAAhAgAAAJABACBGAACqCwAgAgAAAKgLACBGAACpCwAgCZUFAACnCwAwlgUAAKgLABCXBQAApwsAMJgFAQDICAAhngVAAMoIACG1BQEAyAgAIbYFEACDCgAhuAUAAIcKuAUiuQVAAMoIACEJlQUAAKcLADCWBQAAqAsAEJcFAACnCwAwmAUBAMgIACGeBUAAyggAIbUFAQDICAAhtgUQAIMKACG4BQAAhwq4BSK5BUAAyggAIQWYBQEA2AoAIZ4FQADaCgAhtgUQAOcKACG4BQAAjAu4BSK5BUAA2goAIQWYBQEA2AoAIZ4FQADaCgAhtgUQAOcKACG4BQAAjAu4BSK5BUAA2goAIQWYBQEAAAABngVAAAAAAbYFEAAAAAG4BQAAALgFArkFQAAAAAENLQAA-goAIDAAAJULACCYBQEAAAABngVAAAAAAboFEAAAAAG8BQAAALwFAr0FEAAAAAG-BRAAAAABvwUQAAAAAcAFAQAAAAHBBQEAAAABwgUBAAAAAcMFgAAAAAECAAAAIQAgSwAAtAsAIAMAAAAhACBLAAC0CwAgTAAAswsAIAFGAAD_FAAwAgAAACEAIEYAALMLACACAAAA8goAIEYAALILACALmAUBANgKACGeBUAA2goAIboFEADnCgAhvAUAAPQKvAUivQUQAOcKACG-BRAA5woAIb8FEADnCgAhwAUBANkKACHBBQEA2QoAIcIFAQDZCgAhwwWAAAAAAQ0tAAD3CgAgMAAAlAsAIJgFAQDYCgAhngVAANoKACG6BRAA5woAIbwFAAD0CrwFIr0FEADnCgAhvgUQAOcKACG_BRAA5woAIcAFAQDZCgAhwQUBANkKACHCBQEA2QoAIcMFgAAAAAENLQAA-goAIDAAAJULACCYBQEAAAABngVAAAAAAboFEAAAAAG8BQAAALwFAr0FEAAAAAG-BRAAAAABvwUQAAAAAcAFAQAAAAHBBQEAAAABwgUBAAAAAcMFgAAAAAEDSwAA_RQAIKsGAAD-FAAgsQYAANYGACADSwAA-xQAIKsGAAD8FAAgsQYAADAAIANLAAD5FAAgqwYAAPoUACCxBgAADwAgBEsAAKwLADCrBgAArQsAMK0GAACvCwAgsQYAAO4KADAESwAAoAsAMKsGAAChCwAwrQYAAKMLACCxBgAApAsAMAAAAAtLAADrCwAwTAAA8AsAMKsGAADsCwAwrAYAAO0LADCtBgAA7gsAIK4GAADvCwAwrwYAAO8LADCwBgAA7wsAMLEGAADvCwAwsgYAAPELADCzBgAA8gsAMAtLAAC_CwAwTAAAxAsAMKsGAADACwAwrAYAAMELADCtBgAAwgsAIK4GAADDCwAwrwYAAMMLADCwBgAAwwsAMLEGAADDCwAwsgYAAMULADCzBgAAxgsAMAslAADqCwAgMQAA6QsAIJgFAQAAAAGZBQEAAAABmgUBAAAAAZsFAQAAAAGdBQEAAAABngVAAAAAAZ8FQAAAAAGgBUAAAAABzwUgAAAAAQIAAAAXACBLAADoCwAgAwAAABcAIEsAAOgLACBMAADKCwAgAUYAAPgUADAQJQAAwwoAIDEAAMEKACAyAADCCgAglQUAAMAKADCWBQAAFQAQlwUAAMAKADCYBQEAAAABmQUBAMgIACGaBQEAyQgAIZsFAQDJCAAhnQUBAMkIACGeBUAAyggAIZ8FQADKCAAhoAVAAMsIACHPBSAAiAkAIdAFAQDJCAAhAgAAABcAIEYAAMoLACACAAAAxwsAIEYAAMgLACANlQUAAMYLADCWBQAAxwsAEJcFAADGCwAwmAUBAMgIACGZBQEAyAgAIZoFAQDJCAAhmwUBAMkIACGdBQEAyQgAIZ4FQADKCAAhnwVAAMoIACGgBUAAywgAIc8FIACICQAh0AUBAMkIACENlQUAAMYLADCWBQAAxwsAEJcFAADGCwAwmAUBAMgIACGZBQEAyAgAIZoFAQDJCAAhmwUBAMkIACGdBQEAyQgAIZ4FQADKCAAhnwVAAMoIACGgBUAAywgAIc8FIACICQAh0AUBAMkIACEJmAUBANgKACGZBQEA2AoAIZoFAQDZCgAhmwUBANkKACGdBQEA2QoAIZ4FQADaCgAhnwVAANoKACGgBUAA2woAIc8FIADJCwAhAa4GIAAAAAELJQAAzAsAIDEAAMsLACCYBQEA2AoAIZkFAQDYCgAhmgUBANkKACGbBQEA2QoAIZ0FAQDZCgAhngVAANoKACGfBUAA2goAIaAFQADbCgAhzwUgAMkLACELSwAAzQsAMEwAANILADCrBgAAzgsAMKwGAADPCwAwrQYAANALACCuBgAA0QsAMK8GAADRCwAwsAYAANELADCxBgAA0QsAMLIGAADTCwAwswYAANQLADAHSwAA7BQAIEwAAPYUACCrBgAA7RQAIKwGAAD1FAAgrwYAAKIBACCwBgAAogEAILEGAACoAQAgEQkAAOYLACAvAADnCwAgmAUBAAAAAZkFAQAAAAGaBQEAAAABmwUBAAAAAZ4FQAAAAAGfBUAAAAABoAVAAAAAAbAFAQAAAAGxBQEAAAABsgUBAAAAAbQFEAAAAAG8BQAAALwFAs8FIAAAAAHSBQAAANIFAtMFAQAAAAECAAAAGwAgSwAA5QsAIAMAAAAbACBLAADlCwAgTAAA2QsAIAFGAAD0FAAwFggAAL4KACAJAAC_CgAgLwAAhQoAIJUFAAC7CgAwlgUAABkAEJcFAAC7CgAwmAUBAAAAAZkFAQDICAAhmgUBAMkIACGbBQEAyQgAIZ4FQADKCAAhnwVAAMoIACGgBUAAywgAIbAFAQDICAAhsQUBAAAAAbIFAQAAAAGzBQEAyQgAIbQFEAC9CgAhvAUAALgKvAUizwUgAIgJACHSBQAAvArSBSLTBQEAyQgAIQIAAAAbACBGAADZCwAgAgAAANULACBGAADWCwAgE5UFAADUCwAwlgUAANULABCXBQAA1AsAMJgFAQDICAAhmQUBAMgIACGaBQEAyQgAIZsFAQDJCAAhngVAAMoIACGfBUAAyggAIaAFQADLCAAhsAUBAMgIACGxBQEAyQgAIbIFAQDJCAAhswUBAMkIACG0BRAAvQoAIbwFAAC4CrwFIs8FIACICQAh0gUAALwK0gUi0wUBAMkIACETlQUAANQLADCWBQAA1QsAEJcFAADUCwAwmAUBAMgIACGZBQEAyAgAIZoFAQDJCAAhmwUBAMkIACGeBUAAyggAIZ8FQADKCAAhoAVAAMsIACGwBQEAyAgAIbEFAQDJCAAhsgUBAMkIACGzBQEAyQgAIbQFEAC9CgAhvAUAALgKvAUizwUgAIgJACHSBQAAvArSBSLTBQEAyQgAIQ-YBQEA2AoAIZkFAQDYCgAhmgUBANkKACGbBQEA2QoAIZ4FQADaCgAhnwVAANoKACGgBUAA2woAIbAFAQDYCgAhsQUBANkKACGyBQEA2QoAIbQFEADYCwAhvAUAAPQKvAUizwUgAMkLACHSBQAA1wvSBSLTBQEA2QoAIQGuBgAAANIFAgWuBhAAAAABtQYQAAAAAbYGEAAAAAG3BhAAAAABuAYQAAAAAREJAADaCwAgLwAA2wsAIJgFAQDYCgAhmQUBANgKACGaBQEA2QoAIZsFAQDZCgAhngVAANoKACGfBUAA2goAIaAFQADbCgAhsAUBANgKACGxBQEA2QoAIbIFAQDZCgAhtAUQANgLACG8BQAA9Aq8BSLPBSAAyQsAIdIFAADXC9IFItMFAQDZCgAhB0sAAO4UACBMAADyFAAgqwYAAO8UACCsBgAA8RQAIK8GAAARACCwBgAAEQAgsQYAABMAIAtLAADcCwAwTAAA4AsAMKsGAADdCwAwrAYAAN4LADCtBgAA3wsAIK4GAADuCgAwrwYAAO4KADCwBgAA7goAMLEGAADuCgAwsgYAAOELADCzBgAA8QoAMA0rAAD5CgAgMAAAlQsAIJgFAQAAAAGeBUAAAAABtQUBAAAAAboFEAAAAAG8BQAAALwFAr0FEAAAAAG-BRAAAAABvwUQAAAAAcAFAQAAAAHCBQEAAAABwwWAAAAAAQIAAAAhACBLAADkCwAgAwAAACEAIEsAAOQLACBMAADjCwAgAUYAAPAUADACAAAAIQAgRgAA4wsAIAIAAADyCgAgRgAA4gsAIAuYBQEA2AoAIZ4FQADaCgAhtQUBANgKACG6BRAA5woAIbwFAAD0CrwFIr0FEADnCgAhvgUQAOcKACG_BRAA5woAIcAFAQDZCgAhwgUBANkKACHDBYAAAAABDSsAAPYKACAwAACUCwAgmAUBANgKACGeBUAA2goAIbUFAQDYCgAhugUQAOcKACG8BQAA9Aq8BSK9BRAA5woAIb4FEADnCgAhvwUQAOcKACHABQEA2QoAIcIFAQDZCgAhwwWAAAAAAQ0rAAD5CgAgMAAAlQsAIJgFAQAAAAGeBUAAAAABtQUBAAAAAboFEAAAAAG8BQAAALwFAr0FEAAAAAG-BRAAAAABvwUQAAAAAcAFAQAAAAHCBQEAAAABwwWAAAAAAREJAADmCwAgLwAA5wsAIJgFAQAAAAGZBQEAAAABmgUBAAAAAZsFAQAAAAGeBUAAAAABnwVAAAAAAaAFQAAAAAGwBQEAAAABsQUBAAAAAbIFAQAAAAG0BRAAAAABvAUAAAC8BQLPBSAAAAAB0gUAAADSBQLTBQEAAAABA0sAAO4UACCrBgAA7xQAILEGAAATACAESwAA3AsAMKsGAADdCwAwrQYAAN8LACCxBgAA7goAMAslAADqCwAgMQAA6QsAIJgFAQAAAAGZBQEAAAABmgUBAAAAAZsFAQAAAAGdBQEAAAABngVAAAAAAZ8FQAAAAAGgBUAAAAABzwUgAAAAAQRLAADNCwAwqwYAAM4LADCtBgAA0AsAILEGAADRCwAwA0sAAOwUACCrBgAA7RQAILEGAACoAQAgDQ4AALwNACAYAAC_DQAgMQAAwA0AIDQAAL0NACA1AAC-DQAgNgAAwQ0AIDcAAMINACCYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAAB1QUBAAAAAfQFAQAAAAECAAAAEwAgSwAAuw0AIAMAAAATACBLAAC7DQAgTAAA9QsAIAFGAADrFAAwEw4AAKcKACAYAACdCgAgMQAAwQoAIDIAAMYKACA0AADHCgAgNQAArQkAIDYAAMgKACA3AADJCgAglQUAAMUKADCWBQAAEQAQlwUAAMUKADCYBQEAAAABmQUBAMgIACGeBUAAyggAIZ8FQADKCAAh0AUBAMgIACHVBQEAyAgAIfQFAQDICAAhqAYAAMQKACACAAAAEwAgRgAA9QsAIAIAAADzCwAgRgAA9AsAIAqVBQAA8gsAMJYFAADzCwAQlwUAAPILADCYBQEAyAgAIZkFAQDICAAhngVAAMoIACGfBUAAyggAIdAFAQDICAAh1QUBAMgIACH0BQEAyAgAIQqVBQAA8gsAMJYFAADzCwAQlwUAAPILADCYBQEAyAgAIZkFAQDICAAhngVAAMoIACGfBUAAyggAIdAFAQDICAAh1QUBAMgIACH0BQEAyAgAIQaYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIdUFAQDYCgAh9AUBANgKACENDgAA9gsAIBgAAPkLACAxAAD6CwAgNAAA9wsAIDUAAPgLACA2AAD7CwAgNwAA_AsAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh1QUBANgKACH0BQEA2AoAIQVLAACUFAAgTAAA6RQAIKsGAACVFAAgrAYAAOgUACCxBgAApQIAIAtLAADcDAAwTAAA4QwAMKsGAADdDAAwrAYAAN4MADCtBgAA3wwAIK4GAADgDAAwrwYAAOAMADCwBgAA4AwAMLEGAADgDAAwsgYAAOIMADCzBgAA4wwAMAtLAADNDAAwTAAA0gwAMKsGAADODAAwrAYAAM8MADCtBgAA0AwAIK4GAADRDAAwrwYAANEMADCwBgAA0QwAMLEGAADRDAAwsgYAANMMADCzBgAA1AwAMAdLAACkDAAgTAAApwwAIKsGAAClDAAgrAYAAKYMACCvBgAATAAgsAYAAEwAILEGAADzAwAgC0sAAJkMADBMAACdDAAwqwYAAJoMADCsBgAAmwwAMK0GAACcDAAgrgYAANELADCvBgAA0QsAMLAGAADRCwAwsQYAANELADCyBgAAngwAMLMGAADUCwAwC0sAAIsMADBMAACQDAAwqwYAAIwMADCsBgAAjQwAMK0GAACODAAgrgYAAI8MADCvBgAAjwwAMLAGAACPDAAwsQYAAI8MADCyBgAAkQwAMLMGAACSDAAwC0sAAP0LADBMAACCDAAwqwYAAP4LADCsBgAA_wsAMK0GAACADAAgrgYAAIEMADCvBgAAgQwAMLAGAACBDAAwsQYAAIEMADCyBgAAgwwAMLMGAACEDAAwBgoAAIoMACDNBQEAAAAB1AUBAAAAAdUFAQAAAAHWBQEAAAAB1wUBAAAAAQIAAACxAQAgSwAAiQwAIAMAAACxAQAgSwAAiQwAIEwAAIcMACABRgAA5xQAMAwJAADCCQAgCgAA_gkAIJUFAAD9CQAwlgUAACcAEJcFAAD9CQAwzQUBAAAAAdMFAQDICAAh1AUBAMgIACHVBQEAyAgAIdYFAQDJCAAh1wUBAMgIACGgBgAA_AkAIAIAAACxAQAgRgAAhwwAIAIAAACFDAAgRgAAhgwAIAmVBQAAhAwAMJYFAACFDAAQlwUAAIQMADDNBQEAyAgAIdMFAQDICAAh1AUBAMgIACHVBQEAyAgAIdYFAQDJCAAh1wUBAMgIACEJlQUAAIQMADCWBQAAhQwAEJcFAACEDAAwzQUBAMgIACHTBQEAyAgAIdQFAQDICAAh1QUBAMgIACHWBQEAyQgAIdcFAQDICAAhBc0FAQDYCgAh1AUBANgKACHVBQEA2AoAIdYFAQDZCgAh1wUBANgKACEGCgAAiAwAIM0FAQDYCgAh1AUBANgKACHVBQEA2AoAIdYFAQDZCgAh1wUBANgKACEFSwAA4hQAIEwAAOUUACCrBgAA4xQAIKwGAADkFAAgsQYAANYGACAGCgAAigwAIM0FAQAAAAHUBQEAAAAB1QUBAAAAAdYFAQAAAAHXBQEAAAABA0sAAOIUACCrBgAA4xQAILEGAADWBgAgCAoAAJgMACDNBQEAAAAB1QUBAAAAAdcFAQAAAAHYBQEAAAAB2QUBAAAAAdoFAQAAAAHbBQEAAAABAgAAAK4BACBLAACXDAAgAwAAAK4BACBLAACXDAAgTAAAlQwAIAFGAADhFAAwDgkAAMIJACAKAAD-CQAglQUAAIAKADCWBQAAJQAQlwUAAIAKADDNBQEAAAAB0wUBAMgIACHVBQEAyQgAIdcFAQDICAAh2AUBAMgIACHZBQEAyAgAIdoFAQDICAAh2wUBAMgIACGhBgAA_wkAIAIAAACuAQAgRgAAlQwAIAIAAACTDAAgRgAAlAwAIAuVBQAAkgwAMJYFAACTDAAQlwUAAJIMADDNBQEAyAgAIdMFAQDICAAh1QUBAMkIACHXBQEAyAgAIdgFAQDICAAh2QUBAMgIACHaBQEAyAgAIdsFAQDICAAhC5UFAACSDAAwlgUAAJMMABCXBQAAkgwAMM0FAQDICAAh0wUBAMgIACHVBQEAyQgAIdcFAQDICAAh2AUBAMgIACHZBQEAyAgAIdoFAQDICAAh2wUBAMgIACEHzQUBANgKACHVBQEA2QoAIdcFAQDYCgAh2AUBANgKACHZBQEA2AoAIdoFAQDYCgAh2wUBANgKACEICgAAlgwAIM0FAQDYCgAh1QUBANkKACHXBQEA2AoAIdgFAQDYCgAh2QUBANgKACHaBQEA2AoAIdsFAQDYCgAhBUsAANwUACBMAADfFAAgqwYAAN0UACCsBgAA3hQAILEGAADWBgAgCAoAAJgMACDNBQEAAAAB1QUBAAAAAdcFAQAAAAHYBQEAAAAB2QUBAAAAAdoFAQAAAAHbBQEAAAABA0sAANwUACCrBgAA3RQAILEGAADWBgAgEQgAAKMMACAvAADnCwAgmAUBAAAAAZkFAQAAAAGaBQEAAAABmwUBAAAAAZ4FQAAAAAGfBUAAAAABoAVAAAAAAbAFAQAAAAGxBQEAAAABsgUBAAAAAbMFAQAAAAG0BRAAAAABvAUAAAC8BQLPBSAAAAAB0gUAAADSBQICAAAAGwAgSwAAogwAIAMAAAAbACBLAACiDAAgTAAAoAwAIAFGAADbFAAwAgAAABsAIEYAAKAMACACAAAA1QsAIEYAAJ8MACAPmAUBANgKACGZBQEA2AoAIZoFAQDZCgAhmwUBANkKACGeBUAA2goAIZ8FQADaCgAhoAVAANsKACGwBQEA2AoAIbEFAQDZCgAhsgUBANkKACGzBQEA2QoAIbQFEADYCwAhvAUAAPQKvAUizwUgAMkLACHSBQAA1wvSBSIRCAAAoQwAIC8AANsLACCYBQEA2AoAIZkFAQDYCgAhmgUBANkKACGbBQEA2QoAIZ4FQADaCgAhnwVAANoKACGgBUAA2woAIbAFAQDYCgAhsQUBANkKACGyBQEA2QoAIbMFAQDZCgAhtAUQANgLACG8BQAA9Aq8BSLPBSAAyQsAIdIFAADXC9IFIgdLAADWFAAgTAAA2RQAIKsGAADXFAAgrAYAANgUACCvBgAAFQAgsAYAABUAILEGAAAXACARCAAAowwAIC8AAOcLACCYBQEAAAABmQUBAAAAAZoFAQAAAAGbBQEAAAABngVAAAAAAZ8FQAAAAAGgBUAAAAABsAUBAAAAAbEFAQAAAAGyBQEAAAABswUBAAAAAbQFEAAAAAG8BQAAALwFAs8FIAAAAAHSBQAAANIFAgNLAADWFAAgqwYAANcUACCxBgAAFwAgCRUAAMoMACAWAADLDAAgHAAAzAwAIJgFAQAAAAGeBUAAAAABnwVAAAAAAYkGQAAAAAGLBkAAAAABjAYBAAAAAQIAAADzAwAgSwAApAwAIAMAAABMACBLAACkDAAgTAAAqAwAIAsAAABMACAVAACpDAAgFgAAqgwAIBwAAKsMACBGAACoDAAgmAUBANgKACGeBUAA2goAIZ8FQADaCgAhiQZAANoKACGLBkAA2goAIYwGAQDYCgAhCRUAAKkMACAWAACqDAAgHAAAqwwAIJgFAQDYCgAhngVAANoKACGfBUAA2goAIYkGQADaCgAhiwZAANoKACGMBgEA2AoAIQVLAADAFAAgTAAA1BQAIKsGAADBFAAgrAYAANMUACCxBgAASgAgC0sAALwMADBMAADBDAAwqwYAAL0MADCsBgAAvgwAMK0GAAC_DAAgrgYAAMAMADCvBgAAwAwAMLAGAADADAAwsQYAAMAMADCyBgAAwgwAMLMGAADDDAAwC0sAAKwMADBMAACxDAAwqwYAAK0MADCsBgAArgwAMK0GAACvDAAgrgYAALAMADCvBgAAsAwAMLAGAACwDAAwsQYAALAMADCyBgAAsgwAMLMGAACzDAAwBxEAALoMACAbAAC7DAAgmAUBAAAAAZwFAQAAAAGeBUAAAAABnwVAAAAAAYQGAQAAAAECAAAAVwAgSwAAuQwAIAMAAABXACBLAAC5DAAgTAAAtgwAIAFGAADSFAAwDBEAAPUJACAYAACdCgAgGwAAngoAIJUFAACcCgAwlgUAAFUAEJcFAACcCgAwmAUBAAAAAZwFAQAAAAGeBUAAyggAIZ8FQADKCAAhgwYBAMkIACGEBgEAAAABAgAAAFcAIEYAALYMACACAAAAtAwAIEYAALUMACAJlQUAALMMADCWBQAAtAwAEJcFAACzDAAwmAUBAMgIACGcBQEAyQgAIZ4FQADKCAAhnwVAAMoIACGDBgEAyQgAIYQGAQDJCAAhCZUFAACzDAAwlgUAALQMABCXBQAAswwAMJgFAQDICAAhnAUBAMkIACGeBUAAyggAIZ8FQADKCAAhgwYBAMkIACGEBgEAyQgAIQWYBQEA2AoAIZwFAQDZCgAhngVAANoKACGfBUAA2goAIYQGAQDZCgAhBxEAALcMACAbAAC4DAAgmAUBANgKACGcBQEA2QoAIZ4FQADaCgAhnwVAANoKACGEBgEA2QoAIQdLAADKFAAgTAAA0BQAIKsGAADLFAAgrAYAAM8UACCvBgAALgAgsAYAAC4AILEGAAAwACAHSwAAyBQAIEwAAM0UACCrBgAAyRQAIKwGAADMFAAgrwYAAFsAILAGAABbACCxBgAAYAAgBxEAALoMACAbAAC7DAAgmAUBAAAAAZwFAQAAAAGeBUAAAAABnwVAAAAAAYQGAQAAAAEDSwAAyhQAIKsGAADLFAAgsQYAADAAIANLAADIFAAgqwYAAMkUACCxBgAAYAAgBhQAAMkMACCYBQEAAAABngVAAAAAAZ8FQAAAAAGFBgEAAAABiQZAAAAAAQIAAABQACBLAADIDAAgAwAAAFAAIEsAAMgMACBMAADGDAAgAUYAAMcUADALFAAAoAoAIBcAAJ0KACCVBQAAnwoAMJYFAABOABCXBQAAnwoAMJgFAQAAAAGeBUAAyggAIZ8FQADKCAAhhQYBAMgIACGJBkAAyggAIYoGAQDJCAAhAgAAAFAAIEYAAMYMACACAAAAxAwAIEYAAMUMACAJlQUAAMMMADCWBQAAxAwAEJcFAADDDAAwmAUBAMgIACGeBUAAyggAIZ8FQADKCAAhhQYBAMgIACGJBkAAyggAIYoGAQDJCAAhCZUFAADDDAAwlgUAAMQMABCXBQAAwwwAMJgFAQDICAAhngVAAMoIACGfBUAAyggAIYUGAQDICAAhiQZAAMoIACGKBgEAyQgAIQWYBQEA2AoAIZ4FQADaCgAhnwVAANoKACGFBgEA2AoAIYkGQADaCgAhBhQAAMcMACCYBQEA2AoAIZ4FQADaCgAhnwVAANoKACGFBgEA2AoAIYkGQADaCgAhBUsAAMIUACBMAADFFAAgqwYAAMMUACCsBgAAxBQAILEGAABsACAGFAAAyQwAIJgFAQAAAAGeBUAAAAABnwVAAAAAAYUGAQAAAAGJBkAAAAABA0sAAMIUACCrBgAAwxQAILEGAABsACADSwAAwBQAIKsGAADBFAAgsQYAAEoAIARLAAC8DAAwqwYAAL0MADCtBgAAvwwAILEGAADADAAwBEsAAKwMADCrBgAArQwAMK0GAACvDAAgsQYAALAMADAEIwAA2wwAIJgFAQAAAAH4BQAAAPsFAvwFAQAAAAECAAAAhQEAIEsAANoMACADAAAAhQEAIEsAANoMACBMAADYDAAgAUYAAL8UADAKIwAAjAoAICcAAMIJACCVBQAAigoAMJYFAACDAQAQlwUAAIoKADCYBQEAAAAB-AUAAIsK-wUi-wUBAMgIACH8BQEAyAgAIaIGAACJCgAgAgAAAIUBACBGAADYDAAgAgAAANUMACBGAADWDAAgB5UFAADUDAAwlgUAANUMABCXBQAA1AwAMJgFAQDICAAh-AUAAIsK-wUi-wUBAMgIACH8BQEAyAgAIQeVBQAA1AwAMJYFAADVDAAQlwUAANQMADCYBQEAyAgAIfgFAACLCvsFIvsFAQDICAAh_AUBAMgIACEDmAUBANgKACH4BQAA1wz7BSL8BQEA2AoAIQGuBgAAAPsFAgQjAADZDAAgmAUBANgKACH4BQAA1wz7BSL8BQEA2AoAIQVLAAC6FAAgTAAAvRQAIKsGAAC7FAAgrAYAALwUACCxBgAAmAUAIAQjAADbDAAgmAUBAAAAAfgFAAAA-wUC_AUBAAAAAQNLAAC6FAAgqwYAALsUACCxBgAAmAUAIAkzAAC5DQAgOAAAuA0AIDkAALoNACCYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAABlAYBAAAAAZUGAQAAAAECAAAAqAEAIEsAALcNACADAAAAqAEAIEsAALcNACBMAADmDAAgAUYAALkUADAOCQAAwgkAIDMAAN8IACA4AACXCQAgOQAArAkAIJUFAACBCgAwlgUAAKIBABCXBQAAgQoAMJgFAQAAAAGZBQEAyAgAIZ4FQADKCAAhnwVAAMoIACHTBQEAyAgAIZQGAQDICAAhlQYBAMkIACECAAAAqAEAIEYAAOYMACACAAAA5AwAIEYAAOUMACAKlQUAAOMMADCWBQAA5AwAEJcFAADjDAAwmAUBAMgIACGZBQEAyAgAIZ4FQADKCAAhnwVAAMoIACHTBQEAyAgAIZQGAQDICAAhlQYBAMkIACEKlQUAAOMMADCWBQAA5AwAEJcFAADjDAAwmAUBAMgIACGZBQEAyAgAIZ4FQADKCAAhnwVAAMoIACHTBQEAyAgAIZQGAQDICAAhlQYBAMkIACEGmAUBANgKACGZBQEA2AoAIZ4FQADaCgAhnwVAANoKACGUBgEA2AoAIZUGAQDZCgAhCTMAAOgMACA4AADnDAAgOQAA6QwAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhlAYBANgKACGVBgEA2QoAIQtLAACEDQAwTAAAiQ0AMKsGAACFDQAwrAYAAIYNADCtBgAAhw0AIK4GAACIDQAwrwYAAIgNADCwBgAAiA0AMLEGAACIDQAwsgYAAIoNADCzBgAAiw0AMAtLAAD5DAAwTAAA_QwAMKsGAAD6DAAwrAYAAPsMADCtBgAA_AwAIK4GAADDCwAwrwYAAMMLADCwBgAAwwsAMLEGAADDCwAwsgYAAP4MADCzBgAAxgsAMAtLAADqDAAwTAAA7wwAMKsGAADrDAAwrAYAAOwMADCtBgAA7QwAIK4GAADuDAAwrwYAAO4MADCwBgAA7gwAMLEGAADuDAAwsgYAAPAMADCzBgAA8QwAMAQjAAD4DAAgmAUBAAAAAfgFAAAA_gUC_AUBAAAAAQIAAACBAQAgSwAA9wwAIAMAAACBAQAgSwAA9wwAIEwAAPUMACABRgAAuBQAMAojAACMCgAgJQAAkAoAIJUFAACOCgAwlgUAAH8AEJcFAACOCgAwmAUBAAAAAZ0FAQDICAAh-AUAAI8K_gUi_AUBAMgIACGjBgAAjQoAIAIAAACBAQAgRgAA9QwAIAIAAADyDAAgRgAA8wwAIAeVBQAA8QwAMJYFAADyDAAQlwUAAPEMADCYBQEAyAgAIZ0FAQDICAAh-AUAAI8K_gUi_AUBAMgIACEHlQUAAPEMADCWBQAA8gwAEJcFAADxDAAwmAUBAMgIACGdBQEAyAgAIfgFAACPCv4FIvwFAQDICAAhA5gFAQDYCgAh-AUAAPQM_gUi_AUBANgKACEBrgYAAAD-BQIEIwAA9gwAIJgFAQDYCgAh-AUAAPQM_gUi_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_gUAIAVLAACWFAAgTAAApBQAIKsGAACXFAAgrAYAAKMUACCxBgAAMAAgC0sAAKINADBMAACnDQAwqwYAAKMNADCsBgAApA0AMK0GAAClDQAgrgYAAKYNADCvBgAApg0AMLAGAACmDQAwsQYAAKYNADCyBgAAqA0AMLMGAACpDQAwC0sAAJYNADBMAACbDQAwqwYAAJcNADCsBgAAmA0AMK0GAACZDQAgrgYAAJoNADCvBgAAmg0AMLAGAACaDQAwsQYAAJoNADCyBgAAnA0AMLMGAACdDQAwDgoAALULACAiAAC2CwAgKgAAuAsAICwAALkLACCYBQEAAAABnAUBAAAAAZ4FQAAAAAGfBUAAAAABvgUQAAAAAcAFAQAAAAHKBQEAAAABywWAAAAAAcwFQAAAAAHNBQEAAAABAgAAACsAIEsAAKENACADAAAAKwAgSwAAoQ0AIEwAAKANACABRgAAohQAMBMKAAC1CgAgIQAAlAoAICIAAKoJACAqAACFCgAgLAAAtgoAIJUFAAC0CgAwlgUAACkAEJcFAAC0CgAwmAUBAAAAAZwFAQDICAAhngVAAMoIACGfBUAAyggAIb4FEACDCgAhwAUBAMkIACHKBQEAAAABywUAAIsJACDMBUAAywgAIc0FAQDJCAAhzgUBAMgIACECAAAAKwAgRgAAoA0AIAIAAACeDQAgRgAAnw0AIA6VBQAAnQ0AMJYFAACeDQAQlwUAAJ0NADCYBQEAyAgAIZwFAQDICAAhngVAAMoIACGfBUAAyggAIb4FEACDCgAhwAUBAMkIACHKBQEAyAgAIcsFAACLCQAgzAVAAMsIACHNBQEAyQgAIc4FAQDICAAhDpUFAACdDQAwlgUAAJ4NABCXBQAAnQ0AMJgFAQDICAAhnAUBAMgIACGeBUAAyggAIZ8FQADKCAAhvgUQAIMKACHABQEAyQgAIcoFAQDICAAhywUAAIsJACDMBUAAywgAIc0FAQDJCAAhzgUBAMgIACEKmAUBANgKACGcBQEA2AoAIZ4FQADaCgAhnwVAANoKACG-BRAA5woAIcAFAQDZCgAhygUBANgKACHLBYAAAAABzAVAANsKACHNBQEA2QoAIQ4KAACbCwAgIgAAnAsAICoAAJ4LACAsAACfCwAgmAUBANgKACGcBQEA2AoAIZ4FQADaCgAhnwVAANoKACG-BRAA5woAIcAFAQDZCgAhygUBANgKACHLBYAAAAABzAVAANsKACHNBQEA2QoAIQ4KAAC1CwAgIgAAtgsAICoAALgLACAsAAC5CwAgmAUBAAAAAZwFAQAAAAGeBUAAAAABnwVAAAAAAb4FEAAAAAHABQEAAAABygUBAAAAAcsFgAAAAAHMBUAAAAABzQUBAAAAAQQjAACwDQAgmAUBAAAAAfgFAAAA_wUC_AUBAAAAAQIAAAB9ACBLAACvDQAgAwAAAH0AIEsAAK8NACBMAACtDQAgAUYAAKEUADAKIQAAlAoAICMAAIwKACCVBQAAkgoAMJYFAAB7ABCXBQAAkgoAMJgFAQAAAAHOBQEAyAgAIfgFAACTCv8FIvwFAQDICAAhpAYAAJEKACACAAAAfQAgRgAArQ0AIAIAAACqDQAgRgAAqw0AIAeVBQAAqQ0AMJYFAACqDQAQlwUAAKkNADCYBQEAyAgAIc4FAQDICAAh-AUAAJMK_wUi_AUBAMgIACEHlQUAAKkNADCWBQAAqg0AEJcFAACpDQAwmAUBAMgIACHOBQEAyAgAIfgFAACTCv8FIvwFAQDICAAhA5gFAQDYCgAh-AUAAKwN_wUi_AUBANgKACEBrgYAAAD_BQIEIwAArg0AIJgFAQDYCgAh-AUAAKwN_wUi_AUBANgKACEFSwAAnBQAIEwAAJ8UACCrBgAAnRQAIKwGAACeFAAgsQYAAJgFACAEIwAAsA0AIJgFAQAAAAH4BQAAAP8FAvwFAQAAAAEDSwAAnBQAIKsGAACdFAAgsQYAAJgFACAQDQAAtg0AIBEAALQNACA8AACyDQAgPQAAsw0AID4AALUNACCYBQEAAAABmQUBAAAAAZwFAQAAAAGeBUAAAAABnwVAAAAAAesFAQAAAAH2BQAAAJEGAvkFAQAAAAGPBgEAAAABkgYAAACSBgKTBgEAAAABA0sAAJoUACCrBgAAmxQAILEGAADBAQAgA0sAAJgUACCrBgAAmRQAILEGAAD-BQAgA0sAAJYUACCrBgAAlxQAILEGAAAwACAESwAAog0AMKsGAACjDQAwrQYAAKUNACCxBgAApg0AMARLAACWDQAwqwYAAJcNADCtBgAAmQ0AILEGAACaDQAwCTMAALkNACA4AAC4DQAgOQAAug0AIJgFAQAAAAGZBQEAAAABngVAAAAAAZ8FQAAAAAGUBgEAAAABlQYBAAAAAQRLAACEDQAwqwYAAIUNADCtBgAAhw0AILEGAACIDQAwBEsAAPkMADCrBgAA-gwAMK0GAAD8DAAgsQYAAMMLADAESwAA6gwAMKsGAADrDAAwrQYAAO0MACCxBgAA7gwAMA0OAAC8DQAgGAAAvw0AIDEAAMANACA0AAC9DQAgNQAAvg0AIDYAAMENACA3AADCDQAgmAUBAAAAAZkFAQAAAAGeBUAAAAABnwVAAAAAAdUFAQAAAAH0BQEAAAABA0sAAJQUACCrBgAAlRQAILEGAAClAgAgBEsAANwMADCrBgAA3QwAMK0GAADfDAAgsQYAAOAMADAESwAAzQwAMKsGAADODAAwrQYAANAMACCxBgAA0QwAMANLAACkDAAgqwYAAKUMACCxBgAA8wMAIARLAACZDAAwqwYAAJoMADCtBgAAnAwAILEGAADRCwAwBEsAAIsMADCrBgAAjAwAMK0GAACODAAgsQYAAI8MADAESwAA_QsAMKsGAAD-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_hMAIEwAAIEUACCrBgAA_xMAIKwGAACAFAAgsQYAAKgBACAQDQAAtg0AIBEAALQNACAlAACfDgAgPAAAsg0AID4AALUNACCYBQEAAAABmQUBAAAAAZwFAQAAAAGdBQEAAAABngVAAAAAAZ8FQAAAAAHrBQEAAAAB9gUAAACRBgKPBgEAAAABkgYAAACSBgKTBgEAAAABA0sAAP4TACCrBgAA_xMAILEGAACoAQAgBhEAAK4OACCYBQEAAAABnAUBAAAAAZ4FQAAAAAGfBUAAAAAB-AUAAAD4BQICAAAACwAgSwAArQ4AIAMAAAALACBLAACtDgAgTAAAqw4AIAFGAAD9EwAwCxEAAK0KACA9AADRCgAglQUAAM8KADCWBQAACAAQlwUAAM8KADCYBQEAAAABnAUBAAAAAZ4FQADKCAAhnwVAAMoIACH4BQAA0Ar4BSL5BQEAyAgAIQIAAAALACBGAACrDgAgAgAAAKgOACBGAACpDgAgCZUFAACnDgAwlgUAAKgOABCXBQAApw4AMJgFAQDICAAhnAUBAMgIACGeBUAAyggAIZ8FQADKCAAh-AUAANAK-AUi-QUBAMgIACEJlQUAAKcOADCWBQAAqA4AEJcFAACnDgAwmAUBAMgIACGcBQEAyAgAIZ4FQADKCAAhnwVAAMoIACH4BQAA0Ar4BSL5BQEAyAgAIQWYBQEA2AoAIZwFAQDYCgAhngVAANoKACGfBUAA2goAIfgFAACqDvgFIgGuBgAAAPgFAgYRAACsDgAgmAUBANgKACGcBQEA2AoAIZ4FQADaCgAhnwVAANoKACH4BQAAqg74BSIFSwAA-BMAIEwAAPsTACCrBgAA-RMAIKwGAAD6EwAgsQYAAPoBACAGEQAArg4AIJgFAQAAAAGcBQEAAAABngVAAAAAAZ8FQAAAAAH4BQAAAPgFAgNLAAD4EwAgqwYAAPkTACCxBgAA-gEAIARLAACgDgAwqwYAAKEOADCtBgAAow4AILEGAACkDgAwBEsAAJUOADCrBgAAlg4AMK0GAACYDgAgsQYAAIgNADAAAAGsBQEAAAABAAAABUsAAPMTACBMAAD2EwAgqwYAAPQTACCsBgAA9RMAILEGAAD-BQAgA0sAAPMTACCrBgAA9BMAILEGAAD-BQAgAAAABUsAAO4TACBMAADxEwAgqwYAAO8TACCsBgAA8BMAILEGAAATACADSwAA7hMAIKsGAADvEwAgsQYAABMAIAAAAAVLAADpEwAgTAAA7BMAIKsGAADqEwAgrAYAAOsTACCxBgAAqAEAIANLAADpEwAgqwYAAOoTACCxBgAAqAEAIAAAAAVLAADkEwAgTAAA5xMAIKsGAADlEwAgrAYAAOYTACCxBgAADwAgA0sAAOQTACCrBgAA5RMAILEGAAAPACAAAAAFSwAA3BMAIEwAAOITACCrBgAA3RMAIKwGAADhEwAgsQYAADAAIAtLAADhDgAwTAAA5Q4AMKsGAADiDgAwrAYAAOMOADCtBgAA5A4AIK4GAACmDQAwrwYAAKYNADCwBgAApg0AMLEGAACmDQAwsgYAAOYOADCzBgAAqQ0AMAtLAADYDgAwTAAA3A4AMKsGAADZDgAwrAYAANoOADCtBgAA2w4AIK4GAADuDAAwrwYAAO4MADCwBgAA7gwAMLEGAADuDAAwsgYAAN0OADCzBgAA8QwAMAtLAADPDgAwTAAA0w4AMKsGAADQDgAwrAYAANEOADCtBgAA0g4AIK4GAADRDAAwrwYAANEMADCwBgAA0QwAMLEGAADRDAAwsgYAANQOADCzBgAA1AwAMAQnAAC9DgAgmAUBAAAAAfgFAAAA-wUC-wUBAAAAAQIAAACFAQAgSwAA1w4AIAMAAACFAQAgSwAA1w4AIEwAANYOACABRgAA4BMAMAIAAACFAQAgRgAA1g4AIAIAAADVDAAgRgAA1Q4AIAOYBQEA2AoAIfgFAADXDPsFIvsFAQDYCgAhBCcAALwOACCYBQEA2AoAIfgFAADXDPsFIvsFAQDYCgAhBCcAAL0OACCYBQEAAAAB-AUAAAD7BQL7BQEAAAABBCUAAMIOACCYBQEAAAABnQUBAAAAAfgFAAAA_gUCAgAAAIEBACBLAADgDgAgAwAAAIEBACBLAADgDgAgTAAA3w4AIAFGAADfEwAwAgAAAIEBACBGAADfDgAgAgAAAPIMACBGAADeDgAgA5gFAQDYCgAhnQUBANgKACH4BQAA9Az-BSIEJQAAwQ4AIJgFAQDYCgAhnQUBANgKACH4BQAA9Az-BSIEJQAAwg4AIJgFAQAAAAGdBQEAAAAB-AUAAAD-BQIEIQAAxw4AIJgFAQAAAAHOBQEAAAAB-AUAAAD_BQICAAAAfQAgSwAA6Q4AIAMAAAB9ACBLAADpDgAgTAAA6A4AIAFGAADeEwAwAgAAAH0AIEYAAOgOACACAAAAqg0AIEYAAOcOACADmAUBANgKACHOBQEA2AoAIfgFAACsDf8FIgQhAADGDgAgmAUBANgKACHOBQEA2AoAIfgFAACsDf8FIgQhAADHDgAgmAUBAAAAAc4FAQAAAAH4BQAAAP8FAgNLAADcEwAgqwYAAN0TACCxBgAAMAAgBEsAAOEOADCrBgAA4g4AMK0GAADkDgAgsQYAAKYNADAESwAA2A4AMKsGAADZDgAwrQYAANsOACCxBgAA7gwAMARLAADPDgAwqwYAANAOADCtBgAA0g4AILEGAADRDAAwBw0AAPoNACAOAADIEgAgEQAAyxIAICEAALYSACAjAACyEgAgKQAAvRIAILQGAADOEgAgAAAAAawFAQAAAAEAAAALSwAA9w8AMEwAAPwPADCrBgAA-A8AMKwGAAD5DwAwrQYAAPoPACCuBgAA-w8AMK8GAAD7DwAwsAYAAPsPADCxBgAA-w8AMLIGAAD9DwAwswYAAP4PADALSwAA6Q8AMEwAAO4PADCrBgAA6g8AMKwGAADrDwAwrQYAAOwPACCuBgAA7Q8AMK8GAADtDwAwsAYAAO0PADCxBgAA7Q8AMLIGAADvDwAwswYAAPAPADALSwAA2w8AMEwAAOAPADCrBgAA3A8AMKwGAADdDwAwrQYAAN4PACCuBgAA3w8AMK8GAADfDwAwsAYAAN8PADCxBgAA3w8AMLIGAADhDwAwswYAAOIPADALSwAAuA8AMEwAAL0PADCrBgAAuQ8AMKwGAAC6DwAwrQYAALsPACCuBgAAvA8AMK8GAAC8DwAwsAYAALwPADCxBgAAvA8AMLIGAAC-DwAwswYAAL8PADALSwAAlQ8AMEwAAJoPADCrBgAAlg8AMKwGAACXDwAwrQYAAJgPACCuBgAAmQ8AMK8GAACZDwAwsAYAAJkPADCxBgAAmQ8AMLIGAACbDwAwswYAAJwPADALSwAA_A4AMEwAAIEPADCrBgAA_Q4AMKwGAAD-DgAwrQYAAP8OACCuBgAAgA8AMK8GAACADwAwsAYAAIAPADCxBgAAgA8AMLIGAACCDwAwswYAAIMPADAHFgAAlA8AIJgFAQAAAAGeBUAAAAABnwVAAAAAAYYGQAAAAAGHBgEAAAABiAYCAAAAAQIAAABsACBLAACTDwAgAwAAAGwAIEsAAJMPACBMAACGDwAgAUYAANsTADAMEAAAlgoAIBYAAMMJACCVBQAAlQoAMJYFAABqABCXBQAAlQoAMJgFAQAAAAGeBUAAyggAIZ8FQADKCAAhggYBAMgIACGGBkAAyggAIYcGAQAAAAGIBgIA_wgAIQIAAABsACBGAACGDwAgAgAAAIQPACBGAACFDwAgCpUFAACDDwAwlgUAAIQPABCXBQAAgw8AMJgFAQDICAAhngVAAMoIACGfBUAAyggAIYIGAQDICAAhhgZAAMoIACGHBgEAyAgAIYgGAgD_CAAhCpUFAACDDwAwlgUAAIQPABCXBQAAgw8AMJgFAQDICAAhngVAAMoIACGfBUAAyggAIYIGAQDICAAhhgZAAMoIACGHBgEAyAgAIYgGAgD_CAAhBpgFAQDYCgAhngVAANoKACGfBUAA2goAIYYGQADaCgAhhwYBANgKACGIBgIAgQ4AIQcWAACHDwAgmAUBANgKACGeBUAA2goAIZ8FQADaCgAhhgZAANoKACGHBgEA2AoAIYgGAgCBDgAhC0sAAIgPADBMAACMDwAwqwYAAIkPADCsBgAAig8AMK0GAACLDwAgrgYAAMAMADCvBgAAwAwAMLAGAADADAAwsQYAAMAMADCyBgAAjQ8AMLMGAADDDAAwBhcAAJIPACCYBQEAAAABngVAAAAAAZ8FQAAAAAGJBkAAAAABigYBAAAAAQIAAABQACBLAACRDwAgAwAAAFAAIEsAAJEPACBMAACPDwAgAUYAANoTADACAAAAUAAgRgAAjw8AIAIAAADEDAAgRgAAjg8AIAWYBQEA2AoAIZ4FQADaCgAhnwVAANoKACGJBkAA2goAIYoGAQDZCgAhBhcAAJAPACCYBQEA2AoAIZ4FQADaCgAhnwVAANoKACGJBkAA2goAIYoGAQDZCgAhB0sAANUTACBMAADYEwAgqwYAANYTACCsBgAA1xMAIK8GAABMACCwBgAATAAgsQYAAPMDACAGFwAAkg8AIJgFAQAAAAGeBUAAAAABnwVAAAAAAYkGQAAAAAGKBgEAAAABA0sAANUTACCrBgAA1hMAILEGAADzAwAgBxYAAJQPACCYBQEAAAABngVAAAAAAZ8FQAAAAAGGBkAAAAABhwYBAAAAAYgGAgAAAAEESwAAiA8AMKsGAACJDwAwrQYAAIsPACCxBgAAwAwAMAcZAAC3DwAgmAUBAAAAAZ4FQAAAAAGfBUAAAAABhgZAAAAAAYcGAQAAAAGIBgIAAAABAgAAAGgAIEsAALYPACADAAAAaAAgSwAAtg8AIEwAAJ8PACABRgAA1BMAMAwQAACWCgAgGQAAmAoAIJUFAACXCgAwlgUAAF0AEJcFAACXCgAwmAUBAAAAAZ4FQADKCAAhnwVAAMoIACGCBgEAyAgAIYYGQADKCAAhhwYBAAAAAYgGAgD_CAAhAgAAAGgAIEYAAJ8PACACAAAAnQ8AIEYAAJ4PACAKlQUAAJwPADCWBQAAnQ8AEJcFAACcDwAwmAUBAMgIACGeBUAAyggAIZ8FQADKCAAhggYBAMgIACGGBkAAyggAIYcGAQDICAAhiAYCAP8IACEKlQUAAJwPADCWBQAAnQ8AEJcFAACcDwAwmAUBAMgIACGeBUAAyggAIZ8FQADKCAAhggYBAMgIACGGBkAAyggAIYcGAQDICAAhiAYCAP8IACEGmAUBANgKACGeBUAA2goAIZ8FQADaCgAhhgZAANoKACGHBgEA2AoAIYgGAgCBDgAhBxkAAKAPACCYBQEA2AoAIZ4FQADaCgAhnwVAANoKACGGBkAA2goAIYcGAQDYCgAhiAYCAIEOACELSwAAoQ8AMEwAAKYPADCrBgAAog8AMKwGAACjDwAwrQYAAKQPACCuBgAApQ8AMK8GAAClDwAwsAYAAKUPADCxBgAApQ8AMLIGAACnDwAwswYAAKgPADAEGgAAtQ8AIJgFAQAAAAGeBUAAAAABnwVAAAAAAQIAAABgACBLAAC0DwAgAwAAAGAAIEsAALQPACBMAACrDwAgAUYAANMTADAJFAAAmgoAIBoAAJsKACCVBQAAmQoAMJYFAABbABCXBQAAmQoAMJgFAQAAAAGeBUAAyggAIZ8FQADKCAAhhQYBAMkIACECAAAAYAAgRgAAqw8AIAIAAACpDwAgRgAAqg8AIAeVBQAAqA8AMJYFAACpDwAQlwUAAKgPADCYBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGFBgEAyQgAIQeVBQAAqA8AMJYFAACpDwAQlwUAAKgPADCYBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGFBgEAyQgAIQOYBQEA2AoAIZ4FQADaCgAhnwVAANoKACEEGgAArA8AIJgFAQDYCgAhngVAANoKACGfBUAA2goAIQdLAACtDwAgTAAAsA8AIKsGAACuDwAgrAYAAK8PACCvBgAAVQAgsAYAAFUAILEGAABXACAHEQAAugwAIBgAALMPACCYBQEAAAABnAUBAAAAAZ4FQAAAAAGfBUAAAAABgwYBAAAAAQIAAABXACBLAACtDwAgAwAAAFUAIEsAAK0PACBMAACxDwAgCQAAAFUAIBEAALcMACAYAACyDwAgRgAAsQ8AIJgFAQDYCgAhnAUBANkKACGeBUAA2goAIZ8FQADaCgAhgwYBANkKACEHEQAAtwwAIBgAALIPACCYBQEA2AoAIZwFAQDZCgAhngVAANoKACGfBUAA2goAIYMGAQDZCgAhB0sAAM4TACBMAADREwAgqwYAAM8TACCsBgAA0BMAIK8GAABMACCwBgAATAAgsQYAAPMDACADSwAAzhMAIKsGAADPEwAgsQYAAPMDACAEGgAAtQ8AIJgFAQAAAAGeBUAAAAABnwVAAAAAAQNLAACtDwAgqwYAAK4PACCxBgAAVwAgBxkAALcPACCYBQEAAAABngVAAAAAAZ8FQAAAAAGGBkAAAAABhwYBAAAAAYgGAgAAAAEESwAAoQ8AMKsGAACiDwAwrQYAAKQPACCxBgAApQ8AMAcdAADaDwAgmAUBAAAAAZ4FQAAAAAGfBUAAAAABhgZAAAAAAYcGAQAAAAGIBgIAAAABAgAAAEYAIEsAANkPACADAAAARgAgSwAA2Q8AIEwAAMIPACABRgAAzRMAMAwQAACWCgAgHQAApAoAIJUFAACjCgAwlgUAAEQAEJcFAACjCgAwmAUBAAAAAZ4FQADKCAAhnwVAAMoIACGCBgEAyAgAIYYGQADKCAAhhwYBAAAAAYgGAgD_CAAhAgAAAEYAIEYAAMIPACACAAAAwA8AIEYAAMEPACAKlQUAAL8PADCWBQAAwA8AEJcFAAC_DwAwmAUBAMgIACGeBUAAyggAIZ8FQADKCAAhggYBAMgIACGGBkAAyggAIYcGAQDICAAhiAYCAP8IACEKlQUAAL8PADCWBQAAwA8AEJcFAAC_DwAwmAUBAMgIACGeBUAAyggAIZ8FQADKCAAhggYBAMgIACGGBkAAyggAIYcGAQDICAAhiAYCAP8IACEGmAUBANgKACGeBUAA2goAIZ8FQADaCgAhhgZAANoKACGHBgEA2AoAIYgGAgCBDgAhBx0AAMMPACCYBQEA2AoAIZ4FQADaCgAhnwVAANoKACGGBkAA2goAIYcGAQDYCgAhiAYCAIEOACELSwAAxA8AMEwAAMkPADCrBgAAxQ8AMKwGAADGDwAwrQYAAMcPACCuBgAAyA8AMK8GAADIDwAwsAYAAMgPADCxBgAAyA8AMLIGAADKDwAwswYAAMsPADAFFwAA2A8AIJgFAQAAAAGeBUAAAAABnwVAAAAAAY0GAgAAAAECAAAASgAgSwAA1w8AIAMAAABKACBLAADXDwAgTAAAzg8AIAFGAADMEwAwChQAAKIKACAXAACdCgAglQUAAKEKADCWBQAASAAQlwUAAKEKADCYBQEAAAABngVAAMoIACGfBUAAyggAIYUGAQDICAAhjQYCAP8IACECAAAASgAgRgAAzg8AIAIAAADMDwAgRgAAzQ8AIAiVBQAAyw8AMJYFAADMDwAQlwUAAMsPADCYBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGFBgEAyAgAIY0GAgD_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_DwAgRgAAgBAAIAmVBQAA_g8AMJYFAAD_DwAQlwUAAP4PADCYBQEAyAgAIZwFAQDICAAhngVAAMoIACGfBUAAyggAIfgFAACsCoIGIoIGAQDICAAhCZUFAAD-DwAwlgUAAP8PABCXBQAA_g8AMJgFAQDICAAhnAUBAMgIACGeBUAAyggAIZ8FQADKCAAh-AUAAKwKggYiggYBAMgIACEFmAUBANgKACGcBQEA2AoAIZ4FQADaCgAhnwVAANoKACH4BQAAgRCCBiIBrgYAAACCBgIGEQAAgxAAIJgFAQDYCgAhnAUBANgKACGeBUAA2goAIZ8FQADaCgAh-AUAAIEQggYiBUsAALUTACBMAAC4EwAgqwYAALYTACCsBgAAtxMAILEGAAD6AQAgBhEAAIUQACCYBQEAAAABnAUBAAAAAZ4FQAAAAAGfBUAAAAAB-AUAAACCBgIDSwAAtRMAIKsGAAC2EwAgsQYAAPoBACAESwAA9w8AMKsGAAD4DwAwrQYAAPoPACCxBgAA-w8AMARLAADpDwAwqwYAAOoPADCtBgAA7A8AILEGAADtDwAwBEsAANsPADCrBgAA3A8AMK0GAADeDwAgsQYAAN8PADAESwAAuA8AMKsGAAC5DwAwrQYAALsPACCxBgAAvA8AMARLAACVDwAwqwYAAJYPADCtBgAAmA8AILEGAACZDwAwBEsAAPwOADCrBgAA_Q4AMK0GAAD_DgAgsQYAAIAPADAAAAAAAAABrAUBAAAAAQAAAAVLAACwEwAgTAAAsxMAIKsGAACxEwAgrAYAALITACCxBgAAgQUAIANLAACwEwAgqwYAALETACCxBgAAgQUAIAAAAAAAAAdLAACrEwAgTAAArhMAIKsGAACsEwAgrAYAAK0TACCvBgAAXQAgsAYAAF0AILEGAABoACADSwAAqxMAIKsGAACsEwAgsQYAAGgAIAAAAAAABUsAAKYTACBMAACpEwAgqwYAAKcTACCsBgAAqBMAILEGAACBBQAgA0sAAKYTACCrBgAApxMAILEGAACBBQAgAAAAAAAAAAAFSwAAoRMAIEwAAKQTACCrBgAAohMAIKwGAACjEwAgsQYAAIEFACADSwAAoRMAIKsGAACiEwAgsQYAAIEFACAAAAADFAAAxBIAIBcAAL8SACC0BgAAxRIAIAkOAADIEgAgGAAAvxIAIDEAANYSACAyAADXEgAgNAAA2RIAIDUAAPEOACA2AADaEgAgNwAA2xIAILQGAADcEgAgAAABrAUBAAAAAQAAAAAABUsAAJwTACBMAACfEwAgqwYAAJ0TACCsBgAAnhMAILEGAABGACADSwAAnBMAIKsGAACdEwAgsQYAAEYAIAAAAAAABUsAAJcTACBMAACaEwAgqwYAAJgTACCsBgAAmRMAILEGAACBBQAgA0sAAJcTACCrBgAAmBMAILEGAACBBQAgAAAABUsAAJETACBMAACVEwAgqwYAAJITACCsBgAAlBMAILEGAACgAwAgC0sAAMwQADBMAADQEAAwqwYAAM0QADCsBgAAzhAAMK0GAADPEAAgrgYAAIgNADCvBgAAiA0AMLAGAACIDQAwsQYAAIgNADCyBgAA0RAAMLMGAACLDQAwEA0AALYNACARAAC0DQAgJQAAnw4AID0AALMNACA-AAC1DQAgmAUBAAAAAZkFAQAAAAGcBQEAAAABnQUBAAAAAZ4FQAAAAAGfBUAAAAAB6wUBAAAAAfYFAAAAkQYC-QUBAAAAAY8GAQAAAAGSBgAAAJIGAgIAAAAPACBLAADUEAAgAwAAAA8AIEsAANQQACBMAADTEAAgAUYAAJMTADACAAAADwAgRgAA0xAAIAIAAACMDQAgRgAA0hAAIAuYBQEA2AoAIZkFAQDYCgAhnAUBANgKACGdBQEA2AoAIZ4FQADaCgAhnwVAANoKACHrBQEA2QoAIfYFAACODZEGIvkFAQDZCgAhjwYBANkKACGSBgAAjw2SBiIQDQAAlQ0AIBEAAJMNACAlAACdDgAgPQAAkg0AID4AAJQNACCYBQEA2AoAIZkFAQDYCgAhnAUBANgKACGdBQEA2AoAIZ4FQADaCgAhnwVAANoKACHrBQEA2QoAIfYFAACODZEGIvkFAQDZCgAhjwYBANkKACGSBgAAjw2SBiIQDQAAtg0AIBEAALQNACAlAACfDgAgPQAAsw0AID4AALUNACCYBQEAAAABmQUBAAAAAZwFAQAAAAGdBQEAAAABngVAAAAAAZ8FQAAAAAHrBQEAAAAB9gUAAACRBgL5BQEAAAABjwYBAAAAAZIGAAAAkgYCA0sAAJETACCrBgAAkhMAILEGAACgAwAgBEsAAMwQADCrBgAAzRAAMK0GAADPEAAgsQYAAIgNADAAAAALSwAA2xAAMEwAAOAQADCrBgAA3BAAMKwGAADdEAAwrQYAAN4QACCuBgAA3xAAMK8GAADfEAAwsAYAAN8QADCxBgAA3xAAMLIGAADhEAAwswYAAOIQADAGOwAA1hAAIJgFAQAAAAGZBQEAAAABngVAAAAAAZ8FQAAAAAHuBQEAAAABAgAAAMEBACBLAADmEAAgAwAAAMEBACBLAADmEAAgTAAA5RAAIAFGAACQEwAwCzoAAPsJACA7AACXCQAglQUAAPoJADCWBQAAvgEAEJcFAAD6CQAwmAUBAAAAAZkFAQDICAAhngVAAMoIACGfBUAAyggAIe4FAQDJCAAhjgYBAMgIACECAAAAwQEAIEYAAOUQACACAAAA4xAAIEYAAOQQACAJlQUAAOIQADCWBQAA4xAAEJcFAADiEAAwmAUBAMgIACGZBQEAyAgAIZ4FQADKCAAhnwVAAMoIACHuBQEAyQgAIY4GAQDICAAhCZUFAADiEAAwlgUAAOMQABCXBQAA4hAAMJgFAQDICAAhmQUBAMgIACGeBUAAyggAIZ8FQADKCAAh7gUBAMkIACGOBgEAyAgAIQWYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIe4FAQDZCgAhBjsAAMsQACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIe4FAQDZCgAhBjsAANYQACCYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAAB7gUBAAAAAQRLAADbEAAwqwYAANwQADCtBgAA3hAAILEGAADfEAAwAAGsBQEAAAABAAAAAAAABUsAAIsTACBMAACOEwAgqwYAAIwTACCsBgAAjRMAILEGAAATACADSwAAixMAIKsGAACMEwAgsQYAABMAIAAAAAVLAACGEwAgTAAAiRMAIKsGAACHEwAgrAYAAIgTACCxBgAAvAcAIANLAACGEwAgqwYAAIcTACCxBgAAvAcAIAAAAAVLAACBEwAgTAAAhBMAIKsGAACCEwAgrAYAAIMTACCxBgAAgQUAIANLAACBEwAgqwYAAIITACCxBgAAgQUAIAAAAAVLAAD8EgAgTAAA_xIAIKsGAAD9EgAgrAYAAP4SACCxBgAAgQUAIANLAAD8EgAgqwYAAP0SACCxBgAAgQUAIAAAAAGuBgAAAJkGAgGuBgAAAJoGAgtLAACqEQAwTAAArxEAMKsGAACrEQAwrAYAAKwRADCtBgAArREAIK4GAACuEQAwrwYAAK4RADCwBgAArhEAMLEGAACuEQAwsgYAALARADCzBgAAsREAMAtLAAChEQAwTAAApREAMKsGAACiEQAwrAYAAKMRADCtBgAApBEAIK4GAADvCwAwrwYAAO8LADCwBgAA7wsAMLEGAADvCwAwsgYAAKYRADCzBgAA8gsAMAtLAACVEQAwTAAAmhEAMKsGAACWEQAwrAYAAJcRADCtBgAAmBEAIK4GAACZEQAwrwYAAJkRADCwBgAAmREAMLEGAACZEQAwsgYAAJsRADCzBgAAnBEAMAdLAACQEQAgTAAAkxEAIKsGAACREQAgrAYAAJIRACCvBgAANwAgsAYAADcAILEGAAA-ACAHSwAAixEAIEwAAI4RACCrBgAAjBEAIKwGAACNEQAgrwYAAEAAILAGAABAACCxBgAAQgAgBhAAAPsQACCZBQEAAAABngVAAAAAAZ8FQAAAAAGCBgEAAAABlgYBAAAAAQIAAABCACBLAACLEQAgAwAAAEAAIEsAAIsRACBMAACPEQAgCAAAAEAAIBAAAPoQACBGAACPEQAgmQUBANgKACGeBUAA2goAIZ8FQADaCgAhggYBANgKACGWBgEA2AoAIQYQAAD6EAAgmQUBANgKACGeBUAA2goAIZ8FQADaCgAhggYBANgKACGWBgEA2AoAIQgQAACAEQAgngVAAAAAAZ8FQAAAAAHYBQEAAAAB2QUBAAAAAdsFAQAAAAGCBgEAAAABlwYBAAAAAQIAAAA-ACBLAACQEQAgAwAAADcAIEsAAJARACBMAACUEQAgCgAAADcAIBAAAP8QACBGAACUEQAgngVAANoKACGfBUAA2goAIdgFAQDYCgAh2QUBANgKACHbBQEA2AoAIYIGAQDYCgAhlwYBANgKACEIEAAA_xAAIJ4FQADaCgAhnwVAANoKACHYBQEA2AoAIdkFAQDYCgAh2wUBANgKACGCBgEA2AoAIZcGAQDYCgAhEDoBAAAAATwBAAAAAZ4FQAAAAAGfBUAAAAAB4gUBAAAAAecFAQAAAAHpBQEAAAAB6gUBAAAAAesFAQAAAAHtBQAAAO0FAu4FAQAAAAHvBQEAAAAB8AUBAAAAAfEFAQAAAAHyBQEAAAAB8wUBAAAAAQIAAAA1ACBLAACgEQAgAwAAADUAIEsAAKARACBMAACfEQAgAUYAAPsSADAVDgAApwoAIDoBAMgIACE8AQDICAAhlQUAAK4KADCWBQAAMwAQlwUAAK4KADCeBUAAyggAIZ8FQADKCAAh4gUBAMgIACHnBQEAyAgAIekFAQAAAAHqBQEAyAgAIesFAQDICAAh7QUAAK8K7QUi7gUBAMgIACHvBQEAyAgAIfAFAQDICAAh8QUBAMkIACHyBQEAyQgAIfMFAQDJCAAh9AUBAMgIACECAAAANQAgRgAAnxEAIAIAAACdEQAgRgAAnhEAIBQ6AQDICAAhPAEAyAgAIZUFAACcEQAwlgUAAJ0RABCXBQAAnBEAMJ4FQADKCAAhnwVAAMoIACHiBQEAyAgAIecFAQDICAAh6QUBAMgIACHqBQEAyAgAIesFAQDICAAh7QUAAK8K7QUi7gUBAMgIACHvBQEAyAgAIfAFAQDICAAh8QUBAMkIACHyBQEAyQgAIfMFAQDJCAAh9AUBAMgIACEUOgEAyAgAITwBAMgIACGVBQAAnBEAMJYFAACdEQAQlwUAAJwRADCeBUAAyggAIZ8FQADKCAAh4gUBAMgIACHnBQEAyAgAIekFAQDICAAh6gUBAMgIACHrBQEAyAgAIe0FAACvCu0FIu4FAQDICAAh7wUBAMgIACHwBQEAyAgAIfEFAQDJCAAh8gUBAMkIACHzBQEAyQgAIfQFAQDICAAhEDoBANgKACE8AQDYCgAhngVAANoKACGfBUAA2goAIeIFAQDYCgAh5wUBANgKACHpBQEA2AoAIeoFAQDYCgAh6wUBANgKACHtBQAAjA7tBSLuBQEA2AoAIe8FAQDYCgAh8AUBANgKACHxBQEA2QoAIfIFAQDZCgAh8wUBANkKACEQOgEA2AoAITwBANgKACGeBUAA2goAIZ8FQADaCgAh4gUBANgKACHnBQEA2AoAIekFAQDYCgAh6gUBANgKACHrBQEA2AoAIe0FAACMDu0FIu4FAQDYCgAh7wUBANgKACHwBQEA2AoAIfEFAQDZCgAh8gUBANkKACHzBQEA2QoAIRA6AQAAAAE8AQAAAAGeBUAAAAABnwVAAAAAAeIFAQAAAAHnBQEAAAAB6QUBAAAAAeoFAQAAAAHrBQEAAAAB7QUAAADtBQLuBQEAAAAB7wUBAAAAAfAFAQAAAAHxBQEAAAAB8gUBAAAAAfMFAQAAAAENGAAAvw0AIDEAAMANACAyAAD2EAAgNAAAvQ0AIDUAAL4NACA2AADBDQAgNwAAwg0AIJgFAQAAAAGZBQEAAAABngVAAAAAAZ8FQAAAAAHQBQEAAAAB1QUBAAAAAQIAAAATACBLAACpEQAgAwAAABMAIEsAAKkRACBMAACoEQAgAUYAAPoSADACAAAAEwAgRgAAqBEAIAIAAADzCwAgRgAApxEAIAaYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIdAFAQDYCgAh1QUBANgKACENGAAA-QsAIDEAAPoLACAyAAD1EAAgNAAA9wsAIDUAAPgLACA2AAD7CwAgNwAA_AsAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh0AUBANgKACHVBQEA2AoAIQ0YAAC_DQAgMQAAwA0AIDIAAPYQACA0AAC9DQAgNQAAvg0AIDYAAMENACA3AADCDQAgmAUBAAAAAZkFAQAAAAGeBUAAAAABnwVAAAAAAdAFAQAAAAHVBQEAAAABCg0AANgRACARAADUEQAgIQAA1REAICMAANYRACApAADXEQAgmAUBAAAAAZwFAQAAAAGeBUAAAAABnwVAAAAAAfgFAAAAmwYCAgAAADAAIEsAANMRACADAAAAMAAgSwAA0xEAIEwAALURACABRgAA-RIAMA8NAAD5CAAgDgAApwoAIBEAAK0KACAhAACyCgAgIwAAswoAICkAAJsKACCVBQAAsAoAMJYFAAAuABCXBQAAsAoAMJgFAQAAAAGcBQEAAAABngVAAMoIACGfBUAAyggAIfQFAQDICAAh-AUAALEKmwYiAgAAADAAIEYAALURACACAAAAshEAIEYAALMRACAJlQUAALERADCWBQAAshEAEJcFAACxEQAwmAUBAMgIACGcBQEAyAgAIZ4FQADKCAAhnwVAAMoIACH0BQEAyAgAIfgFAACxCpsGIgmVBQAAsREAMJYFAACyEQAQlwUAALERADCYBQEAyAgAIZwFAQDICAAhngVAAMoIACGfBUAAyggAIfQFAQDICAAh-AUAALEKmwYiBZgFAQDYCgAhnAUBANgKACGeBUAA2goAIZ8FQADaCgAh-AUAALQRmwYiAa4GAAAAmwYCCg0AALoRACARAAC2EQAgIQAAtxEAICMAALgRACApAAC5EQAgmAUBANgKACGcBQEA2AoAIZ4FQADaCgAhnwVAANoKACH4BQAAtBGbBiIFSwAA8xIAIEwAAPcSACCrBgAA9BIAIKwGAAD2EgAgsQYAAPoBACAHSwAAzhEAIEwAANERACCrBgAAzxEAIKwGAADQEQAgrwYAAA0AILAGAAANACCxBgAADwAgB0sAAMkRACBMAADMEQAgqwYAAMoRACCsBgAAyxEAIK8GAAB5ACCwBgAAeQAgsQYAAJgFACAHSwAAxBEAIEwAAMcRACCrBgAAxREAIKwGAADGEQAgrwYAAFUAILAGAABVACCxBgAAVwAgC0sAALsRADBMAAC_EQAwqwYAALwRADCsBgAAvREAMK0GAAC-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-xEAIEwAAP4RACCrBgAA_BEAIKwGAAD9EQAgrwYAAAgAILAGAAAIACCxBgAACwAgB0sAAPYRACBMAAD5EQAgqwYAAPcRACCsBgAA-BEAIK8GAAA5ACCwBgAAOQAgsQYAADsAIAdLAADxEQAgTAAA9BEAIKsGAADyEQAgrAYAAPMRACCvBgAALgAgsAYAAC4AILEGAAAwACAKDQAA2BEAIA4AAOcRACAhAADVEQAgIwAA1hEAICkAANcRACCYBQEAAAABngVAAAAAAZ8FQAAAAAH0BQEAAAAB-AUAAACbBgICAAAAMAAgSwAA8REAIAMAAAAuACBLAADxEQAgTAAA9REAIAwAAAAuACANAAC6EQAgDgAA5hEAICEAALcRACAjAAC4EQAgKQAAuREAIEYAAPURACCYBQEA2AoAIZ4FQADaCgAhnwVAANoKACH0BQEA2AoAIfgFAAC0EZsGIgoNAAC6EQAgDgAA5hEAICEAALcRACAjAAC4EQAgKQAAuREAIJgFAQDYCgAhngVAANoKACGfBUAA2goAIfQFAQDYCgAh-AUAALQRmwYiBhAAAJcQACCYBQEAAAABngVAAAAAAZ8FQAAAAAH4BQAAAIIGAoIGAQAAAAECAAAAOwAgSwAA9hEAIAMAAAA5ACBLAAD2EQAgTAAA-hEAIAgAAAA5ACAQAACWEAAgRgAA-hEAIJgFAQDYCgAhngVAANoKACGfBUAA2goAIfgFAACBEIIGIoIGAQDYCgAhBhAAAJYQACCYBQEA2AoAIZ4FQADaCgAhnwVAANoKACH4BQAAgRCCBiKCBgEA2AoAIQY9AAC4DgAgmAUBAAAAAZ4FQAAAAAGfBUAAAAAB-AUAAAD4BQL5BQEAAAABAgAAAAsAIEsAAPsRACADAAAACAAgSwAA-xEAIEwAAP8RACAIAAAACAAgPQAAtw4AIEYAAP8RACCYBQEA2AoAIZ4FQADaCgAhnwVAANoKACH4BQAAqg74BSL5BQEA2AoAIQY9AAC3DgAgmAUBANgKACGeBUAA2goAIZ8FQADaCgAh-AUAAKoO-AUi-QUBANgKACEFBQAAhhIAIJgFAQAAAAGeBUAAAAABnwVAAAAAAZ8GAQAAAAECAAAAAQAgSwAAgBIAIAMAAAADACBLAACAEgAgTAAAhBIAIAcAAAADACAFAACFEgAgRgAAhBIAIJgFAQDYCgAhngVAANoKACGfBUAA2goAIZ8GAQDYCgAhBQUAAIUSACCYBQEA2AoAIZ4FQADaCgAhnwVAANoKACGfBgEA2AoAIQVLAADpEgAgTAAA7BIAIKsGAADqEgAgrAYAAOsSACCxBgAA4wEAIANLAADpEgAgqwYAAOoSACCxBgAA4wEAIANLAACAEgAgqwYAAIESACCxBgAAAQAgA0sAAPsRACCrBgAA_BEAILEGAAALACADSwAA9hEAIKsGAAD3EQAgsQYAADsAIANLAADxEQAgqwYAAPIRACCxBgAAMAAgAwUAAOESACARAADLEgAgtAYAAOISACADEQAAyxIAID0AAN4SACC0BgAA4BIAIAMQAAC4EgAgEQAAyxIAILQGAADMEgAgAawFAQAAAAEAAAALSwAAkxIAMEwAAJgSADCrBgAAlBIAMKwGAACVEgAwrQYAAJYSACCuBgAAlxIAMK8GAACXEgAwsAYAAJcSADCxBgAAlxIAMLIGAACZEgAwswYAAJoSADAFEQAAoBIAIJgFAQAAAAGcBQEAAAABngVAAAAAAZ8FQAAAAAECAAAAAQAgSwAAnxIAIAMAAAABACBLAACfEgAgTAAAnRIAIAFGAADoEgAwCgUAANMKACARAACtCgAglQUAANIKADCWBQAAAwAQlwUAANIKADCYBQEAAAABnAUBAAAAAZ4FQADKCAAhnwVAAMoIACGfBgEAyAgAIQIAAAABACBGAACdEgAgAgAAAJsSACBGAACcEgAgCJUFAACaEgAwlgUAAJsSABCXBQAAmhIAMJgFAQDICAAhnAUBAMgIACGeBUAAyggAIZ8FQADKCAAhnwYBAMgIACEIlQUAAJoSADCWBQAAmxIAEJcFAACaEgAwmAUBAMgIACGcBQEAyAgAIZ4FQADKCAAhnwVAAMoIACGfBgEAyAgAIQSYBQEA2AoAIZwFAQDYCgAhngVAANoKACGfBUAA2goAIQURAACeEgAgmAUBANgKACGcBQEA2AoAIZ4FQADaCgAhnwVAANoKACEFSwAA4xIAIEwAAOYSACCrBgAA5BIAIKwGAADlEgAgsQYAAPoBACAFEQAAoBIAIJgFAQAAAAGcBQEAAAABngVAAAAAAZ8FQAAAAAEDSwAA4xIAIKsGAADkEgAgsQYAAPoBACAESwAAkxIAMKsGAACUEgAwrQYAAJYSACCxBgAAlxIAMAABrAUBAAAAAQAAAAIPAADoEAAgtAYAAOkQACABrAUBAAAAAQYLAAD4DQAgDAAA-Q0AIA0AAPoNACCgBQAA1AoAINwFAADUCgAgtAYAAPsNACABrAUBAAAAAQGsBQEAAAABAawFAQAAAAEFLgAA_goAIJoFAADUCgAgmwUAANQKACCgBQAA1AoAILQGAAD_CgAgAAGsBQEAAAABCgoAAKkSACAhAAC2EgAgIgAA7g4AICoAAK4SACAsAADPEgAgwAUAANQKACDLBQAA1AoAIMwFAADUCgAgzQUAANQKACC0BgAA0BIAIAGsBQEAAAABBSIAAO4OACAkAADvDgAgJgAA8A4AICgAAPEOACC0BgAA8g4AIAGsBQEAAAABBgkAALUQACAzAADGDQAgOAAAsg4AIDkAAPAOACCVBgAA1AoAILQGAACsEgAgAawFAQAAAAELDQAA-g0AIBEAAO4OACAlAAC0EgAgPAAA3RIAID0AAN4SACA-AADvDgAg6wUAANQKACD5BQAA1AoAII8GAADUCgAgkwYAANQKACC0BgAA3xIAIAGsBQEAAAABCAMAAIwQACASAACNEAAgEwAAjhAAIB4AAI8QACAfAACQEAAgIAAAkRAAIIAGAADUCgAgtAYAAJIQACABrAUBAAAAAQABrAUBAAAAAQMQAAC4EgAgGQAAuhIAILQGAAC7EgAgBxEAAO4OACAYAAC_EgAgGwAAwBIAIJwFAADUCgAggwYAANQKACCEBgAA1AoAILQGAADBEgAgAawFAQAAAAEFCQAAtRAAIBUAALQQACAWAAC2EAAgHAAAtxAAILQGAAC4EAAgBBQAALwSACAaAAC9EgAghQYAANQKACC0BgAAvhIAIAGsBQEAAAABAxAAALgSACAWAAC2EAAgtAYAALkSACABrAUBAAAAAQMQAAC4EgAgHQAAxhIAILQGAADHEgAgAawFAQAAAAEAAawFAQAAAAEGAwAA3hEAIAcAAMUNACALAADgEQAgDAAA4REAIA8AAN8RACC0BgAA4hEAIAGsBQEAAAABAawFAQAAAAEFBgAAixIAICIAAO4OACA_AACMEgAgQAAAjRIAILQGAACOEgAgAawFAQAAAAEBrAUBAAAAAQGsBQEAAAABAAGsBQEAAAABDAgAANQSACAJAAC1EAAgLwAArhIAIJoFAADUCgAgmwUAANQKACCgBQAA1AoAILEFAADUCgAgsgUAANQKACCzBQAA1AoAILQFAADUCgAg0wUAANQKACC0BgAA1RIAIAgIAACtEgAgLwAArhIAIJoFAADUCgAgoAUAANQKACCxBQAA1AoAILIFAADUCgAgswUAANQKACC0BgAArxIAIAGsBQEAAAABCSUAALQSACAxAADWEgAgMgAA1xIAIJoFAADUCgAgmwUAANQKACCdBQAA1AoAIKAFAADUCgAg0AUAANQKACC0BgAA2BIAIAGsBQEAAAABAAQHAADFDQAgMwAAxg0AIMoFAADUCgAgtAYAAMcNACABrAUBAAAAAQAAAAGsBQEAAAABBDoAAKcSACA7AACyDgAg7gUAANQKACC0BgAAqBIAIAMDAACxDgAgOAAAsg4AILQGAACzDgAgAawFAQAAAAEBrAUBAAAAAQMDAACiEgAglwYAANQKACC0BgAAoxIAIAGsBQEAAAABCCIAAIoSACA_AACIEgAgQAAAiRIAIJgFAQAAAAHeBQAAAJ8GAvYFAAAAngYCmwYBAAAAAZwGAQAAAAECAAAA-gEAIEsAAOMSACADAAAA_QEAIEsAAOMSACBMAADnEgAgCgAAAP0BACAiAADwEQAgPwAA7hEAIEAAAO8RACBGAADnEgAgmAUBANgKACHeBQAA7BGfBiL2BQAA6xGeBiKbBgEA2AoAIZwGAQDYCgAhCCIAAPARACA_AADuEQAgQAAA7xEAIJgFAQDYCgAh3gUAAOwRnwYi9gUAAOsRngYimwYBANgKACGcBgEA2AoAIQSYBQEAAAABnAUBAAAAAZ4FQAAAAAGfBUAAAAABB5gFAQAAAAGeBUAAAAABnwVAAAAAAdgFAQAAAAHZBQEAAAAB2wUBAAAAAZcGAQAAAAECAAAA4wEAIEsAAOkSACADAAAA5gEAIEsAAOkSACBMAADtEgAgCQAAAOYBACBGAADtEgAgmAUBANgKACGeBUAA2goAIZ8FQADaCgAh2AUBANgKACHZBQEA2AoAIdsFAQDYCgAhlwYBANkKACEHmAUBANgKACGeBUAA2goAIZ8FQADaCgAh2AUBANgKACHZBQEA2AoAIdsFAQDYCgAhlwYBANkKACEJBwAA2hEAIAsAANwRACAMAADdEQAgDwAA2xEAIJgFAQAAAAGeBUAAAAABnwVAAAAAAd4FAAAAmQYC9gUAAACaBgICAAAApQIAIEsAAO4SACADAAAAqAIAIEsAAO4SACBMAADyEgAgCwAAAKgCACAHAACHEQAgCwAAiREAIAwAAIoRACAPAACIEQAgRgAA8hIAIJgFAQDYCgAhngVAANoKACGfBUAA2goAId4FAACEEZkGIvYFAACFEZoGIgkHAACHEQAgCwAAiREAIAwAAIoRACAPAACIEQAgmAUBANgKACGeBUAA2goAIZ8FQADaCgAh3gUAAIQRmQYi9gUAAIURmgYiCAYAAIcSACA_AACIEgAgQAAAiRIAIJgFAQAAAAHeBQAAAJ8GAvYFAAAAngYCmwYBAAAAAZwGAQAAAAECAAAA-gEAIEsAAPMSACAKmAUBAAAAAZ4FQAAAAAGfBUAAAAABvgUQAAAAAcAFAQAAAAHKBQEAAAABywWAAAAAAcwFQAAAAAHNBQEAAAABzgUBAAAAAQMAAAD9AQAgSwAA8xIAIEwAAPgSACAKAAAA_QEAIAYAAO0RACA_AADuEQAgQAAA7xEAIEYAAPgSACCYBQEA2AoAId4FAADsEZ8GIvYFAADrEZ4GIpsGAQDYCgAhnAYBANgKACEIBgAA7REAID8AAO4RACBAAADvEQAgmAUBANgKACHeBQAA7BGfBiL2BQAA6xGeBiKbBgEA2AoAIZwGAQDYCgAhBZgFAQAAAAGcBQEAAAABngVAAAAAAZ8FQAAAAAH4BQAAAJsGAgaYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAAB0AUBAAAAAdUFAQAAAAEQOgEAAAABPAEAAAABngVAAAAAAZ8FQAAAAAHiBQEAAAAB5wUBAAAAAekFAQAAAAHqBQEAAAAB6wUBAAAAAe0FAAAA7QUC7gUBAAAAAe8FAQAAAAHwBQEAAAAB8QUBAAAAAfIFAQAAAAHzBQEAAAABDAMAAIYQACATAACIEAAgHgAAiRAAIB8AAIoQACAgAACLEAAgmAUBAAAAAZkFAQAAAAGeBUAAAAABnwVAAAAAAcoFAQAAAAH2BQAAAPYFAoAGAQAAAAECAAAAgQUAIEsAAPwSACADAAAAhAUAIEsAAPwSACBMAACAEwAgDgAAAIQFACADAAD2DgAgEwAA-A4AIB4AAPkOACAfAAD6DgAgIAAA-w4AIEYAAIATACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIcoFAQDYCgAh9gUAAJIO9gUigAYBANkKACEMAwAA9g4AIBMAAPgOACAeAAD5DgAgHwAA-g4AICAAAPsOACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIcoFAQDYCgAh9gUAAJIO9gUigAYBANkKACEMAwAAhhAAIBIAAIcQACAeAACJEAAgHwAAihAAICAAAIsQACCYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAABygUBAAAAAfYFAAAA9gUCgAYBAAAAAQIAAACBBQAgSwAAgRMAIAMAAACEBQAgSwAAgRMAIEwAAIUTACAOAAAAhAUAIAMAAPYOACASAAD3DgAgHgAA-Q4AIB8AAPoOACAgAAD7DgAgRgAAhRMAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhygUBANgKACH2BQAAkg72BSKABgEA2QoAIQwDAAD2DgAgEgAA9w4AIB4AAPkOACAfAAD6DgAgIAAA-w4AIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhygUBANgKACH2BQAAkg72BSKABgEA2QoAIQYzAADEDQAgmAUBAAAAAZkFAQAAAAGeBUAAAAABnwVAAAAAAcoFAQAAAAECAAAAvAcAIEsAAIYTACADAAAAoAEAIEsAAIYTACBMAACKEwAgCAAAAKABACAzAAC-CwAgRgAAihMAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhygUBANkKACEGMwAAvgsAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhygUBANkKACEODgAAvA0AIBgAAL8NACAxAADADQAgMgAA9hAAIDUAAL4NACA2AADBDQAgNwAAwg0AIJgFAQAAAAGZBQEAAAABngVAAAAAAZ8FQAAAAAHQBQEAAAAB1QUBAAAAAfQFAQAAAAECAAAAEwAgSwAAixMAIAMAAAARACBLAACLEwAgTAAAjxMAIBAAAAARACAOAAD2CwAgGAAA-QsAIDEAAPoLACAyAAD1EAAgNQAA-AsAIDYAAPsLACA3AAD8CwAgRgAAjxMAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh0AUBANgKACHVBQEA2AoAIfQFAQDYCgAhDg4AAPYLACAYAAD5CwAgMQAA-gsAIDIAAPUQACA1AAD4CwAgNgAA-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-A4AIB4AAPkOACAfAAD6DgAgIAAA-w4AIEYAALQTACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIcoFAQDYCgAh9gUAAJIO9gUigAYBANkKACEMEgAA9w4AIBMAAPgOACAeAAD5DgAgHwAA-g4AICAAAPsOACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIcoFAQDYCgAh9gUAAJIO9gUigAYBANkKACEIBgAAhxIAICIAAIoSACA_AACIEgAgmAUBAAAAAd4FAAAAnwYC9gUAAACeBgKbBgEAAAABnAYBAAAAAQIAAAD6AQAgSwAAtRMAIAMAAAD9AQAgSwAAtRMAIEwAALkTACAKAAAA_QEAIAYAAO0RACAiAADwEQAgPwAA7hEAIEYAALkTACCYBQEA2AoAId4FAADsEZ8GIvYFAADrEZ4GIpsGAQDYCgAhnAYBANgKACEIBgAA7REAICIAAPARACA_AADuEQAgmAUBANgKACHeBQAA7BGfBiL2BQAA6xGeBiKbBgEA2AoAIZwGAQDYCgAhBZgFAQAAAAGcBQEAAAABngVAAAAAAZ8FQAAAAAH4BQAAAIIGAgkDAADZEQAgBwAA2hEAIAwAAN0RACAPAADbEQAgmAUBAAAAAZ4FQAAAAAGfBUAAAAAB3gUAAACZBgL2BQAAAJoGAgIAAAClAgAgSwAAuxMAIAMAAACoAgAgSwAAuxMAIEwAAL8TACALAAAAqAIAIAMAAIYRACAHAACHEQAgDAAAihEAIA8AAIgRACBGAAC_EwAgmAUBANgKACGeBUAA2goAIZ8FQADaCgAh3gUAAIQRmQYi9gUAAIURmgYiCQMAAIYRACAHAACHEQAgDAAAihEAIA8AAIgRACCYBQEA2AoAIZ4FQADaCgAhnwVAANoKACHeBQAAhBGZBiL2BQAAhRGaBiIHngVAAAAAAZ8FQAAAAAHYBQEAAAAB2QUBAAAAAdsFAQAAAAH0BQEAAAABlwYBAAAAAQkDAADZEQAgBwAA2hEAIAsAANwRACAPAADbEQAgmAUBAAAAAZ4FQAAAAAGfBUAAAAAB3gUAAACZBgL2BQAAAJoGAgIAAAClAgAgSwAAwRMAIAMAAACoAgAgSwAAwRMAIEwAAMUTACALAAAAqAIAIAMAAIYRACAHAACHEQAgCwAAiREAIA8AAIgRACBGAADFEwAgmAUBANgKACGeBUAA2goAIZ8FQADaCgAh3gUAAIQRmQYi9gUAAIURmgYiCQMAAIYRACAHAACHEQAgCwAAiREAIA8AAIgRACCYBQEA2AoAIZ4FQADaCgAhnwVAANoKACHeBQAAhBGZBiL2BQAAhRGaBiIFmQUBAAAAAZ4FQAAAAAGfBUAAAAAB9AUBAAAAAZYGAQAAAAEODgAAvA0AIDEAAMANACAyAAD2EAAgNAAAvQ0AIDUAAL4NACA2AADBDQAgNwAAwg0AIJgFAQAAAAGZBQEAAAABngVAAAAAAZ8FQAAAAAHQBQEAAAAB1QUBAAAAAfQFAQAAAAECAAAAEwAgSwAAxxMAIAMAAAARACBLAADHEwAgTAAAyxMAIBAAAAARACAOAAD2CwAgMQAA-gsAIDIAAPUQACA0AAD3CwAgNQAA-AsAIDYAAPsLACA3AAD8CwAgRgAAyxMAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh0AUBANgKACHVBQEA2AoAIfQFAQDYCgAhDg4AAPYLACAxAAD6CwAgMgAA9RAAIDQAAPcLACA1AAD4CwAgNgAA-wsAIDcAAPwLACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIdAFAQDYCgAh1QUBANgKACH0BQEA2AoAIQSYBQEAAAABngVAAAAAAZ8FQAAAAAGNBgIAAAABBpgFAQAAAAGeBUAAAAABnwVAAAAAAYYGQAAAAAGHBgEAAAABiAYCAAAAAQoJAADWDwAgFQAAygwAIBYAAMsMACCYBQEAAAABngVAAAAAAZ8FQAAAAAHTBQEAAAABiQZAAAAAAYsGQAAAAAGMBgEAAAABAgAAAPMDACBLAADOEwAgAwAAAEwAIEsAAM4TACBMAADSEwAgDAAAAEwAIAkAANUPACAVAACpDAAgFgAAqgwAIEYAANITACCYBQEA2AoAIZ4FQADaCgAhnwVAANoKACHTBQEA2AoAIYkGQADaCgAhiwZAANoKACGMBgEA2AoAIQoJAADVDwAgFQAAqQwAIBYAAKoMACCYBQEA2AoAIZ4FQADaCgAhnwVAANoKACHTBQEA2AoAIYkGQADaCgAhiwZAANoKACGMBgEA2AoAIQOYBQEAAAABngVAAAAAAZ8FQAAAAAEGmAUBAAAAAZ4FQAAAAAGfBUAAAAABhgZAAAAAAYcGAQAAAAGIBgIAAAABCgkAANYPACAVAADKDAAgHAAAzAwAIJgFAQAAAAGeBUAAAAABnwVAAAAAAdMFAQAAAAGJBkAAAAABiwZAAAAAAYwGAQAAAAECAAAA8wMAIEsAANUTACADAAAATAAgSwAA1RMAIEwAANkTACAMAAAATAAgCQAA1Q8AIBUAAKkMACAcAACrDAAgRgAA2RMAIJgFAQDYCgAhngVAANoKACGfBUAA2goAIdMFAQDYCgAhiQZAANoKACGLBkAA2goAIYwGAQDYCgAhCgkAANUPACAVAACpDAAgHAAAqwwAIJgFAQDYCgAhngVAANoKACGfBUAA2goAIdMFAQDYCgAhiQZAANoKACGLBkAA2goAIYwGAQDYCgAhBZgFAQAAAAGeBUAAAAABnwVAAAAAAYkGQAAAAAGKBgEAAAABBpgFAQAAAAGeBUAAAAABnwVAAAAAAYYGQAAAAAGHBgEAAAABiAYCAAAAAQsNAADYEQAgDgAA5xEAIBEAANQRACAhAADVEQAgKQAA1xEAIJgFAQAAAAGcBQEAAAABngVAAAAAAZ8FQAAAAAH0BQEAAAAB-AUAAACbBgICAAAAMAAgSwAA3BMAIAOYBQEAAAABzgUBAAAAAfgFAAAA_wUCA5gFAQAAAAGdBQEAAAAB-AUAAAD-BQIDmAUBAAAAAfgFAAAA-wUC-wUBAAAAAQMAAAAuACBLAADcEwAgTAAA4xMAIA0AAAAuACANAAC6EQAgDgAA5hEAIBEAALYRACAhAAC3EQAgKQAAuREAIEYAAOMTACCYBQEA2AoAIZwFAQDYCgAhngVAANoKACGfBUAA2goAIfQFAQDYCgAh-AUAALQRmwYiCw0AALoRACAOAADmEQAgEQAAthEAICEAALcRACApAAC5EQAgmAUBANgKACGcBQEA2AoAIZ4FQADaCgAhnwVAANoKACH0BQEA2AoAIfgFAAC0EZsGIhENAAC2DQAgEQAAtA0AICUAAJ8OACA8AACyDQAgPQAAsw0AIJgFAQAAAAGZBQEAAAABnAUBAAAAAZ0FAQAAAAGeBUAAAAABnwVAAAAAAesFAQAAAAH2BQAAAJEGAvkFAQAAAAGPBgEAAAABkgYAAACSBgKTBgEAAAABAgAAAA8AIEsAAOQTACADAAAADQAgSwAA5BMAIEwAAOgTACATAAAADQAgDQAAlQ0AIBEAAJMNACAlAACdDgAgPAAAkQ0AID0AAJINACBGAADoEwAgmAUBANgKACGZBQEA2AoAIZwFAQDYCgAhnQUBANgKACGeBUAA2goAIZ8FQADaCgAh6wUBANkKACH2BQAAjg2RBiL5BQEA2QoAIY8GAQDZCgAhkgYAAI8NkgYikwYBANkKACERDQAAlQ0AIBEAAJMNACAlAACdDgAgPAAAkQ0AID0AAJINACCYBQEA2AoAIZkFAQDYCgAhnAUBANgKACGdBQEA2AoAIZ4FQADaCgAhnwVAANoKACHrBQEA2QoAIfYFAACODZEGIvkFAQDZCgAhjwYBANkKACGSBgAAjw2SBiKTBgEA2QoAIQoJAADxEAAgMwAAuQ0AIDgAALgNACCYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAAB0wUBAAAAAZQGAQAAAAGVBgEAAAABAgAAAKgBACBLAADpEwAgAwAAAKIBACBLAADpEwAgTAAA7RMAIAwAAACiAQAgCQAA8BAAIDMAAOgMACA4AADnDAAgRgAA7RMAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh0wUBANgKACGUBgEA2AoAIZUGAQDZCgAhCgkAAPAQACAzAADoDAAgOAAA5wwAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh0wUBANgKACGUBgEA2AoAIZUGAQDZCgAhDg4AALwNACAYAAC_DQAgMQAAwA0AIDIAAPYQACA0AAC9DQAgNgAAwQ0AIDcAAMINACCYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAAB0AUBAAAAAdUFAQAAAAH0BQEAAAABAgAAABMAIEsAAO4TACADAAAAEQAgSwAA7hMAIEwAAPITACAQAAAAEQAgDgAA9gsAIBgAAPkLACAxAAD6CwAgMgAA9RAAIDQAAPcLACA2AAD7CwAgNwAA_AsAIEYAAPITACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIdAFAQDYCgAh1QUBANgKACH0BQEA2AoAIQ4OAAD2CwAgGAAA-QsAIDEAAPoLACAyAAD1EAAgNAAA9wsAIDYAAPsLACA3AAD8CwAgmAUBANgKACGZBQEA2AoAIZ4FQADaCgAhnwVAANoKACHQBQEA2AoAIdUFAQDYCgAh9AUBANgKACEHOAAAsA4AIJgFAQAAAAGZBQEAAAABngVAAAAAAZ8FQAAAAAHKBQEAAAAB9gUAAAD2BQICAAAA_gUAIEsAAPMTACADAAAAxgEAIEsAAPMTACBMAAD3EwAgCQAAAMYBACA4AACUDgAgRgAA9xMAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhygUBANgKACH2BQAAkg72BSIHOAAAlA4AIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhygUBANgKACH2BQAAkg72BSIIBgAAhxIAICIAAIoSACBAAACJEgAgmAUBAAAAAd4FAAAAnwYC9gUAAACeBgKbBgEAAAABnAYBAAAAAQIAAAD6AQAgSwAA-BMAIAMAAAD9AQAgSwAA-BMAIEwAAPwTACAKAAAA_QEAIAYAAO0RACAiAADwEQAgQAAA7xEAIEYAAPwTACCYBQEA2AoAId4FAADsEZ8GIvYFAADrEZ4GIpsGAQDYCgAhnAYBANgKACEIBgAA7REAICIAAPARACBAAADvEQAgmAUBANgKACHeBQAA7BGfBiL2BQAA6xGeBiKbBgEA2AoAIZwGAQDYCgAhBZgFAQAAAAGcBQEAAAABngVAAAAAAZ8FQAAAAAH4BQAAAPgFAgoJAADxEAAgMwAAuQ0AIDkAALoNACCYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAAB0wUBAAAAAZQGAQAAAAGVBgEAAAABAgAAAKgBACBLAAD-EwAgAwAAAKIBACBLAAD-EwAgTAAAghQAIAwAAACiAQAgCQAA8BAAIDMAAOgMACA5AADpDAAgRgAAghQAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh0wUBANgKACGUBgEA2AoAIZUGAQDZCgAhCgkAAPAQACAzAADoDAAgOQAA6QwAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh0wUBANgKACGUBgEA2AoAIZUGAQDZCgAhC5gFAQAAAAGZBQEAAAABnAUBAAAAAZ0FAQAAAAGeBUAAAAABnwVAAAAAAesFAQAAAAH2BQAAAJEGAo8GAQAAAAGSBgAAAJIGApMGAQAAAAEJAwAA2REAIAcAANoRACALAADcEQAgDAAA3REAIJgFAQAAAAGeBUAAAAABnwVAAAAAAd4FAAAAmQYC9gUAAACaBgICAAAApQIAIEsAAIQUACADAAAAqAIAIEsAAIQUACBMAACIFAAgCwAAAKgCACADAACGEQAgBwAAhxEAIAsAAIkRACAMAACKEQAgRgAAiBQAIJgFAQDYCgAhngVAANoKACGfBUAA2goAId4FAACEEZkGIvYFAACFEZoGIgkDAACGEQAgBwAAhxEAIAsAAIkRACAMAACKEQAgmAUBANgKACGeBUAA2goAIZ8FQADaCgAh3gUAAIQRmQYi9gUAAIURmgYiCpgFAQAAAAGcBQEAAAABngVAAAAAAZ8FQAAAAAG-BRAAAAABwAUBAAAAAcoFAQAAAAHLBYAAAAABzAVAAAAAAc4FAQAAAAEODgAAvA0AIBgAAL8NACAxAADADQAgMgAA9hAAIDQAAL0NACA1AAC-DQAgNwAAwg0AIJgFAQAAAAGZBQEAAAABngVAAAAAAZ8FQAAAAAHQBQEAAAAB1QUBAAAAAfQFAQAAAAECAAAAEwAgSwAAihQAIAMAAAARACBLAACKFAAgTAAAjhQAIBAAAAARACAOAAD2CwAgGAAA-QsAIDEAAPoLACAyAAD1EAAgNAAA9wsAIDUAAPgLACA3AAD8CwAgRgAAjhQAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh0AUBANgKACHVBQEA2AoAIfQFAQDYCgAhDg4AAPYLACAYAAD5CwAgMQAA-gsAIDIAAPUQACA0AAD3CwAgNQAA-AsAIDcAAPwLACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIdAFAQDYCgAh1QUBANgKACH0BQEA2AoAIQ4OAAC8DQAgGAAAvw0AIDEAAMANACAyAAD2EAAgNAAAvQ0AIDUAAL4NACA2AADBDQAgmAUBAAAAAZkFAQAAAAGeBUAAAAABnwVAAAAAAdAFAQAAAAHVBQEAAAAB9AUBAAAAAQIAAAATACBLAACPFAAgAwAAABEAIEsAAI8UACBMAACTFAAgEAAAABEAIA4AAPYLACAYAAD5CwAgMQAA-gsAIDIAAPUQACA0AAD3CwAgNQAA-AsAIDYAAPsLACBGAACTFAAgmAUBANgKACGZBQEA2AoAIZ4FQADaCgAhnwVAANoKACHQBQEA2AoAIdUFAQDYCgAh9AUBANgKACEODgAA9gsAIBgAAPkLACAxAAD6CwAgMgAA9RAAIDQAAPcLACA1AAD4CwAgNgAA-wsAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh0AUBANgKACHVBQEA2AoAIfQFAQDYCgAhCQMAANkRACALAADcEQAgDAAA3REAIA8AANsRACCYBQEAAAABngVAAAAAAZ8FQAAAAAHeBQAAAJkGAvYFAAAAmgYCAgAAAKUCACBLAACUFAAgCw0AANgRACAOAADnEQAgEQAA1BEAICMAANYRACApAADXEQAgmAUBAAAAAZwFAQAAAAGeBUAAAAABnwVAAAAAAfQFAQAAAAH4BQAAAJsGAgIAAAAwACBLAACWFAAgBwMAAK8OACCYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAABygUBAAAAAfYFAAAA9gUCAgAAAP4FACBLAACYFAAgBzoAANUQACCYBQEAAAABmQUBAAAAAZ4FQAAAAAGfBUAAAAAB7gUBAAAAAY4GAQAAAAECAAAAwQEAIEsAAJoUACAFIgAA6g4AICYAAOwOACAoAADtDgAgmAUBAAAAAf8FAQAAAAECAAAAmAUAIEsAAJwUACADAAAAeQAgSwAAnBQAIEwAAKAUACAHAAAAeQAgIgAAyw4AICYAAM0OACAoAADODgAgRgAAoBQAIJgFAQDYCgAh_wUBANgKACEFIgAAyw4AICYAAM0OACAoAADODgAgmAUBANgKACH_BQEA2AoAIQOYBQEAAAAB-AUAAAD_BQL8BQEAAAABCpgFAQAAAAGcBQEAAAABngVAAAAAAZ8FQAAAAAG-BRAAAAABwAUBAAAAAcoFAQAAAAHLBYAAAAABzAVAAAAAAc0FAQAAAAEDAAAALgAgSwAAlhQAIEwAAKUUACANAAAALgAgDQAAuhEAIA4AAOYRACARAAC2EQAgIwAAuBEAICkAALkRACBGAAClFAAgmAUBANgKACGcBQEA2AoAIZ4FQADaCgAhnwVAANoKACH0BQEA2AoAIfgFAAC0EZsGIgsNAAC6EQAgDgAA5hEAIBEAALYRACAjAAC4EQAgKQAAuREAIJgFAQDYCgAhnAUBANgKACGeBUAA2goAIZ8FQADaCgAh9AUBANgKACH4BQAAtBGbBiIDAAAAxgEAIEsAAJgUACBMAACoFAAgCQAAAMYBACADAACTDgAgRgAAqBQAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhygUBANgKACH2BQAAkg72BSIHAwAAkw4AIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAhygUBANgKACH2BQAAkg72BSIDAAAAvgEAIEsAAJoUACBMAACrFAAgCQAAAL4BACA6AADKEAAgRgAAqxQAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh7gUBANkKACGOBgEA2AoAIQc6AADKEAAgmAUBANgKACGZBQEA2AoAIZ4FQADaCgAhnwVAANoKACHuBQEA2QoAIY4GAQDYCgAhC5gFAQAAAAGZBQEAAAABnAUBAAAAAZ4FQAAAAAGfBUAAAAAB6wUBAAAAAfYFAAAAkQYC-QUBAAAAAY8GAQAAAAGSBgAAAJIGApMGAQAAAAEGBwAAww0AIJgFAQAAAAGZBQEAAAABngVAAAAAAZ8FQAAAAAHKBQEAAAABAgAAALwHACBLAACtFAAgAwAAAKABACBLAACtFAAgTAAAsRQAIAgAAACgAQAgBwAAvQsAIEYAALEUACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIcoFAQDZCgAhBgcAAL0LACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIcoFAQDZCgAhCZgFAQAAAAGZBQEAAAABmgUBAAAAAZsFAQAAAAGeBUAAAAABnwVAAAAAAaAFQAAAAAHPBSAAAAAB0AUBAAAAAQUiAADqDgAgJAAA6w4AICgAAO0OACCYBQEAAAAB_wUBAAAAAQIAAACYBQAgSwAAsxQAIAMAAAB5ACBLAACzFAAgTAAAtxQAIAcAAAB5ACAiAADLDgAgJAAAzA4AICgAAM4OACBGAAC3FAAgmAUBANgKACH_BQEA2AoAIQUiAADLDgAgJAAAzA4AICgAAM4OACCYBQEA2AoAIf8FAQDYCgAhA5gFAQAAAAH4BQAAAP4FAvwFAQAAAAEGmAUBAAAAAZkFAQAAAAGeBUAAAAABnwVAAAAAAZQGAQAAAAGVBgEAAAABBSIAAOoOACAkAADrDgAgJgAA7A4AIJgFAQAAAAH_BQEAAAABAgAAAJgFACBLAAC6FAAgAwAAAHkAIEsAALoUACBMAAC-FAAgBwAAAHkAICIAAMsOACAkAADMDgAgJgAAzQ4AIEYAAL4UACCYBQEA2AoAIf8FAQDYCgAhBSIAAMsOACAkAADMDgAgJgAAzQ4AIJgFAQDYCgAh_wUBANgKACEDmAUBAAAAAfgFAAAA-wUC_AUBAAAAAQYUAAC_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-QsAIDIAAPUQACA0AAD3CwAgNQAA-AsAIDYAAPsLACA3AAD8CwAgRgAA8xQAIJgFAQDYCgAhmQUBANgKACGeBUAA2goAIZ8FQADaCgAh0AUBANgKACHVBQEA2AoAIfQFAQDYCgAhDg4AAPYLACAYAAD5CwAgMgAA9RAAIDQAAPcLACA1AAD4CwAgNgAA-wsAIDcAAPwLACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIdAFAQDYCgAh1QUBANgKACH0BQEA2AoAIQ-YBQEAAAABmQUBAAAAAZoFAQAAAAGbBQEAAAABngVAAAAAAZ8FQAAAAAGgBUAAAAABsAUBAAAAAbEFAQAAAAGyBQEAAAABtAUQAAAAAbwFAAAAvAUCzwUgAAAAAdIFAAAA0gUC0wUBAAAAAQMAAACiAQAgSwAA7BQAIEwAAPcUACAMAAAAogEAIAkAAPAQACA4AADnDAAgOQAA6QwAIEYAAPcUACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIdMFAQDYCgAhlAYBANgKACGVBgEA2QoAIQoJAADwEAAgOAAA5wwAIDkAAOkMACCYBQEA2AoAIZkFAQDYCgAhngVAANoKACGfBUAA2goAIdMFAQDYCgAhlAYBANgKACGVBgEA2QoAIQmYBQEAAAABmQUBAAAAAZoFAQAAAAGbBQEAAAABnQUBAAAAAZ4FQAAAAAGfBUAAAAABoAVAAAAAAc8FIAAAAAEREQAAtA0AICUAAJ8OACA8AACyDQAgPQAAsw0AID4AALUNACCYBQEAAAABmQUBAAAAAZwFAQAAAAGdBQEAAAABngVAAAAAAZ8FQAAAAAHrBQEAAAAB9gUAAACRBgL5BQEAAAABjwYBAAAAAZIGAAAAkgYCkwYBAAAAAQIAAAAPACBLAAD5FAAgCw4AAOcRACARAADUEQAgIQAA1REAICMAANYRACApAADXEQAgmAUBAAAAAZwFAQAAAAGeBUAAAAABnwVAAAAAAfQFAQAAAAH4BQAAAJsGAgIAAAAwACBLAAD7FAAgCAsAAPUNACAMAAD2DQAgmAUBAAAAAZ4FQAAAAAGfBUAAAAABoAVAAAAAAdwFIAAAAAHeBQAAAN4FAgIAAADWBgAgSwAA_RQAIAuYBQEAAAABngVAAAAAAboFEAAAAAG8BQAAALwFAr0FEAAAAAG-BRAAAAABvwUQAAAAAcAFAQAAAAHBBQEAAAABwgUBAAAAAcMFgAAAAAEFmAUBAAAAAZ4FQAAAAAG2BRAAAAABuAUAAAC4BQK5BUAAAAABAwAAAA0AIEsAAPkUACBMAACDFQAgEwAAAA0AIBEAAJMNACAlAACdDgAgPAAAkQ0AID0AAJINACA-AACUDQAgRgAAgxUAIJgFAQDYCgAhmQUBANgKACGcBQEA2AoAIZ0FAQDYCgAhngVAANoKACGfBUAA2goAIesFAQDZCgAh9gUAAI4NkQYi-QUBANkKACGPBgEA2QoAIZIGAACPDZIGIpMGAQDZCgAhEREAAJMNACAlAACdDgAgPAAAkQ0AID0AAJINACA-AACUDQAgmAUBANgKACGZBQEA2AoAIZwFAQDYCgAhnQUBANgKACGeBUAA2goAIZ8FQADaCgAh6wUBANkKACH2BQAAjg2RBiL5BQEA2QoAIY8GAQDZCgAhkgYAAI8NkgYikwYBANkKACEDAAAALgAgSwAA-xQAIEwAAIYVACANAAAALgAgDgAA5hEAIBEAALYRACAhAAC3EQAgIwAAuBEAICkAALkRACBGAACGFQAgmAUBANgKACGcBQEA2AoAIZ4FQADaCgAhnwVAANoKACH0BQEA2AoAIfgFAAC0EZsGIgsOAADmEQAgEQAAthEAICEAALcRACAjAAC4EQAgKQAAuREAIJgFAQDYCgAhnAUBANgKACGeBUAA2goAIZ8FQADaCgAh9AUBANgKACH4BQAAtBGbBiIDAAAAIwAgSwAA_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_CQVAzgEYAhEABD0ABgMDDAUEAD44EAcHBAA9DckBDhEAEyUACDy_ATk9xwEGPsgBKQUEADgJAAkzuQELOLgBBzm6ASoJBAA3DgAUGKsBHDGsAQwyAAo0qQEINaoBKzavARA3sgERAwQANgcUCTMYCwQEADUlowEIMRwMMqEBCgQEADQIHQsJHgkvIg0DKwAOLZQBDDCWATAGBAAvCiQPIQAHIgATKo0BDSyRAS4EBAASCyYQDCgRDSwOAgkACQoADwIJAAkKAA8BDS0ABwQALQ2LAQ4OABQRAAQheAcjeigpigEgBgMxEwQAJwcyCQs4Fgx0GQ82FQEOABQCDgAUEAAXBwM8GAQAJhI_FhNDGR5HGh9pIiBtHgIQABcRAAQCDgAUEAAXAwQAJRAAFx1LGwIUABoXTRwFBAAkCQAJFQAbFlEdHFggAhQAHhdUHAMEAB8QABcWUh0BFlMAAxFaExhZHBtcIQIUXiIaYyADBAAjEAAXGWEhARliAAIWZAAcZQABHWYABgNuABJvABNwAB5xAB9yACBzAAMDdQAHdgAPdwAFBAAsIgATJH4pJoIBKiiGASsCIQAHIwAoAiMAKCUACAIjACgnAAkDJIcBACaIAQAoiQEAAQ2MAQABKwAOAiqSAQAskwEAAwQAMwiYATEvnQENAgQAMi6bATABLpwBAAEvngEAAS-fAQABMaQBAAIHpQEAM6YBAAUxtQEANLMBADW0AQA2tgEAN7cBAAMzvAEAOLsBADm9AQADBAA8OgA6O8QBBwIEADsPwgE5AQ_DAQABO8UBAAINywEAPsoBAAIDzAEAOM0BAAADBABBUQBCUgBDAAAAAwQAQVEAQlIAQwMEAEZRAEdSAEgAAAADBABGUQBHUgBIAwQAS1EATFIATQAAAAMEAEtRAExSAE0DBABQUQBRUgBSAAAAAwQAUFEAUVIAUgMEAFVRAFZSAFcAAAADBABVUQBWUgBXAwQAWlEAW1IAXAAAAAMEAFpRAFtSAFwDBABfUQBgUgBhAAAAAwQAX1EAYFIAYQMEAGRRAGVSAGYAAAADBABkUQBlUgBmAwQAaVEAalIAawAAAAMEAGlRAGpSAGsDBABuUQBvUgBwAAAAAwQAblEAb1IAcAMEAHNRAHRSAHUAAAADBABzUQB0UgB1AwQAeFEAeVIAegAAAAMEAHhRAHlSAHoFBAB9UQCAAVIAgQH7AQB-_AEAfwAAAAAABQQAfVEAgAFSAIEB-wEAfvwBAH8FBACEAVEAhwFSAIgB-wEAhQH8AQCGAQAAAAAABQQAhAFRAIcBUgCIAfsBAIUB_AEAhgEDBACLAVEAjAFSAI0BAAAAAwQAiwFRAIwBUgCNAQUEAJABUQCTAVIAlAH7AQCRAfwBAJIBAAAAAAAFBACQAVEAkwFSAJQB-wEAkQH8AQCSAQMEAJcBUQCYAVIAmQEAAAADBACXAVEAmAFSAJkBBQQAnAFRAJ8BUgCgAfsBAJ0B_AEAngEAAAAAAAUEAJwBUQCfAVIAoAH7AQCdAfwBAJ4BAwQAowFRAKQBUgClAQAAAAMEAKMBUQCkAVIApQEDBACoAVEAqQFSAKoBAAAAAwQAqAFRAKkBUgCqAQMEAK0BUQCuAVIArwEAAAADBACtAVEArgFSAK8BAwQAsgFRALMBUgC0AQAAAAMEALIBUQCzAVIAtAEDBAC3AVEAuAFSALkBAAAAAwQAtwFRALgBUgC5AQMEALwBUQC9AVIAvgEAAAADBAC8AVEAvQFSAL4BAwQAwQFRAMIBUgDDAQAAAAMEAMEBUQDCAVIAwwEDBADGAVEAxwFSAMgBAAAAAwQAxgFRAMcBUgDIAQMEAMsBUQDMAVIAzQEAAAADBADLAVEAzAFSAM0BAwQA0AFRANEBUgDSAQAAAAMEANABUQDRAVIA0gEDBADVAVEA1gFSANcBAAAAAwQA1QFRANYBUgDXAQADBADbAVEA3AFSAN0BAAAAAwQA2wFRANwBUgDdAQAFBADhAVEA5AFSAOUB-wEA4gH8AQDjAQAAAAAABQQA4QFRAOQBUgDlAfsBAOIB_AEA4wEDBADoAVEA6QFSAOoBAAAAAwQA6AFRAOkBUgDqAQMEAO0BUQDuAVIA7wEAAAADBADtAVEA7gFSAO8BAwQA8gFRAPMBUgD0AQAAAAMEAPIBUQDzAVIA9AEFBAD3AVEA-gFSAPsB-wEA-AH8AQD5AQAAAAAABQQA9wFRAPoBUgD7AfsBAPgB_AEA-QEDBAD-AVEA_wFSAIACAAAAAwQA_gFRAP8BUgCAAgMEAIMCUQCEAlIAhQIAAAADBACDAlEAhAJSAIUCBQQAiAJRAIsCUgCMAvsBAIkC_AEAigIAAAAAAAUEAIgCUQCLAlIAjAL7AQCJAvwBAIoCBQQAjwJRAJICUgCTAvsBAJAC_AEAkQIAAAAAAAUEAI8CUQCSAlIAkwL7AQCQAvwBAJECBQQAlgJRAJkCUgCaAvsBAJcC_AEAmAIAAAAAAAUEAJYCUQCZAlIAmgL7AQCXAvwBAJgCBQQAnQJRAKACUgChAvsBAJ4C_AEAnwIAAAAAAAUEAJ0CUQCgAlIAoQL7AQCeAvwBAJ8CAwQApAJRAKUCUgCmAgAAAAMEAKQCUQClAlIApgJBAgFC0AEBQ9EBAUTSAQFF0wEBR9UBAUjXAT9J2QEBStsBP03cAQFO3QEBT94BP1PhAUBU4gFEVeQBAlblAQJX6AECWOkBAlnqAQJa7AECW-4BP1zwAQJd8gE_XvMBAl_0AQJg9QE_YfgBRWL5AUlj-wEEZPwBBGX_AQRmgAIEZ4ECBGiDAgRphQI_aocCBGuJAj9sigIEbYsCBG6MAj9vjwJKcJACTnGRAhNykgITc5MCE3SUAhN1lQITdpcCE3eZAj94mwITeZ0CP3qeAhN7nwITfKACP32jAk9-pAJTf6YCFIABpwIUgQGqAhSCAasCFIMBrAIUhAGuAhSFAbACP4YBsgIUhwG0Aj-IAbUCFIkBtgIUigG3Aj-LAboCVIwBuwJYjQG8AhaOAb0CFo8BvgIWkAG_AhaRAcACFpIBwgIWkwHEAj-UAcYCFpUByAI_lgHJAhaXAcoCFpgBywI_mQHOAlmaAc8CXZsB0AIZnAHRAhmdAdICGZ4B0wIZnwHUAhmgAdYCGaEB2AI_ogHaAhmjAdwCP6QB3QIZpQHeAhmmAd8CP6cB4gJeqAHjAmKpAeQCCaoB5QIJqwHmAgmsAecCCa0B6AIJrgHqAgmvAewCP7AB7gIJsQHwAj-yAfECCbMB8gIJtAHzAj-1AfYCY7YB9wJntwH4Agi4AfkCCLkB-gIIugH7Agi7AfwCCLwB_gIIvQGAAz--AYIDCL8BhAM_wAGFAwjBAYYDCMIBhwM_wwGKA2jEAYsDbMUBjAMHxgGNAwfHAY4DB8gBjwMHyQGQAwfKAZIDB8sBlAM_zAGWAwfNAZgDP84BmQMHzwGaAwfQAZsDP9EBngNt0gGfA3HTAaEDOtQBogM61QGlAzrWAaYDOtcBpwM62AGpAzrZAasDP9oBrQM62wGvAz_cAbADOt0BsQM63gGyAz_fAbUDcuABtgN24QG3AzniAbgDOeMBuQM55AG6AznlAbsDOeYBvQM55wG_Az_oAcEDOekBwwM_6gHEAznrAcUDOewBxgM_7QHJA3fuAcoDe-8BywMa8AHMAxrxAc0DGvIBzgMa8wHPAxr0AdEDGvUB0wM_9gHVAxr3AdcDP_gB2AMa-QHZAxr6AdoDP_0B3QN8_gHeA4IB_wHfAxuAAuADG4EC4QMbggLiAxuDAuMDG4QC5QMbhQLnAz-GAukDG4cC6wM_iALsAxuJAu0DG4oC7gM_iwLxA4MBjALyA4kBjQL0AxyOAvUDHI8C9wMckAL4AxyRAvkDHJIC-wMckwL9Az-UAv8DHJUCgQQ_lgKCBByXAoMEHJgChAQ_mQKHBIoBmgKIBI4BmwKJBB6cAooEHp0CiwQengKMBB6fAo0EHqACjwQeoQKRBD-iApMEHqMClQQ_pAKWBB6lApcEHqYCmAQ_pwKbBI8BqAKcBJUBqQKdBB2qAp4EHasCnwQdrAKgBB2tAqEEHa4CowQdrwKlBD-wAqcEHbECqQQ_sgKqBB2zAqsEHbQCrAQ_tQKvBJYBtgKwBJoBtwKxBCK4ArIEIrkCswQiugK0BCK7ArUEIrwCtwQivQK5BD--ArsEIr8CvQQ_wAK-BCLBAr8EIsICwAQ_wwLDBJsBxALEBKEBxQLFBCHGAsYEIccCxwQhyALIBCHJAskEIcoCywQhywLNBD_MAs8EIc0C0QQ_zgLSBCHPAtMEIdAC1AQ_0QLXBKIB0gLYBKYB0wLZBCDUAtoEINUC2wQg1gLcBCDXAt0EINgC3wQg2QLhBD_aAuMEINsC5QQ_3ALmBCDdAucEIN4C6AQ_3wLrBKcB4ALsBKsB4QLtBBjiAu4EGOMC7wQY5ALwBBjlAvEEGOYC8wQY5wL1BD_oAvcEGOkC-QQ_6gL6BBjrAvsEGOwC_AQ_7QL_BKwB7gKABbAB7wKCBRfwAoMFF_EChgUX8gKHBRfzAogFF_QCigUX9QKMBT_2Ao4FF_cCkAU_-AKRBRf5ApIFF_oCkwU_-wKWBbEB_AKXBbUB_QKZBSj-ApoFKP8CnAUogAOdBSiBA54FKIIDoAUogwOiBT-EA6QFKIUDpgU_hgOnBSiHA6gFKIgDqQU_iQOsBbYBigOtBboBiwOuBSmMA68FKY0DsAUpjgOxBSmPA7IFKZADtAUpkQO2BT-SA7gFKZMDugU_lAO7BSmVA7wFKZYDvQU_lwPABbsBmAPBBb8BmQPCBSqaA8MFKpsDxAUqnAPFBSqdA8YFKp4DyAUqnwPKBT-gA8wFKqEDzgU_ogPPBSqjA9AFKqQD0QU_pQPUBcABpgPVBcQBpwPWBSuoA9cFK6kD2AUrqgPZBSurA9oFK6wD3AUrrQPeBT-uA-AFK68D4gU_sAPjBSuxA-QFK7ID5QU_swPoBcUBtAPpBckBtQPqBQW2A-sFBbcD7AUFuAPtBQW5A-4FBboD8AUFuwPyBT-8A_QFBb0D9gU_vgP3BQW_A_gFBcAD-QU_wQP8BcoBwgP9Bc4BwwP_BQbEA4AGBsUDggYGxgODBgbHA4QGBsgDhgYGyQOIBj_KA4oGBssDjAY_zAONBgbNA44GBs4DjwY_zwOSBs8B0AOTBtMB0QOUBhXSA5UGFdMDlgYV1AOXBhXVA5gGFdYDmgYV1wOcBj_YA54GFdkDoAY_2gOhBhXbA6IGFdwDowY_3QOmBtQB3gOnBtgB3wOpBtkB4AOqBtkB4QOtBtkB4gOuBtkB4wOvBtkB5AOxBtkB5QOzBj_mA7UG2QHnA7cGP-gDuAbZAekDuQbZAeoDugY_6wO9BtoB7AO-Bt4B7QPABt8B7gPBBt8B7wPEBt8B8APFBt8B8QPGBt8B8gPIBt8B8wPKBj_0A8wG3wH1A84GP_YDzwbfAfcD0AbfAfgD0QY_-QPUBuAB-gPVBuYB-wPXBg_8A9gGD_0D2gYP_gPbBg__A9wGD4AE3gYPgQTgBj-CBOIGD4ME5AY_hATlBg-FBOYGD4YE5wY_hwTqBucBiATrBusBiQTsBhCKBO0GEIsE7gYQjATvBhCNBPAGEI4E8gYQjwT0Bj-QBPYGEJEE-AY_kgT5BhCTBPoGEJQE-wY_lQT-BuwBlgT_BvABlwSABxGYBIEHEZkEggcRmgSDBxGbBIQHEZwEhgcRnQSIBz-eBIoHEZ8EjAc_oASNBxGhBI4HEaIEjwc_owSSB_EBpASTB_UBpQSUBwymBJUHDKcElgcMqASXBwypBJgHDKoEmgcMqwScBz-sBJ4HDK0EoAc_rgShBwyvBKIHDLAEowc_sQSmB_YBsgSnB_wBswSoBwu0BKkHC7UEqgcLtgSrBwu3BKwHC7gErgcLuQSwBz-6BLIHC7sEtAc_vAS1Bwu9BLYHC74Etwc_vwS6B_0BwAS7B4ECwQS9BwrCBL4HCsMEwAcKxATBBwrFBMIHCsYExAcKxwTGBz_IBMgHCskEygc_ygTLBwrLBMwHCswEzQc_zQTQB4ICzgTRB4YCzwTSBw7QBNMHDtEE1AcO0gTVBw7TBNYHDtQE2AcO1QTaBz_WBNwHDtcE3gc_2ATfBw7ZBOAHDtoE4Qc_2wTkB4cC3ATlB40C3QTmBw3eBOcHDd8E6AcN4ATpBw3hBOoHDeIE7AcN4wTuBz_kBPAHDeUE8gc_5gTzBw3nBPQHDegE9Qc_6QT4B44C6gT5B5QC6wT6By7sBPsHLu0E_Acu7gT9By7vBP4HLvAEgAgu8QSCCD_yBIQILvMEhgg_9ASHCC71BIgILvYEiQg_9wSMCJUC-ASNCJsC-QSOCDD6BI8IMPsEkAgw_ASRCDD9BJIIMP4ElAgw_wSWCD-ABZgIMIEFmgg_ggWbCDCDBZwIMIQFnQg_hQWgCJwChgWhCKIChwWjCDGIBaQIMYkFpggxigWnCDGLBagIMYwFqggxjQWsCD-OBa4IMY8FsAg_kAWxCDGRBbIIMZIFswg_kwW2CKMClAW3CKcC" } async function decodeBase64AsWasm(wasmBase64: string): Promise { @@ -240,6 +240,26 @@ export interface PrismaClient< */ get consumer(): Prisma.ConsumerDelegate; + /** + * `prisma.consumerIndividual`: Exposes CRUD operations for the **ConsumerIndividual** model. + * Example usage: + * ```ts + * // Fetch zero or more ConsumerIndividuals + * const consumerIndividuals = await prisma.consumerIndividual.findMany() + * ``` + */ + get consumerIndividual(): Prisma.ConsumerIndividualDelegate; + + /** + * `prisma.consumerLegal`: Exposes CRUD operations for the **ConsumerLegal** model. + * Example usage: + * ```ts + * // Fetch zero or more ConsumerLegals + * const consumerLegals = await prisma.consumerLegal.findMany() + * ``` + */ + get consumerLegal(): Prisma.ConsumerLegalDelegate; + /** * `prisma.businessActivity`: Exposes CRUD operations for the **BusinessActivity** model. * Example usage: diff --git a/src/generated/prisma/internal/prismaNamespace.ts b/src/generated/prisma/internal/prismaNamespace.ts index 07fb432..35fd7af 100644 --- a/src/generated/prisma/internal/prismaNamespace.ts +++ b/src/generated/prisma/internal/prismaNamespace.ts @@ -389,6 +389,8 @@ export const ModelName = { Account: 'Account', ConsumerAccount: 'ConsumerAccount', Consumer: 'Consumer', + ConsumerIndividual: 'ConsumerIndividual', + ConsumerLegal: 'ConsumerLegal', BusinessActivity: 'BusinessActivity', Complex: 'Complex', Pos: 'Pos', @@ -439,7 +441,7 @@ export type TypeMap + fields: Prisma.ConsumerIndividualFieldRefs + operations: { + findUnique: { + args: Prisma.ConsumerIndividualFindUniqueArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.ConsumerIndividualFindUniqueOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findFirst: { + args: Prisma.ConsumerIndividualFindFirstArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.ConsumerIndividualFindFirstOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findMany: { + args: Prisma.ConsumerIndividualFindManyArgs + result: runtime.Types.Utils.PayloadToResult[] + } + create: { + args: Prisma.ConsumerIndividualCreateArgs + result: runtime.Types.Utils.PayloadToResult + } + createMany: { + args: Prisma.ConsumerIndividualCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.ConsumerIndividualDeleteArgs + result: runtime.Types.Utils.PayloadToResult + } + update: { + args: Prisma.ConsumerIndividualUpdateArgs + result: runtime.Types.Utils.PayloadToResult + } + deleteMany: { + args: Prisma.ConsumerIndividualDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.ConsumerIndividualUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.ConsumerIndividualUpsertArgs + result: runtime.Types.Utils.PayloadToResult + } + aggregate: { + args: Prisma.ConsumerIndividualAggregateArgs + result: runtime.Types.Utils.Optional + } + groupBy: { + args: Prisma.ConsumerIndividualGroupByArgs + result: runtime.Types.Utils.Optional[] + } + count: { + args: Prisma.ConsumerIndividualCountArgs + result: runtime.Types.Utils.Optional | number + } + } + } + ConsumerLegal: { + payload: Prisma.$ConsumerLegalPayload + fields: Prisma.ConsumerLegalFieldRefs + operations: { + findUnique: { + args: Prisma.ConsumerLegalFindUniqueArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findUniqueOrThrow: { + args: Prisma.ConsumerLegalFindUniqueOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findFirst: { + args: Prisma.ConsumerLegalFindFirstArgs + result: runtime.Types.Utils.PayloadToResult | null + } + findFirstOrThrow: { + args: Prisma.ConsumerLegalFindFirstOrThrowArgs + result: runtime.Types.Utils.PayloadToResult + } + findMany: { + args: Prisma.ConsumerLegalFindManyArgs + result: runtime.Types.Utils.PayloadToResult[] + } + create: { + args: Prisma.ConsumerLegalCreateArgs + result: runtime.Types.Utils.PayloadToResult + } + createMany: { + args: Prisma.ConsumerLegalCreateManyArgs + result: BatchPayload + } + delete: { + args: Prisma.ConsumerLegalDeleteArgs + result: runtime.Types.Utils.PayloadToResult + } + update: { + args: Prisma.ConsumerLegalUpdateArgs + result: runtime.Types.Utils.PayloadToResult + } + deleteMany: { + args: Prisma.ConsumerLegalDeleteManyArgs + result: BatchPayload + } + updateMany: { + args: Prisma.ConsumerLegalUpdateManyArgs + result: BatchPayload + } + upsert: { + args: Prisma.ConsumerLegalUpsertArgs + result: runtime.Types.Utils.PayloadToResult + } + aggregate: { + args: Prisma.ConsumerLegalAggregateArgs + result: runtime.Types.Utils.Optional + } + groupBy: { + args: Prisma.ConsumerLegalGroupByArgs + result: runtime.Types.Utils.Optional[] + } + count: { + args: Prisma.ConsumerLegalCountArgs + result: runtime.Types.Utils.Optional | number + } + } + } BusinessActivity: { payload: Prisma.$BusinessActivityPayload fields: Prisma.BusinessActivityFieldRefs @@ -3171,19 +3305,41 @@ export type ConsumerAccountScalarFieldEnum = (typeof ConsumerAccountScalarFieldE export const ConsumerScalarFieldEnum = { id: 'id', - mobile_number: 'mobile_number', - national_code: 'national_code', - first_name: 'first_name', - last_name: 'last_name', + type: 'type', status: 'status', created_at: 'created_at', - updated_at: 'updated_at', - partner_id: 'partner_id' + updated_at: 'updated_at' } as const export type ConsumerScalarFieldEnum = (typeof ConsumerScalarFieldEnum)[keyof typeof ConsumerScalarFieldEnum] +export const ConsumerIndividualScalarFieldEnum = { + first_name: 'first_name', + last_name: 'last_name', + mobile_number: 'mobile_number', + national_code: 'national_code', + created_at: 'created_at', + updated_at: 'updated_at', + partner_id: 'partner_id', + consumer_id: 'consumer_id' +} as const + +export type ConsumerIndividualScalarFieldEnum = (typeof ConsumerIndividualScalarFieldEnum)[keyof typeof ConsumerIndividualScalarFieldEnum] + + +export const ConsumerLegalScalarFieldEnum = { + name: 'name', + registration_code: 'registration_code', + created_at: 'created_at', + updated_at: 'updated_at', + partner_id: 'partner_id', + consumer_id: 'consumer_id' +} as const + +export type ConsumerLegalScalarFieldEnum = (typeof ConsumerLegalScalarFieldEnum)[keyof typeof ConsumerLegalScalarFieldEnum] + + export const BusinessActivityScalarFieldEnum = { id: 'id', economic_code: 'economic_code', @@ -3486,11 +3642,10 @@ export type TriggerLogScalarFieldEnum = (typeof TriggerLogScalarFieldEnum)[keyof export const CustomerScalarFieldEnum = { id: 'id', is_favorite: 'is_favorite', + type: 'type', created_at: 'created_at', updated_at: 'updated_at', - deleted_at: 'deleted_at', - type: 'type', - unknown_customer: 'unknown_customer' + deleted_at: 'deleted_at' } as const export type CustomerScalarFieldEnum = (typeof CustomerScalarFieldEnum)[keyof typeof CustomerScalarFieldEnum] @@ -3500,10 +3655,11 @@ export const CustomerIndividualScalarFieldEnum = { first_name: 'first_name', last_name: 'last_name', national_id: 'national_id', + mobile_number: 'mobile_number', postal_code: 'postal_code', economic_code: 'economic_code', customer_id: 'customer_id', - complex_id: 'complex_id' + business_activity_id: 'business_activity_id' } as const export type CustomerIndividualScalarFieldEnum = (typeof CustomerIndividualScalarFieldEnum)[keyof typeof CustomerIndividualScalarFieldEnum] @@ -3515,7 +3671,7 @@ export const CustomerLegalScalarFieldEnum = { registration_number: 'registration_number', postal_code: 'postal_code', customer_id: 'customer_id', - complex_id: 'complex_id' + business_activity_id: 'business_activity_id' } as const export type CustomerLegalScalarFieldEnum = (typeof CustomerLegalScalarFieldEnum)[keyof typeof CustomerLegalScalarFieldEnum] @@ -3536,8 +3692,8 @@ export const GoodScalarFieldEnum = { created_at: 'created_at', updated_at: 'updated_at', deleted_at: 'deleted_at', - complex_id: 'complex_id', - category_id: 'category_id' + category_id: 'category_id', + business_activity_id: 'business_activity_id' } as const export type GoodScalarFieldEnum = (typeof GoodScalarFieldEnum)[keyof typeof GoodScalarFieldEnum] @@ -3714,17 +3870,34 @@ export type ConsumerAccountOrderByRelevanceFieldEnum = (typeof ConsumerAccountOr export const ConsumerOrderByRelevanceFieldEnum = { - id: 'id', - mobile_number: 'mobile_number', - national_code: 'national_code', - first_name: 'first_name', - last_name: 'last_name', - partner_id: 'partner_id' + id: 'id' } as const export type ConsumerOrderByRelevanceFieldEnum = (typeof ConsumerOrderByRelevanceFieldEnum)[keyof typeof ConsumerOrderByRelevanceFieldEnum] +export const ConsumerIndividualOrderByRelevanceFieldEnum = { + first_name: 'first_name', + last_name: 'last_name', + mobile_number: 'mobile_number', + national_code: 'national_code', + partner_id: 'partner_id', + consumer_id: 'consumer_id' +} as const + +export type ConsumerIndividualOrderByRelevanceFieldEnum = (typeof ConsumerIndividualOrderByRelevanceFieldEnum)[keyof typeof ConsumerIndividualOrderByRelevanceFieldEnum] + + +export const ConsumerLegalOrderByRelevanceFieldEnum = { + name: 'name', + registration_code: 'registration_code', + partner_id: 'partner_id', + consumer_id: 'consumer_id' +} as const + +export type ConsumerLegalOrderByRelevanceFieldEnum = (typeof ConsumerLegalOrderByRelevanceFieldEnum)[keyof typeof ConsumerLegalOrderByRelevanceFieldEnum] + + export const BusinessActivityOrderByRelevanceFieldEnum = { id: 'id', economic_code: 'economic_code', @@ -3987,10 +4160,11 @@ export const CustomerIndividualOrderByRelevanceFieldEnum = { first_name: 'first_name', last_name: 'last_name', national_id: 'national_id', + mobile_number: 'mobile_number', postal_code: 'postal_code', economic_code: 'economic_code', customer_id: 'customer_id', - complex_id: 'complex_id' + business_activity_id: 'business_activity_id' } as const export type CustomerIndividualOrderByRelevanceFieldEnum = (typeof CustomerIndividualOrderByRelevanceFieldEnum)[keyof typeof CustomerIndividualOrderByRelevanceFieldEnum] @@ -4002,7 +4176,7 @@ export const CustomerLegalOrderByRelevanceFieldEnum = { registration_number: 'registration_number', postal_code: 'postal_code', customer_id: 'customer_id', - complex_id: 'complex_id' + business_activity_id: 'business_activity_id' } as const export type CustomerLegalOrderByRelevanceFieldEnum = (typeof CustomerLegalOrderByRelevanceFieldEnum)[keyof typeof CustomerLegalOrderByRelevanceFieldEnum] @@ -4016,8 +4190,8 @@ export const GoodOrderByRelevanceFieldEnum = { local_sku: 'local_sku', barcode: 'barcode', image_url: 'image_url', - complex_id: 'complex_id', - category_id: 'category_id' + category_id: 'category_id', + business_activity_id: 'business_activity_id' } as const export type GoodOrderByRelevanceFieldEnum = (typeof GoodOrderByRelevanceFieldEnum)[keyof typeof GoodOrderByRelevanceFieldEnum] @@ -4143,6 +4317,13 @@ export type EnumConsumerRoleFieldRefInput<$PrismaModel> = FieldRefInputType<$Pri +/** + * Reference to a field of type 'ConsumerType' + */ +export type EnumConsumerTypeFieldRefInput<$PrismaModel> = FieldRefInputType<$PrismaModel, 'ConsumerType'> + + + /** * Reference to a field of type 'ConsumerStatus' */ @@ -4396,6 +4577,8 @@ export type GlobalOmitConfig = { account?: Prisma.AccountOmit consumerAccount?: Prisma.ConsumerAccountOmit consumer?: Prisma.ConsumerOmit + consumerIndividual?: Prisma.ConsumerIndividualOmit + consumerLegal?: Prisma.ConsumerLegalOmit businessActivity?: Prisma.BusinessActivityOmit complex?: Prisma.ComplexOmit pos?: Prisma.PosOmit diff --git a/src/generated/prisma/internal/prismaNamespaceBrowser.ts b/src/generated/prisma/internal/prismaNamespaceBrowser.ts index 605b22e..54cb345 100644 --- a/src/generated/prisma/internal/prismaNamespaceBrowser.ts +++ b/src/generated/prisma/internal/prismaNamespaceBrowser.ts @@ -56,6 +56,8 @@ export const ModelName = { Account: 'Account', ConsumerAccount: 'ConsumerAccount', Consumer: 'Consumer', + ConsumerIndividual: 'ConsumerIndividual', + ConsumerLegal: 'ConsumerLegal', BusinessActivity: 'BusinessActivity', Complex: 'Complex', Pos: 'Pos', @@ -158,19 +160,41 @@ export type ConsumerAccountScalarFieldEnum = (typeof ConsumerAccountScalarFieldE export const ConsumerScalarFieldEnum = { id: 'id', - mobile_number: 'mobile_number', - national_code: 'national_code', - first_name: 'first_name', - last_name: 'last_name', + type: 'type', status: 'status', created_at: 'created_at', - updated_at: 'updated_at', - partner_id: 'partner_id' + updated_at: 'updated_at' } as const export type ConsumerScalarFieldEnum = (typeof ConsumerScalarFieldEnum)[keyof typeof ConsumerScalarFieldEnum] +export const ConsumerIndividualScalarFieldEnum = { + first_name: 'first_name', + last_name: 'last_name', + mobile_number: 'mobile_number', + national_code: 'national_code', + created_at: 'created_at', + updated_at: 'updated_at', + partner_id: 'partner_id', + consumer_id: 'consumer_id' +} as const + +export type ConsumerIndividualScalarFieldEnum = (typeof ConsumerIndividualScalarFieldEnum)[keyof typeof ConsumerIndividualScalarFieldEnum] + + +export const ConsumerLegalScalarFieldEnum = { + name: 'name', + registration_code: 'registration_code', + created_at: 'created_at', + updated_at: 'updated_at', + partner_id: 'partner_id', + consumer_id: 'consumer_id' +} as const + +export type ConsumerLegalScalarFieldEnum = (typeof ConsumerLegalScalarFieldEnum)[keyof typeof ConsumerLegalScalarFieldEnum] + + export const BusinessActivityScalarFieldEnum = { id: 'id', economic_code: 'economic_code', @@ -473,11 +497,10 @@ export type TriggerLogScalarFieldEnum = (typeof TriggerLogScalarFieldEnum)[keyof export const CustomerScalarFieldEnum = { id: 'id', is_favorite: 'is_favorite', + type: 'type', created_at: 'created_at', updated_at: 'updated_at', - deleted_at: 'deleted_at', - type: 'type', - unknown_customer: 'unknown_customer' + deleted_at: 'deleted_at' } as const export type CustomerScalarFieldEnum = (typeof CustomerScalarFieldEnum)[keyof typeof CustomerScalarFieldEnum] @@ -487,10 +510,11 @@ export const CustomerIndividualScalarFieldEnum = { first_name: 'first_name', last_name: 'last_name', national_id: 'national_id', + mobile_number: 'mobile_number', postal_code: 'postal_code', economic_code: 'economic_code', customer_id: 'customer_id', - complex_id: 'complex_id' + business_activity_id: 'business_activity_id' } as const export type CustomerIndividualScalarFieldEnum = (typeof CustomerIndividualScalarFieldEnum)[keyof typeof CustomerIndividualScalarFieldEnum] @@ -502,7 +526,7 @@ export const CustomerLegalScalarFieldEnum = { registration_number: 'registration_number', postal_code: 'postal_code', customer_id: 'customer_id', - complex_id: 'complex_id' + business_activity_id: 'business_activity_id' } as const export type CustomerLegalScalarFieldEnum = (typeof CustomerLegalScalarFieldEnum)[keyof typeof CustomerLegalScalarFieldEnum] @@ -523,8 +547,8 @@ export const GoodScalarFieldEnum = { created_at: 'created_at', updated_at: 'updated_at', deleted_at: 'deleted_at', - complex_id: 'complex_id', - category_id: 'category_id' + category_id: 'category_id', + business_activity_id: 'business_activity_id' } as const export type GoodScalarFieldEnum = (typeof GoodScalarFieldEnum)[keyof typeof GoodScalarFieldEnum] @@ -701,17 +725,34 @@ export type ConsumerAccountOrderByRelevanceFieldEnum = (typeof ConsumerAccountOr export const ConsumerOrderByRelevanceFieldEnum = { - id: 'id', - mobile_number: 'mobile_number', - national_code: 'national_code', - first_name: 'first_name', - last_name: 'last_name', - partner_id: 'partner_id' + id: 'id' } as const export type ConsumerOrderByRelevanceFieldEnum = (typeof ConsumerOrderByRelevanceFieldEnum)[keyof typeof ConsumerOrderByRelevanceFieldEnum] +export const ConsumerIndividualOrderByRelevanceFieldEnum = { + first_name: 'first_name', + last_name: 'last_name', + mobile_number: 'mobile_number', + national_code: 'national_code', + partner_id: 'partner_id', + consumer_id: 'consumer_id' +} as const + +export type ConsumerIndividualOrderByRelevanceFieldEnum = (typeof ConsumerIndividualOrderByRelevanceFieldEnum)[keyof typeof ConsumerIndividualOrderByRelevanceFieldEnum] + + +export const ConsumerLegalOrderByRelevanceFieldEnum = { + name: 'name', + registration_code: 'registration_code', + partner_id: 'partner_id', + consumer_id: 'consumer_id' +} as const + +export type ConsumerLegalOrderByRelevanceFieldEnum = (typeof ConsumerLegalOrderByRelevanceFieldEnum)[keyof typeof ConsumerLegalOrderByRelevanceFieldEnum] + + export const BusinessActivityOrderByRelevanceFieldEnum = { id: 'id', economic_code: 'economic_code', @@ -974,10 +1015,11 @@ export const CustomerIndividualOrderByRelevanceFieldEnum = { first_name: 'first_name', last_name: 'last_name', national_id: 'national_id', + mobile_number: 'mobile_number', postal_code: 'postal_code', economic_code: 'economic_code', customer_id: 'customer_id', - complex_id: 'complex_id' + business_activity_id: 'business_activity_id' } as const export type CustomerIndividualOrderByRelevanceFieldEnum = (typeof CustomerIndividualOrderByRelevanceFieldEnum)[keyof typeof CustomerIndividualOrderByRelevanceFieldEnum] @@ -989,7 +1031,7 @@ export const CustomerLegalOrderByRelevanceFieldEnum = { registration_number: 'registration_number', postal_code: 'postal_code', customer_id: 'customer_id', - complex_id: 'complex_id' + business_activity_id: 'business_activity_id' } as const export type CustomerLegalOrderByRelevanceFieldEnum = (typeof CustomerLegalOrderByRelevanceFieldEnum)[keyof typeof CustomerLegalOrderByRelevanceFieldEnum] @@ -1003,8 +1045,8 @@ export const GoodOrderByRelevanceFieldEnum = { local_sku: 'local_sku', barcode: 'barcode', image_url: 'image_url', - complex_id: 'complex_id', - category_id: 'category_id' + category_id: 'category_id', + business_activity_id: 'business_activity_id' } as const export type GoodOrderByRelevanceFieldEnum = (typeof GoodOrderByRelevanceFieldEnum)[keyof typeof GoodOrderByRelevanceFieldEnum] diff --git a/src/generated/prisma/models.ts b/src/generated/prisma/models.ts index 01f4d8a..817f8c1 100644 --- a/src/generated/prisma/models.ts +++ b/src/generated/prisma/models.ts @@ -13,6 +13,8 @@ export type * from './models/Admin.js' export type * from './models/Account.js' export type * from './models/ConsumerAccount.js' export type * from './models/Consumer.js' +export type * from './models/ConsumerIndividual.js' +export type * from './models/ConsumerLegal.js' export type * from './models/BusinessActivity.js' export type * from './models/Complex.js' export type * from './models/Pos.js' diff --git a/src/generated/prisma/models/Admin.ts b/src/generated/prisma/models/Admin.ts index 4e74d98..2d98701 100644 --- a/src/generated/prisma/models/Admin.ts +++ b/src/generated/prisma/models/Admin.ts @@ -198,7 +198,7 @@ export type AdminWhereInput = { last_name?: Prisma.StringFilter<"Admin"> | string created_at?: Prisma.DateTimeFilter<"Admin"> | Date | string updated_at?: Prisma.DateTimeFilter<"Admin"> | Date | string - adminAccounts?: Prisma.AdminAccountListRelationFilter + accounts?: Prisma.AdminAccountListRelationFilter } export type AdminOrderByWithRelationInput = { @@ -209,7 +209,7 @@ export type AdminOrderByWithRelationInput = { last_name?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder - adminAccounts?: Prisma.AdminAccountOrderByRelationAggregateInput + accounts?: Prisma.AdminAccountOrderByRelationAggregateInput _relevance?: Prisma.AdminOrderByRelevanceInput } @@ -224,7 +224,7 @@ export type AdminWhereUniqueInput = Prisma.AtLeast<{ last_name?: Prisma.StringFilter<"Admin"> | string created_at?: Prisma.DateTimeFilter<"Admin"> | Date | string updated_at?: Prisma.DateTimeFilter<"Admin"> | Date | string - adminAccounts?: Prisma.AdminAccountListRelationFilter + accounts?: Prisma.AdminAccountListRelationFilter }, "id" | "mobile_number" | "national_code"> export type AdminOrderByWithAggregationInput = { @@ -261,7 +261,7 @@ export type AdminCreateInput = { last_name: string created_at?: Date | string updated_at?: Date | string - adminAccounts?: Prisma.AdminAccountCreateNestedManyWithoutAdminInput + accounts?: Prisma.AdminAccountCreateNestedManyWithoutAdminInput } export type AdminUncheckedCreateInput = { @@ -272,7 +272,7 @@ export type AdminUncheckedCreateInput = { last_name: string created_at?: Date | string updated_at?: Date | string - adminAccounts?: Prisma.AdminAccountUncheckedCreateNestedManyWithoutAdminInput + accounts?: Prisma.AdminAccountUncheckedCreateNestedManyWithoutAdminInput } export type AdminUpdateInput = { @@ -283,7 +283,7 @@ export type AdminUpdateInput = { last_name?: Prisma.StringFieldUpdateOperationsInput | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - adminAccounts?: Prisma.AdminAccountUpdateManyWithoutAdminNestedInput + accounts?: Prisma.AdminAccountUpdateManyWithoutAdminNestedInput } export type AdminUncheckedUpdateInput = { @@ -294,7 +294,7 @@ export type AdminUncheckedUpdateInput = { last_name?: Prisma.StringFieldUpdateOperationsInput | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - adminAccounts?: Prisma.AdminAccountUncheckedUpdateManyWithoutAdminNestedInput + accounts?: Prisma.AdminAccountUncheckedUpdateManyWithoutAdminNestedInput } export type AdminCreateManyInput = { @@ -368,25 +368,25 @@ export type AdminMinOrderByAggregateInput = { updated_at?: Prisma.SortOrder } -export type AdminCreateNestedOneWithoutAdminAccountsInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.AdminCreateOrConnectWithoutAdminAccountsInput +export type AdminCreateNestedOneWithoutAccountsInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.AdminCreateOrConnectWithoutAccountsInput connect?: Prisma.AdminWhereUniqueInput } -export type AdminUpdateOneRequiredWithoutAdminAccountsNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.AdminCreateOrConnectWithoutAdminAccountsInput - upsert?: Prisma.AdminUpsertWithoutAdminAccountsInput +export type AdminUpdateOneRequiredWithoutAccountsNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.AdminCreateOrConnectWithoutAccountsInput + upsert?: Prisma.AdminUpsertWithoutAccountsInput connect?: Prisma.AdminWhereUniqueInput - update?: Prisma.XOR, Prisma.AdminUncheckedUpdateWithoutAdminAccountsInput> + update?: Prisma.XOR, Prisma.AdminUncheckedUpdateWithoutAccountsInput> } export type NullableStringFieldUpdateOperationsInput = { set?: string | null } -export type AdminCreateWithoutAdminAccountsInput = { +export type AdminCreateWithoutAccountsInput = { id?: string mobile_number: string national_code?: string | null @@ -396,7 +396,7 @@ export type AdminCreateWithoutAdminAccountsInput = { updated_at?: Date | string } -export type AdminUncheckedCreateWithoutAdminAccountsInput = { +export type AdminUncheckedCreateWithoutAccountsInput = { id?: string mobile_number: string national_code?: string | null @@ -406,23 +406,23 @@ export type AdminUncheckedCreateWithoutAdminAccountsInput = { updated_at?: Date | string } -export type AdminCreateOrConnectWithoutAdminAccountsInput = { +export type AdminCreateOrConnectWithoutAccountsInput = { where: Prisma.AdminWhereUniqueInput - create: Prisma.XOR + create: Prisma.XOR } -export type AdminUpsertWithoutAdminAccountsInput = { - update: Prisma.XOR - create: Prisma.XOR +export type AdminUpsertWithoutAccountsInput = { + update: Prisma.XOR + create: Prisma.XOR where?: Prisma.AdminWhereInput } -export type AdminUpdateToOneWithWhereWithoutAdminAccountsInput = { +export type AdminUpdateToOneWithWhereWithoutAccountsInput = { where?: Prisma.AdminWhereInput - data: Prisma.XOR + data: Prisma.XOR } -export type AdminUpdateWithoutAdminAccountsInput = { +export type AdminUpdateWithoutAccountsInput = { id?: Prisma.StringFieldUpdateOperationsInput | string mobile_number?: Prisma.StringFieldUpdateOperationsInput | string national_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null @@ -432,7 +432,7 @@ export type AdminUpdateWithoutAdminAccountsInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string } -export type AdminUncheckedUpdateWithoutAdminAccountsInput = { +export type AdminUncheckedUpdateWithoutAccountsInput = { id?: Prisma.StringFieldUpdateOperationsInput | string mobile_number?: Prisma.StringFieldUpdateOperationsInput | string national_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null @@ -448,11 +448,11 @@ export type AdminUncheckedUpdateWithoutAdminAccountsInput = { */ export type AdminCountOutputType = { - adminAccounts: number + accounts: number } export type AdminCountOutputTypeSelect = { - adminAccounts?: boolean | AdminCountOutputTypeCountAdminAccountsArgs + accounts?: boolean | AdminCountOutputTypeCountAccountsArgs } /** @@ -468,7 +468,7 @@ export type AdminCountOutputTypeDefaultArgs = { +export type AdminCountOutputTypeCountAccountsArgs = { where?: Prisma.AdminAccountWhereInput } @@ -481,7 +481,7 @@ export type AdminSelect + accounts?: boolean | Prisma.Admin$accountsArgs _count?: boolean | Prisma.AdminCountOutputTypeDefaultArgs }, ExtArgs["result"]["admin"]> @@ -499,14 +499,14 @@ export type AdminSelectScalar = { export type AdminOmit = runtime.Types.Extensions.GetOmit<"id" | "mobile_number" | "national_code" | "first_name" | "last_name" | "created_at" | "updated_at", ExtArgs["result"]["admin"]> export type AdminInclude = { - adminAccounts?: boolean | Prisma.Admin$adminAccountsArgs + accounts?: boolean | Prisma.Admin$accountsArgs _count?: boolean | Prisma.AdminCountOutputTypeDefaultArgs } export type $AdminPayload = { name: "Admin" objects: { - adminAccounts: Prisma.$AdminAccountPayload[] + accounts: Prisma.$AdminAccountPayload[] } scalars: runtime.Types.Extensions.GetPayloadResult<{ id: string @@ -856,7 +856,7 @@ readonly fields: AdminFieldRefs; */ export interface Prisma__AdminClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" - adminAccounts = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + accounts = {}>(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. @@ -1241,9 +1241,9 @@ export type AdminDeleteManyArgs = { +export type Admin$accountsArgs = { /** * Select specific fields to fetch from the AdminAccount */ diff --git a/src/generated/prisma/models/AdminAccount.ts b/src/generated/prisma/models/AdminAccount.ts index fdd3f6e..07a1e8b 100644 --- a/src/generated/prisma/models/AdminAccount.ts +++ b/src/generated/prisma/models/AdminAccount.ts @@ -236,7 +236,7 @@ export type AdminAccountCreateInput = { id?: string created_at?: Date | string updated_at?: Date | string - admin: Prisma.AdminCreateNestedOneWithoutAdminAccountsInput + admin: Prisma.AdminCreateNestedOneWithoutAccountsInput account: Prisma.AccountCreateNestedOneWithoutAdmin_accountInput } @@ -252,7 +252,7 @@ export type AdminAccountUpdateInput = { id?: Prisma.StringFieldUpdateOperationsInput | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - admin?: Prisma.AdminUpdateOneRequiredWithoutAdminAccountsNestedInput + admin?: Prisma.AdminUpdateOneRequiredWithoutAccountsNestedInput account?: Prisma.AccountUpdateOneRequiredWithoutAdmin_accountNestedInput } @@ -468,7 +468,7 @@ export type AdminAccountCreateWithoutAccountInput = { id?: string created_at?: Date | string updated_at?: Date | string - admin: Prisma.AdminCreateNestedOneWithoutAdminAccountsInput + admin: Prisma.AdminCreateNestedOneWithoutAccountsInput } export type AdminAccountUncheckedCreateWithoutAccountInput = { @@ -498,7 +498,7 @@ export type AdminAccountUpdateWithoutAccountInput = { id?: Prisma.StringFieldUpdateOperationsInput | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - admin?: Prisma.AdminUpdateOneRequiredWithoutAdminAccountsNestedInput + admin?: Prisma.AdminUpdateOneRequiredWithoutAccountsNestedInput } export type AdminAccountUncheckedUpdateWithoutAccountInput = { diff --git a/src/generated/prisma/models/BusinessActivity.ts b/src/generated/prisma/models/BusinessActivity.ts index 5acac07..446986b 100644 --- a/src/generated/prisma/models/BusinessActivity.ts +++ b/src/generated/prisma/models/BusinessActivity.ts @@ -203,6 +203,9 @@ export type BusinessActivityWhereInput = { complexes?: Prisma.ComplexListRelationFilter permission_businesses?: Prisma.PermissionBusinessListRelationFilter license_activation?: Prisma.XOR | null + goods?: Prisma.GoodListRelationFilter + customer_individuals?: Prisma.CustomerIndividualListRelationFilter + customer_legals?: Prisma.CustomerLegalListRelationFilter } export type BusinessActivityOrderByWithRelationInput = { @@ -218,6 +221,9 @@ export type BusinessActivityOrderByWithRelationInput = { complexes?: Prisma.ComplexOrderByRelationAggregateInput permission_businesses?: Prisma.PermissionBusinessOrderByRelationAggregateInput license_activation?: Prisma.LicenseActivationOrderByWithRelationInput + goods?: Prisma.GoodOrderByRelationAggregateInput + customer_individuals?: Prisma.CustomerIndividualOrderByRelationAggregateInput + customer_legals?: Prisma.CustomerLegalOrderByRelationAggregateInput _relevance?: Prisma.BusinessActivityOrderByRelevanceInput } @@ -238,6 +244,9 @@ export type BusinessActivityWhereUniqueInput = Prisma.AtLeast<{ complexes?: Prisma.ComplexListRelationFilter permission_businesses?: Prisma.PermissionBusinessListRelationFilter license_activation?: Prisma.XOR | null + goods?: Prisma.GoodListRelationFilter + customer_individuals?: Prisma.CustomerIndividualListRelationFilter + customer_legals?: Prisma.CustomerLegalListRelationFilter }, "id" | "economic_code_consumer_id"> export type BusinessActivityOrderByWithAggregationInput = { @@ -277,6 +286,9 @@ export type BusinessActivityCreateInput = { complexes?: Prisma.ComplexCreateNestedManyWithoutBusiness_activityInput permission_businesses?: Prisma.PermissionBusinessCreateNestedManyWithoutBusinessInput license_activation?: Prisma.LicenseActivationCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutBusiness_activityInput } export type BusinessActivityUncheckedCreateInput = { @@ -290,6 +302,9 @@ export type BusinessActivityUncheckedCreateInput = { complexes?: Prisma.ComplexUncheckedCreateNestedManyWithoutBusiness_activityInput permission_businesses?: Prisma.PermissionBusinessUncheckedCreateNestedManyWithoutBusinessInput license_activation?: Prisma.LicenseActivationUncheckedCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutBusiness_activityInput } export type BusinessActivityUpdateInput = { @@ -303,6 +318,9 @@ export type BusinessActivityUpdateInput = { complexes?: Prisma.ComplexUpdateManyWithoutBusiness_activityNestedInput permission_businesses?: Prisma.PermissionBusinessUpdateManyWithoutBusinessNestedInput license_activation?: Prisma.LicenseActivationUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUpdateManyWithoutBusiness_activityNestedInput } export type BusinessActivityUncheckedUpdateInput = { @@ -316,6 +334,9 @@ export type BusinessActivityUncheckedUpdateInput = { complexes?: Prisma.ComplexUncheckedUpdateManyWithoutBusiness_activityNestedInput permission_businesses?: Prisma.PermissionBusinessUncheckedUpdateManyWithoutBusinessNestedInput license_activation?: Prisma.LicenseActivationUncheckedUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutBusiness_activityNestedInput } export type BusinessActivityCreateManyInput = { @@ -402,6 +423,11 @@ export type BusinessActivityScalarRelationFilter = { isNot?: Prisma.BusinessActivityWhereInput } +export type BusinessActivityNullableScalarRelationFilter = { + is?: Prisma.BusinessActivityWhereInput | null + isNot?: Prisma.BusinessActivityWhereInput | null +} + export type BusinessActivityCreateNestedManyWithoutConsumerInput = { create?: Prisma.XOR | Prisma.BusinessActivityCreateWithoutConsumerInput[] | Prisma.BusinessActivityUncheckedCreateWithoutConsumerInput[] connectOrCreate?: Prisma.BusinessActivityCreateOrConnectWithoutConsumerInput | Prisma.BusinessActivityCreateOrConnectWithoutConsumerInput[] @@ -486,6 +512,50 @@ export type BusinessActivityUpdateOneRequiredWithoutPermission_businessesNestedI update?: Prisma.XOR, Prisma.BusinessActivityUncheckedUpdateWithoutPermission_businessesInput> } +export type BusinessActivityCreateNestedOneWithoutCustomer_individualsInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.BusinessActivityCreateOrConnectWithoutCustomer_individualsInput + connect?: Prisma.BusinessActivityWhereUniqueInput +} + +export type BusinessActivityUpdateOneRequiredWithoutCustomer_individualsNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.BusinessActivityCreateOrConnectWithoutCustomer_individualsInput + upsert?: Prisma.BusinessActivityUpsertWithoutCustomer_individualsInput + connect?: Prisma.BusinessActivityWhereUniqueInput + update?: Prisma.XOR, Prisma.BusinessActivityUncheckedUpdateWithoutCustomer_individualsInput> +} + +export type BusinessActivityCreateNestedOneWithoutCustomer_legalsInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.BusinessActivityCreateOrConnectWithoutCustomer_legalsInput + connect?: Prisma.BusinessActivityWhereUniqueInput +} + +export type BusinessActivityUpdateOneRequiredWithoutCustomer_legalsNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.BusinessActivityCreateOrConnectWithoutCustomer_legalsInput + upsert?: Prisma.BusinessActivityUpsertWithoutCustomer_legalsInput + connect?: Prisma.BusinessActivityWhereUniqueInput + update?: Prisma.XOR, Prisma.BusinessActivityUncheckedUpdateWithoutCustomer_legalsInput> +} + +export type BusinessActivityCreateNestedOneWithoutGoodsInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.BusinessActivityCreateOrConnectWithoutGoodsInput + connect?: Prisma.BusinessActivityWhereUniqueInput +} + +export type BusinessActivityUpdateOneWithoutGoodsNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.BusinessActivityCreateOrConnectWithoutGoodsInput + upsert?: Prisma.BusinessActivityUpsertWithoutGoodsInput + disconnect?: Prisma.BusinessActivityWhereInput | boolean + delete?: Prisma.BusinessActivityWhereInput | boolean + connect?: Prisma.BusinessActivityWhereUniqueInput + update?: Prisma.XOR, Prisma.BusinessActivityUncheckedUpdateWithoutGoodsInput> +} + export type BusinessActivityCreateNestedManyWithoutGuildInput = { create?: Prisma.XOR | Prisma.BusinessActivityCreateWithoutGuildInput[] | Prisma.BusinessActivityUncheckedCreateWithoutGuildInput[] connectOrCreate?: Prisma.BusinessActivityCreateOrConnectWithoutGuildInput | Prisma.BusinessActivityCreateOrConnectWithoutGuildInput[] @@ -538,6 +608,9 @@ export type BusinessActivityCreateWithoutConsumerInput = { complexes?: Prisma.ComplexCreateNestedManyWithoutBusiness_activityInput permission_businesses?: Prisma.PermissionBusinessCreateNestedManyWithoutBusinessInput license_activation?: Prisma.LicenseActivationCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutBusiness_activityInput } export type BusinessActivityUncheckedCreateWithoutConsumerInput = { @@ -550,6 +623,9 @@ export type BusinessActivityUncheckedCreateWithoutConsumerInput = { complexes?: Prisma.ComplexUncheckedCreateNestedManyWithoutBusiness_activityInput permission_businesses?: Prisma.PermissionBusinessUncheckedCreateNestedManyWithoutBusinessInput license_activation?: Prisma.LicenseActivationUncheckedCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutBusiness_activityInput } export type BusinessActivityCreateOrConnectWithoutConsumerInput = { @@ -601,6 +677,9 @@ export type BusinessActivityCreateWithoutComplexesInput = { consumer: Prisma.ConsumerCreateNestedOneWithoutBusiness_activitiesInput permission_businesses?: Prisma.PermissionBusinessCreateNestedManyWithoutBusinessInput license_activation?: Prisma.LicenseActivationCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutBusiness_activityInput } export type BusinessActivityUncheckedCreateWithoutComplexesInput = { @@ -613,6 +692,9 @@ export type BusinessActivityUncheckedCreateWithoutComplexesInput = { consumer_id: string permission_businesses?: Prisma.PermissionBusinessUncheckedCreateNestedManyWithoutBusinessInput license_activation?: Prisma.LicenseActivationUncheckedCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutBusiness_activityInput } export type BusinessActivityCreateOrConnectWithoutComplexesInput = { @@ -641,6 +723,9 @@ export type BusinessActivityUpdateWithoutComplexesInput = { consumer?: Prisma.ConsumerUpdateOneRequiredWithoutBusiness_activitiesNestedInput permission_businesses?: Prisma.PermissionBusinessUpdateManyWithoutBusinessNestedInput license_activation?: Prisma.LicenseActivationUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUpdateManyWithoutBusiness_activityNestedInput } export type BusinessActivityUncheckedUpdateWithoutComplexesInput = { @@ -653,6 +738,9 @@ export type BusinessActivityUncheckedUpdateWithoutComplexesInput = { consumer_id?: Prisma.StringFieldUpdateOperationsInput | string permission_businesses?: Prisma.PermissionBusinessUncheckedUpdateManyWithoutBusinessNestedInput license_activation?: Prisma.LicenseActivationUncheckedUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutBusiness_activityNestedInput } export type BusinessActivityCreateWithoutLicense_activationInput = { @@ -665,6 +753,9 @@ export type BusinessActivityCreateWithoutLicense_activationInput = { consumer: Prisma.ConsumerCreateNestedOneWithoutBusiness_activitiesInput complexes?: Prisma.ComplexCreateNestedManyWithoutBusiness_activityInput permission_businesses?: Prisma.PermissionBusinessCreateNestedManyWithoutBusinessInput + goods?: Prisma.GoodCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutBusiness_activityInput } export type BusinessActivityUncheckedCreateWithoutLicense_activationInput = { @@ -677,6 +768,9 @@ export type BusinessActivityUncheckedCreateWithoutLicense_activationInput = { consumer_id: string complexes?: Prisma.ComplexUncheckedCreateNestedManyWithoutBusiness_activityInput permission_businesses?: Prisma.PermissionBusinessUncheckedCreateNestedManyWithoutBusinessInput + goods?: Prisma.GoodUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutBusiness_activityInput } export type BusinessActivityCreateOrConnectWithoutLicense_activationInput = { @@ -705,6 +799,9 @@ export type BusinessActivityUpdateWithoutLicense_activationInput = { consumer?: Prisma.ConsumerUpdateOneRequiredWithoutBusiness_activitiesNestedInput complexes?: Prisma.ComplexUpdateManyWithoutBusiness_activityNestedInput permission_businesses?: Prisma.PermissionBusinessUpdateManyWithoutBusinessNestedInput + goods?: Prisma.GoodUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUpdateManyWithoutBusiness_activityNestedInput } export type BusinessActivityUncheckedUpdateWithoutLicense_activationInput = { @@ -717,6 +814,9 @@ export type BusinessActivityUncheckedUpdateWithoutLicense_activationInput = { consumer_id?: Prisma.StringFieldUpdateOperationsInput | string complexes?: Prisma.ComplexUncheckedUpdateManyWithoutBusiness_activityNestedInput permission_businesses?: Prisma.PermissionBusinessUncheckedUpdateManyWithoutBusinessNestedInput + goods?: Prisma.GoodUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutBusiness_activityNestedInput } export type BusinessActivityCreateWithoutPermission_businessesInput = { @@ -729,6 +829,9 @@ export type BusinessActivityCreateWithoutPermission_businessesInput = { consumer: Prisma.ConsumerCreateNestedOneWithoutBusiness_activitiesInput complexes?: Prisma.ComplexCreateNestedManyWithoutBusiness_activityInput license_activation?: Prisma.LicenseActivationCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutBusiness_activityInput } export type BusinessActivityUncheckedCreateWithoutPermission_businessesInput = { @@ -741,6 +844,9 @@ export type BusinessActivityUncheckedCreateWithoutPermission_businessesInput = { consumer_id: string complexes?: Prisma.ComplexUncheckedCreateNestedManyWithoutBusiness_activityInput license_activation?: Prisma.LicenseActivationUncheckedCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutBusiness_activityInput } export type BusinessActivityCreateOrConnectWithoutPermission_businessesInput = { @@ -769,6 +875,9 @@ export type BusinessActivityUpdateWithoutPermission_businessesInput = { consumer?: Prisma.ConsumerUpdateOneRequiredWithoutBusiness_activitiesNestedInput complexes?: Prisma.ComplexUpdateManyWithoutBusiness_activityNestedInput license_activation?: Prisma.LicenseActivationUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUpdateManyWithoutBusiness_activityNestedInput } export type BusinessActivityUncheckedUpdateWithoutPermission_businessesInput = { @@ -781,6 +890,237 @@ export type BusinessActivityUncheckedUpdateWithoutPermission_businessesInput = { consumer_id?: Prisma.StringFieldUpdateOperationsInput | string complexes?: Prisma.ComplexUncheckedUpdateManyWithoutBusiness_activityNestedInput license_activation?: Prisma.LicenseActivationUncheckedUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutBusiness_activityNestedInput +} + +export type BusinessActivityCreateWithoutCustomer_individualsInput = { + id?: string + economic_code: string + name: string + created_at?: Date | string + updated_at?: Date | string + guild: Prisma.GuildCreateNestedOneWithoutBusiness_activitiesInput + consumer: Prisma.ConsumerCreateNestedOneWithoutBusiness_activitiesInput + complexes?: Prisma.ComplexCreateNestedManyWithoutBusiness_activityInput + permission_businesses?: Prisma.PermissionBusinessCreateNestedManyWithoutBusinessInput + license_activation?: Prisma.LicenseActivationCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutBusiness_activityInput +} + +export type BusinessActivityUncheckedCreateWithoutCustomer_individualsInput = { + id?: string + economic_code: string + name: string + created_at?: Date | string + updated_at?: Date | string + guild_id: string + consumer_id: string + complexes?: Prisma.ComplexUncheckedCreateNestedManyWithoutBusiness_activityInput + permission_businesses?: Prisma.PermissionBusinessUncheckedCreateNestedManyWithoutBusinessInput + license_activation?: Prisma.LicenseActivationUncheckedCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutBusiness_activityInput +} + +export type BusinessActivityCreateOrConnectWithoutCustomer_individualsInput = { + where: Prisma.BusinessActivityWhereUniqueInput + create: Prisma.XOR +} + +export type BusinessActivityUpsertWithoutCustomer_individualsInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.BusinessActivityWhereInput +} + +export type BusinessActivityUpdateToOneWithWhereWithoutCustomer_individualsInput = { + where?: Prisma.BusinessActivityWhereInput + data: Prisma.XOR +} + +export type BusinessActivityUpdateWithoutCustomer_individualsInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + economic_code?: Prisma.StringFieldUpdateOperationsInput | string + name?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + guild?: Prisma.GuildUpdateOneRequiredWithoutBusiness_activitiesNestedInput + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutBusiness_activitiesNestedInput + complexes?: Prisma.ComplexUpdateManyWithoutBusiness_activityNestedInput + permission_businesses?: Prisma.PermissionBusinessUpdateManyWithoutBusinessNestedInput + license_activation?: Prisma.LicenseActivationUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUpdateManyWithoutBusiness_activityNestedInput +} + +export type BusinessActivityUncheckedUpdateWithoutCustomer_individualsInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + economic_code?: Prisma.StringFieldUpdateOperationsInput | string + name?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + guild_id?: Prisma.StringFieldUpdateOperationsInput | string + consumer_id?: Prisma.StringFieldUpdateOperationsInput | string + complexes?: Prisma.ComplexUncheckedUpdateManyWithoutBusiness_activityNestedInput + permission_businesses?: Prisma.PermissionBusinessUncheckedUpdateManyWithoutBusinessNestedInput + license_activation?: Prisma.LicenseActivationUncheckedUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutBusiness_activityNestedInput +} + +export type BusinessActivityCreateWithoutCustomer_legalsInput = { + id?: string + economic_code: string + name: string + created_at?: Date | string + updated_at?: Date | string + guild: Prisma.GuildCreateNestedOneWithoutBusiness_activitiesInput + consumer: Prisma.ConsumerCreateNestedOneWithoutBusiness_activitiesInput + complexes?: Prisma.ComplexCreateNestedManyWithoutBusiness_activityInput + permission_businesses?: Prisma.PermissionBusinessCreateNestedManyWithoutBusinessInput + license_activation?: Prisma.LicenseActivationCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutBusiness_activityInput +} + +export type BusinessActivityUncheckedCreateWithoutCustomer_legalsInput = { + id?: string + economic_code: string + name: string + created_at?: Date | string + updated_at?: Date | string + guild_id: string + consumer_id: string + complexes?: Prisma.ComplexUncheckedCreateNestedManyWithoutBusiness_activityInput + permission_businesses?: Prisma.PermissionBusinessUncheckedCreateNestedManyWithoutBusinessInput + license_activation?: Prisma.LicenseActivationUncheckedCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutBusiness_activityInput +} + +export type BusinessActivityCreateOrConnectWithoutCustomer_legalsInput = { + where: Prisma.BusinessActivityWhereUniqueInput + create: Prisma.XOR +} + +export type BusinessActivityUpsertWithoutCustomer_legalsInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.BusinessActivityWhereInput +} + +export type BusinessActivityUpdateToOneWithWhereWithoutCustomer_legalsInput = { + where?: Prisma.BusinessActivityWhereInput + data: Prisma.XOR +} + +export type BusinessActivityUpdateWithoutCustomer_legalsInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + economic_code?: Prisma.StringFieldUpdateOperationsInput | string + name?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + guild?: Prisma.GuildUpdateOneRequiredWithoutBusiness_activitiesNestedInput + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutBusiness_activitiesNestedInput + complexes?: Prisma.ComplexUpdateManyWithoutBusiness_activityNestedInput + permission_businesses?: Prisma.PermissionBusinessUpdateManyWithoutBusinessNestedInput + license_activation?: Prisma.LicenseActivationUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutBusiness_activityNestedInput +} + +export type BusinessActivityUncheckedUpdateWithoutCustomer_legalsInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + economic_code?: Prisma.StringFieldUpdateOperationsInput | string + name?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + guild_id?: Prisma.StringFieldUpdateOperationsInput | string + consumer_id?: Prisma.StringFieldUpdateOperationsInput | string + complexes?: Prisma.ComplexUncheckedUpdateManyWithoutBusiness_activityNestedInput + permission_businesses?: Prisma.PermissionBusinessUncheckedUpdateManyWithoutBusinessNestedInput + license_activation?: Prisma.LicenseActivationUncheckedUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutBusiness_activityNestedInput +} + +export type BusinessActivityCreateWithoutGoodsInput = { + id?: string + economic_code: string + name: string + created_at?: Date | string + updated_at?: Date | string + guild: Prisma.GuildCreateNestedOneWithoutBusiness_activitiesInput + consumer: Prisma.ConsumerCreateNestedOneWithoutBusiness_activitiesInput + complexes?: Prisma.ComplexCreateNestedManyWithoutBusiness_activityInput + permission_businesses?: Prisma.PermissionBusinessCreateNestedManyWithoutBusinessInput + license_activation?: Prisma.LicenseActivationCreateNestedOneWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutBusiness_activityInput +} + +export type BusinessActivityUncheckedCreateWithoutGoodsInput = { + id?: string + economic_code: string + name: string + created_at?: Date | string + updated_at?: Date | string + guild_id: string + consumer_id: string + complexes?: Prisma.ComplexUncheckedCreateNestedManyWithoutBusiness_activityInput + permission_businesses?: Prisma.PermissionBusinessUncheckedCreateNestedManyWithoutBusinessInput + license_activation?: Prisma.LicenseActivationUncheckedCreateNestedOneWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutBusiness_activityInput +} + +export type BusinessActivityCreateOrConnectWithoutGoodsInput = { + where: Prisma.BusinessActivityWhereUniqueInput + create: Prisma.XOR +} + +export type BusinessActivityUpsertWithoutGoodsInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.BusinessActivityWhereInput +} + +export type BusinessActivityUpdateToOneWithWhereWithoutGoodsInput = { + where?: Prisma.BusinessActivityWhereInput + data: Prisma.XOR +} + +export type BusinessActivityUpdateWithoutGoodsInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + economic_code?: Prisma.StringFieldUpdateOperationsInput | string + name?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + guild?: Prisma.GuildUpdateOneRequiredWithoutBusiness_activitiesNestedInput + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutBusiness_activitiesNestedInput + complexes?: Prisma.ComplexUpdateManyWithoutBusiness_activityNestedInput + permission_businesses?: Prisma.PermissionBusinessUpdateManyWithoutBusinessNestedInput + license_activation?: Prisma.LicenseActivationUpdateOneWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUpdateManyWithoutBusiness_activityNestedInput +} + +export type BusinessActivityUncheckedUpdateWithoutGoodsInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + economic_code?: Prisma.StringFieldUpdateOperationsInput | string + name?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + guild_id?: Prisma.StringFieldUpdateOperationsInput | string + consumer_id?: Prisma.StringFieldUpdateOperationsInput | string + complexes?: Prisma.ComplexUncheckedUpdateManyWithoutBusiness_activityNestedInput + permission_businesses?: Prisma.PermissionBusinessUncheckedUpdateManyWithoutBusinessNestedInput + license_activation?: Prisma.LicenseActivationUncheckedUpdateOneWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutBusiness_activityNestedInput } export type BusinessActivityCreateWithoutGuildInput = { @@ -793,6 +1133,9 @@ export type BusinessActivityCreateWithoutGuildInput = { complexes?: Prisma.ComplexCreateNestedManyWithoutBusiness_activityInput permission_businesses?: Prisma.PermissionBusinessCreateNestedManyWithoutBusinessInput license_activation?: Prisma.LicenseActivationCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutBusiness_activityInput } export type BusinessActivityUncheckedCreateWithoutGuildInput = { @@ -805,6 +1148,9 @@ export type BusinessActivityUncheckedCreateWithoutGuildInput = { complexes?: Prisma.ComplexUncheckedCreateNestedManyWithoutBusiness_activityInput permission_businesses?: Prisma.PermissionBusinessUncheckedCreateNestedManyWithoutBusinessInput license_activation?: Prisma.LicenseActivationUncheckedCreateNestedOneWithoutBusiness_activityInput + goods?: Prisma.GoodUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutBusiness_activityInput + customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutBusiness_activityInput } export type BusinessActivityCreateOrConnectWithoutGuildInput = { @@ -852,6 +1198,9 @@ export type BusinessActivityUpdateWithoutConsumerInput = { complexes?: Prisma.ComplexUpdateManyWithoutBusiness_activityNestedInput permission_businesses?: Prisma.PermissionBusinessUpdateManyWithoutBusinessNestedInput license_activation?: Prisma.LicenseActivationUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUpdateManyWithoutBusiness_activityNestedInput } export type BusinessActivityUncheckedUpdateWithoutConsumerInput = { @@ -864,6 +1213,9 @@ export type BusinessActivityUncheckedUpdateWithoutConsumerInput = { complexes?: Prisma.ComplexUncheckedUpdateManyWithoutBusiness_activityNestedInput permission_businesses?: Prisma.PermissionBusinessUncheckedUpdateManyWithoutBusinessNestedInput license_activation?: Prisma.LicenseActivationUncheckedUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutBusiness_activityNestedInput } export type BusinessActivityUncheckedUpdateManyWithoutConsumerInput = { @@ -894,6 +1246,9 @@ export type BusinessActivityUpdateWithoutGuildInput = { complexes?: Prisma.ComplexUpdateManyWithoutBusiness_activityNestedInput permission_businesses?: Prisma.PermissionBusinessUpdateManyWithoutBusinessNestedInput license_activation?: Prisma.LicenseActivationUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUpdateManyWithoutBusiness_activityNestedInput } export type BusinessActivityUncheckedUpdateWithoutGuildInput = { @@ -906,6 +1261,9 @@ export type BusinessActivityUncheckedUpdateWithoutGuildInput = { complexes?: Prisma.ComplexUncheckedUpdateManyWithoutBusiness_activityNestedInput permission_businesses?: Prisma.PermissionBusinessUncheckedUpdateManyWithoutBusinessNestedInput license_activation?: Prisma.LicenseActivationUncheckedUpdateOneWithoutBusiness_activityNestedInput + goods?: Prisma.GoodUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutBusiness_activityNestedInput + customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutBusiness_activityNestedInput } export type BusinessActivityUncheckedUpdateManyWithoutGuildInput = { @@ -925,11 +1283,17 @@ export type BusinessActivityUncheckedUpdateManyWithoutGuildInput = { export type BusinessActivityCountOutputType = { complexes: number permission_businesses: number + goods: number + customer_individuals: number + customer_legals: number } export type BusinessActivityCountOutputTypeSelect = { complexes?: boolean | BusinessActivityCountOutputTypeCountComplexesArgs permission_businesses?: boolean | BusinessActivityCountOutputTypeCountPermission_businessesArgs + goods?: boolean | BusinessActivityCountOutputTypeCountGoodsArgs + customer_individuals?: boolean | BusinessActivityCountOutputTypeCountCustomer_individualsArgs + customer_legals?: boolean | BusinessActivityCountOutputTypeCountCustomer_legalsArgs } /** @@ -956,6 +1320,27 @@ export type BusinessActivityCountOutputTypeCountPermission_businessesArgs = { + where?: Prisma.GoodWhereInput +} + +/** + * BusinessActivityCountOutputType without action + */ +export type BusinessActivityCountOutputTypeCountCustomer_individualsArgs = { + where?: Prisma.CustomerIndividualWhereInput +} + +/** + * BusinessActivityCountOutputType without action + */ +export type BusinessActivityCountOutputTypeCountCustomer_legalsArgs = { + where?: Prisma.CustomerLegalWhereInput +} + export type BusinessActivitySelect = runtime.Types.Extensions.GetSelect<{ id?: boolean @@ -970,6 +1355,9 @@ export type BusinessActivitySelect permission_businesses?: boolean | Prisma.BusinessActivity$permission_businessesArgs license_activation?: boolean | Prisma.BusinessActivity$license_activationArgs + goods?: boolean | Prisma.BusinessActivity$goodsArgs + customer_individuals?: boolean | Prisma.BusinessActivity$customer_individualsArgs + customer_legals?: boolean | Prisma.BusinessActivity$customer_legalsArgs _count?: boolean | Prisma.BusinessActivityCountOutputTypeDefaultArgs }, ExtArgs["result"]["businessActivity"]> @@ -992,6 +1380,9 @@ export type BusinessActivityInclude permission_businesses?: boolean | Prisma.BusinessActivity$permission_businessesArgs license_activation?: boolean | Prisma.BusinessActivity$license_activationArgs + goods?: boolean | Prisma.BusinessActivity$goodsArgs + customer_individuals?: boolean | Prisma.BusinessActivity$customer_individualsArgs + customer_legals?: boolean | Prisma.BusinessActivity$customer_legalsArgs _count?: boolean | Prisma.BusinessActivityCountOutputTypeDefaultArgs } @@ -1003,6 +1394,9 @@ export type $BusinessActivityPayload[] permission_businesses: Prisma.$PermissionBusinessPayload[] license_activation: Prisma.$LicenseActivationPayload | null + goods: Prisma.$GoodPayload[] + customer_individuals: Prisma.$CustomerIndividualPayload[] + customer_legals: Prisma.$CustomerLegalPayload[] } scalars: runtime.Types.Extensions.GetPayloadResult<{ id: string @@ -1357,6 +1751,9 @@ export interface Prisma__BusinessActivityClient = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> permission_businesses = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> license_activation = {}>(args?: Prisma.Subset>): Prisma.Prisma__LicenseActivationClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + goods = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + customer_individuals = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + customer_legals = {}>(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. @@ -1807,6 +2204,78 @@ export type BusinessActivity$license_activationArgs = { + /** + * 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 + orderBy?: Prisma.GoodOrderByWithRelationInput | Prisma.GoodOrderByWithRelationInput[] + cursor?: Prisma.GoodWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.GoodScalarFieldEnum | Prisma.GoodScalarFieldEnum[] +} + +/** + * BusinessActivity.customer_individuals + */ +export type BusinessActivity$customer_individualsArgs = { + /** + * Select specific fields to fetch from the CustomerIndividual + */ + select?: Prisma.CustomerIndividualSelect | null + /** + * Omit specific fields from the CustomerIndividual + */ + omit?: Prisma.CustomerIndividualOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.CustomerIndividualInclude | null + where?: Prisma.CustomerIndividualWhereInput + orderBy?: Prisma.CustomerIndividualOrderByWithRelationInput | Prisma.CustomerIndividualOrderByWithRelationInput[] + cursor?: Prisma.CustomerIndividualWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.CustomerIndividualScalarFieldEnum | Prisma.CustomerIndividualScalarFieldEnum[] +} + +/** + * BusinessActivity.customer_legals + */ +export type BusinessActivity$customer_legalsArgs = { + /** + * Select specific fields to fetch from the CustomerLegal + */ + select?: Prisma.CustomerLegalSelect | null + /** + * Omit specific fields from the CustomerLegal + */ + omit?: Prisma.CustomerLegalOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.CustomerLegalInclude | null + where?: Prisma.CustomerLegalWhereInput + orderBy?: Prisma.CustomerLegalOrderByWithRelationInput | Prisma.CustomerLegalOrderByWithRelationInput[] + cursor?: Prisma.CustomerLegalWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.CustomerLegalScalarFieldEnum | Prisma.CustomerLegalScalarFieldEnum[] +} + /** * BusinessActivity without action */ diff --git a/src/generated/prisma/models/Complex.ts b/src/generated/prisma/models/Complex.ts index d29c217..0c96756 100644 --- a/src/generated/prisma/models/Complex.ts +++ b/src/generated/prisma/models/Complex.ts @@ -200,11 +200,8 @@ export type ComplexWhereInput = { business_activity_id?: Prisma.StringFilter<"Complex"> | string business_activity?: Prisma.XOR pos_list?: Prisma.PosListRelationFilter - goods?: Prisma.GoodListRelationFilter good_categories?: Prisma.GoodCategoryListRelationFilter permission_complexes?: Prisma.PermissionComplexListRelationFilter - customer_individuals?: Prisma.CustomerIndividualListRelationFilter - customer_legals?: Prisma.CustomerLegalListRelationFilter } export type ComplexOrderByWithRelationInput = { @@ -217,11 +214,8 @@ export type ComplexOrderByWithRelationInput = { business_activity_id?: Prisma.SortOrder business_activity?: Prisma.BusinessActivityOrderByWithRelationInput pos_list?: Prisma.PosOrderByRelationAggregateInput - goods?: Prisma.GoodOrderByRelationAggregateInput good_categories?: Prisma.GoodCategoryOrderByRelationAggregateInput permission_complexes?: Prisma.PermissionComplexOrderByRelationAggregateInput - customer_individuals?: Prisma.CustomerIndividualOrderByRelationAggregateInput - customer_legals?: Prisma.CustomerLegalOrderByRelationAggregateInput _relevance?: Prisma.ComplexOrderByRelevanceInput } @@ -238,11 +232,8 @@ export type ComplexWhereUniqueInput = Prisma.AtLeast<{ business_activity_id?: Prisma.StringFilter<"Complex"> | string business_activity?: Prisma.XOR pos_list?: Prisma.PosListRelationFilter - goods?: Prisma.GoodListRelationFilter good_categories?: Prisma.GoodCategoryListRelationFilter permission_complexes?: Prisma.PermissionComplexListRelationFilter - customer_individuals?: Prisma.CustomerIndividualListRelationFilter - customer_legals?: Prisma.CustomerLegalListRelationFilter }, "id"> export type ComplexOrderByWithAggregationInput = { @@ -280,11 +271,8 @@ export type ComplexCreateInput = { updated_at?: Date | string business_activity: Prisma.BusinessActivityCreateNestedOneWithoutComplexesInput pos_list?: Prisma.PosCreateNestedManyWithoutComplexInput - goods?: Prisma.GoodCreateNestedManyWithoutComplexInput good_categories?: Prisma.GoodCategoryCreateNestedManyWithoutComplexInput permission_complexes?: Prisma.PermissionComplexCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutComplexInput } export type ComplexUncheckedCreateInput = { @@ -296,11 +284,8 @@ export type ComplexUncheckedCreateInput = { updated_at?: Date | string business_activity_id: string pos_list?: Prisma.PosUncheckedCreateNestedManyWithoutComplexInput - goods?: Prisma.GoodUncheckedCreateNestedManyWithoutComplexInput good_categories?: Prisma.GoodCategoryUncheckedCreateNestedManyWithoutComplexInput permission_complexes?: Prisma.PermissionComplexUncheckedCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutComplexInput } export type ComplexUpdateInput = { @@ -312,11 +297,8 @@ export type ComplexUpdateInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutComplexesNestedInput pos_list?: Prisma.PosUpdateManyWithoutComplexNestedInput - goods?: Prisma.GoodUpdateManyWithoutComplexNestedInput good_categories?: Prisma.GoodCategoryUpdateManyWithoutComplexNestedInput permission_complexes?: Prisma.PermissionComplexUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUpdateManyWithoutComplexNestedInput } export type ComplexUncheckedUpdateInput = { @@ -328,11 +310,8 @@ export type ComplexUncheckedUpdateInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string pos_list?: Prisma.PosUncheckedUpdateManyWithoutComplexNestedInput - goods?: Prisma.GoodUncheckedUpdateManyWithoutComplexNestedInput good_categories?: Prisma.GoodCategoryUncheckedUpdateManyWithoutComplexNestedInput permission_complexes?: Prisma.PermissionComplexUncheckedUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutComplexNestedInput } export type ComplexCreateManyInput = { @@ -490,50 +469,6 @@ export type ComplexUpdateOneRequiredWithoutPermission_complexesNestedInput = { update?: Prisma.XOR, Prisma.ComplexUncheckedUpdateWithoutPermission_complexesInput> } -export type ComplexCreateNestedOneWithoutCustomer_individualsInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.ComplexCreateOrConnectWithoutCustomer_individualsInput - connect?: Prisma.ComplexWhereUniqueInput -} - -export type ComplexUpdateOneRequiredWithoutCustomer_individualsNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.ComplexCreateOrConnectWithoutCustomer_individualsInput - upsert?: Prisma.ComplexUpsertWithoutCustomer_individualsInput - connect?: Prisma.ComplexWhereUniqueInput - update?: Prisma.XOR, Prisma.ComplexUncheckedUpdateWithoutCustomer_individualsInput> -} - -export type ComplexCreateNestedOneWithoutCustomer_legalsInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.ComplexCreateOrConnectWithoutCustomer_legalsInput - connect?: Prisma.ComplexWhereUniqueInput -} - -export type ComplexUpdateOneRequiredWithoutCustomer_legalsNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.ComplexCreateOrConnectWithoutCustomer_legalsInput - upsert?: Prisma.ComplexUpsertWithoutCustomer_legalsInput - connect?: Prisma.ComplexWhereUniqueInput - update?: Prisma.XOR, Prisma.ComplexUncheckedUpdateWithoutCustomer_legalsInput> -} - -export type ComplexCreateNestedOneWithoutGoodsInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.ComplexCreateOrConnectWithoutGoodsInput - connect?: Prisma.ComplexWhereUniqueInput -} - -export type ComplexUpdateOneWithoutGoodsNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.ComplexCreateOrConnectWithoutGoodsInput - upsert?: Prisma.ComplexUpsertWithoutGoodsInput - disconnect?: Prisma.ComplexWhereInput | boolean - delete?: Prisma.ComplexWhereInput | boolean - connect?: Prisma.ComplexWhereUniqueInput - update?: Prisma.XOR, Prisma.ComplexUncheckedUpdateWithoutGoodsInput> -} - export type ComplexCreateNestedOneWithoutGood_categoriesInput = { create?: Prisma.XOR connectOrCreate?: Prisma.ComplexCreateOrConnectWithoutGood_categoriesInput @@ -558,11 +493,8 @@ export type ComplexCreateWithoutBusiness_activityInput = { created_at?: Date | string updated_at?: Date | string pos_list?: Prisma.PosCreateNestedManyWithoutComplexInput - goods?: Prisma.GoodCreateNestedManyWithoutComplexInput good_categories?: Prisma.GoodCategoryCreateNestedManyWithoutComplexInput permission_complexes?: Prisma.PermissionComplexCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutComplexInput } export type ComplexUncheckedCreateWithoutBusiness_activityInput = { @@ -573,11 +505,8 @@ export type ComplexUncheckedCreateWithoutBusiness_activityInput = { created_at?: Date | string updated_at?: Date | string pos_list?: Prisma.PosUncheckedCreateNestedManyWithoutComplexInput - goods?: Prisma.GoodUncheckedCreateNestedManyWithoutComplexInput good_categories?: Prisma.GoodCategoryUncheckedCreateNestedManyWithoutComplexInput permission_complexes?: Prisma.PermissionComplexUncheckedCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutComplexInput } export type ComplexCreateOrConnectWithoutBusiness_activityInput = { @@ -627,11 +556,8 @@ export type ComplexCreateWithoutPos_listInput = { created_at?: Date | string updated_at?: Date | string business_activity: Prisma.BusinessActivityCreateNestedOneWithoutComplexesInput - goods?: Prisma.GoodCreateNestedManyWithoutComplexInput good_categories?: Prisma.GoodCategoryCreateNestedManyWithoutComplexInput permission_complexes?: Prisma.PermissionComplexCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutComplexInput } export type ComplexUncheckedCreateWithoutPos_listInput = { @@ -642,11 +568,8 @@ export type ComplexUncheckedCreateWithoutPos_listInput = { created_at?: Date | string updated_at?: Date | string business_activity_id: string - goods?: Prisma.GoodUncheckedCreateNestedManyWithoutComplexInput good_categories?: Prisma.GoodCategoryUncheckedCreateNestedManyWithoutComplexInput permission_complexes?: Prisma.PermissionComplexUncheckedCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutComplexInput } export type ComplexCreateOrConnectWithoutPos_listInput = { @@ -673,11 +596,8 @@ export type ComplexUpdateWithoutPos_listInput = { created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutComplexesNestedInput - goods?: Prisma.GoodUpdateManyWithoutComplexNestedInput good_categories?: Prisma.GoodCategoryUpdateManyWithoutComplexNestedInput permission_complexes?: Prisma.PermissionComplexUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUpdateManyWithoutComplexNestedInput } export type ComplexUncheckedUpdateWithoutPos_listInput = { @@ -688,11 +608,8 @@ export type ComplexUncheckedUpdateWithoutPos_listInput = { created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string - goods?: Prisma.GoodUncheckedUpdateManyWithoutComplexNestedInput good_categories?: Prisma.GoodCategoryUncheckedUpdateManyWithoutComplexNestedInput permission_complexes?: Prisma.PermissionComplexUncheckedUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutComplexNestedInput } export type ComplexCreateWithoutPermission_complexesInput = { @@ -704,10 +621,7 @@ export type ComplexCreateWithoutPermission_complexesInput = { updated_at?: Date | string business_activity: Prisma.BusinessActivityCreateNestedOneWithoutComplexesInput pos_list?: Prisma.PosCreateNestedManyWithoutComplexInput - goods?: Prisma.GoodCreateNestedManyWithoutComplexInput good_categories?: Prisma.GoodCategoryCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutComplexInput } export type ComplexUncheckedCreateWithoutPermission_complexesInput = { @@ -719,10 +633,7 @@ export type ComplexUncheckedCreateWithoutPermission_complexesInput = { updated_at?: Date | string business_activity_id: string pos_list?: Prisma.PosUncheckedCreateNestedManyWithoutComplexInput - goods?: Prisma.GoodUncheckedCreateNestedManyWithoutComplexInput good_categories?: Prisma.GoodCategoryUncheckedCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutComplexInput } export type ComplexCreateOrConnectWithoutPermission_complexesInput = { @@ -750,10 +661,7 @@ export type ComplexUpdateWithoutPermission_complexesInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutComplexesNestedInput pos_list?: Prisma.PosUpdateManyWithoutComplexNestedInput - goods?: Prisma.GoodUpdateManyWithoutComplexNestedInput good_categories?: Prisma.GoodCategoryUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUpdateManyWithoutComplexNestedInput } export type ComplexUncheckedUpdateWithoutPermission_complexesInput = { @@ -765,238 +673,7 @@ export type ComplexUncheckedUpdateWithoutPermission_complexesInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string pos_list?: Prisma.PosUncheckedUpdateManyWithoutComplexNestedInput - goods?: Prisma.GoodUncheckedUpdateManyWithoutComplexNestedInput good_categories?: Prisma.GoodCategoryUncheckedUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutComplexNestedInput -} - -export type ComplexCreateWithoutCustomer_individualsInput = { - id?: string - name: string - branch_code: string - address?: string | null - created_at?: Date | string - updated_at?: Date | string - business_activity: Prisma.BusinessActivityCreateNestedOneWithoutComplexesInput - pos_list?: Prisma.PosCreateNestedManyWithoutComplexInput - goods?: Prisma.GoodCreateNestedManyWithoutComplexInput - good_categories?: Prisma.GoodCategoryCreateNestedManyWithoutComplexInput - permission_complexes?: Prisma.PermissionComplexCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutComplexInput -} - -export type ComplexUncheckedCreateWithoutCustomer_individualsInput = { - id?: string - name: string - branch_code: string - address?: string | null - created_at?: Date | string - updated_at?: Date | string - business_activity_id: string - pos_list?: Prisma.PosUncheckedCreateNestedManyWithoutComplexInput - goods?: Prisma.GoodUncheckedCreateNestedManyWithoutComplexInput - good_categories?: Prisma.GoodCategoryUncheckedCreateNestedManyWithoutComplexInput - permission_complexes?: Prisma.PermissionComplexUncheckedCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutComplexInput -} - -export type ComplexCreateOrConnectWithoutCustomer_individualsInput = { - where: Prisma.ComplexWhereUniqueInput - create: Prisma.XOR -} - -export type ComplexUpsertWithoutCustomer_individualsInput = { - update: Prisma.XOR - create: Prisma.XOR - where?: Prisma.ComplexWhereInput -} - -export type ComplexUpdateToOneWithWhereWithoutCustomer_individualsInput = { - where?: Prisma.ComplexWhereInput - data: Prisma.XOR -} - -export type ComplexUpdateWithoutCustomer_individualsInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - name?: Prisma.StringFieldUpdateOperationsInput | string - branch_code?: Prisma.StringFieldUpdateOperationsInput | string - address?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutComplexesNestedInput - pos_list?: Prisma.PosUpdateManyWithoutComplexNestedInput - goods?: Prisma.GoodUpdateManyWithoutComplexNestedInput - good_categories?: Prisma.GoodCategoryUpdateManyWithoutComplexNestedInput - permission_complexes?: Prisma.PermissionComplexUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUpdateManyWithoutComplexNestedInput -} - -export type ComplexUncheckedUpdateWithoutCustomer_individualsInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - name?: Prisma.StringFieldUpdateOperationsInput | string - branch_code?: Prisma.StringFieldUpdateOperationsInput | string - address?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string - pos_list?: Prisma.PosUncheckedUpdateManyWithoutComplexNestedInput - goods?: Prisma.GoodUncheckedUpdateManyWithoutComplexNestedInput - good_categories?: Prisma.GoodCategoryUncheckedUpdateManyWithoutComplexNestedInput - permission_complexes?: Prisma.PermissionComplexUncheckedUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutComplexNestedInput -} - -export type ComplexCreateWithoutCustomer_legalsInput = { - id?: string - name: string - branch_code: string - address?: string | null - created_at?: Date | string - updated_at?: Date | string - business_activity: Prisma.BusinessActivityCreateNestedOneWithoutComplexesInput - pos_list?: Prisma.PosCreateNestedManyWithoutComplexInput - goods?: Prisma.GoodCreateNestedManyWithoutComplexInput - good_categories?: Prisma.GoodCategoryCreateNestedManyWithoutComplexInput - permission_complexes?: Prisma.PermissionComplexCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutComplexInput -} - -export type ComplexUncheckedCreateWithoutCustomer_legalsInput = { - id?: string - name: string - branch_code: string - address?: string | null - created_at?: Date | string - updated_at?: Date | string - business_activity_id: string - pos_list?: Prisma.PosUncheckedCreateNestedManyWithoutComplexInput - goods?: Prisma.GoodUncheckedCreateNestedManyWithoutComplexInput - good_categories?: Prisma.GoodCategoryUncheckedCreateNestedManyWithoutComplexInput - permission_complexes?: Prisma.PermissionComplexUncheckedCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutComplexInput -} - -export type ComplexCreateOrConnectWithoutCustomer_legalsInput = { - where: Prisma.ComplexWhereUniqueInput - create: Prisma.XOR -} - -export type ComplexUpsertWithoutCustomer_legalsInput = { - update: Prisma.XOR - create: Prisma.XOR - where?: Prisma.ComplexWhereInput -} - -export type ComplexUpdateToOneWithWhereWithoutCustomer_legalsInput = { - where?: Prisma.ComplexWhereInput - data: Prisma.XOR -} - -export type ComplexUpdateWithoutCustomer_legalsInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - name?: Prisma.StringFieldUpdateOperationsInput | string - branch_code?: Prisma.StringFieldUpdateOperationsInput | string - address?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutComplexesNestedInput - pos_list?: Prisma.PosUpdateManyWithoutComplexNestedInput - goods?: Prisma.GoodUpdateManyWithoutComplexNestedInput - good_categories?: Prisma.GoodCategoryUpdateManyWithoutComplexNestedInput - permission_complexes?: Prisma.PermissionComplexUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutComplexNestedInput -} - -export type ComplexUncheckedUpdateWithoutCustomer_legalsInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - name?: Prisma.StringFieldUpdateOperationsInput | string - branch_code?: Prisma.StringFieldUpdateOperationsInput | string - address?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string - pos_list?: Prisma.PosUncheckedUpdateManyWithoutComplexNestedInput - goods?: Prisma.GoodUncheckedUpdateManyWithoutComplexNestedInput - good_categories?: Prisma.GoodCategoryUncheckedUpdateManyWithoutComplexNestedInput - permission_complexes?: Prisma.PermissionComplexUncheckedUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutComplexNestedInput -} - -export type ComplexCreateWithoutGoodsInput = { - id?: string - name: string - branch_code: string - address?: string | null - created_at?: Date | string - updated_at?: Date | string - business_activity: Prisma.BusinessActivityCreateNestedOneWithoutComplexesInput - pos_list?: Prisma.PosCreateNestedManyWithoutComplexInput - good_categories?: Prisma.GoodCategoryCreateNestedManyWithoutComplexInput - permission_complexes?: Prisma.PermissionComplexCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutComplexInput -} - -export type ComplexUncheckedCreateWithoutGoodsInput = { - id?: string - name: string - branch_code: string - address?: string | null - created_at?: Date | string - updated_at?: Date | string - business_activity_id: string - pos_list?: Prisma.PosUncheckedCreateNestedManyWithoutComplexInput - good_categories?: Prisma.GoodCategoryUncheckedCreateNestedManyWithoutComplexInput - permission_complexes?: Prisma.PermissionComplexUncheckedCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutComplexInput -} - -export type ComplexCreateOrConnectWithoutGoodsInput = { - where: Prisma.ComplexWhereUniqueInput - create: Prisma.XOR -} - -export type ComplexUpsertWithoutGoodsInput = { - update: Prisma.XOR - create: Prisma.XOR - where?: Prisma.ComplexWhereInput -} - -export type ComplexUpdateToOneWithWhereWithoutGoodsInput = { - where?: Prisma.ComplexWhereInput - data: Prisma.XOR -} - -export type ComplexUpdateWithoutGoodsInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - name?: Prisma.StringFieldUpdateOperationsInput | string - branch_code?: Prisma.StringFieldUpdateOperationsInput | string - address?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutComplexesNestedInput - pos_list?: Prisma.PosUpdateManyWithoutComplexNestedInput - good_categories?: Prisma.GoodCategoryUpdateManyWithoutComplexNestedInput - permission_complexes?: Prisma.PermissionComplexUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUpdateManyWithoutComplexNestedInput -} - -export type ComplexUncheckedUpdateWithoutGoodsInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - name?: Prisma.StringFieldUpdateOperationsInput | string - branch_code?: Prisma.StringFieldUpdateOperationsInput | string - address?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string - pos_list?: Prisma.PosUncheckedUpdateManyWithoutComplexNestedInput - good_categories?: Prisma.GoodCategoryUncheckedUpdateManyWithoutComplexNestedInput - permission_complexes?: Prisma.PermissionComplexUncheckedUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutComplexNestedInput } export type ComplexCreateWithoutGood_categoriesInput = { @@ -1008,10 +685,7 @@ export type ComplexCreateWithoutGood_categoriesInput = { updated_at?: Date | string business_activity: Prisma.BusinessActivityCreateNestedOneWithoutComplexesInput pos_list?: Prisma.PosCreateNestedManyWithoutComplexInput - goods?: Prisma.GoodCreateNestedManyWithoutComplexInput permission_complexes?: Prisma.PermissionComplexCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalCreateNestedManyWithoutComplexInput } export type ComplexUncheckedCreateWithoutGood_categoriesInput = { @@ -1023,10 +697,7 @@ export type ComplexUncheckedCreateWithoutGood_categoriesInput = { updated_at?: Date | string business_activity_id: string pos_list?: Prisma.PosUncheckedCreateNestedManyWithoutComplexInput - goods?: Prisma.GoodUncheckedCreateNestedManyWithoutComplexInput permission_complexes?: Prisma.PermissionComplexUncheckedCreateNestedManyWithoutComplexInput - customer_individuals?: Prisma.CustomerIndividualUncheckedCreateNestedManyWithoutComplexInput - customer_legals?: Prisma.CustomerLegalUncheckedCreateNestedManyWithoutComplexInput } export type ComplexCreateOrConnectWithoutGood_categoriesInput = { @@ -1054,10 +725,7 @@ export type ComplexUpdateWithoutGood_categoriesInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutComplexesNestedInput pos_list?: Prisma.PosUpdateManyWithoutComplexNestedInput - goods?: Prisma.GoodUpdateManyWithoutComplexNestedInput permission_complexes?: Prisma.PermissionComplexUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUpdateManyWithoutComplexNestedInput } export type ComplexUncheckedUpdateWithoutGood_categoriesInput = { @@ -1069,10 +737,7 @@ export type ComplexUncheckedUpdateWithoutGood_categoriesInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string pos_list?: Prisma.PosUncheckedUpdateManyWithoutComplexNestedInput - goods?: Prisma.GoodUncheckedUpdateManyWithoutComplexNestedInput permission_complexes?: Prisma.PermissionComplexUncheckedUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutComplexNestedInput } export type ComplexCreateManyBusiness_activityInput = { @@ -1092,11 +757,8 @@ export type ComplexUpdateWithoutBusiness_activityInput = { created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string pos_list?: Prisma.PosUpdateManyWithoutComplexNestedInput - goods?: Prisma.GoodUpdateManyWithoutComplexNestedInput good_categories?: Prisma.GoodCategoryUpdateManyWithoutComplexNestedInput permission_complexes?: Prisma.PermissionComplexUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUpdateManyWithoutComplexNestedInput } export type ComplexUncheckedUpdateWithoutBusiness_activityInput = { @@ -1107,11 +769,8 @@ export type ComplexUncheckedUpdateWithoutBusiness_activityInput = { created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string pos_list?: Prisma.PosUncheckedUpdateManyWithoutComplexNestedInput - goods?: Prisma.GoodUncheckedUpdateManyWithoutComplexNestedInput good_categories?: Prisma.GoodCategoryUncheckedUpdateManyWithoutComplexNestedInput permission_complexes?: Prisma.PermissionComplexUncheckedUpdateManyWithoutComplexNestedInput - customer_individuals?: Prisma.CustomerIndividualUncheckedUpdateManyWithoutComplexNestedInput - customer_legals?: Prisma.CustomerLegalUncheckedUpdateManyWithoutComplexNestedInput } export type ComplexUncheckedUpdateManyWithoutBusiness_activityInput = { @@ -1130,20 +789,14 @@ export type ComplexUncheckedUpdateManyWithoutBusiness_activityInput = { export type ComplexCountOutputType = { pos_list: number - goods: number good_categories: number permission_complexes: number - customer_individuals: number - customer_legals: number } export type ComplexCountOutputTypeSelect = { pos_list?: boolean | ComplexCountOutputTypeCountPos_listArgs - goods?: boolean | ComplexCountOutputTypeCountGoodsArgs good_categories?: boolean | ComplexCountOutputTypeCountGood_categoriesArgs permission_complexes?: boolean | ComplexCountOutputTypeCountPermission_complexesArgs - customer_individuals?: boolean | ComplexCountOutputTypeCountCustomer_individualsArgs - customer_legals?: boolean | ComplexCountOutputTypeCountCustomer_legalsArgs } /** @@ -1163,13 +816,6 @@ export type ComplexCountOutputTypeCountPos_listArgs = { - where?: Prisma.GoodWhereInput -} - /** * ComplexCountOutputType without action */ @@ -1184,20 +830,6 @@ export type ComplexCountOutputTypeCountPermission_complexesArgs = { - where?: Prisma.CustomerIndividualWhereInput -} - -/** - * ComplexCountOutputType without action - */ -export type ComplexCountOutputTypeCountCustomer_legalsArgs = { - where?: Prisma.CustomerLegalWhereInput -} - export type ComplexSelect = runtime.Types.Extensions.GetSelect<{ id?: boolean @@ -1209,11 +841,8 @@ export type ComplexSelect pos_list?: boolean | Prisma.Complex$pos_listArgs - goods?: boolean | Prisma.Complex$goodsArgs good_categories?: boolean | Prisma.Complex$good_categoriesArgs permission_complexes?: boolean | Prisma.Complex$permission_complexesArgs - customer_individuals?: boolean | Prisma.Complex$customer_individualsArgs - customer_legals?: boolean | Prisma.Complex$customer_legalsArgs _count?: boolean | Prisma.ComplexCountOutputTypeDefaultArgs }, ExtArgs["result"]["complex"]> @@ -1233,11 +862,8 @@ export type ComplexOmit = { business_activity?: boolean | Prisma.BusinessActivityDefaultArgs pos_list?: boolean | Prisma.Complex$pos_listArgs - goods?: boolean | Prisma.Complex$goodsArgs good_categories?: boolean | Prisma.Complex$good_categoriesArgs permission_complexes?: boolean | Prisma.Complex$permission_complexesArgs - customer_individuals?: boolean | Prisma.Complex$customer_individualsArgs - customer_legals?: boolean | Prisma.Complex$customer_legalsArgs _count?: boolean | Prisma.ComplexCountOutputTypeDefaultArgs } @@ -1246,11 +872,8 @@ export type $ComplexPayload pos_list: Prisma.$PosPayload[] - goods: Prisma.$GoodPayload[] good_categories: Prisma.$GoodCategoryPayload[] permission_complexes: Prisma.$PermissionComplexPayload[] - customer_individuals: Prisma.$CustomerIndividualPayload[] - customer_legals: Prisma.$CustomerLegalPayload[] } scalars: runtime.Types.Extensions.GetPayloadResult<{ id: string @@ -1602,11 +1225,8 @@ export interface Prisma__ComplexClient = {}>(args?: Prisma.Subset>): Prisma.Prisma__BusinessActivityClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> pos_list = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> - goods = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> good_categories = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> permission_complexes = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> - customer_individuals = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> - customer_legals = {}>(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. @@ -2014,30 +1634,6 @@ export type Complex$pos_listArgs = { - /** - * 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 - orderBy?: Prisma.GoodOrderByWithRelationInput | Prisma.GoodOrderByWithRelationInput[] - cursor?: Prisma.GoodWhereUniqueInput - take?: number - skip?: number - distinct?: Prisma.GoodScalarFieldEnum | Prisma.GoodScalarFieldEnum[] -} - /** * Complex.good_categories */ @@ -2086,54 +1682,6 @@ export type Complex$permission_complexesArgs = { - /** - * Select specific fields to fetch from the CustomerIndividual - */ - select?: Prisma.CustomerIndividualSelect | null - /** - * Omit specific fields from the CustomerIndividual - */ - omit?: Prisma.CustomerIndividualOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.CustomerIndividualInclude | null - where?: Prisma.CustomerIndividualWhereInput - orderBy?: Prisma.CustomerIndividualOrderByWithRelationInput | Prisma.CustomerIndividualOrderByWithRelationInput[] - cursor?: Prisma.CustomerIndividualWhereUniqueInput - take?: number - skip?: number - distinct?: Prisma.CustomerIndividualScalarFieldEnum | Prisma.CustomerIndividualScalarFieldEnum[] -} - -/** - * Complex.customer_legals - */ -export type Complex$customer_legalsArgs = { - /** - * Select specific fields to fetch from the CustomerLegal - */ - select?: Prisma.CustomerLegalSelect | null - /** - * Omit specific fields from the CustomerLegal - */ - omit?: Prisma.CustomerLegalOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.CustomerLegalInclude | null - where?: Prisma.CustomerLegalWhereInput - orderBy?: Prisma.CustomerLegalOrderByWithRelationInput | Prisma.CustomerLegalOrderByWithRelationInput[] - cursor?: Prisma.CustomerLegalWhereUniqueInput - take?: number - skip?: number - distinct?: Prisma.CustomerLegalScalarFieldEnum | Prisma.CustomerLegalScalarFieldEnum[] -} - /** * Complex without action */ diff --git a/src/generated/prisma/models/Consumer.ts b/src/generated/prisma/models/Consumer.ts index 37ed6c8..e29cf59 100644 --- a/src/generated/prisma/models/Consumer.ts +++ b/src/generated/prisma/models/Consumer.ts @@ -26,76 +26,52 @@ export type AggregateConsumer = { export type ConsumerMinAggregateOutputType = { id: string | null - mobile_number: string | null - national_code: string | null - first_name: string | null - last_name: string | null + type: $Enums.ConsumerType | null status: $Enums.ConsumerStatus | null created_at: Date | null updated_at: Date | null - partner_id: string | null } export type ConsumerMaxAggregateOutputType = { id: string | null - mobile_number: string | null - national_code: string | null - first_name: string | null - last_name: string | null + type: $Enums.ConsumerType | null status: $Enums.ConsumerStatus | null created_at: Date | null updated_at: Date | null - partner_id: string | null } export type ConsumerCountAggregateOutputType = { id: number - mobile_number: number - national_code: number - first_name: number - last_name: number + type: number status: number created_at: number updated_at: number - partner_id: number _all: number } export type ConsumerMinAggregateInputType = { id?: true - mobile_number?: true - national_code?: true - first_name?: true - last_name?: true + type?: true status?: true created_at?: true updated_at?: true - partner_id?: true } export type ConsumerMaxAggregateInputType = { id?: true - mobile_number?: true - national_code?: true - first_name?: true - last_name?: true + type?: true status?: true created_at?: true updated_at?: true - partner_id?: true } export type ConsumerCountAggregateInputType = { id?: true - mobile_number?: true - national_code?: true - first_name?: true - last_name?: true + type?: true status?: true created_at?: true updated_at?: true - partner_id?: true _all?: true } @@ -173,14 +149,10 @@ export type ConsumerGroupByArgs | string - mobile_number?: Prisma.StringFilter<"Consumer"> | string - national_code?: Prisma.StringFilter<"Consumer"> | string - first_name?: Prisma.StringFilter<"Consumer"> | string - last_name?: Prisma.StringFilter<"Consumer"> | string + type?: Prisma.EnumConsumerTypeFilter<"Consumer"> | $Enums.ConsumerType status?: Prisma.EnumConsumerStatusFilter<"Consumer"> | $Enums.ConsumerStatus created_at?: Prisma.DateTimeFilter<"Consumer"> | Date | string updated_at?: Prisma.DateTimeFilter<"Consumer"> | Date | string - partner_id?: Prisma.StringFilter<"Consumer"> | string - partner?: Prisma.XOR - consumer_accounts?: Prisma.ConsumerAccountListRelationFilter + accounts?: Prisma.ConsumerAccountListRelationFilter business_activities?: Prisma.BusinessActivityListRelationFilter - consumer_devices?: Prisma.ConsumerDevicesListRelationFilter + devices?: Prisma.ConsumerDevicesListRelationFilter + individual?: Prisma.XOR | null + legal?: Prisma.XOR | null } export type ConsumerOrderByWithRelationInput = { id?: Prisma.SortOrder - mobile_number?: Prisma.SortOrder - national_code?: Prisma.SortOrder - first_name?: Prisma.SortOrder - last_name?: Prisma.SortOrder + type?: Prisma.SortOrder status?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder - partner_id?: Prisma.SortOrder - partner?: Prisma.PartnerOrderByWithRelationInput - consumer_accounts?: Prisma.ConsumerAccountOrderByRelationAggregateInput + accounts?: Prisma.ConsumerAccountOrderByRelationAggregateInput business_activities?: Prisma.BusinessActivityOrderByRelationAggregateInput - consumer_devices?: Prisma.ConsumerDevicesOrderByRelationAggregateInput + devices?: Prisma.ConsumerDevicesOrderByRelationAggregateInput + individual?: Prisma.ConsumerIndividualOrderByWithRelationInput + legal?: Prisma.ConsumerLegalOrderByWithRelationInput _relevance?: Prisma.ConsumerOrderByRelevanceInput } export type ConsumerWhereUniqueInput = Prisma.AtLeast<{ id?: string - mobile_number_partner_id?: Prisma.ConsumerMobile_numberPartner_idCompoundUniqueInput - national_code_partner_id?: Prisma.ConsumerNational_codePartner_idCompoundUniqueInput AND?: Prisma.ConsumerWhereInput | Prisma.ConsumerWhereInput[] OR?: Prisma.ConsumerWhereInput[] NOT?: Prisma.ConsumerWhereInput | Prisma.ConsumerWhereInput[] - mobile_number?: Prisma.StringFilter<"Consumer"> | string - national_code?: Prisma.StringFilter<"Consumer"> | string - first_name?: Prisma.StringFilter<"Consumer"> | string - last_name?: Prisma.StringFilter<"Consumer"> | string + type?: Prisma.EnumConsumerTypeFilter<"Consumer"> | $Enums.ConsumerType status?: Prisma.EnumConsumerStatusFilter<"Consumer"> | $Enums.ConsumerStatus created_at?: Prisma.DateTimeFilter<"Consumer"> | Date | string updated_at?: Prisma.DateTimeFilter<"Consumer"> | Date | string - partner_id?: Prisma.StringFilter<"Consumer"> | string - partner?: Prisma.XOR - consumer_accounts?: Prisma.ConsumerAccountListRelationFilter + accounts?: Prisma.ConsumerAccountListRelationFilter business_activities?: Prisma.BusinessActivityListRelationFilter - consumer_devices?: Prisma.ConsumerDevicesListRelationFilter -}, "id" | "mobile_number_partner_id" | "national_code_partner_id"> + devices?: Prisma.ConsumerDevicesListRelationFilter + individual?: Prisma.XOR | null + legal?: Prisma.XOR | null +}, "id"> export type ConsumerOrderByWithAggregationInput = { id?: Prisma.SortOrder - mobile_number?: Prisma.SortOrder - national_code?: Prisma.SortOrder - first_name?: Prisma.SortOrder - last_name?: Prisma.SortOrder + type?: Prisma.SortOrder status?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder - partner_id?: Prisma.SortOrder _count?: Prisma.ConsumerCountOrderByAggregateInput _max?: Prisma.ConsumerMaxOrderByAggregateInput _min?: Prisma.ConsumerMinOrderByAggregateInput @@ -278,94 +235,75 @@ export type ConsumerScalarWhereWithAggregatesInput = { OR?: Prisma.ConsumerScalarWhereWithAggregatesInput[] NOT?: Prisma.ConsumerScalarWhereWithAggregatesInput | Prisma.ConsumerScalarWhereWithAggregatesInput[] id?: Prisma.StringWithAggregatesFilter<"Consumer"> | string - mobile_number?: Prisma.StringWithAggregatesFilter<"Consumer"> | string - national_code?: Prisma.StringWithAggregatesFilter<"Consumer"> | string - first_name?: Prisma.StringWithAggregatesFilter<"Consumer"> | string - last_name?: Prisma.StringWithAggregatesFilter<"Consumer"> | string + type?: Prisma.EnumConsumerTypeWithAggregatesFilter<"Consumer"> | $Enums.ConsumerType status?: Prisma.EnumConsumerStatusWithAggregatesFilter<"Consumer"> | $Enums.ConsumerStatus created_at?: Prisma.DateTimeWithAggregatesFilter<"Consumer"> | Date | string updated_at?: Prisma.DateTimeWithAggregatesFilter<"Consumer"> | Date | string - partner_id?: Prisma.StringWithAggregatesFilter<"Consumer"> | string } export type ConsumerCreateInput = { id?: string - mobile_number: string - national_code: string - first_name: string - last_name: string + type: $Enums.ConsumerType status?: $Enums.ConsumerStatus created_at?: Date | string updated_at?: Date | string - partner: Prisma.PartnerCreateNestedOneWithoutConsumersInput - consumer_accounts?: Prisma.ConsumerAccountCreateNestedManyWithoutConsumerInput + accounts?: Prisma.ConsumerAccountCreateNestedManyWithoutConsumerInput business_activities?: Prisma.BusinessActivityCreateNestedManyWithoutConsumerInput - consumer_devices?: Prisma.ConsumerDevicesCreateNestedManyWithoutConsumerInput + devices?: Prisma.ConsumerDevicesCreateNestedManyWithoutConsumerInput + individual?: Prisma.ConsumerIndividualCreateNestedOneWithoutConsumerInput + legal?: Prisma.ConsumerLegalCreateNestedOneWithoutConsumerInput } export type ConsumerUncheckedCreateInput = { id?: string - mobile_number: string - national_code: string - first_name: string - last_name: string + type: $Enums.ConsumerType status?: $Enums.ConsumerStatus created_at?: Date | string updated_at?: Date | string - partner_id: string - consumer_accounts?: Prisma.ConsumerAccountUncheckedCreateNestedManyWithoutConsumerInput + accounts?: Prisma.ConsumerAccountUncheckedCreateNestedManyWithoutConsumerInput business_activities?: Prisma.BusinessActivityUncheckedCreateNestedManyWithoutConsumerInput - consumer_devices?: Prisma.ConsumerDevicesUncheckedCreateNestedManyWithoutConsumerInput + devices?: Prisma.ConsumerDevicesUncheckedCreateNestedManyWithoutConsumerInput + individual?: Prisma.ConsumerIndividualUncheckedCreateNestedOneWithoutConsumerInput + legal?: Prisma.ConsumerLegalUncheckedCreateNestedOneWithoutConsumerInput } export type ConsumerUpdateInput = { id?: Prisma.StringFieldUpdateOperationsInput | string - mobile_number?: Prisma.StringFieldUpdateOperationsInput | string - national_code?: Prisma.StringFieldUpdateOperationsInput | string - first_name?: Prisma.StringFieldUpdateOperationsInput | string - last_name?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - partner?: Prisma.PartnerUpdateOneRequiredWithoutConsumersNestedInput - consumer_accounts?: Prisma.ConsumerAccountUpdateManyWithoutConsumerNestedInput + accounts?: Prisma.ConsumerAccountUpdateManyWithoutConsumerNestedInput business_activities?: Prisma.BusinessActivityUpdateManyWithoutConsumerNestedInput - consumer_devices?: Prisma.ConsumerDevicesUpdateManyWithoutConsumerNestedInput + devices?: Prisma.ConsumerDevicesUpdateManyWithoutConsumerNestedInput + individual?: Prisma.ConsumerIndividualUpdateOneWithoutConsumerNestedInput + legal?: Prisma.ConsumerLegalUpdateOneWithoutConsumerNestedInput } export type ConsumerUncheckedUpdateInput = { id?: Prisma.StringFieldUpdateOperationsInput | string - mobile_number?: Prisma.StringFieldUpdateOperationsInput | string - national_code?: Prisma.StringFieldUpdateOperationsInput | string - first_name?: Prisma.StringFieldUpdateOperationsInput | string - last_name?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - partner_id?: Prisma.StringFieldUpdateOperationsInput | string - consumer_accounts?: Prisma.ConsumerAccountUncheckedUpdateManyWithoutConsumerNestedInput + accounts?: Prisma.ConsumerAccountUncheckedUpdateManyWithoutConsumerNestedInput business_activities?: Prisma.BusinessActivityUncheckedUpdateManyWithoutConsumerNestedInput - consumer_devices?: Prisma.ConsumerDevicesUncheckedUpdateManyWithoutConsumerNestedInput + devices?: Prisma.ConsumerDevicesUncheckedUpdateManyWithoutConsumerNestedInput + individual?: Prisma.ConsumerIndividualUncheckedUpdateOneWithoutConsumerNestedInput + legal?: Prisma.ConsumerLegalUncheckedUpdateOneWithoutConsumerNestedInput } export type ConsumerCreateManyInput = { id?: string - mobile_number: string - national_code: string - first_name: string - last_name: string + type: $Enums.ConsumerType status?: $Enums.ConsumerStatus created_at?: Date | string updated_at?: Date | string - partner_id: string } export type ConsumerUpdateManyMutationInput = { id?: Prisma.StringFieldUpdateOperationsInput | string - mobile_number?: Prisma.StringFieldUpdateOperationsInput | string - national_code?: Prisma.StringFieldUpdateOperationsInput | string - first_name?: Prisma.StringFieldUpdateOperationsInput | string - last_name?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string @@ -373,14 +311,10 @@ export type ConsumerUpdateManyMutationInput = { export type ConsumerUncheckedUpdateManyInput = { id?: Prisma.StringFieldUpdateOperationsInput | string - mobile_number?: Prisma.StringFieldUpdateOperationsInput | string - national_code?: Prisma.StringFieldUpdateOperationsInput | string - first_name?: Prisma.StringFieldUpdateOperationsInput | string - last_name?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - partner_id?: Prisma.StringFieldUpdateOperationsInput | string } export type ConsumerScalarRelationFilter = { @@ -394,80 +328,80 @@ export type ConsumerOrderByRelevanceInput = { search: string } -export type ConsumerMobile_numberPartner_idCompoundUniqueInput = { - mobile_number: string - partner_id: string -} - -export type ConsumerNational_codePartner_idCompoundUniqueInput = { - national_code: string - partner_id: string -} - export type ConsumerCountOrderByAggregateInput = { id?: Prisma.SortOrder - mobile_number?: Prisma.SortOrder - national_code?: Prisma.SortOrder - first_name?: Prisma.SortOrder - last_name?: Prisma.SortOrder + type?: Prisma.SortOrder status?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder - partner_id?: Prisma.SortOrder } export type ConsumerMaxOrderByAggregateInput = { id?: Prisma.SortOrder - mobile_number?: Prisma.SortOrder - national_code?: Prisma.SortOrder - first_name?: Prisma.SortOrder - last_name?: Prisma.SortOrder + type?: Prisma.SortOrder status?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder - partner_id?: Prisma.SortOrder } export type ConsumerMinOrderByAggregateInput = { id?: Prisma.SortOrder - mobile_number?: Prisma.SortOrder - national_code?: Prisma.SortOrder - first_name?: Prisma.SortOrder - last_name?: Prisma.SortOrder + type?: Prisma.SortOrder status?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder - partner_id?: Prisma.SortOrder } -export type ConsumerListRelationFilter = { - every?: Prisma.ConsumerWhereInput - some?: Prisma.ConsumerWhereInput - none?: Prisma.ConsumerWhereInput -} - -export type ConsumerOrderByRelationAggregateInput = { - _count?: Prisma.SortOrder -} - -export type ConsumerCreateNestedOneWithoutConsumer_accountsInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutConsumer_accountsInput +export type ConsumerCreateNestedOneWithoutAccountsInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutAccountsInput connect?: Prisma.ConsumerWhereUniqueInput } -export type ConsumerUpdateOneRequiredWithoutConsumer_accountsNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutConsumer_accountsInput - upsert?: Prisma.ConsumerUpsertWithoutConsumer_accountsInput +export type ConsumerUpdateOneRequiredWithoutAccountsNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutAccountsInput + upsert?: Prisma.ConsumerUpsertWithoutAccountsInput connect?: Prisma.ConsumerWhereUniqueInput - update?: Prisma.XOR, Prisma.ConsumerUncheckedUpdateWithoutConsumer_accountsInput> + update?: Prisma.XOR, Prisma.ConsumerUncheckedUpdateWithoutAccountsInput> +} + +export type EnumConsumerTypeFieldUpdateOperationsInput = { + set?: $Enums.ConsumerType } export type EnumConsumerStatusFieldUpdateOperationsInput = { set?: $Enums.ConsumerStatus } +export type ConsumerCreateNestedOneWithoutIndividualInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutIndividualInput + connect?: Prisma.ConsumerWhereUniqueInput +} + +export type ConsumerUpdateOneRequiredWithoutIndividualNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutIndividualInput + upsert?: Prisma.ConsumerUpsertWithoutIndividualInput + connect?: Prisma.ConsumerWhereUniqueInput + update?: Prisma.XOR, Prisma.ConsumerUncheckedUpdateWithoutIndividualInput> +} + +export type ConsumerCreateNestedOneWithoutLegalInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutLegalInput + connect?: Prisma.ConsumerWhereUniqueInput +} + +export type ConsumerUpdateOneRequiredWithoutLegalNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutLegalInput + upsert?: Prisma.ConsumerUpsertWithoutLegalInput + connect?: Prisma.ConsumerWhereUniqueInput + update?: Prisma.XOR, Prisma.ConsumerUncheckedUpdateWithoutLegalInput> +} + export type ConsumerCreateNestedOneWithoutBusiness_activitiesInput = { create?: Prisma.XOR connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutBusiness_activitiesInput @@ -482,160 +416,234 @@ export type ConsumerUpdateOneRequiredWithoutBusiness_activitiesNestedInput = { update?: Prisma.XOR, Prisma.ConsumerUncheckedUpdateWithoutBusiness_activitiesInput> } -export type ConsumerCreateNestedManyWithoutPartnerInput = { - create?: Prisma.XOR | Prisma.ConsumerCreateWithoutPartnerInput[] | Prisma.ConsumerUncheckedCreateWithoutPartnerInput[] - connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutPartnerInput | Prisma.ConsumerCreateOrConnectWithoutPartnerInput[] - createMany?: Prisma.ConsumerCreateManyPartnerInputEnvelope - connect?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[] -} - -export type ConsumerUncheckedCreateNestedManyWithoutPartnerInput = { - create?: Prisma.XOR | Prisma.ConsumerCreateWithoutPartnerInput[] | Prisma.ConsumerUncheckedCreateWithoutPartnerInput[] - connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutPartnerInput | Prisma.ConsumerCreateOrConnectWithoutPartnerInput[] - createMany?: Prisma.ConsumerCreateManyPartnerInputEnvelope - connect?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[] -} - -export type ConsumerUpdateManyWithoutPartnerNestedInput = { - create?: Prisma.XOR | Prisma.ConsumerCreateWithoutPartnerInput[] | Prisma.ConsumerUncheckedCreateWithoutPartnerInput[] - connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutPartnerInput | Prisma.ConsumerCreateOrConnectWithoutPartnerInput[] - upsert?: Prisma.ConsumerUpsertWithWhereUniqueWithoutPartnerInput | Prisma.ConsumerUpsertWithWhereUniqueWithoutPartnerInput[] - createMany?: Prisma.ConsumerCreateManyPartnerInputEnvelope - set?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[] - disconnect?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[] - delete?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[] - connect?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[] - update?: Prisma.ConsumerUpdateWithWhereUniqueWithoutPartnerInput | Prisma.ConsumerUpdateWithWhereUniqueWithoutPartnerInput[] - updateMany?: Prisma.ConsumerUpdateManyWithWhereWithoutPartnerInput | Prisma.ConsumerUpdateManyWithWhereWithoutPartnerInput[] - deleteMany?: Prisma.ConsumerScalarWhereInput | Prisma.ConsumerScalarWhereInput[] -} - -export type ConsumerUncheckedUpdateManyWithoutPartnerNestedInput = { - create?: Prisma.XOR | Prisma.ConsumerCreateWithoutPartnerInput[] | Prisma.ConsumerUncheckedCreateWithoutPartnerInput[] - connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutPartnerInput | Prisma.ConsumerCreateOrConnectWithoutPartnerInput[] - upsert?: Prisma.ConsumerUpsertWithWhereUniqueWithoutPartnerInput | Prisma.ConsumerUpsertWithWhereUniqueWithoutPartnerInput[] - createMany?: Prisma.ConsumerCreateManyPartnerInputEnvelope - set?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[] - disconnect?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[] - delete?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[] - connect?: Prisma.ConsumerWhereUniqueInput | Prisma.ConsumerWhereUniqueInput[] - update?: Prisma.ConsumerUpdateWithWhereUniqueWithoutPartnerInput | Prisma.ConsumerUpdateWithWhereUniqueWithoutPartnerInput[] - updateMany?: Prisma.ConsumerUpdateManyWithWhereWithoutPartnerInput | Prisma.ConsumerUpdateManyWithWhereWithoutPartnerInput[] - deleteMany?: Prisma.ConsumerScalarWhereInput | Prisma.ConsumerScalarWhereInput[] -} - -export type ConsumerCreateNestedOneWithoutConsumer_devicesInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutConsumer_devicesInput +export type ConsumerCreateNestedOneWithoutDevicesInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutDevicesInput connect?: Prisma.ConsumerWhereUniqueInput } -export type ConsumerUpdateOneRequiredWithoutConsumer_devicesNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutConsumer_devicesInput - upsert?: Prisma.ConsumerUpsertWithoutConsumer_devicesInput +export type ConsumerUpdateOneRequiredWithoutDevicesNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerCreateOrConnectWithoutDevicesInput + upsert?: Prisma.ConsumerUpsertWithoutDevicesInput connect?: Prisma.ConsumerWhereUniqueInput - update?: Prisma.XOR, Prisma.ConsumerUncheckedUpdateWithoutConsumer_devicesInput> + update?: Prisma.XOR, Prisma.ConsumerUncheckedUpdateWithoutDevicesInput> } -export type ConsumerCreateWithoutConsumer_accountsInput = { +export type ConsumerCreateWithoutAccountsInput = { id?: string - mobile_number: string - national_code: string - first_name: string - last_name: string + type: $Enums.ConsumerType status?: $Enums.ConsumerStatus created_at?: Date | string updated_at?: Date | string - partner: Prisma.PartnerCreateNestedOneWithoutConsumersInput business_activities?: Prisma.BusinessActivityCreateNestedManyWithoutConsumerInput - consumer_devices?: Prisma.ConsumerDevicesCreateNestedManyWithoutConsumerInput + devices?: Prisma.ConsumerDevicesCreateNestedManyWithoutConsumerInput + individual?: Prisma.ConsumerIndividualCreateNestedOneWithoutConsumerInput + legal?: Prisma.ConsumerLegalCreateNestedOneWithoutConsumerInput } -export type ConsumerUncheckedCreateWithoutConsumer_accountsInput = { +export type ConsumerUncheckedCreateWithoutAccountsInput = { id?: string - mobile_number: string - national_code: string - first_name: string - last_name: string + type: $Enums.ConsumerType status?: $Enums.ConsumerStatus created_at?: Date | string updated_at?: Date | string - partner_id: string business_activities?: Prisma.BusinessActivityUncheckedCreateNestedManyWithoutConsumerInput - consumer_devices?: Prisma.ConsumerDevicesUncheckedCreateNestedManyWithoutConsumerInput + devices?: Prisma.ConsumerDevicesUncheckedCreateNestedManyWithoutConsumerInput + individual?: Prisma.ConsumerIndividualUncheckedCreateNestedOneWithoutConsumerInput + legal?: Prisma.ConsumerLegalUncheckedCreateNestedOneWithoutConsumerInput } -export type ConsumerCreateOrConnectWithoutConsumer_accountsInput = { +export type ConsumerCreateOrConnectWithoutAccountsInput = { where: Prisma.ConsumerWhereUniqueInput - create: Prisma.XOR + create: Prisma.XOR } -export type ConsumerUpsertWithoutConsumer_accountsInput = { - update: Prisma.XOR - create: Prisma.XOR +export type ConsumerUpsertWithoutAccountsInput = { + update: Prisma.XOR + create: Prisma.XOR where?: Prisma.ConsumerWhereInput } -export type ConsumerUpdateToOneWithWhereWithoutConsumer_accountsInput = { +export type ConsumerUpdateToOneWithWhereWithoutAccountsInput = { where?: Prisma.ConsumerWhereInput - data: Prisma.XOR + data: Prisma.XOR } -export type ConsumerUpdateWithoutConsumer_accountsInput = { +export type ConsumerUpdateWithoutAccountsInput = { id?: Prisma.StringFieldUpdateOperationsInput | string - mobile_number?: Prisma.StringFieldUpdateOperationsInput | string - national_code?: Prisma.StringFieldUpdateOperationsInput | string - first_name?: Prisma.StringFieldUpdateOperationsInput | string - last_name?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - partner?: Prisma.PartnerUpdateOneRequiredWithoutConsumersNestedInput business_activities?: Prisma.BusinessActivityUpdateManyWithoutConsumerNestedInput - consumer_devices?: Prisma.ConsumerDevicesUpdateManyWithoutConsumerNestedInput + devices?: Prisma.ConsumerDevicesUpdateManyWithoutConsumerNestedInput + individual?: Prisma.ConsumerIndividualUpdateOneWithoutConsumerNestedInput + legal?: Prisma.ConsumerLegalUpdateOneWithoutConsumerNestedInput } -export type ConsumerUncheckedUpdateWithoutConsumer_accountsInput = { +export type ConsumerUncheckedUpdateWithoutAccountsInput = { id?: Prisma.StringFieldUpdateOperationsInput | string - mobile_number?: Prisma.StringFieldUpdateOperationsInput | string - national_code?: Prisma.StringFieldUpdateOperationsInput | string - first_name?: Prisma.StringFieldUpdateOperationsInput | string - last_name?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - partner_id?: Prisma.StringFieldUpdateOperationsInput | string business_activities?: Prisma.BusinessActivityUncheckedUpdateManyWithoutConsumerNestedInput - consumer_devices?: Prisma.ConsumerDevicesUncheckedUpdateManyWithoutConsumerNestedInput + devices?: Prisma.ConsumerDevicesUncheckedUpdateManyWithoutConsumerNestedInput + individual?: Prisma.ConsumerIndividualUncheckedUpdateOneWithoutConsumerNestedInput + legal?: Prisma.ConsumerLegalUncheckedUpdateOneWithoutConsumerNestedInput +} + +export type ConsumerCreateWithoutIndividualInput = { + id?: string + type: $Enums.ConsumerType + status?: $Enums.ConsumerStatus + created_at?: Date | string + updated_at?: Date | string + accounts?: Prisma.ConsumerAccountCreateNestedManyWithoutConsumerInput + business_activities?: Prisma.BusinessActivityCreateNestedManyWithoutConsumerInput + devices?: Prisma.ConsumerDevicesCreateNestedManyWithoutConsumerInput + legal?: Prisma.ConsumerLegalCreateNestedOneWithoutConsumerInput +} + +export type ConsumerUncheckedCreateWithoutIndividualInput = { + id?: string + type: $Enums.ConsumerType + status?: $Enums.ConsumerStatus + created_at?: Date | string + updated_at?: Date | string + accounts?: Prisma.ConsumerAccountUncheckedCreateNestedManyWithoutConsumerInput + business_activities?: Prisma.BusinessActivityUncheckedCreateNestedManyWithoutConsumerInput + devices?: Prisma.ConsumerDevicesUncheckedCreateNestedManyWithoutConsumerInput + legal?: Prisma.ConsumerLegalUncheckedCreateNestedOneWithoutConsumerInput +} + +export type ConsumerCreateOrConnectWithoutIndividualInput = { + where: Prisma.ConsumerWhereUniqueInput + create: Prisma.XOR +} + +export type ConsumerUpsertWithoutIndividualInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.ConsumerWhereInput +} + +export type ConsumerUpdateToOneWithWhereWithoutIndividualInput = { + where?: Prisma.ConsumerWhereInput + data: Prisma.XOR +} + +export type ConsumerUpdateWithoutIndividualInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType + status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + accounts?: Prisma.ConsumerAccountUpdateManyWithoutConsumerNestedInput + business_activities?: Prisma.BusinessActivityUpdateManyWithoutConsumerNestedInput + devices?: Prisma.ConsumerDevicesUpdateManyWithoutConsumerNestedInput + legal?: Prisma.ConsumerLegalUpdateOneWithoutConsumerNestedInput +} + +export type ConsumerUncheckedUpdateWithoutIndividualInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType + status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + accounts?: Prisma.ConsumerAccountUncheckedUpdateManyWithoutConsumerNestedInput + business_activities?: Prisma.BusinessActivityUncheckedUpdateManyWithoutConsumerNestedInput + devices?: Prisma.ConsumerDevicesUncheckedUpdateManyWithoutConsumerNestedInput + legal?: Prisma.ConsumerLegalUncheckedUpdateOneWithoutConsumerNestedInput +} + +export type ConsumerCreateWithoutLegalInput = { + id?: string + type: $Enums.ConsumerType + status?: $Enums.ConsumerStatus + created_at?: Date | string + updated_at?: Date | string + accounts?: Prisma.ConsumerAccountCreateNestedManyWithoutConsumerInput + business_activities?: Prisma.BusinessActivityCreateNestedManyWithoutConsumerInput + devices?: Prisma.ConsumerDevicesCreateNestedManyWithoutConsumerInput + individual?: Prisma.ConsumerIndividualCreateNestedOneWithoutConsumerInput +} + +export type ConsumerUncheckedCreateWithoutLegalInput = { + id?: string + type: $Enums.ConsumerType + status?: $Enums.ConsumerStatus + created_at?: Date | string + updated_at?: Date | string + accounts?: Prisma.ConsumerAccountUncheckedCreateNestedManyWithoutConsumerInput + business_activities?: Prisma.BusinessActivityUncheckedCreateNestedManyWithoutConsumerInput + devices?: Prisma.ConsumerDevicesUncheckedCreateNestedManyWithoutConsumerInput + individual?: Prisma.ConsumerIndividualUncheckedCreateNestedOneWithoutConsumerInput +} + +export type ConsumerCreateOrConnectWithoutLegalInput = { + where: Prisma.ConsumerWhereUniqueInput + create: Prisma.XOR +} + +export type ConsumerUpsertWithoutLegalInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.ConsumerWhereInput +} + +export type ConsumerUpdateToOneWithWhereWithoutLegalInput = { + where?: Prisma.ConsumerWhereInput + data: Prisma.XOR +} + +export type ConsumerUpdateWithoutLegalInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType + status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + accounts?: Prisma.ConsumerAccountUpdateManyWithoutConsumerNestedInput + business_activities?: Prisma.BusinessActivityUpdateManyWithoutConsumerNestedInput + devices?: Prisma.ConsumerDevicesUpdateManyWithoutConsumerNestedInput + individual?: Prisma.ConsumerIndividualUpdateOneWithoutConsumerNestedInput +} + +export type ConsumerUncheckedUpdateWithoutLegalInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType + status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + accounts?: Prisma.ConsumerAccountUncheckedUpdateManyWithoutConsumerNestedInput + business_activities?: Prisma.BusinessActivityUncheckedUpdateManyWithoutConsumerNestedInput + devices?: Prisma.ConsumerDevicesUncheckedUpdateManyWithoutConsumerNestedInput + individual?: Prisma.ConsumerIndividualUncheckedUpdateOneWithoutConsumerNestedInput } export type ConsumerCreateWithoutBusiness_activitiesInput = { id?: string - mobile_number: string - national_code: string - first_name: string - last_name: string + type: $Enums.ConsumerType status?: $Enums.ConsumerStatus created_at?: Date | string updated_at?: Date | string - partner: Prisma.PartnerCreateNestedOneWithoutConsumersInput - consumer_accounts?: Prisma.ConsumerAccountCreateNestedManyWithoutConsumerInput - consumer_devices?: Prisma.ConsumerDevicesCreateNestedManyWithoutConsumerInput + accounts?: Prisma.ConsumerAccountCreateNestedManyWithoutConsumerInput + devices?: Prisma.ConsumerDevicesCreateNestedManyWithoutConsumerInput + individual?: Prisma.ConsumerIndividualCreateNestedOneWithoutConsumerInput + legal?: Prisma.ConsumerLegalCreateNestedOneWithoutConsumerInput } export type ConsumerUncheckedCreateWithoutBusiness_activitiesInput = { id?: string - mobile_number: string - national_code: string - first_name: string - last_name: string + type: $Enums.ConsumerType status?: $Enums.ConsumerStatus created_at?: Date | string updated_at?: Date | string - partner_id: string - consumer_accounts?: Prisma.ConsumerAccountUncheckedCreateNestedManyWithoutConsumerInput - consumer_devices?: Prisma.ConsumerDevicesUncheckedCreateNestedManyWithoutConsumerInput + accounts?: Prisma.ConsumerAccountUncheckedCreateNestedManyWithoutConsumerInput + devices?: Prisma.ConsumerDevicesUncheckedCreateNestedManyWithoutConsumerInput + individual?: Prisma.ConsumerIndividualUncheckedCreateNestedOneWithoutConsumerInput + legal?: Prisma.ConsumerLegalUncheckedCreateNestedOneWithoutConsumerInput } export type ConsumerCreateOrConnectWithoutBusiness_activitiesInput = { @@ -656,221 +664,90 @@ export type ConsumerUpdateToOneWithWhereWithoutBusiness_activitiesInput = { export type ConsumerUpdateWithoutBusiness_activitiesInput = { id?: Prisma.StringFieldUpdateOperationsInput | string - mobile_number?: Prisma.StringFieldUpdateOperationsInput | string - national_code?: Prisma.StringFieldUpdateOperationsInput | string - first_name?: Prisma.StringFieldUpdateOperationsInput | string - last_name?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - partner?: Prisma.PartnerUpdateOneRequiredWithoutConsumersNestedInput - consumer_accounts?: Prisma.ConsumerAccountUpdateManyWithoutConsumerNestedInput - consumer_devices?: Prisma.ConsumerDevicesUpdateManyWithoutConsumerNestedInput + accounts?: Prisma.ConsumerAccountUpdateManyWithoutConsumerNestedInput + devices?: Prisma.ConsumerDevicesUpdateManyWithoutConsumerNestedInput + individual?: Prisma.ConsumerIndividualUpdateOneWithoutConsumerNestedInput + legal?: Prisma.ConsumerLegalUpdateOneWithoutConsumerNestedInput } export type ConsumerUncheckedUpdateWithoutBusiness_activitiesInput = { id?: Prisma.StringFieldUpdateOperationsInput | string - mobile_number?: Prisma.StringFieldUpdateOperationsInput | string - national_code?: Prisma.StringFieldUpdateOperationsInput | string - first_name?: Prisma.StringFieldUpdateOperationsInput | string - last_name?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - partner_id?: Prisma.StringFieldUpdateOperationsInput | string - consumer_accounts?: Prisma.ConsumerAccountUncheckedUpdateManyWithoutConsumerNestedInput - consumer_devices?: Prisma.ConsumerDevicesUncheckedUpdateManyWithoutConsumerNestedInput + accounts?: Prisma.ConsumerAccountUncheckedUpdateManyWithoutConsumerNestedInput + devices?: Prisma.ConsumerDevicesUncheckedUpdateManyWithoutConsumerNestedInput + individual?: Prisma.ConsumerIndividualUncheckedUpdateOneWithoutConsumerNestedInput + legal?: Prisma.ConsumerLegalUncheckedUpdateOneWithoutConsumerNestedInput } -export type ConsumerCreateWithoutPartnerInput = { +export type ConsumerCreateWithoutDevicesInput = { id?: string - mobile_number: string - national_code: string - first_name: string - last_name: string + type: $Enums.ConsumerType status?: $Enums.ConsumerStatus created_at?: Date | string updated_at?: Date | string - consumer_accounts?: Prisma.ConsumerAccountCreateNestedManyWithoutConsumerInput + accounts?: Prisma.ConsumerAccountCreateNestedManyWithoutConsumerInput business_activities?: Prisma.BusinessActivityCreateNestedManyWithoutConsumerInput - consumer_devices?: Prisma.ConsumerDevicesCreateNestedManyWithoutConsumerInput + individual?: Prisma.ConsumerIndividualCreateNestedOneWithoutConsumerInput + legal?: Prisma.ConsumerLegalCreateNestedOneWithoutConsumerInput } -export type ConsumerUncheckedCreateWithoutPartnerInput = { +export type ConsumerUncheckedCreateWithoutDevicesInput = { id?: string - mobile_number: string - national_code: string - first_name: string - last_name: string + type: $Enums.ConsumerType status?: $Enums.ConsumerStatus created_at?: Date | string updated_at?: Date | string - consumer_accounts?: Prisma.ConsumerAccountUncheckedCreateNestedManyWithoutConsumerInput + accounts?: Prisma.ConsumerAccountUncheckedCreateNestedManyWithoutConsumerInput business_activities?: Prisma.BusinessActivityUncheckedCreateNestedManyWithoutConsumerInput - consumer_devices?: Prisma.ConsumerDevicesUncheckedCreateNestedManyWithoutConsumerInput + individual?: Prisma.ConsumerIndividualUncheckedCreateNestedOneWithoutConsumerInput + legal?: Prisma.ConsumerLegalUncheckedCreateNestedOneWithoutConsumerInput } -export type ConsumerCreateOrConnectWithoutPartnerInput = { +export type ConsumerCreateOrConnectWithoutDevicesInput = { where: Prisma.ConsumerWhereUniqueInput - create: Prisma.XOR + create: Prisma.XOR } -export type ConsumerCreateManyPartnerInputEnvelope = { - data: Prisma.ConsumerCreateManyPartnerInput | Prisma.ConsumerCreateManyPartnerInput[] - skipDuplicates?: boolean -} - -export type ConsumerUpsertWithWhereUniqueWithoutPartnerInput = { - where: Prisma.ConsumerWhereUniqueInput - update: Prisma.XOR - create: Prisma.XOR -} - -export type ConsumerUpdateWithWhereUniqueWithoutPartnerInput = { - where: Prisma.ConsumerWhereUniqueInput - data: Prisma.XOR -} - -export type ConsumerUpdateManyWithWhereWithoutPartnerInput = { - where: Prisma.ConsumerScalarWhereInput - data: Prisma.XOR -} - -export type ConsumerScalarWhereInput = { - AND?: Prisma.ConsumerScalarWhereInput | Prisma.ConsumerScalarWhereInput[] - OR?: Prisma.ConsumerScalarWhereInput[] - NOT?: Prisma.ConsumerScalarWhereInput | Prisma.ConsumerScalarWhereInput[] - id?: Prisma.StringFilter<"Consumer"> | string - mobile_number?: Prisma.StringFilter<"Consumer"> | string - national_code?: Prisma.StringFilter<"Consumer"> | string - first_name?: Prisma.StringFilter<"Consumer"> | string - last_name?: Prisma.StringFilter<"Consumer"> | string - status?: Prisma.EnumConsumerStatusFilter<"Consumer"> | $Enums.ConsumerStatus - created_at?: Prisma.DateTimeFilter<"Consumer"> | Date | string - updated_at?: Prisma.DateTimeFilter<"Consumer"> | Date | string - partner_id?: Prisma.StringFilter<"Consumer"> | string -} - -export type ConsumerCreateWithoutConsumer_devicesInput = { - id?: string - mobile_number: string - national_code: string - first_name: string - last_name: string - status?: $Enums.ConsumerStatus - created_at?: Date | string - updated_at?: Date | string - partner: Prisma.PartnerCreateNestedOneWithoutConsumersInput - consumer_accounts?: Prisma.ConsumerAccountCreateNestedManyWithoutConsumerInput - business_activities?: Prisma.BusinessActivityCreateNestedManyWithoutConsumerInput -} - -export type ConsumerUncheckedCreateWithoutConsumer_devicesInput = { - id?: string - mobile_number: string - national_code: string - first_name: string - last_name: string - status?: $Enums.ConsumerStatus - created_at?: Date | string - updated_at?: Date | string - partner_id: string - consumer_accounts?: Prisma.ConsumerAccountUncheckedCreateNestedManyWithoutConsumerInput - business_activities?: Prisma.BusinessActivityUncheckedCreateNestedManyWithoutConsumerInput -} - -export type ConsumerCreateOrConnectWithoutConsumer_devicesInput = { - where: Prisma.ConsumerWhereUniqueInput - create: Prisma.XOR -} - -export type ConsumerUpsertWithoutConsumer_devicesInput = { - update: Prisma.XOR - create: Prisma.XOR +export type ConsumerUpsertWithoutDevicesInput = { + update: Prisma.XOR + create: Prisma.XOR where?: Prisma.ConsumerWhereInput } -export type ConsumerUpdateToOneWithWhereWithoutConsumer_devicesInput = { +export type ConsumerUpdateToOneWithWhereWithoutDevicesInput = { where?: Prisma.ConsumerWhereInput - data: Prisma.XOR + data: Prisma.XOR } -export type ConsumerUpdateWithoutConsumer_devicesInput = { +export type ConsumerUpdateWithoutDevicesInput = { id?: Prisma.StringFieldUpdateOperationsInput | string - mobile_number?: Prisma.StringFieldUpdateOperationsInput | string - national_code?: Prisma.StringFieldUpdateOperationsInput | string - first_name?: Prisma.StringFieldUpdateOperationsInput | string - last_name?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - partner?: Prisma.PartnerUpdateOneRequiredWithoutConsumersNestedInput - consumer_accounts?: Prisma.ConsumerAccountUpdateManyWithoutConsumerNestedInput + accounts?: Prisma.ConsumerAccountUpdateManyWithoutConsumerNestedInput business_activities?: Prisma.BusinessActivityUpdateManyWithoutConsumerNestedInput + individual?: Prisma.ConsumerIndividualUpdateOneWithoutConsumerNestedInput + legal?: Prisma.ConsumerLegalUpdateOneWithoutConsumerNestedInput } -export type ConsumerUncheckedUpdateWithoutConsumer_devicesInput = { +export type ConsumerUncheckedUpdateWithoutDevicesInput = { id?: Prisma.StringFieldUpdateOperationsInput | string - mobile_number?: Prisma.StringFieldUpdateOperationsInput | string - national_code?: Prisma.StringFieldUpdateOperationsInput | string - first_name?: Prisma.StringFieldUpdateOperationsInput | string - last_name?: Prisma.StringFieldUpdateOperationsInput | string + type?: Prisma.EnumConsumerTypeFieldUpdateOperationsInput | $Enums.ConsumerType status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - partner_id?: Prisma.StringFieldUpdateOperationsInput | string - consumer_accounts?: Prisma.ConsumerAccountUncheckedUpdateManyWithoutConsumerNestedInput + accounts?: Prisma.ConsumerAccountUncheckedUpdateManyWithoutConsumerNestedInput business_activities?: Prisma.BusinessActivityUncheckedUpdateManyWithoutConsumerNestedInput -} - -export type ConsumerCreateManyPartnerInput = { - id?: string - mobile_number: string - national_code: string - first_name: string - last_name: string - status?: $Enums.ConsumerStatus - created_at?: Date | string - updated_at?: Date | string -} - -export type ConsumerUpdateWithoutPartnerInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - mobile_number?: Prisma.StringFieldUpdateOperationsInput | string - national_code?: Prisma.StringFieldUpdateOperationsInput | string - first_name?: Prisma.StringFieldUpdateOperationsInput | string - last_name?: Prisma.StringFieldUpdateOperationsInput | string - status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumer_accounts?: Prisma.ConsumerAccountUpdateManyWithoutConsumerNestedInput - business_activities?: Prisma.BusinessActivityUpdateManyWithoutConsumerNestedInput - consumer_devices?: Prisma.ConsumerDevicesUpdateManyWithoutConsumerNestedInput -} - -export type ConsumerUncheckedUpdateWithoutPartnerInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - mobile_number?: Prisma.StringFieldUpdateOperationsInput | string - national_code?: Prisma.StringFieldUpdateOperationsInput | string - first_name?: Prisma.StringFieldUpdateOperationsInput | string - last_name?: Prisma.StringFieldUpdateOperationsInput | string - status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumer_accounts?: Prisma.ConsumerAccountUncheckedUpdateManyWithoutConsumerNestedInput - business_activities?: Prisma.BusinessActivityUncheckedUpdateManyWithoutConsumerNestedInput - consumer_devices?: Prisma.ConsumerDevicesUncheckedUpdateManyWithoutConsumerNestedInput -} - -export type ConsumerUncheckedUpdateManyWithoutPartnerInput = { - id?: Prisma.StringFieldUpdateOperationsInput | string - mobile_number?: Prisma.StringFieldUpdateOperationsInput | string - national_code?: Prisma.StringFieldUpdateOperationsInput | string - first_name?: Prisma.StringFieldUpdateOperationsInput | string - last_name?: Prisma.StringFieldUpdateOperationsInput | string - status?: Prisma.EnumConsumerStatusFieldUpdateOperationsInput | $Enums.ConsumerStatus - created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + individual?: Prisma.ConsumerIndividualUncheckedUpdateOneWithoutConsumerNestedInput + legal?: Prisma.ConsumerLegalUncheckedUpdateOneWithoutConsumerNestedInput } @@ -879,15 +756,15 @@ export type ConsumerUncheckedUpdateManyWithoutPartnerInput = { */ export type ConsumerCountOutputType = { - consumer_accounts: number + accounts: number business_activities: number - consumer_devices: number + devices: number } export type ConsumerCountOutputTypeSelect = { - consumer_accounts?: boolean | ConsumerCountOutputTypeCountConsumer_accountsArgs + accounts?: boolean | ConsumerCountOutputTypeCountAccountsArgs business_activities?: boolean | ConsumerCountOutputTypeCountBusiness_activitiesArgs - consumer_devices?: boolean | ConsumerCountOutputTypeCountConsumer_devicesArgs + devices?: boolean | ConsumerCountOutputTypeCountDevicesArgs } /** @@ -903,7 +780,7 @@ export type ConsumerCountOutputTypeDefaultArgs = { +export type ConsumerCountOutputTypeCountAccountsArgs = { where?: Prisma.ConsumerAccountWhereInput } @@ -917,25 +794,22 @@ export type ConsumerCountOutputTypeCountBusiness_activitiesArgs = { +export type ConsumerCountOutputTypeCountDevicesArgs = { where?: Prisma.ConsumerDevicesWhereInput } export type ConsumerSelect = runtime.Types.Extensions.GetSelect<{ id?: boolean - mobile_number?: boolean - national_code?: boolean - first_name?: boolean - last_name?: boolean + type?: boolean status?: boolean created_at?: boolean updated_at?: boolean - partner_id?: boolean - partner?: boolean | Prisma.PartnerDefaultArgs - consumer_accounts?: boolean | Prisma.Consumer$consumer_accountsArgs + accounts?: boolean | Prisma.Consumer$accountsArgs business_activities?: boolean | Prisma.Consumer$business_activitiesArgs - consumer_devices?: boolean | Prisma.Consumer$consumer_devicesArgs + devices?: boolean | Prisma.Consumer$devicesArgs + individual?: boolean | Prisma.Consumer$individualArgs + legal?: boolean | Prisma.Consumer$legalArgs _count?: boolean | Prisma.ConsumerCountOutputTypeDefaultArgs }, ExtArgs["result"]["consumer"]> @@ -943,43 +817,37 @@ export type ConsumerSelect = runtime.Types.Extensions.GetOmit<"id" | "mobile_number" | "national_code" | "first_name" | "last_name" | "status" | "created_at" | "updated_at" | "partner_id", ExtArgs["result"]["consumer"]> +export type ConsumerOmit = runtime.Types.Extensions.GetOmit<"id" | "type" | "status" | "created_at" | "updated_at", ExtArgs["result"]["consumer"]> export type ConsumerInclude = { - partner?: boolean | Prisma.PartnerDefaultArgs - consumer_accounts?: boolean | Prisma.Consumer$consumer_accountsArgs + accounts?: boolean | Prisma.Consumer$accountsArgs business_activities?: boolean | Prisma.Consumer$business_activitiesArgs - consumer_devices?: boolean | Prisma.Consumer$consumer_devicesArgs + devices?: boolean | Prisma.Consumer$devicesArgs + individual?: boolean | Prisma.Consumer$individualArgs + legal?: boolean | Prisma.Consumer$legalArgs _count?: boolean | Prisma.ConsumerCountOutputTypeDefaultArgs } export type $ConsumerPayload = { name: "Consumer" objects: { - partner: Prisma.$PartnerPayload - consumer_accounts: Prisma.$ConsumerAccountPayload[] + accounts: Prisma.$ConsumerAccountPayload[] business_activities: Prisma.$BusinessActivityPayload[] - consumer_devices: Prisma.$ConsumerDevicesPayload[] + devices: Prisma.$ConsumerDevicesPayload[] + individual: Prisma.$ConsumerIndividualPayload | null + legal: Prisma.$ConsumerLegalPayload | null } scalars: runtime.Types.Extensions.GetPayloadResult<{ id: string - mobile_number: string - national_code: string - first_name: string - last_name: string + type: $Enums.ConsumerType status: $Enums.ConsumerStatus created_at: Date updated_at: Date - partner_id: string }, ExtArgs["result"]["consumer"]> composites: {} } @@ -1320,10 +1188,11 @@ readonly fields: ConsumerFieldRefs; */ export interface Prisma__ConsumerClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" - partner = {}>(args?: Prisma.Subset>): Prisma.Prisma__PartnerClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> - consumer_accounts = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + accounts = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> business_activities = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> - consumer_devices = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + devices = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + individual = {}>(args?: Prisma.Subset>): Prisma.Prisma__ConsumerIndividualClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + legal = {}>(args?: Prisma.Subset>): Prisma.Prisma__ConsumerLegalClient, 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. @@ -1354,14 +1223,10 @@ export interface Prisma__ConsumerClient - readonly mobile_number: Prisma.FieldRef<"Consumer", 'String'> - readonly national_code: Prisma.FieldRef<"Consumer", 'String'> - readonly first_name: Prisma.FieldRef<"Consumer", 'String'> - readonly last_name: Prisma.FieldRef<"Consumer", 'String'> + readonly type: Prisma.FieldRef<"Consumer", 'ConsumerType'> readonly status: Prisma.FieldRef<"Consumer", 'ConsumerStatus'> readonly created_at: Prisma.FieldRef<"Consumer", 'DateTime'> readonly updated_at: Prisma.FieldRef<"Consumer", 'DateTime'> - readonly partner_id: Prisma.FieldRef<"Consumer", 'String'> } @@ -1710,9 +1575,9 @@ export type ConsumerDeleteManyArgs = { +export type Consumer$accountsArgs = { /** * Select specific fields to fetch from the ConsumerAccount */ @@ -1758,9 +1623,9 @@ export type Consumer$business_activitiesArgs = { +export type Consumer$devicesArgs = { /** * Select specific fields to fetch from the ConsumerDevices */ @@ -1781,6 +1646,44 @@ export type Consumer$consumer_devicesArgs = { + /** + * Select specific fields to fetch from the ConsumerIndividual + */ + select?: Prisma.ConsumerIndividualSelect | null + /** + * Omit specific fields from the ConsumerIndividual + */ + omit?: Prisma.ConsumerIndividualOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerIndividualInclude | null + where?: Prisma.ConsumerIndividualWhereInput +} + +/** + * Consumer.legal + */ +export type Consumer$legalArgs = { + /** + * Select specific fields to fetch from the ConsumerLegal + */ + select?: Prisma.ConsumerLegalSelect | null + /** + * Omit specific fields from the ConsumerLegal + */ + omit?: Prisma.ConsumerLegalOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerLegalInclude | null + where?: Prisma.ConsumerLegalWhereInput +} + /** * Consumer without action */ diff --git a/src/generated/prisma/models/ConsumerAccount.ts b/src/generated/prisma/models/ConsumerAccount.ts index 7149480..9efaf2a 100644 --- a/src/generated/prisma/models/ConsumerAccount.ts +++ b/src/generated/prisma/models/ConsumerAccount.ts @@ -261,7 +261,7 @@ export type ConsumerAccountCreateInput = { role: $Enums.ConsumerRole created_at?: Date | string updated_at?: Date | string - consumer: Prisma.ConsumerCreateNestedOneWithoutConsumer_accountsInput + consumer: Prisma.ConsumerCreateNestedOneWithoutAccountsInput account: Prisma.AccountCreateNestedOneWithoutConsumer_accountInput pos?: Prisma.PosCreateNestedOneWithoutAccountInput permission?: Prisma.PermissionConsumerCreateNestedOneWithoutConsumer_accountInput @@ -287,7 +287,7 @@ export type ConsumerAccountUpdateInput = { role?: Prisma.EnumConsumerRoleFieldUpdateOperationsInput | $Enums.ConsumerRole created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumer?: Prisma.ConsumerUpdateOneRequiredWithoutConsumer_accountsNestedInput + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutAccountsNestedInput account?: Prisma.AccountUpdateOneRequiredWithoutConsumer_accountNestedInput pos?: Prisma.PosUpdateOneWithoutAccountNestedInput permission?: Prisma.PermissionConsumerUpdateOneWithoutConsumer_accountNestedInput @@ -527,7 +527,7 @@ export type ConsumerAccountCreateWithoutAccountInput = { role: $Enums.ConsumerRole created_at?: Date | string updated_at?: Date | string - consumer: Prisma.ConsumerCreateNestedOneWithoutConsumer_accountsInput + consumer: Prisma.ConsumerCreateNestedOneWithoutAccountsInput pos?: Prisma.PosCreateNestedOneWithoutAccountInput permission?: Prisma.PermissionConsumerCreateNestedOneWithoutConsumer_accountInput account_allocation?: Prisma.LicenseAccountAllocationCreateNestedOneWithoutAccountInput @@ -567,7 +567,7 @@ export type ConsumerAccountUpdateWithoutAccountInput = { role?: Prisma.EnumConsumerRoleFieldUpdateOperationsInput | $Enums.ConsumerRole created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumer?: Prisma.ConsumerUpdateOneRequiredWithoutConsumer_accountsNestedInput + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutAccountsNestedInput pos?: Prisma.PosUpdateOneWithoutAccountNestedInput permission?: Prisma.PermissionConsumerUpdateOneWithoutConsumer_accountNestedInput account_allocation?: Prisma.LicenseAccountAllocationUpdateOneWithoutAccountNestedInput @@ -653,7 +653,7 @@ export type ConsumerAccountCreateWithoutPosInput = { role: $Enums.ConsumerRole created_at?: Date | string updated_at?: Date | string - consumer: Prisma.ConsumerCreateNestedOneWithoutConsumer_accountsInput + consumer: Prisma.ConsumerCreateNestedOneWithoutAccountsInput account: Prisma.AccountCreateNestedOneWithoutConsumer_accountInput permission?: Prisma.PermissionConsumerCreateNestedOneWithoutConsumer_accountInput account_allocation?: Prisma.LicenseAccountAllocationCreateNestedOneWithoutAccountInput @@ -693,7 +693,7 @@ export type ConsumerAccountUpdateWithoutPosInput = { role?: Prisma.EnumConsumerRoleFieldUpdateOperationsInput | $Enums.ConsumerRole created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumer?: Prisma.ConsumerUpdateOneRequiredWithoutConsumer_accountsNestedInput + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutAccountsNestedInput account?: Prisma.AccountUpdateOneRequiredWithoutConsumer_accountNestedInput permission?: Prisma.PermissionConsumerUpdateOneWithoutConsumer_accountNestedInput account_allocation?: Prisma.LicenseAccountAllocationUpdateOneWithoutAccountNestedInput @@ -717,7 +717,7 @@ export type ConsumerAccountCreateWithoutAccount_allocationInput = { role: $Enums.ConsumerRole created_at?: Date | string updated_at?: Date | string - consumer: Prisma.ConsumerCreateNestedOneWithoutConsumer_accountsInput + consumer: Prisma.ConsumerCreateNestedOneWithoutAccountsInput account: Prisma.AccountCreateNestedOneWithoutConsumer_accountInput pos?: Prisma.PosCreateNestedOneWithoutAccountInput permission?: Prisma.PermissionConsumerCreateNestedOneWithoutConsumer_accountInput @@ -757,7 +757,7 @@ export type ConsumerAccountUpdateWithoutAccount_allocationInput = { role?: Prisma.EnumConsumerRoleFieldUpdateOperationsInput | $Enums.ConsumerRole created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumer?: Prisma.ConsumerUpdateOneRequiredWithoutConsumer_accountsNestedInput + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutAccountsNestedInput account?: Prisma.AccountUpdateOneRequiredWithoutConsumer_accountNestedInput pos?: Prisma.PosUpdateOneWithoutAccountNestedInput permission?: Prisma.PermissionConsumerUpdateOneWithoutConsumer_accountNestedInput @@ -781,7 +781,7 @@ export type ConsumerAccountCreateWithoutPermissionInput = { role: $Enums.ConsumerRole created_at?: Date | string updated_at?: Date | string - consumer: Prisma.ConsumerCreateNestedOneWithoutConsumer_accountsInput + consumer: Prisma.ConsumerCreateNestedOneWithoutAccountsInput account: Prisma.AccountCreateNestedOneWithoutConsumer_accountInput pos?: Prisma.PosCreateNestedOneWithoutAccountInput account_allocation?: Prisma.LicenseAccountAllocationCreateNestedOneWithoutAccountInput @@ -821,7 +821,7 @@ export type ConsumerAccountUpdateWithoutPermissionInput = { role?: Prisma.EnumConsumerRoleFieldUpdateOperationsInput | $Enums.ConsumerRole created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumer?: Prisma.ConsumerUpdateOneRequiredWithoutConsumer_accountsNestedInput + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutAccountsNestedInput account?: Prisma.AccountUpdateOneRequiredWithoutConsumer_accountNestedInput pos?: Prisma.PosUpdateOneWithoutAccountNestedInput account_allocation?: Prisma.LicenseAccountAllocationUpdateOneWithoutAccountNestedInput @@ -845,7 +845,7 @@ export type ConsumerAccountCreateWithoutSales_invoicesInput = { role: $Enums.ConsumerRole created_at?: Date | string updated_at?: Date | string - consumer: Prisma.ConsumerCreateNestedOneWithoutConsumer_accountsInput + consumer: Prisma.ConsumerCreateNestedOneWithoutAccountsInput account: Prisma.AccountCreateNestedOneWithoutConsumer_accountInput pos?: Prisma.PosCreateNestedOneWithoutAccountInput permission?: Prisma.PermissionConsumerCreateNestedOneWithoutConsumer_accountInput @@ -885,7 +885,7 @@ export type ConsumerAccountUpdateWithoutSales_invoicesInput = { role?: Prisma.EnumConsumerRoleFieldUpdateOperationsInput | $Enums.ConsumerRole created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumer?: Prisma.ConsumerUpdateOneRequiredWithoutConsumer_accountsNestedInput + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutAccountsNestedInput account?: Prisma.AccountUpdateOneRequiredWithoutConsumer_accountNestedInput pos?: Prisma.PosUpdateOneWithoutAccountNestedInput permission?: Prisma.PermissionConsumerUpdateOneWithoutConsumer_accountNestedInput diff --git a/src/generated/prisma/models/ConsumerDevices.ts b/src/generated/prisma/models/ConsumerDevices.ts index 208696f..a803755 100644 --- a/src/generated/prisma/models/ConsumerDevices.ts +++ b/src/generated/prisma/models/ConsumerDevices.ts @@ -390,7 +390,7 @@ export type ConsumerDevicesCreateInput = { fcm_token?: string | null created_at?: Date | string updated_at?: Date | string - consumer: Prisma.ConsumerCreateNestedOneWithoutConsumer_devicesInput + consumer: Prisma.ConsumerCreateNestedOneWithoutDevicesInput } export type ConsumerDevicesUncheckedCreateInput = { @@ -430,7 +430,7 @@ export type ConsumerDevicesUpdateInput = { fcm_token?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumer?: Prisma.ConsumerUpdateOneRequiredWithoutConsumer_devicesNestedInput + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutDevicesNestedInput } export type ConsumerDevicesUncheckedUpdateInput = { diff --git a/src/generated/prisma/models/ConsumerIndividual.ts b/src/generated/prisma/models/ConsumerIndividual.ts new file mode 100644 index 0000000..1924d70 --- /dev/null +++ b/src/generated/prisma/models/ConsumerIndividual.ts @@ -0,0 +1,1433 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! */ +/* eslint-disable */ +// biome-ignore-all lint: generated file +// @ts-nocheck +/* + * This file exports the `ConsumerIndividual` 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 ConsumerIndividual + * + */ +export type ConsumerIndividualModel = runtime.Types.Result.DefaultSelection + +export type AggregateConsumerIndividual = { + _count: ConsumerIndividualCountAggregateOutputType | null + _min: ConsumerIndividualMinAggregateOutputType | null + _max: ConsumerIndividualMaxAggregateOutputType | null +} + +export type ConsumerIndividualMinAggregateOutputType = { + first_name: string | null + last_name: string | null + mobile_number: string | null + national_code: string | null + created_at: Date | null + updated_at: Date | null + partner_id: string | null + consumer_id: string | null +} + +export type ConsumerIndividualMaxAggregateOutputType = { + first_name: string | null + last_name: string | null + mobile_number: string | null + national_code: string | null + created_at: Date | null + updated_at: Date | null + partner_id: string | null + consumer_id: string | null +} + +export type ConsumerIndividualCountAggregateOutputType = { + first_name: number + last_name: number + mobile_number: number + national_code: number + created_at: number + updated_at: number + partner_id: number + consumer_id: number + _all: number +} + + +export type ConsumerIndividualMinAggregateInputType = { + first_name?: true + last_name?: true + mobile_number?: true + national_code?: true + created_at?: true + updated_at?: true + partner_id?: true + consumer_id?: true +} + +export type ConsumerIndividualMaxAggregateInputType = { + first_name?: true + last_name?: true + mobile_number?: true + national_code?: true + created_at?: true + updated_at?: true + partner_id?: true + consumer_id?: true +} + +export type ConsumerIndividualCountAggregateInputType = { + first_name?: true + last_name?: true + mobile_number?: true + national_code?: true + created_at?: true + updated_at?: true + partner_id?: true + consumer_id?: true + _all?: true +} + +export type ConsumerIndividualAggregateArgs = { + /** + * Filter which ConsumerIndividual to aggregate. + */ + where?: Prisma.ConsumerIndividualWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of ConsumerIndividuals to fetch. + */ + orderBy?: Prisma.ConsumerIndividualOrderByWithRelationInput | Prisma.ConsumerIndividualOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: Prisma.ConsumerIndividualWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` ConsumerIndividuals 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` ConsumerIndividuals. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned ConsumerIndividuals + **/ + _count?: true | ConsumerIndividualCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: ConsumerIndividualMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: ConsumerIndividualMaxAggregateInputType +} + +export type GetConsumerIndividualAggregateType = { + [P in keyof T & keyof AggregateConsumerIndividual]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType +} + + + + +export type ConsumerIndividualGroupByArgs = { + where?: Prisma.ConsumerIndividualWhereInput + orderBy?: Prisma.ConsumerIndividualOrderByWithAggregationInput | Prisma.ConsumerIndividualOrderByWithAggregationInput[] + by: Prisma.ConsumerIndividualScalarFieldEnum[] | Prisma.ConsumerIndividualScalarFieldEnum + having?: Prisma.ConsumerIndividualScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: ConsumerIndividualCountAggregateInputType | true + _min?: ConsumerIndividualMinAggregateInputType + _max?: ConsumerIndividualMaxAggregateInputType +} + +export type ConsumerIndividualGroupByOutputType = { + first_name: string + last_name: string + mobile_number: string + national_code: string + created_at: Date + updated_at: Date + partner_id: string + consumer_id: string + _count: ConsumerIndividualCountAggregateOutputType | null + _min: ConsumerIndividualMinAggregateOutputType | null + _max: ConsumerIndividualMaxAggregateOutputType | null +} + +export type GetConsumerIndividualGroupByPayload = Prisma.PrismaPromise< + Array< + Prisma.PickEnumerable & + { + [P in ((keyof T) & (keyof ConsumerIndividualGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType + } + > + > + + + +export type ConsumerIndividualWhereInput = { + AND?: Prisma.ConsumerIndividualWhereInput | Prisma.ConsumerIndividualWhereInput[] + OR?: Prisma.ConsumerIndividualWhereInput[] + NOT?: Prisma.ConsumerIndividualWhereInput | Prisma.ConsumerIndividualWhereInput[] + first_name?: Prisma.StringFilter<"ConsumerIndividual"> | string + last_name?: Prisma.StringFilter<"ConsumerIndividual"> | string + mobile_number?: Prisma.StringFilter<"ConsumerIndividual"> | string + national_code?: Prisma.StringFilter<"ConsumerIndividual"> | string + created_at?: Prisma.DateTimeFilter<"ConsumerIndividual"> | Date | string + updated_at?: Prisma.DateTimeFilter<"ConsumerIndividual"> | Date | string + partner_id?: Prisma.StringFilter<"ConsumerIndividual"> | string + consumer_id?: Prisma.StringFilter<"ConsumerIndividual"> | string + partner?: Prisma.XOR + consumer?: Prisma.XOR +} + +export type ConsumerIndividualOrderByWithRelationInput = { + first_name?: Prisma.SortOrder + last_name?: Prisma.SortOrder + mobile_number?: Prisma.SortOrder + national_code?: Prisma.SortOrder + created_at?: Prisma.SortOrder + updated_at?: Prisma.SortOrder + partner_id?: Prisma.SortOrder + consumer_id?: Prisma.SortOrder + partner?: Prisma.PartnerOrderByWithRelationInput + consumer?: Prisma.ConsumerOrderByWithRelationInput + _relevance?: Prisma.ConsumerIndividualOrderByRelevanceInput +} + +export type ConsumerIndividualWhereUniqueInput = Prisma.AtLeast<{ + consumer_id?: string + mobile_number_consumer_id?: Prisma.ConsumerIndividualMobile_numberConsumer_idCompoundUniqueInput + partner_id_national_code?: Prisma.ConsumerIndividualPartner_idNational_codeCompoundUniqueInput + AND?: Prisma.ConsumerIndividualWhereInput | Prisma.ConsumerIndividualWhereInput[] + OR?: Prisma.ConsumerIndividualWhereInput[] + NOT?: Prisma.ConsumerIndividualWhereInput | Prisma.ConsumerIndividualWhereInput[] + first_name?: Prisma.StringFilter<"ConsumerIndividual"> | string + last_name?: Prisma.StringFilter<"ConsumerIndividual"> | string + mobile_number?: Prisma.StringFilter<"ConsumerIndividual"> | string + national_code?: Prisma.StringFilter<"ConsumerIndividual"> | string + created_at?: Prisma.DateTimeFilter<"ConsumerIndividual"> | Date | string + updated_at?: Prisma.DateTimeFilter<"ConsumerIndividual"> | Date | string + partner_id?: Prisma.StringFilter<"ConsumerIndividual"> | string + partner?: Prisma.XOR + consumer?: Prisma.XOR +}, "consumer_id" | "mobile_number_consumer_id" | "partner_id_national_code"> + +export type ConsumerIndividualOrderByWithAggregationInput = { + first_name?: Prisma.SortOrder + last_name?: Prisma.SortOrder + mobile_number?: Prisma.SortOrder + national_code?: Prisma.SortOrder + created_at?: Prisma.SortOrder + updated_at?: Prisma.SortOrder + partner_id?: Prisma.SortOrder + consumer_id?: Prisma.SortOrder + _count?: Prisma.ConsumerIndividualCountOrderByAggregateInput + _max?: Prisma.ConsumerIndividualMaxOrderByAggregateInput + _min?: Prisma.ConsumerIndividualMinOrderByAggregateInput +} + +export type ConsumerIndividualScalarWhereWithAggregatesInput = { + AND?: Prisma.ConsumerIndividualScalarWhereWithAggregatesInput | Prisma.ConsumerIndividualScalarWhereWithAggregatesInput[] + OR?: Prisma.ConsumerIndividualScalarWhereWithAggregatesInput[] + NOT?: Prisma.ConsumerIndividualScalarWhereWithAggregatesInput | Prisma.ConsumerIndividualScalarWhereWithAggregatesInput[] + first_name?: Prisma.StringWithAggregatesFilter<"ConsumerIndividual"> | string + last_name?: Prisma.StringWithAggregatesFilter<"ConsumerIndividual"> | string + mobile_number?: Prisma.StringWithAggregatesFilter<"ConsumerIndividual"> | string + national_code?: Prisma.StringWithAggregatesFilter<"ConsumerIndividual"> | string + created_at?: Prisma.DateTimeWithAggregatesFilter<"ConsumerIndividual"> | Date | string + updated_at?: Prisma.DateTimeWithAggregatesFilter<"ConsumerIndividual"> | Date | string + partner_id?: Prisma.StringWithAggregatesFilter<"ConsumerIndividual"> | string + consumer_id?: Prisma.StringWithAggregatesFilter<"ConsumerIndividual"> | string +} + +export type ConsumerIndividualCreateInput = { + first_name: string + last_name: string + mobile_number: string + national_code: string + created_at?: Date | string + updated_at?: Date | string + partner: Prisma.PartnerCreateNestedOneWithoutConsumers_individualInput + consumer: Prisma.ConsumerCreateNestedOneWithoutIndividualInput +} + +export type ConsumerIndividualUncheckedCreateInput = { + first_name: string + last_name: string + mobile_number: string + national_code: string + created_at?: Date | string + updated_at?: Date | string + partner_id: string + consumer_id: string +} + +export type ConsumerIndividualUpdateInput = { + first_name?: Prisma.StringFieldUpdateOperationsInput | string + last_name?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string + national_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + partner?: Prisma.PartnerUpdateOneRequiredWithoutConsumers_individualNestedInput + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutIndividualNestedInput +} + +export type ConsumerIndividualUncheckedUpdateInput = { + first_name?: Prisma.StringFieldUpdateOperationsInput | string + last_name?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string + national_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + partner_id?: Prisma.StringFieldUpdateOperationsInput | string + consumer_id?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type ConsumerIndividualCreateManyInput = { + first_name: string + last_name: string + mobile_number: string + national_code: string + created_at?: Date | string + updated_at?: Date | string + partner_id: string + consumer_id: string +} + +export type ConsumerIndividualUpdateManyMutationInput = { + first_name?: Prisma.StringFieldUpdateOperationsInput | string + last_name?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string + national_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type ConsumerIndividualUncheckedUpdateManyInput = { + first_name?: Prisma.StringFieldUpdateOperationsInput | string + last_name?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string + national_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + partner_id?: Prisma.StringFieldUpdateOperationsInput | string + consumer_id?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type ConsumerIndividualNullableScalarRelationFilter = { + is?: Prisma.ConsumerIndividualWhereInput | null + isNot?: Prisma.ConsumerIndividualWhereInput | null +} + +export type ConsumerIndividualOrderByRelevanceInput = { + fields: Prisma.ConsumerIndividualOrderByRelevanceFieldEnum | Prisma.ConsumerIndividualOrderByRelevanceFieldEnum[] + sort: Prisma.SortOrder + search: string +} + +export type ConsumerIndividualMobile_numberConsumer_idCompoundUniqueInput = { + mobile_number: string + consumer_id: string +} + +export type ConsumerIndividualPartner_idNational_codeCompoundUniqueInput = { + partner_id: string + national_code: string +} + +export type ConsumerIndividualCountOrderByAggregateInput = { + first_name?: Prisma.SortOrder + last_name?: Prisma.SortOrder + mobile_number?: Prisma.SortOrder + national_code?: Prisma.SortOrder + created_at?: Prisma.SortOrder + updated_at?: Prisma.SortOrder + partner_id?: Prisma.SortOrder + consumer_id?: Prisma.SortOrder +} + +export type ConsumerIndividualMaxOrderByAggregateInput = { + first_name?: Prisma.SortOrder + last_name?: Prisma.SortOrder + mobile_number?: Prisma.SortOrder + national_code?: Prisma.SortOrder + created_at?: Prisma.SortOrder + updated_at?: Prisma.SortOrder + partner_id?: Prisma.SortOrder + consumer_id?: Prisma.SortOrder +} + +export type ConsumerIndividualMinOrderByAggregateInput = { + first_name?: Prisma.SortOrder + last_name?: Prisma.SortOrder + mobile_number?: Prisma.SortOrder + national_code?: Prisma.SortOrder + created_at?: Prisma.SortOrder + updated_at?: Prisma.SortOrder + partner_id?: Prisma.SortOrder + consumer_id?: Prisma.SortOrder +} + +export type ConsumerIndividualListRelationFilter = { + every?: Prisma.ConsumerIndividualWhereInput + some?: Prisma.ConsumerIndividualWhereInput + none?: Prisma.ConsumerIndividualWhereInput +} + +export type ConsumerIndividualOrderByRelationAggregateInput = { + _count?: Prisma.SortOrder +} + +export type ConsumerIndividualCreateNestedOneWithoutConsumerInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerIndividualCreateOrConnectWithoutConsumerInput + connect?: Prisma.ConsumerIndividualWhereUniqueInput +} + +export type ConsumerIndividualUncheckedCreateNestedOneWithoutConsumerInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerIndividualCreateOrConnectWithoutConsumerInput + connect?: Prisma.ConsumerIndividualWhereUniqueInput +} + +export type ConsumerIndividualUpdateOneWithoutConsumerNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerIndividualCreateOrConnectWithoutConsumerInput + upsert?: Prisma.ConsumerIndividualUpsertWithoutConsumerInput + disconnect?: Prisma.ConsumerIndividualWhereInput | boolean + delete?: Prisma.ConsumerIndividualWhereInput | boolean + connect?: Prisma.ConsumerIndividualWhereUniqueInput + update?: Prisma.XOR, Prisma.ConsumerIndividualUncheckedUpdateWithoutConsumerInput> +} + +export type ConsumerIndividualUncheckedUpdateOneWithoutConsumerNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerIndividualCreateOrConnectWithoutConsumerInput + upsert?: Prisma.ConsumerIndividualUpsertWithoutConsumerInput + disconnect?: Prisma.ConsumerIndividualWhereInput | boolean + delete?: Prisma.ConsumerIndividualWhereInput | boolean + connect?: Prisma.ConsumerIndividualWhereUniqueInput + update?: Prisma.XOR, Prisma.ConsumerIndividualUncheckedUpdateWithoutConsumerInput> +} + +export type ConsumerIndividualCreateNestedManyWithoutPartnerInput = { + create?: Prisma.XOR | Prisma.ConsumerIndividualCreateWithoutPartnerInput[] | Prisma.ConsumerIndividualUncheckedCreateWithoutPartnerInput[] + connectOrCreate?: Prisma.ConsumerIndividualCreateOrConnectWithoutPartnerInput | Prisma.ConsumerIndividualCreateOrConnectWithoutPartnerInput[] + createMany?: Prisma.ConsumerIndividualCreateManyPartnerInputEnvelope + connect?: Prisma.ConsumerIndividualWhereUniqueInput | Prisma.ConsumerIndividualWhereUniqueInput[] +} + +export type ConsumerIndividualUncheckedCreateNestedManyWithoutPartnerInput = { + create?: Prisma.XOR | Prisma.ConsumerIndividualCreateWithoutPartnerInput[] | Prisma.ConsumerIndividualUncheckedCreateWithoutPartnerInput[] + connectOrCreate?: Prisma.ConsumerIndividualCreateOrConnectWithoutPartnerInput | Prisma.ConsumerIndividualCreateOrConnectWithoutPartnerInput[] + createMany?: Prisma.ConsumerIndividualCreateManyPartnerInputEnvelope + connect?: Prisma.ConsumerIndividualWhereUniqueInput | Prisma.ConsumerIndividualWhereUniqueInput[] +} + +export type ConsumerIndividualUpdateManyWithoutPartnerNestedInput = { + create?: Prisma.XOR | Prisma.ConsumerIndividualCreateWithoutPartnerInput[] | Prisma.ConsumerIndividualUncheckedCreateWithoutPartnerInput[] + connectOrCreate?: Prisma.ConsumerIndividualCreateOrConnectWithoutPartnerInput | Prisma.ConsumerIndividualCreateOrConnectWithoutPartnerInput[] + upsert?: Prisma.ConsumerIndividualUpsertWithWhereUniqueWithoutPartnerInput | Prisma.ConsumerIndividualUpsertWithWhereUniqueWithoutPartnerInput[] + createMany?: Prisma.ConsumerIndividualCreateManyPartnerInputEnvelope + set?: Prisma.ConsumerIndividualWhereUniqueInput | Prisma.ConsumerIndividualWhereUniqueInput[] + disconnect?: Prisma.ConsumerIndividualWhereUniqueInput | Prisma.ConsumerIndividualWhereUniqueInput[] + delete?: Prisma.ConsumerIndividualWhereUniqueInput | Prisma.ConsumerIndividualWhereUniqueInput[] + connect?: Prisma.ConsumerIndividualWhereUniqueInput | Prisma.ConsumerIndividualWhereUniqueInput[] + update?: Prisma.ConsumerIndividualUpdateWithWhereUniqueWithoutPartnerInput | Prisma.ConsumerIndividualUpdateWithWhereUniqueWithoutPartnerInput[] + updateMany?: Prisma.ConsumerIndividualUpdateManyWithWhereWithoutPartnerInput | Prisma.ConsumerIndividualUpdateManyWithWhereWithoutPartnerInput[] + deleteMany?: Prisma.ConsumerIndividualScalarWhereInput | Prisma.ConsumerIndividualScalarWhereInput[] +} + +export type ConsumerIndividualUncheckedUpdateManyWithoutPartnerNestedInput = { + create?: Prisma.XOR | Prisma.ConsumerIndividualCreateWithoutPartnerInput[] | Prisma.ConsumerIndividualUncheckedCreateWithoutPartnerInput[] + connectOrCreate?: Prisma.ConsumerIndividualCreateOrConnectWithoutPartnerInput | Prisma.ConsumerIndividualCreateOrConnectWithoutPartnerInput[] + upsert?: Prisma.ConsumerIndividualUpsertWithWhereUniqueWithoutPartnerInput | Prisma.ConsumerIndividualUpsertWithWhereUniqueWithoutPartnerInput[] + createMany?: Prisma.ConsumerIndividualCreateManyPartnerInputEnvelope + set?: Prisma.ConsumerIndividualWhereUniqueInput | Prisma.ConsumerIndividualWhereUniqueInput[] + disconnect?: Prisma.ConsumerIndividualWhereUniqueInput | Prisma.ConsumerIndividualWhereUniqueInput[] + delete?: Prisma.ConsumerIndividualWhereUniqueInput | Prisma.ConsumerIndividualWhereUniqueInput[] + connect?: Prisma.ConsumerIndividualWhereUniqueInput | Prisma.ConsumerIndividualWhereUniqueInput[] + update?: Prisma.ConsumerIndividualUpdateWithWhereUniqueWithoutPartnerInput | Prisma.ConsumerIndividualUpdateWithWhereUniqueWithoutPartnerInput[] + updateMany?: Prisma.ConsumerIndividualUpdateManyWithWhereWithoutPartnerInput | Prisma.ConsumerIndividualUpdateManyWithWhereWithoutPartnerInput[] + deleteMany?: Prisma.ConsumerIndividualScalarWhereInput | Prisma.ConsumerIndividualScalarWhereInput[] +} + +export type ConsumerIndividualCreateWithoutConsumerInput = { + first_name: string + last_name: string + mobile_number: string + national_code: string + created_at?: Date | string + updated_at?: Date | string + partner: Prisma.PartnerCreateNestedOneWithoutConsumers_individualInput +} + +export type ConsumerIndividualUncheckedCreateWithoutConsumerInput = { + first_name: string + last_name: string + mobile_number: string + national_code: string + created_at?: Date | string + updated_at?: Date | string + partner_id: string +} + +export type ConsumerIndividualCreateOrConnectWithoutConsumerInput = { + where: Prisma.ConsumerIndividualWhereUniqueInput + create: Prisma.XOR +} + +export type ConsumerIndividualUpsertWithoutConsumerInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.ConsumerIndividualWhereInput +} + +export type ConsumerIndividualUpdateToOneWithWhereWithoutConsumerInput = { + where?: Prisma.ConsumerIndividualWhereInput + data: Prisma.XOR +} + +export type ConsumerIndividualUpdateWithoutConsumerInput = { + first_name?: Prisma.StringFieldUpdateOperationsInput | string + last_name?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string + national_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + partner?: Prisma.PartnerUpdateOneRequiredWithoutConsumers_individualNestedInput +} + +export type ConsumerIndividualUncheckedUpdateWithoutConsumerInput = { + first_name?: Prisma.StringFieldUpdateOperationsInput | string + last_name?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string + national_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + partner_id?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type ConsumerIndividualCreateWithoutPartnerInput = { + first_name: string + last_name: string + mobile_number: string + national_code: string + created_at?: Date | string + updated_at?: Date | string + consumer: Prisma.ConsumerCreateNestedOneWithoutIndividualInput +} + +export type ConsumerIndividualUncheckedCreateWithoutPartnerInput = { + first_name: string + last_name: string + mobile_number: string + national_code: string + created_at?: Date | string + updated_at?: Date | string + consumer_id: string +} + +export type ConsumerIndividualCreateOrConnectWithoutPartnerInput = { + where: Prisma.ConsumerIndividualWhereUniqueInput + create: Prisma.XOR +} + +export type ConsumerIndividualCreateManyPartnerInputEnvelope = { + data: Prisma.ConsumerIndividualCreateManyPartnerInput | Prisma.ConsumerIndividualCreateManyPartnerInput[] + skipDuplicates?: boolean +} + +export type ConsumerIndividualUpsertWithWhereUniqueWithoutPartnerInput = { + where: Prisma.ConsumerIndividualWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type ConsumerIndividualUpdateWithWhereUniqueWithoutPartnerInput = { + where: Prisma.ConsumerIndividualWhereUniqueInput + data: Prisma.XOR +} + +export type ConsumerIndividualUpdateManyWithWhereWithoutPartnerInput = { + where: Prisma.ConsumerIndividualScalarWhereInput + data: Prisma.XOR +} + +export type ConsumerIndividualScalarWhereInput = { + AND?: Prisma.ConsumerIndividualScalarWhereInput | Prisma.ConsumerIndividualScalarWhereInput[] + OR?: Prisma.ConsumerIndividualScalarWhereInput[] + NOT?: Prisma.ConsumerIndividualScalarWhereInput | Prisma.ConsumerIndividualScalarWhereInput[] + first_name?: Prisma.StringFilter<"ConsumerIndividual"> | string + last_name?: Prisma.StringFilter<"ConsumerIndividual"> | string + mobile_number?: Prisma.StringFilter<"ConsumerIndividual"> | string + national_code?: Prisma.StringFilter<"ConsumerIndividual"> | string + created_at?: Prisma.DateTimeFilter<"ConsumerIndividual"> | Date | string + updated_at?: Prisma.DateTimeFilter<"ConsumerIndividual"> | Date | string + partner_id?: Prisma.StringFilter<"ConsumerIndividual"> | string + consumer_id?: Prisma.StringFilter<"ConsumerIndividual"> | string +} + +export type ConsumerIndividualCreateManyPartnerInput = { + first_name: string + last_name: string + mobile_number: string + national_code: string + created_at?: Date | string + updated_at?: Date | string + consumer_id: string +} + +export type ConsumerIndividualUpdateWithoutPartnerInput = { + first_name?: Prisma.StringFieldUpdateOperationsInput | string + last_name?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string + national_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutIndividualNestedInput +} + +export type ConsumerIndividualUncheckedUpdateWithoutPartnerInput = { + first_name?: Prisma.StringFieldUpdateOperationsInput | string + last_name?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string + national_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + consumer_id?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type ConsumerIndividualUncheckedUpdateManyWithoutPartnerInput = { + first_name?: Prisma.StringFieldUpdateOperationsInput | string + last_name?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string + national_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + consumer_id?: Prisma.StringFieldUpdateOperationsInput | string +} + + + +export type ConsumerIndividualSelect = runtime.Types.Extensions.GetSelect<{ + first_name?: boolean + last_name?: boolean + mobile_number?: boolean + national_code?: boolean + created_at?: boolean + updated_at?: boolean + partner_id?: boolean + consumer_id?: boolean + partner?: boolean | Prisma.PartnerDefaultArgs + consumer?: boolean | Prisma.ConsumerDefaultArgs +}, ExtArgs["result"]["consumerIndividual"]> + + + +export type ConsumerIndividualSelectScalar = { + first_name?: boolean + last_name?: boolean + mobile_number?: boolean + national_code?: boolean + created_at?: boolean + updated_at?: boolean + partner_id?: boolean + consumer_id?: boolean +} + +export type ConsumerIndividualOmit = runtime.Types.Extensions.GetOmit<"first_name" | "last_name" | "mobile_number" | "national_code" | "created_at" | "updated_at" | "partner_id" | "consumer_id", ExtArgs["result"]["consumerIndividual"]> +export type ConsumerIndividualInclude = { + partner?: boolean | Prisma.PartnerDefaultArgs + consumer?: boolean | Prisma.ConsumerDefaultArgs +} + +export type $ConsumerIndividualPayload = { + name: "ConsumerIndividual" + objects: { + partner: Prisma.$PartnerPayload + consumer: Prisma.$ConsumerPayload + } + scalars: runtime.Types.Extensions.GetPayloadResult<{ + first_name: string + last_name: string + mobile_number: string + national_code: string + created_at: Date + updated_at: Date + partner_id: string + consumer_id: string + }, ExtArgs["result"]["consumerIndividual"]> + composites: {} +} + +export type ConsumerIndividualGetPayload = runtime.Types.Result.GetResult + +export type ConsumerIndividualCountArgs = + Omit & { + select?: ConsumerIndividualCountAggregateInputType | true + } + +export interface ConsumerIndividualDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['ConsumerIndividual'], meta: { name: 'ConsumerIndividual' } } + /** + * Find zero or one ConsumerIndividual that matches the filter. + * @param {ConsumerIndividualFindUniqueArgs} args - Arguments to find a ConsumerIndividual + * @example + * // Get one ConsumerIndividual + * const consumerIndividual = await prisma.consumerIndividual.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: Prisma.SelectSubset>): Prisma.Prisma__ConsumerIndividualClient, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one ConsumerIndividual that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {ConsumerIndividualFindUniqueOrThrowArgs} args - Arguments to find a ConsumerIndividual + * @example + * // Get one ConsumerIndividual + * const consumerIndividual = await prisma.consumerIndividual.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: Prisma.SelectSubset>): Prisma.Prisma__ConsumerIndividualClient, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first ConsumerIndividual 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 {ConsumerIndividualFindFirstArgs} args - Arguments to find a ConsumerIndividual + * @example + * // Get one ConsumerIndividual + * const consumerIndividual = await prisma.consumerIndividual.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: Prisma.SelectSubset>): Prisma.Prisma__ConsumerIndividualClient, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first ConsumerIndividual 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 {ConsumerIndividualFindFirstOrThrowArgs} args - Arguments to find a ConsumerIndividual + * @example + * // Get one ConsumerIndividual + * const consumerIndividual = await prisma.consumerIndividual.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: Prisma.SelectSubset>): Prisma.Prisma__ConsumerIndividualClient, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more ConsumerIndividuals 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 {ConsumerIndividualFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all ConsumerIndividuals + * const consumerIndividuals = await prisma.consumerIndividual.findMany() + * + * // Get first 10 ConsumerIndividuals + * const consumerIndividuals = await prisma.consumerIndividual.findMany({ take: 10 }) + * + * // Only select the `first_name` + * const consumerIndividualWithFirst_nameOnly = await prisma.consumerIndividual.findMany({ select: { first_name: true } }) + * + */ + findMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions>> + + /** + * Create a ConsumerIndividual. + * @param {ConsumerIndividualCreateArgs} args - Arguments to create a ConsumerIndividual. + * @example + * // Create one ConsumerIndividual + * const ConsumerIndividual = await prisma.consumerIndividual.create({ + * data: { + * // ... data to create a ConsumerIndividual + * } + * }) + * + */ + create(args: Prisma.SelectSubset>): Prisma.Prisma__ConsumerIndividualClient, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many ConsumerIndividuals. + * @param {ConsumerIndividualCreateManyArgs} args - Arguments to create many ConsumerIndividuals. + * @example + * // Create many ConsumerIndividuals + * const consumerIndividual = await prisma.consumerIndividual.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a ConsumerIndividual. + * @param {ConsumerIndividualDeleteArgs} args - Arguments to delete one ConsumerIndividual. + * @example + * // Delete one ConsumerIndividual + * const ConsumerIndividual = await prisma.consumerIndividual.delete({ + * where: { + * // ... filter to delete one ConsumerIndividual + * } + * }) + * + */ + delete(args: Prisma.SelectSubset>): Prisma.Prisma__ConsumerIndividualClient, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one ConsumerIndividual. + * @param {ConsumerIndividualUpdateArgs} args - Arguments to update one ConsumerIndividual. + * @example + * // Update one ConsumerIndividual + * const consumerIndividual = await prisma.consumerIndividual.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: Prisma.SelectSubset>): Prisma.Prisma__ConsumerIndividualClient, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more ConsumerIndividuals. + * @param {ConsumerIndividualDeleteManyArgs} args - Arguments to filter ConsumerIndividuals to delete. + * @example + * // Delete a few ConsumerIndividuals + * const { count } = await prisma.consumerIndividual.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more ConsumerIndividuals. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ConsumerIndividualUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many ConsumerIndividuals + * const consumerIndividual = await prisma.consumerIndividual.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one ConsumerIndividual. + * @param {ConsumerIndividualUpsertArgs} args - Arguments to update or create a ConsumerIndividual. + * @example + * // Update or create a ConsumerIndividual + * const consumerIndividual = await prisma.consumerIndividual.upsert({ + * create: { + * // ... data to create a ConsumerIndividual + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the ConsumerIndividual we want to update + * } + * }) + */ + upsert(args: Prisma.SelectSubset>): Prisma.Prisma__ConsumerIndividualClient, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of ConsumerIndividuals. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ConsumerIndividualCountArgs} args - Arguments to filter ConsumerIndividuals to count. + * @example + * // Count the number of ConsumerIndividuals + * const count = await prisma.consumerIndividual.count({ + * where: { + * // ... the filter for the ConsumerIndividuals 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 ConsumerIndividual. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ConsumerIndividualAggregateArgs} 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 ConsumerIndividual. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ConsumerIndividualGroupByArgs} 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 ConsumerIndividualGroupByArgs, + HasSelectOrTake extends Prisma.Or< + Prisma.Extends<'skip', Prisma.Keys>, + Prisma.Extends<'take', Prisma.Keys> + >, + OrderByArg extends Prisma.True extends HasSelectOrTake + ? { orderBy: ConsumerIndividualGroupByArgs['orderBy'] } + : { orderBy?: ConsumerIndividualGroupByArgs['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 ? GetConsumerIndividualGroupByPayload : Prisma.PrismaPromise +/** + * Fields of the ConsumerIndividual model + */ +readonly fields: ConsumerIndividualFieldRefs; +} + +/** + * The delegate class that acts as a "Promise-like" for ConsumerIndividual. + * 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__ConsumerIndividualClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + partner = {}>(args?: Prisma.Subset>): Prisma.Prisma__PartnerClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + consumer = {}>(args?: Prisma.Subset>): Prisma.Prisma__ConsumerClient, 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 ConsumerIndividual model + */ +export interface ConsumerIndividualFieldRefs { + readonly first_name: Prisma.FieldRef<"ConsumerIndividual", 'String'> + readonly last_name: Prisma.FieldRef<"ConsumerIndividual", 'String'> + readonly mobile_number: Prisma.FieldRef<"ConsumerIndividual", 'String'> + readonly national_code: Prisma.FieldRef<"ConsumerIndividual", 'String'> + readonly created_at: Prisma.FieldRef<"ConsumerIndividual", 'DateTime'> + readonly updated_at: Prisma.FieldRef<"ConsumerIndividual", 'DateTime'> + readonly partner_id: Prisma.FieldRef<"ConsumerIndividual", 'String'> + readonly consumer_id: Prisma.FieldRef<"ConsumerIndividual", 'String'> +} + + +// Custom InputTypes +/** + * ConsumerIndividual findUnique + */ +export type ConsumerIndividualFindUniqueArgs = { + /** + * Select specific fields to fetch from the ConsumerIndividual + */ + select?: Prisma.ConsumerIndividualSelect | null + /** + * Omit specific fields from the ConsumerIndividual + */ + omit?: Prisma.ConsumerIndividualOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerIndividualInclude | null + /** + * Filter, which ConsumerIndividual to fetch. + */ + where: Prisma.ConsumerIndividualWhereUniqueInput +} + +/** + * ConsumerIndividual findUniqueOrThrow + */ +export type ConsumerIndividualFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the ConsumerIndividual + */ + select?: Prisma.ConsumerIndividualSelect | null + /** + * Omit specific fields from the ConsumerIndividual + */ + omit?: Prisma.ConsumerIndividualOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerIndividualInclude | null + /** + * Filter, which ConsumerIndividual to fetch. + */ + where: Prisma.ConsumerIndividualWhereUniqueInput +} + +/** + * ConsumerIndividual findFirst + */ +export type ConsumerIndividualFindFirstArgs = { + /** + * Select specific fields to fetch from the ConsumerIndividual + */ + select?: Prisma.ConsumerIndividualSelect | null + /** + * Omit specific fields from the ConsumerIndividual + */ + omit?: Prisma.ConsumerIndividualOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerIndividualInclude | null + /** + * Filter, which ConsumerIndividual to fetch. + */ + where?: Prisma.ConsumerIndividualWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of ConsumerIndividuals to fetch. + */ + orderBy?: Prisma.ConsumerIndividualOrderByWithRelationInput | Prisma.ConsumerIndividualOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for ConsumerIndividuals. + */ + cursor?: Prisma.ConsumerIndividualWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` ConsumerIndividuals 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` ConsumerIndividuals. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of ConsumerIndividuals. + */ + distinct?: Prisma.ConsumerIndividualScalarFieldEnum | Prisma.ConsumerIndividualScalarFieldEnum[] +} + +/** + * ConsumerIndividual findFirstOrThrow + */ +export type ConsumerIndividualFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the ConsumerIndividual + */ + select?: Prisma.ConsumerIndividualSelect | null + /** + * Omit specific fields from the ConsumerIndividual + */ + omit?: Prisma.ConsumerIndividualOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerIndividualInclude | null + /** + * Filter, which ConsumerIndividual to fetch. + */ + where?: Prisma.ConsumerIndividualWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of ConsumerIndividuals to fetch. + */ + orderBy?: Prisma.ConsumerIndividualOrderByWithRelationInput | Prisma.ConsumerIndividualOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for ConsumerIndividuals. + */ + cursor?: Prisma.ConsumerIndividualWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` ConsumerIndividuals 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` ConsumerIndividuals. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of ConsumerIndividuals. + */ + distinct?: Prisma.ConsumerIndividualScalarFieldEnum | Prisma.ConsumerIndividualScalarFieldEnum[] +} + +/** + * ConsumerIndividual findMany + */ +export type ConsumerIndividualFindManyArgs = { + /** + * Select specific fields to fetch from the ConsumerIndividual + */ + select?: Prisma.ConsumerIndividualSelect | null + /** + * Omit specific fields from the ConsumerIndividual + */ + omit?: Prisma.ConsumerIndividualOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerIndividualInclude | null + /** + * Filter, which ConsumerIndividuals to fetch. + */ + where?: Prisma.ConsumerIndividualWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of ConsumerIndividuals to fetch. + */ + orderBy?: Prisma.ConsumerIndividualOrderByWithRelationInput | Prisma.ConsumerIndividualOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing ConsumerIndividuals. + */ + cursor?: Prisma.ConsumerIndividualWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` ConsumerIndividuals 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` ConsumerIndividuals. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of ConsumerIndividuals. + */ + distinct?: Prisma.ConsumerIndividualScalarFieldEnum | Prisma.ConsumerIndividualScalarFieldEnum[] +} + +/** + * ConsumerIndividual create + */ +export type ConsumerIndividualCreateArgs = { + /** + * Select specific fields to fetch from the ConsumerIndividual + */ + select?: Prisma.ConsumerIndividualSelect | null + /** + * Omit specific fields from the ConsumerIndividual + */ + omit?: Prisma.ConsumerIndividualOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerIndividualInclude | null + /** + * The data needed to create a ConsumerIndividual. + */ + data: Prisma.XOR +} + +/** + * ConsumerIndividual createMany + */ +export type ConsumerIndividualCreateManyArgs = { + /** + * The data used to create many ConsumerIndividuals. + */ + data: Prisma.ConsumerIndividualCreateManyInput | Prisma.ConsumerIndividualCreateManyInput[] + skipDuplicates?: boolean +} + +/** + * ConsumerIndividual update + */ +export type ConsumerIndividualUpdateArgs = { + /** + * Select specific fields to fetch from the ConsumerIndividual + */ + select?: Prisma.ConsumerIndividualSelect | null + /** + * Omit specific fields from the ConsumerIndividual + */ + omit?: Prisma.ConsumerIndividualOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerIndividualInclude | null + /** + * The data needed to update a ConsumerIndividual. + */ + data: Prisma.XOR + /** + * Choose, which ConsumerIndividual to update. + */ + where: Prisma.ConsumerIndividualWhereUniqueInput +} + +/** + * ConsumerIndividual updateMany + */ +export type ConsumerIndividualUpdateManyArgs = { + /** + * The data used to update ConsumerIndividuals. + */ + data: Prisma.XOR + /** + * Filter which ConsumerIndividuals to update + */ + where?: Prisma.ConsumerIndividualWhereInput + /** + * Limit how many ConsumerIndividuals to update. + */ + limit?: number +} + +/** + * ConsumerIndividual upsert + */ +export type ConsumerIndividualUpsertArgs = { + /** + * Select specific fields to fetch from the ConsumerIndividual + */ + select?: Prisma.ConsumerIndividualSelect | null + /** + * Omit specific fields from the ConsumerIndividual + */ + omit?: Prisma.ConsumerIndividualOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerIndividualInclude | null + /** + * The filter to search for the ConsumerIndividual to update in case it exists. + */ + where: Prisma.ConsumerIndividualWhereUniqueInput + /** + * In case the ConsumerIndividual found by the `where` argument doesn't exist, create a new ConsumerIndividual with this data. + */ + create: Prisma.XOR + /** + * In case the ConsumerIndividual was found with the provided `where` argument, update it with this data. + */ + update: Prisma.XOR +} + +/** + * ConsumerIndividual delete + */ +export type ConsumerIndividualDeleteArgs = { + /** + * Select specific fields to fetch from the ConsumerIndividual + */ + select?: Prisma.ConsumerIndividualSelect | null + /** + * Omit specific fields from the ConsumerIndividual + */ + omit?: Prisma.ConsumerIndividualOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerIndividualInclude | null + /** + * Filter which ConsumerIndividual to delete. + */ + where: Prisma.ConsumerIndividualWhereUniqueInput +} + +/** + * ConsumerIndividual deleteMany + */ +export type ConsumerIndividualDeleteManyArgs = { + /** + * Filter which ConsumerIndividuals to delete + */ + where?: Prisma.ConsumerIndividualWhereInput + /** + * Limit how many ConsumerIndividuals to delete. + */ + limit?: number +} + +/** + * ConsumerIndividual without action + */ +export type ConsumerIndividualDefaultArgs = { + /** + * Select specific fields to fetch from the ConsumerIndividual + */ + select?: Prisma.ConsumerIndividualSelect | null + /** + * Omit specific fields from the ConsumerIndividual + */ + omit?: Prisma.ConsumerIndividualOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerIndividualInclude | null +} diff --git a/src/generated/prisma/models/ConsumerLegal.ts b/src/generated/prisma/models/ConsumerLegal.ts new file mode 100644 index 0000000..ddfb34b --- /dev/null +++ b/src/generated/prisma/models/ConsumerLegal.ts @@ -0,0 +1,1353 @@ + +/* !!! This is code generated by Prisma. Do not edit directly. !!! */ +/* eslint-disable */ +// biome-ignore-all lint: generated file +// @ts-nocheck +/* + * This file exports the `ConsumerLegal` 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 ConsumerLegal + * + */ +export type ConsumerLegalModel = runtime.Types.Result.DefaultSelection + +export type AggregateConsumerLegal = { + _count: ConsumerLegalCountAggregateOutputType | null + _min: ConsumerLegalMinAggregateOutputType | null + _max: ConsumerLegalMaxAggregateOutputType | null +} + +export type ConsumerLegalMinAggregateOutputType = { + name: string | null + registration_code: string | null + created_at: Date | null + updated_at: Date | null + partner_id: string | null + consumer_id: string | null +} + +export type ConsumerLegalMaxAggregateOutputType = { + name: string | null + registration_code: string | null + created_at: Date | null + updated_at: Date | null + partner_id: string | null + consumer_id: string | null +} + +export type ConsumerLegalCountAggregateOutputType = { + name: number + registration_code: number + created_at: number + updated_at: number + partner_id: number + consumer_id: number + _all: number +} + + +export type ConsumerLegalMinAggregateInputType = { + name?: true + registration_code?: true + created_at?: true + updated_at?: true + partner_id?: true + consumer_id?: true +} + +export type ConsumerLegalMaxAggregateInputType = { + name?: true + registration_code?: true + created_at?: true + updated_at?: true + partner_id?: true + consumer_id?: true +} + +export type ConsumerLegalCountAggregateInputType = { + name?: true + registration_code?: true + created_at?: true + updated_at?: true + partner_id?: true + consumer_id?: true + _all?: true +} + +export type ConsumerLegalAggregateArgs = { + /** + * Filter which ConsumerLegal to aggregate. + */ + where?: Prisma.ConsumerLegalWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of ConsumerLegals to fetch. + */ + orderBy?: Prisma.ConsumerLegalOrderByWithRelationInput | Prisma.ConsumerLegalOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the start position + */ + cursor?: Prisma.ConsumerLegalWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` ConsumerLegals 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` ConsumerLegals. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Count returned ConsumerLegals + **/ + _count?: true | ConsumerLegalCountAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the minimum value + **/ + _min?: ConsumerLegalMinAggregateInputType + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/aggregations Aggregation Docs} + * + * Select which fields to find the maximum value + **/ + _max?: ConsumerLegalMaxAggregateInputType +} + +export type GetConsumerLegalAggregateType = { + [P in keyof T & keyof AggregateConsumerLegal]: P extends '_count' | 'count' + ? T[P] extends true + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType +} + + + + +export type ConsumerLegalGroupByArgs = { + where?: Prisma.ConsumerLegalWhereInput + orderBy?: Prisma.ConsumerLegalOrderByWithAggregationInput | Prisma.ConsumerLegalOrderByWithAggregationInput[] + by: Prisma.ConsumerLegalScalarFieldEnum[] | Prisma.ConsumerLegalScalarFieldEnum + having?: Prisma.ConsumerLegalScalarWhereWithAggregatesInput + take?: number + skip?: number + _count?: ConsumerLegalCountAggregateInputType | true + _min?: ConsumerLegalMinAggregateInputType + _max?: ConsumerLegalMaxAggregateInputType +} + +export type ConsumerLegalGroupByOutputType = { + name: string + registration_code: string + created_at: Date + updated_at: Date + partner_id: string + consumer_id: string + _count: ConsumerLegalCountAggregateOutputType | null + _min: ConsumerLegalMinAggregateOutputType | null + _max: ConsumerLegalMaxAggregateOutputType | null +} + +export type GetConsumerLegalGroupByPayload = Prisma.PrismaPromise< + Array< + Prisma.PickEnumerable & + { + [P in ((keyof T) & (keyof ConsumerLegalGroupByOutputType))]: P extends '_count' + ? T[P] extends boolean + ? number + : Prisma.GetScalarType + : Prisma.GetScalarType + } + > + > + + + +export type ConsumerLegalWhereInput = { + AND?: Prisma.ConsumerLegalWhereInput | Prisma.ConsumerLegalWhereInput[] + OR?: Prisma.ConsumerLegalWhereInput[] + NOT?: Prisma.ConsumerLegalWhereInput | Prisma.ConsumerLegalWhereInput[] + name?: Prisma.StringFilter<"ConsumerLegal"> | string + registration_code?: Prisma.StringFilter<"ConsumerLegal"> | string + created_at?: Prisma.DateTimeFilter<"ConsumerLegal"> | Date | string + updated_at?: Prisma.DateTimeFilter<"ConsumerLegal"> | Date | string + partner_id?: Prisma.StringFilter<"ConsumerLegal"> | string + consumer_id?: Prisma.StringFilter<"ConsumerLegal"> | string + partner?: Prisma.XOR + consumer?: Prisma.XOR +} + +export type ConsumerLegalOrderByWithRelationInput = { + name?: Prisma.SortOrder + registration_code?: Prisma.SortOrder + created_at?: Prisma.SortOrder + updated_at?: Prisma.SortOrder + partner_id?: Prisma.SortOrder + consumer_id?: Prisma.SortOrder + partner?: Prisma.PartnerOrderByWithRelationInput + consumer?: Prisma.ConsumerOrderByWithRelationInput + _relevance?: Prisma.ConsumerLegalOrderByRelevanceInput +} + +export type ConsumerLegalWhereUniqueInput = Prisma.AtLeast<{ + consumer_id?: string + partner_id_registration_code?: Prisma.ConsumerLegalPartner_idRegistration_codeCompoundUniqueInput + AND?: Prisma.ConsumerLegalWhereInput | Prisma.ConsumerLegalWhereInput[] + OR?: Prisma.ConsumerLegalWhereInput[] + NOT?: Prisma.ConsumerLegalWhereInput | Prisma.ConsumerLegalWhereInput[] + name?: Prisma.StringFilter<"ConsumerLegal"> | string + registration_code?: Prisma.StringFilter<"ConsumerLegal"> | string + created_at?: Prisma.DateTimeFilter<"ConsumerLegal"> | Date | string + updated_at?: Prisma.DateTimeFilter<"ConsumerLegal"> | Date | string + partner_id?: Prisma.StringFilter<"ConsumerLegal"> | string + partner?: Prisma.XOR + consumer?: Prisma.XOR +}, "consumer_id" | "partner_id_registration_code"> + +export type ConsumerLegalOrderByWithAggregationInput = { + name?: Prisma.SortOrder + registration_code?: Prisma.SortOrder + created_at?: Prisma.SortOrder + updated_at?: Prisma.SortOrder + partner_id?: Prisma.SortOrder + consumer_id?: Prisma.SortOrder + _count?: Prisma.ConsumerLegalCountOrderByAggregateInput + _max?: Prisma.ConsumerLegalMaxOrderByAggregateInput + _min?: Prisma.ConsumerLegalMinOrderByAggregateInput +} + +export type ConsumerLegalScalarWhereWithAggregatesInput = { + AND?: Prisma.ConsumerLegalScalarWhereWithAggregatesInput | Prisma.ConsumerLegalScalarWhereWithAggregatesInput[] + OR?: Prisma.ConsumerLegalScalarWhereWithAggregatesInput[] + NOT?: Prisma.ConsumerLegalScalarWhereWithAggregatesInput | Prisma.ConsumerLegalScalarWhereWithAggregatesInput[] + name?: Prisma.StringWithAggregatesFilter<"ConsumerLegal"> | string + registration_code?: Prisma.StringWithAggregatesFilter<"ConsumerLegal"> | string + created_at?: Prisma.DateTimeWithAggregatesFilter<"ConsumerLegal"> | Date | string + updated_at?: Prisma.DateTimeWithAggregatesFilter<"ConsumerLegal"> | Date | string + partner_id?: Prisma.StringWithAggregatesFilter<"ConsumerLegal"> | string + consumer_id?: Prisma.StringWithAggregatesFilter<"ConsumerLegal"> | string +} + +export type ConsumerLegalCreateInput = { + name: string + registration_code: string + created_at?: Date | string + updated_at?: Date | string + partner: Prisma.PartnerCreateNestedOneWithoutConsumers_legalInput + consumer: Prisma.ConsumerCreateNestedOneWithoutLegalInput +} + +export type ConsumerLegalUncheckedCreateInput = { + name: string + registration_code: string + created_at?: Date | string + updated_at?: Date | string + partner_id: string + consumer_id: string +} + +export type ConsumerLegalUpdateInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + registration_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + partner?: Prisma.PartnerUpdateOneRequiredWithoutConsumers_legalNestedInput + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutLegalNestedInput +} + +export type ConsumerLegalUncheckedUpdateInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + registration_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + partner_id?: Prisma.StringFieldUpdateOperationsInput | string + consumer_id?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type ConsumerLegalCreateManyInput = { + name: string + registration_code: string + created_at?: Date | string + updated_at?: Date | string + partner_id: string + consumer_id: string +} + +export type ConsumerLegalUpdateManyMutationInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + registration_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string +} + +export type ConsumerLegalUncheckedUpdateManyInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + registration_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + partner_id?: Prisma.StringFieldUpdateOperationsInput | string + consumer_id?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type ConsumerLegalNullableScalarRelationFilter = { + is?: Prisma.ConsumerLegalWhereInput | null + isNot?: Prisma.ConsumerLegalWhereInput | null +} + +export type ConsumerLegalOrderByRelevanceInput = { + fields: Prisma.ConsumerLegalOrderByRelevanceFieldEnum | Prisma.ConsumerLegalOrderByRelevanceFieldEnum[] + sort: Prisma.SortOrder + search: string +} + +export type ConsumerLegalPartner_idRegistration_codeCompoundUniqueInput = { + partner_id: string + registration_code: string +} + +export type ConsumerLegalCountOrderByAggregateInput = { + name?: Prisma.SortOrder + registration_code?: Prisma.SortOrder + created_at?: Prisma.SortOrder + updated_at?: Prisma.SortOrder + partner_id?: Prisma.SortOrder + consumer_id?: Prisma.SortOrder +} + +export type ConsumerLegalMaxOrderByAggregateInput = { + name?: Prisma.SortOrder + registration_code?: Prisma.SortOrder + created_at?: Prisma.SortOrder + updated_at?: Prisma.SortOrder + partner_id?: Prisma.SortOrder + consumer_id?: Prisma.SortOrder +} + +export type ConsumerLegalMinOrderByAggregateInput = { + name?: Prisma.SortOrder + registration_code?: Prisma.SortOrder + created_at?: Prisma.SortOrder + updated_at?: Prisma.SortOrder + partner_id?: Prisma.SortOrder + consumer_id?: Prisma.SortOrder +} + +export type ConsumerLegalListRelationFilter = { + every?: Prisma.ConsumerLegalWhereInput + some?: Prisma.ConsumerLegalWhereInput + none?: Prisma.ConsumerLegalWhereInput +} + +export type ConsumerLegalOrderByRelationAggregateInput = { + _count?: Prisma.SortOrder +} + +export type ConsumerLegalCreateNestedOneWithoutConsumerInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerLegalCreateOrConnectWithoutConsumerInput + connect?: Prisma.ConsumerLegalWhereUniqueInput +} + +export type ConsumerLegalUncheckedCreateNestedOneWithoutConsumerInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerLegalCreateOrConnectWithoutConsumerInput + connect?: Prisma.ConsumerLegalWhereUniqueInput +} + +export type ConsumerLegalUpdateOneWithoutConsumerNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerLegalCreateOrConnectWithoutConsumerInput + upsert?: Prisma.ConsumerLegalUpsertWithoutConsumerInput + disconnect?: Prisma.ConsumerLegalWhereInput | boolean + delete?: Prisma.ConsumerLegalWhereInput | boolean + connect?: Prisma.ConsumerLegalWhereUniqueInput + update?: Prisma.XOR, Prisma.ConsumerLegalUncheckedUpdateWithoutConsumerInput> +} + +export type ConsumerLegalUncheckedUpdateOneWithoutConsumerNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ConsumerLegalCreateOrConnectWithoutConsumerInput + upsert?: Prisma.ConsumerLegalUpsertWithoutConsumerInput + disconnect?: Prisma.ConsumerLegalWhereInput | boolean + delete?: Prisma.ConsumerLegalWhereInput | boolean + connect?: Prisma.ConsumerLegalWhereUniqueInput + update?: Prisma.XOR, Prisma.ConsumerLegalUncheckedUpdateWithoutConsumerInput> +} + +export type ConsumerLegalCreateNestedManyWithoutPartnerInput = { + create?: Prisma.XOR | Prisma.ConsumerLegalCreateWithoutPartnerInput[] | Prisma.ConsumerLegalUncheckedCreateWithoutPartnerInput[] + connectOrCreate?: Prisma.ConsumerLegalCreateOrConnectWithoutPartnerInput | Prisma.ConsumerLegalCreateOrConnectWithoutPartnerInput[] + createMany?: Prisma.ConsumerLegalCreateManyPartnerInputEnvelope + connect?: Prisma.ConsumerLegalWhereUniqueInput | Prisma.ConsumerLegalWhereUniqueInput[] +} + +export type ConsumerLegalUncheckedCreateNestedManyWithoutPartnerInput = { + create?: Prisma.XOR | Prisma.ConsumerLegalCreateWithoutPartnerInput[] | Prisma.ConsumerLegalUncheckedCreateWithoutPartnerInput[] + connectOrCreate?: Prisma.ConsumerLegalCreateOrConnectWithoutPartnerInput | Prisma.ConsumerLegalCreateOrConnectWithoutPartnerInput[] + createMany?: Prisma.ConsumerLegalCreateManyPartnerInputEnvelope + connect?: Prisma.ConsumerLegalWhereUniqueInput | Prisma.ConsumerLegalWhereUniqueInput[] +} + +export type ConsumerLegalUpdateManyWithoutPartnerNestedInput = { + create?: Prisma.XOR | Prisma.ConsumerLegalCreateWithoutPartnerInput[] | Prisma.ConsumerLegalUncheckedCreateWithoutPartnerInput[] + connectOrCreate?: Prisma.ConsumerLegalCreateOrConnectWithoutPartnerInput | Prisma.ConsumerLegalCreateOrConnectWithoutPartnerInput[] + upsert?: Prisma.ConsumerLegalUpsertWithWhereUniqueWithoutPartnerInput | Prisma.ConsumerLegalUpsertWithWhereUniqueWithoutPartnerInput[] + createMany?: Prisma.ConsumerLegalCreateManyPartnerInputEnvelope + set?: Prisma.ConsumerLegalWhereUniqueInput | Prisma.ConsumerLegalWhereUniqueInput[] + disconnect?: Prisma.ConsumerLegalWhereUniqueInput | Prisma.ConsumerLegalWhereUniqueInput[] + delete?: Prisma.ConsumerLegalWhereUniqueInput | Prisma.ConsumerLegalWhereUniqueInput[] + connect?: Prisma.ConsumerLegalWhereUniqueInput | Prisma.ConsumerLegalWhereUniqueInput[] + update?: Prisma.ConsumerLegalUpdateWithWhereUniqueWithoutPartnerInput | Prisma.ConsumerLegalUpdateWithWhereUniqueWithoutPartnerInput[] + updateMany?: Prisma.ConsumerLegalUpdateManyWithWhereWithoutPartnerInput | Prisma.ConsumerLegalUpdateManyWithWhereWithoutPartnerInput[] + deleteMany?: Prisma.ConsumerLegalScalarWhereInput | Prisma.ConsumerLegalScalarWhereInput[] +} + +export type ConsumerLegalUncheckedUpdateManyWithoutPartnerNestedInput = { + create?: Prisma.XOR | Prisma.ConsumerLegalCreateWithoutPartnerInput[] | Prisma.ConsumerLegalUncheckedCreateWithoutPartnerInput[] + connectOrCreate?: Prisma.ConsumerLegalCreateOrConnectWithoutPartnerInput | Prisma.ConsumerLegalCreateOrConnectWithoutPartnerInput[] + upsert?: Prisma.ConsumerLegalUpsertWithWhereUniqueWithoutPartnerInput | Prisma.ConsumerLegalUpsertWithWhereUniqueWithoutPartnerInput[] + createMany?: Prisma.ConsumerLegalCreateManyPartnerInputEnvelope + set?: Prisma.ConsumerLegalWhereUniqueInput | Prisma.ConsumerLegalWhereUniqueInput[] + disconnect?: Prisma.ConsumerLegalWhereUniqueInput | Prisma.ConsumerLegalWhereUniqueInput[] + delete?: Prisma.ConsumerLegalWhereUniqueInput | Prisma.ConsumerLegalWhereUniqueInput[] + connect?: Prisma.ConsumerLegalWhereUniqueInput | Prisma.ConsumerLegalWhereUniqueInput[] + update?: Prisma.ConsumerLegalUpdateWithWhereUniqueWithoutPartnerInput | Prisma.ConsumerLegalUpdateWithWhereUniqueWithoutPartnerInput[] + updateMany?: Prisma.ConsumerLegalUpdateManyWithWhereWithoutPartnerInput | Prisma.ConsumerLegalUpdateManyWithWhereWithoutPartnerInput[] + deleteMany?: Prisma.ConsumerLegalScalarWhereInput | Prisma.ConsumerLegalScalarWhereInput[] +} + +export type ConsumerLegalCreateWithoutConsumerInput = { + name: string + registration_code: string + created_at?: Date | string + updated_at?: Date | string + partner: Prisma.PartnerCreateNestedOneWithoutConsumers_legalInput +} + +export type ConsumerLegalUncheckedCreateWithoutConsumerInput = { + name: string + registration_code: string + created_at?: Date | string + updated_at?: Date | string + partner_id: string +} + +export type ConsumerLegalCreateOrConnectWithoutConsumerInput = { + where: Prisma.ConsumerLegalWhereUniqueInput + create: Prisma.XOR +} + +export type ConsumerLegalUpsertWithoutConsumerInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.ConsumerLegalWhereInput +} + +export type ConsumerLegalUpdateToOneWithWhereWithoutConsumerInput = { + where?: Prisma.ConsumerLegalWhereInput + data: Prisma.XOR +} + +export type ConsumerLegalUpdateWithoutConsumerInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + registration_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + partner?: Prisma.PartnerUpdateOneRequiredWithoutConsumers_legalNestedInput +} + +export type ConsumerLegalUncheckedUpdateWithoutConsumerInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + registration_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + partner_id?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type ConsumerLegalCreateWithoutPartnerInput = { + name: string + registration_code: string + created_at?: Date | string + updated_at?: Date | string + consumer: Prisma.ConsumerCreateNestedOneWithoutLegalInput +} + +export type ConsumerLegalUncheckedCreateWithoutPartnerInput = { + name: string + registration_code: string + created_at?: Date | string + updated_at?: Date | string + consumer_id: string +} + +export type ConsumerLegalCreateOrConnectWithoutPartnerInput = { + where: Prisma.ConsumerLegalWhereUniqueInput + create: Prisma.XOR +} + +export type ConsumerLegalCreateManyPartnerInputEnvelope = { + data: Prisma.ConsumerLegalCreateManyPartnerInput | Prisma.ConsumerLegalCreateManyPartnerInput[] + skipDuplicates?: boolean +} + +export type ConsumerLegalUpsertWithWhereUniqueWithoutPartnerInput = { + where: Prisma.ConsumerLegalWhereUniqueInput + update: Prisma.XOR + create: Prisma.XOR +} + +export type ConsumerLegalUpdateWithWhereUniqueWithoutPartnerInput = { + where: Prisma.ConsumerLegalWhereUniqueInput + data: Prisma.XOR +} + +export type ConsumerLegalUpdateManyWithWhereWithoutPartnerInput = { + where: Prisma.ConsumerLegalScalarWhereInput + data: Prisma.XOR +} + +export type ConsumerLegalScalarWhereInput = { + AND?: Prisma.ConsumerLegalScalarWhereInput | Prisma.ConsumerLegalScalarWhereInput[] + OR?: Prisma.ConsumerLegalScalarWhereInput[] + NOT?: Prisma.ConsumerLegalScalarWhereInput | Prisma.ConsumerLegalScalarWhereInput[] + name?: Prisma.StringFilter<"ConsumerLegal"> | string + registration_code?: Prisma.StringFilter<"ConsumerLegal"> | string + created_at?: Prisma.DateTimeFilter<"ConsumerLegal"> | Date | string + updated_at?: Prisma.DateTimeFilter<"ConsumerLegal"> | Date | string + partner_id?: Prisma.StringFilter<"ConsumerLegal"> | string + consumer_id?: Prisma.StringFilter<"ConsumerLegal"> | string +} + +export type ConsumerLegalCreateManyPartnerInput = { + name: string + registration_code: string + created_at?: Date | string + updated_at?: Date | string + consumer_id: string +} + +export type ConsumerLegalUpdateWithoutPartnerInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + registration_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + consumer?: Prisma.ConsumerUpdateOneRequiredWithoutLegalNestedInput +} + +export type ConsumerLegalUncheckedUpdateWithoutPartnerInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + registration_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + consumer_id?: Prisma.StringFieldUpdateOperationsInput | string +} + +export type ConsumerLegalUncheckedUpdateManyWithoutPartnerInput = { + name?: Prisma.StringFieldUpdateOperationsInput | string + registration_code?: Prisma.StringFieldUpdateOperationsInput | string + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + consumer_id?: Prisma.StringFieldUpdateOperationsInput | string +} + + + +export type ConsumerLegalSelect = runtime.Types.Extensions.GetSelect<{ + name?: boolean + registration_code?: boolean + created_at?: boolean + updated_at?: boolean + partner_id?: boolean + consumer_id?: boolean + partner?: boolean | Prisma.PartnerDefaultArgs + consumer?: boolean | Prisma.ConsumerDefaultArgs +}, ExtArgs["result"]["consumerLegal"]> + + + +export type ConsumerLegalSelectScalar = { + name?: boolean + registration_code?: boolean + created_at?: boolean + updated_at?: boolean + partner_id?: boolean + consumer_id?: boolean +} + +export type ConsumerLegalOmit = runtime.Types.Extensions.GetOmit<"name" | "registration_code" | "created_at" | "updated_at" | "partner_id" | "consumer_id", ExtArgs["result"]["consumerLegal"]> +export type ConsumerLegalInclude = { + partner?: boolean | Prisma.PartnerDefaultArgs + consumer?: boolean | Prisma.ConsumerDefaultArgs +} + +export type $ConsumerLegalPayload = { + name: "ConsumerLegal" + objects: { + partner: Prisma.$PartnerPayload + consumer: Prisma.$ConsumerPayload + } + scalars: runtime.Types.Extensions.GetPayloadResult<{ + name: string + registration_code: string + created_at: Date + updated_at: Date + partner_id: string + consumer_id: string + }, ExtArgs["result"]["consumerLegal"]> + composites: {} +} + +export type ConsumerLegalGetPayload = runtime.Types.Result.GetResult + +export type ConsumerLegalCountArgs = + Omit & { + select?: ConsumerLegalCountAggregateInputType | true + } + +export interface ConsumerLegalDelegate { + [K: symbol]: { types: Prisma.TypeMap['model']['ConsumerLegal'], meta: { name: 'ConsumerLegal' } } + /** + * Find zero or one ConsumerLegal that matches the filter. + * @param {ConsumerLegalFindUniqueArgs} args - Arguments to find a ConsumerLegal + * @example + * // Get one ConsumerLegal + * const consumerLegal = await prisma.consumerLegal.findUnique({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUnique(args: Prisma.SelectSubset>): Prisma.Prisma__ConsumerLegalClient, T, "findUnique", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find one ConsumerLegal that matches the filter or throw an error with `error.code='P2025'` + * if no matches were found. + * @param {ConsumerLegalFindUniqueOrThrowArgs} args - Arguments to find a ConsumerLegal + * @example + * // Get one ConsumerLegal + * const consumerLegal = await prisma.consumerLegal.findUniqueOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findUniqueOrThrow(args: Prisma.SelectSubset>): Prisma.Prisma__ConsumerLegalClient, T, "findUniqueOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find the first ConsumerLegal 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 {ConsumerLegalFindFirstArgs} args - Arguments to find a ConsumerLegal + * @example + * // Get one ConsumerLegal + * const consumerLegal = await prisma.consumerLegal.findFirst({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirst(args?: Prisma.SelectSubset>): Prisma.Prisma__ConsumerLegalClient, T, "findFirst", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + + /** + * Find the first ConsumerLegal 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 {ConsumerLegalFindFirstOrThrowArgs} args - Arguments to find a ConsumerLegal + * @example + * // Get one ConsumerLegal + * const consumerLegal = await prisma.consumerLegal.findFirstOrThrow({ + * where: { + * // ... provide filter here + * } + * }) + */ + findFirstOrThrow(args?: Prisma.SelectSubset>): Prisma.Prisma__ConsumerLegalClient, T, "findFirstOrThrow", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Find zero or more ConsumerLegals 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 {ConsumerLegalFindManyArgs} args - Arguments to filter and select certain fields only. + * @example + * // Get all ConsumerLegals + * const consumerLegals = await prisma.consumerLegal.findMany() + * + * // Get first 10 ConsumerLegals + * const consumerLegals = await prisma.consumerLegal.findMany({ take: 10 }) + * + * // Only select the `name` + * const consumerLegalWithNameOnly = await prisma.consumerLegal.findMany({ select: { name: true } }) + * + */ + findMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions>> + + /** + * Create a ConsumerLegal. + * @param {ConsumerLegalCreateArgs} args - Arguments to create a ConsumerLegal. + * @example + * // Create one ConsumerLegal + * const ConsumerLegal = await prisma.consumerLegal.create({ + * data: { + * // ... data to create a ConsumerLegal + * } + * }) + * + */ + create(args: Prisma.SelectSubset>): Prisma.Prisma__ConsumerLegalClient, T, "create", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Create many ConsumerLegals. + * @param {ConsumerLegalCreateManyArgs} args - Arguments to create many ConsumerLegals. + * @example + * // Create many ConsumerLegals + * const consumerLegal = await prisma.consumerLegal.createMany({ + * data: [ + * // ... provide data here + * ] + * }) + * + */ + createMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Delete a ConsumerLegal. + * @param {ConsumerLegalDeleteArgs} args - Arguments to delete one ConsumerLegal. + * @example + * // Delete one ConsumerLegal + * const ConsumerLegal = await prisma.consumerLegal.delete({ + * where: { + * // ... filter to delete one ConsumerLegal + * } + * }) + * + */ + delete(args: Prisma.SelectSubset>): Prisma.Prisma__ConsumerLegalClient, T, "delete", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Update one ConsumerLegal. + * @param {ConsumerLegalUpdateArgs} args - Arguments to update one ConsumerLegal. + * @example + * // Update one ConsumerLegal + * const consumerLegal = await prisma.consumerLegal.update({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + update(args: Prisma.SelectSubset>): Prisma.Prisma__ConsumerLegalClient, T, "update", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + /** + * Delete zero or more ConsumerLegals. + * @param {ConsumerLegalDeleteManyArgs} args - Arguments to filter ConsumerLegals to delete. + * @example + * // Delete a few ConsumerLegals + * const { count } = await prisma.consumerLegal.deleteMany({ + * where: { + * // ... provide filter here + * } + * }) + * + */ + deleteMany(args?: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Update zero or more ConsumerLegals. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ConsumerLegalUpdateManyArgs} args - Arguments to update one or more rows. + * @example + * // Update many ConsumerLegals + * const consumerLegal = await prisma.consumerLegal.updateMany({ + * where: { + * // ... provide filter here + * }, + * data: { + * // ... provide data here + * } + * }) + * + */ + updateMany(args: Prisma.SelectSubset>): Prisma.PrismaPromise + + /** + * Create or update one ConsumerLegal. + * @param {ConsumerLegalUpsertArgs} args - Arguments to update or create a ConsumerLegal. + * @example + * // Update or create a ConsumerLegal + * const consumerLegal = await prisma.consumerLegal.upsert({ + * create: { + * // ... data to create a ConsumerLegal + * }, + * update: { + * // ... in case it already exists, update + * }, + * where: { + * // ... the filter for the ConsumerLegal we want to update + * } + * }) + */ + upsert(args: Prisma.SelectSubset>): Prisma.Prisma__ConsumerLegalClient, T, "upsert", GlobalOmitOptions>, never, ExtArgs, GlobalOmitOptions> + + + /** + * Count the number of ConsumerLegals. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ConsumerLegalCountArgs} args - Arguments to filter ConsumerLegals to count. + * @example + * // Count the number of ConsumerLegals + * const count = await prisma.consumerLegal.count({ + * where: { + * // ... the filter for the ConsumerLegals 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 ConsumerLegal. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ConsumerLegalAggregateArgs} 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 ConsumerLegal. + * Note, that providing `undefined` is treated as the value not being there. + * Read more here: https://pris.ly/d/null-undefined + * @param {ConsumerLegalGroupByArgs} 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 ConsumerLegalGroupByArgs, + HasSelectOrTake extends Prisma.Or< + Prisma.Extends<'skip', Prisma.Keys>, + Prisma.Extends<'take', Prisma.Keys> + >, + OrderByArg extends Prisma.True extends HasSelectOrTake + ? { orderBy: ConsumerLegalGroupByArgs['orderBy'] } + : { orderBy?: ConsumerLegalGroupByArgs['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 ? GetConsumerLegalGroupByPayload : Prisma.PrismaPromise +/** + * Fields of the ConsumerLegal model + */ +readonly fields: ConsumerLegalFieldRefs; +} + +/** + * The delegate class that acts as a "Promise-like" for ConsumerLegal. + * 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__ConsumerLegalClient extends Prisma.PrismaPromise { + readonly [Symbol.toStringTag]: "PrismaPromise" + partner = {}>(args?: Prisma.Subset>): Prisma.Prisma__PartnerClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + consumer = {}>(args?: Prisma.Subset>): Prisma.Prisma__ConsumerClient, 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 ConsumerLegal model + */ +export interface ConsumerLegalFieldRefs { + readonly name: Prisma.FieldRef<"ConsumerLegal", 'String'> + readonly registration_code: Prisma.FieldRef<"ConsumerLegal", 'String'> + readonly created_at: Prisma.FieldRef<"ConsumerLegal", 'DateTime'> + readonly updated_at: Prisma.FieldRef<"ConsumerLegal", 'DateTime'> + readonly partner_id: Prisma.FieldRef<"ConsumerLegal", 'String'> + readonly consumer_id: Prisma.FieldRef<"ConsumerLegal", 'String'> +} + + +// Custom InputTypes +/** + * ConsumerLegal findUnique + */ +export type ConsumerLegalFindUniqueArgs = { + /** + * Select specific fields to fetch from the ConsumerLegal + */ + select?: Prisma.ConsumerLegalSelect | null + /** + * Omit specific fields from the ConsumerLegal + */ + omit?: Prisma.ConsumerLegalOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerLegalInclude | null + /** + * Filter, which ConsumerLegal to fetch. + */ + where: Prisma.ConsumerLegalWhereUniqueInput +} + +/** + * ConsumerLegal findUniqueOrThrow + */ +export type ConsumerLegalFindUniqueOrThrowArgs = { + /** + * Select specific fields to fetch from the ConsumerLegal + */ + select?: Prisma.ConsumerLegalSelect | null + /** + * Omit specific fields from the ConsumerLegal + */ + omit?: Prisma.ConsumerLegalOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerLegalInclude | null + /** + * Filter, which ConsumerLegal to fetch. + */ + where: Prisma.ConsumerLegalWhereUniqueInput +} + +/** + * ConsumerLegal findFirst + */ +export type ConsumerLegalFindFirstArgs = { + /** + * Select specific fields to fetch from the ConsumerLegal + */ + select?: Prisma.ConsumerLegalSelect | null + /** + * Omit specific fields from the ConsumerLegal + */ + omit?: Prisma.ConsumerLegalOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerLegalInclude | null + /** + * Filter, which ConsumerLegal to fetch. + */ + where?: Prisma.ConsumerLegalWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of ConsumerLegals to fetch. + */ + orderBy?: Prisma.ConsumerLegalOrderByWithRelationInput | Prisma.ConsumerLegalOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for ConsumerLegals. + */ + cursor?: Prisma.ConsumerLegalWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` ConsumerLegals 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` ConsumerLegals. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of ConsumerLegals. + */ + distinct?: Prisma.ConsumerLegalScalarFieldEnum | Prisma.ConsumerLegalScalarFieldEnum[] +} + +/** + * ConsumerLegal findFirstOrThrow + */ +export type ConsumerLegalFindFirstOrThrowArgs = { + /** + * Select specific fields to fetch from the ConsumerLegal + */ + select?: Prisma.ConsumerLegalSelect | null + /** + * Omit specific fields from the ConsumerLegal + */ + omit?: Prisma.ConsumerLegalOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerLegalInclude | null + /** + * Filter, which ConsumerLegal to fetch. + */ + where?: Prisma.ConsumerLegalWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of ConsumerLegals to fetch. + */ + orderBy?: Prisma.ConsumerLegalOrderByWithRelationInput | Prisma.ConsumerLegalOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for searching for ConsumerLegals. + */ + cursor?: Prisma.ConsumerLegalWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` ConsumerLegals 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` ConsumerLegals. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of ConsumerLegals. + */ + distinct?: Prisma.ConsumerLegalScalarFieldEnum | Prisma.ConsumerLegalScalarFieldEnum[] +} + +/** + * ConsumerLegal findMany + */ +export type ConsumerLegalFindManyArgs = { + /** + * Select specific fields to fetch from the ConsumerLegal + */ + select?: Prisma.ConsumerLegalSelect | null + /** + * Omit specific fields from the ConsumerLegal + */ + omit?: Prisma.ConsumerLegalOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerLegalInclude | null + /** + * Filter, which ConsumerLegals to fetch. + */ + where?: Prisma.ConsumerLegalWhereInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/sorting Sorting Docs} + * + * Determine the order of ConsumerLegals to fetch. + */ + orderBy?: Prisma.ConsumerLegalOrderByWithRelationInput | Prisma.ConsumerLegalOrderByWithRelationInput[] + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination#cursor-based-pagination Cursor Docs} + * + * Sets the position for listing ConsumerLegals. + */ + cursor?: Prisma.ConsumerLegalWhereUniqueInput + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/pagination Pagination Docs} + * + * Take `±n` ConsumerLegals 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` ConsumerLegals. + */ + skip?: number + /** + * {@link https://www.prisma.io/docs/concepts/components/prisma-client/distinct Distinct Docs} + * + * Filter by unique combinations of ConsumerLegals. + */ + distinct?: Prisma.ConsumerLegalScalarFieldEnum | Prisma.ConsumerLegalScalarFieldEnum[] +} + +/** + * ConsumerLegal create + */ +export type ConsumerLegalCreateArgs = { + /** + * Select specific fields to fetch from the ConsumerLegal + */ + select?: Prisma.ConsumerLegalSelect | null + /** + * Omit specific fields from the ConsumerLegal + */ + omit?: Prisma.ConsumerLegalOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerLegalInclude | null + /** + * The data needed to create a ConsumerLegal. + */ + data: Prisma.XOR +} + +/** + * ConsumerLegal createMany + */ +export type ConsumerLegalCreateManyArgs = { + /** + * The data used to create many ConsumerLegals. + */ + data: Prisma.ConsumerLegalCreateManyInput | Prisma.ConsumerLegalCreateManyInput[] + skipDuplicates?: boolean +} + +/** + * ConsumerLegal update + */ +export type ConsumerLegalUpdateArgs = { + /** + * Select specific fields to fetch from the ConsumerLegal + */ + select?: Prisma.ConsumerLegalSelect | null + /** + * Omit specific fields from the ConsumerLegal + */ + omit?: Prisma.ConsumerLegalOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerLegalInclude | null + /** + * The data needed to update a ConsumerLegal. + */ + data: Prisma.XOR + /** + * Choose, which ConsumerLegal to update. + */ + where: Prisma.ConsumerLegalWhereUniqueInput +} + +/** + * ConsumerLegal updateMany + */ +export type ConsumerLegalUpdateManyArgs = { + /** + * The data used to update ConsumerLegals. + */ + data: Prisma.XOR + /** + * Filter which ConsumerLegals to update + */ + where?: Prisma.ConsumerLegalWhereInput + /** + * Limit how many ConsumerLegals to update. + */ + limit?: number +} + +/** + * ConsumerLegal upsert + */ +export type ConsumerLegalUpsertArgs = { + /** + * Select specific fields to fetch from the ConsumerLegal + */ + select?: Prisma.ConsumerLegalSelect | null + /** + * Omit specific fields from the ConsumerLegal + */ + omit?: Prisma.ConsumerLegalOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerLegalInclude | null + /** + * The filter to search for the ConsumerLegal to update in case it exists. + */ + where: Prisma.ConsumerLegalWhereUniqueInput + /** + * In case the ConsumerLegal found by the `where` argument doesn't exist, create a new ConsumerLegal with this data. + */ + create: Prisma.XOR + /** + * In case the ConsumerLegal was found with the provided `where` argument, update it with this data. + */ + update: Prisma.XOR +} + +/** + * ConsumerLegal delete + */ +export type ConsumerLegalDeleteArgs = { + /** + * Select specific fields to fetch from the ConsumerLegal + */ + select?: Prisma.ConsumerLegalSelect | null + /** + * Omit specific fields from the ConsumerLegal + */ + omit?: Prisma.ConsumerLegalOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerLegalInclude | null + /** + * Filter which ConsumerLegal to delete. + */ + where: Prisma.ConsumerLegalWhereUniqueInput +} + +/** + * ConsumerLegal deleteMany + */ +export type ConsumerLegalDeleteManyArgs = { + /** + * Filter which ConsumerLegals to delete + */ + where?: Prisma.ConsumerLegalWhereInput + /** + * Limit how many ConsumerLegals to delete. + */ + limit?: number +} + +/** + * ConsumerLegal without action + */ +export type ConsumerLegalDefaultArgs = { + /** + * Select specific fields to fetch from the ConsumerLegal + */ + select?: Prisma.ConsumerLegalSelect | null + /** + * Omit specific fields from the ConsumerLegal + */ + omit?: Prisma.ConsumerLegalOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerLegalInclude | null +} diff --git a/src/generated/prisma/models/Customer.ts b/src/generated/prisma/models/Customer.ts index 521f201..6c32a8b 100644 --- a/src/generated/prisma/models/Customer.ts +++ b/src/generated/prisma/models/Customer.ts @@ -27,29 +27,28 @@ export type AggregateCustomer = { export type CustomerMinAggregateOutputType = { id: string | null is_favorite: boolean | null + type: $Enums.CustomerType | null created_at: Date | null updated_at: Date | null deleted_at: Date | null - type: $Enums.CustomerType | null } export type CustomerMaxAggregateOutputType = { id: string | null is_favorite: boolean | null + type: $Enums.CustomerType | null created_at: Date | null updated_at: Date | null deleted_at: Date | null - type: $Enums.CustomerType | null } export type CustomerCountAggregateOutputType = { id: number is_favorite: number + type: number created_at: number updated_at: number deleted_at: number - type: number - unknown_customer: number _all: number } @@ -57,29 +56,28 @@ export type CustomerCountAggregateOutputType = { export type CustomerMinAggregateInputType = { id?: true is_favorite?: true + type?: true created_at?: true updated_at?: true deleted_at?: true - type?: true } export type CustomerMaxAggregateInputType = { id?: true is_favorite?: true + type?: true created_at?: true updated_at?: true deleted_at?: true - type?: true } export type CustomerCountAggregateInputType = { id?: true is_favorite?: true + type?: true created_at?: true updated_at?: true deleted_at?: true - type?: true - unknown_customer?: true _all?: true } @@ -158,11 +156,10 @@ export type CustomerGroupByArgs | string is_favorite?: Prisma.BoolNullableFilter<"Customer"> | boolean | null + type?: Prisma.EnumCustomerTypeFilter<"Customer"> | $Enums.CustomerType created_at?: Prisma.DateTimeFilter<"Customer"> | Date | string updated_at?: Prisma.DateTimeFilter<"Customer"> | Date | string deleted_at?: Prisma.DateTimeNullableFilter<"Customer"> | Date | string | null - type?: Prisma.EnumCustomerTypeFilter<"Customer"> | $Enums.CustomerType - unknown_customer?: Prisma.JsonNullableFilter<"Customer"> - customer_individual?: Prisma.XOR | null - customer_legal?: Prisma.XOR | null + individual?: Prisma.XOR | null + legal?: Prisma.XOR | null sales_invoices?: Prisma.SalesInvoiceListRelationFilter } export type CustomerOrderByWithRelationInput = { id?: Prisma.SortOrder is_favorite?: Prisma.SortOrderInput | Prisma.SortOrder + type?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder deleted_at?: Prisma.SortOrderInput | Prisma.SortOrder - type?: Prisma.SortOrder - unknown_customer?: Prisma.SortOrderInput | Prisma.SortOrder - customer_individual?: Prisma.CustomerIndividualOrderByWithRelationInput - customer_legal?: Prisma.CustomerLegalOrderByWithRelationInput + individual?: Prisma.CustomerIndividualOrderByWithRelationInput + legal?: Prisma.CustomerLegalOrderByWithRelationInput sales_invoices?: Prisma.SalesInvoiceOrderByRelationAggregateInput _relevance?: Prisma.CustomerOrderByRelevanceInput } @@ -219,24 +214,22 @@ export type CustomerWhereUniqueInput = Prisma.AtLeast<{ OR?: Prisma.CustomerWhereInput[] NOT?: Prisma.CustomerWhereInput | Prisma.CustomerWhereInput[] is_favorite?: Prisma.BoolNullableFilter<"Customer"> | boolean | null + type?: Prisma.EnumCustomerTypeFilter<"Customer"> | $Enums.CustomerType created_at?: Prisma.DateTimeFilter<"Customer"> | Date | string updated_at?: Prisma.DateTimeFilter<"Customer"> | Date | string deleted_at?: Prisma.DateTimeNullableFilter<"Customer"> | Date | string | null - type?: Prisma.EnumCustomerTypeFilter<"Customer"> | $Enums.CustomerType - unknown_customer?: Prisma.JsonNullableFilter<"Customer"> - customer_individual?: Prisma.XOR | null - customer_legal?: Prisma.XOR | null + individual?: Prisma.XOR | null + legal?: Prisma.XOR | null sales_invoices?: Prisma.SalesInvoiceListRelationFilter }, "id"> export type CustomerOrderByWithAggregationInput = { id?: Prisma.SortOrder is_favorite?: Prisma.SortOrderInput | Prisma.SortOrder + type?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder deleted_at?: Prisma.SortOrderInput | Prisma.SortOrder - type?: Prisma.SortOrder - unknown_customer?: Prisma.SortOrderInput | Prisma.SortOrder _count?: Prisma.CustomerCountOrderByAggregateInput _max?: Prisma.CustomerMaxOrderByAggregateInput _min?: Prisma.CustomerMinOrderByAggregateInput @@ -248,93 +241,85 @@ export type CustomerScalarWhereWithAggregatesInput = { NOT?: Prisma.CustomerScalarWhereWithAggregatesInput | Prisma.CustomerScalarWhereWithAggregatesInput[] id?: Prisma.StringWithAggregatesFilter<"Customer"> | string is_favorite?: Prisma.BoolNullableWithAggregatesFilter<"Customer"> | boolean | null + type?: Prisma.EnumCustomerTypeWithAggregatesFilter<"Customer"> | $Enums.CustomerType created_at?: Prisma.DateTimeWithAggregatesFilter<"Customer"> | Date | string updated_at?: Prisma.DateTimeWithAggregatesFilter<"Customer"> | Date | string deleted_at?: Prisma.DateTimeNullableWithAggregatesFilter<"Customer"> | Date | string | null - type?: Prisma.EnumCustomerTypeWithAggregatesFilter<"Customer"> | $Enums.CustomerType - unknown_customer?: Prisma.JsonNullableWithAggregatesFilter<"Customer"> } export type CustomerCreateInput = { id?: string is_favorite?: boolean | null + type: $Enums.CustomerType created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - type: $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_individual?: Prisma.CustomerIndividualCreateNestedOneWithoutCustomerInput - customer_legal?: Prisma.CustomerLegalCreateNestedOneWithoutCustomerInput + individual?: Prisma.CustomerIndividualCreateNestedOneWithoutCustomerInput + legal?: Prisma.CustomerLegalCreateNestedOneWithoutCustomerInput sales_invoices?: Prisma.SalesInvoiceCreateNestedManyWithoutCustomerInput } export type CustomerUncheckedCreateInput = { id?: string is_favorite?: boolean | null + type: $Enums.CustomerType created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - type: $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_individual?: Prisma.CustomerIndividualUncheckedCreateNestedOneWithoutCustomerInput - customer_legal?: Prisma.CustomerLegalUncheckedCreateNestedOneWithoutCustomerInput + individual?: Prisma.CustomerIndividualUncheckedCreateNestedOneWithoutCustomerInput + legal?: Prisma.CustomerLegalUncheckedCreateNestedOneWithoutCustomerInput sales_invoices?: Prisma.SalesInvoiceUncheckedCreateNestedManyWithoutCustomerInput } export type CustomerUpdateInput = { id?: Prisma.StringFieldUpdateOperationsInput | string is_favorite?: Prisma.NullableBoolFieldUpdateOperationsInput | boolean | null + type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_individual?: Prisma.CustomerIndividualUpdateOneWithoutCustomerNestedInput - customer_legal?: Prisma.CustomerLegalUpdateOneWithoutCustomerNestedInput + individual?: Prisma.CustomerIndividualUpdateOneWithoutCustomerNestedInput + legal?: Prisma.CustomerLegalUpdateOneWithoutCustomerNestedInput sales_invoices?: Prisma.SalesInvoiceUpdateManyWithoutCustomerNestedInput } export type CustomerUncheckedUpdateInput = { id?: Prisma.StringFieldUpdateOperationsInput | string is_favorite?: Prisma.NullableBoolFieldUpdateOperationsInput | boolean | null + type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_individual?: Prisma.CustomerIndividualUncheckedUpdateOneWithoutCustomerNestedInput - customer_legal?: Prisma.CustomerLegalUncheckedUpdateOneWithoutCustomerNestedInput + individual?: Prisma.CustomerIndividualUncheckedUpdateOneWithoutCustomerNestedInput + legal?: Prisma.CustomerLegalUncheckedUpdateOneWithoutCustomerNestedInput sales_invoices?: Prisma.SalesInvoiceUncheckedUpdateManyWithoutCustomerNestedInput } export type CustomerCreateManyInput = { id?: string is_favorite?: boolean | null + type: $Enums.CustomerType created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - type: $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue } export type CustomerUpdateManyMutationInput = { id?: Prisma.StringFieldUpdateOperationsInput | string is_favorite?: Prisma.NullableBoolFieldUpdateOperationsInput | boolean | null + type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue } export type CustomerUncheckedUpdateManyInput = { id?: Prisma.StringFieldUpdateOperationsInput | string is_favorite?: Prisma.NullableBoolFieldUpdateOperationsInput | boolean | null + type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue } export type CustomerOrderByRelevanceInput = { @@ -346,29 +331,28 @@ export type CustomerOrderByRelevanceInput = { export type CustomerCountOrderByAggregateInput = { id?: Prisma.SortOrder is_favorite?: Prisma.SortOrder + type?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder deleted_at?: Prisma.SortOrder - type?: Prisma.SortOrder - unknown_customer?: Prisma.SortOrder } export type CustomerMaxOrderByAggregateInput = { id?: Prisma.SortOrder is_favorite?: Prisma.SortOrder + type?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder deleted_at?: Prisma.SortOrder - type?: Prisma.SortOrder } export type CustomerMinOrderByAggregateInput = { id?: Prisma.SortOrder is_favorite?: Prisma.SortOrder + type?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder deleted_at?: Prisma.SortOrder - type?: Prisma.SortOrder } export type CustomerScalarRelationFilter = { @@ -385,40 +369,40 @@ export type NullableBoolFieldUpdateOperationsInput = { set?: boolean | null } -export type NullableDateTimeFieldUpdateOperationsInput = { - set?: Date | string | null -} - export type EnumCustomerTypeFieldUpdateOperationsInput = { set?: $Enums.CustomerType } -export type CustomerCreateNestedOneWithoutCustomer_individualInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.CustomerCreateOrConnectWithoutCustomer_individualInput +export type NullableDateTimeFieldUpdateOperationsInput = { + set?: Date | string | null +} + +export type CustomerCreateNestedOneWithoutIndividualInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.CustomerCreateOrConnectWithoutIndividualInput connect?: Prisma.CustomerWhereUniqueInput } -export type CustomerUpdateOneRequiredWithoutCustomer_individualNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.CustomerCreateOrConnectWithoutCustomer_individualInput - upsert?: Prisma.CustomerUpsertWithoutCustomer_individualInput +export type CustomerUpdateOneRequiredWithoutIndividualNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.CustomerCreateOrConnectWithoutIndividualInput + upsert?: Prisma.CustomerUpsertWithoutIndividualInput connect?: Prisma.CustomerWhereUniqueInput - update?: Prisma.XOR, Prisma.CustomerUncheckedUpdateWithoutCustomer_individualInput> + update?: Prisma.XOR, Prisma.CustomerUncheckedUpdateWithoutIndividualInput> } -export type CustomerCreateNestedOneWithoutCustomer_legalInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.CustomerCreateOrConnectWithoutCustomer_legalInput +export type CustomerCreateNestedOneWithoutLegalInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.CustomerCreateOrConnectWithoutLegalInput connect?: Prisma.CustomerWhereUniqueInput } -export type CustomerUpdateOneRequiredWithoutCustomer_legalNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.CustomerCreateOrConnectWithoutCustomer_legalInput - upsert?: Prisma.CustomerUpsertWithoutCustomer_legalInput +export type CustomerUpdateOneRequiredWithoutLegalNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.CustomerCreateOrConnectWithoutLegalInput + upsert?: Prisma.CustomerUpsertWithoutLegalInput connect?: Prisma.CustomerWhereUniqueInput - update?: Prisma.XOR, Prisma.CustomerUncheckedUpdateWithoutCustomer_legalInput> + update?: Prisma.XOR, Prisma.CustomerUncheckedUpdateWithoutLegalInput> } export type CustomerCreateNestedOneWithoutSales_invoicesInput = { @@ -437,156 +421,146 @@ export type CustomerUpdateOneWithoutSales_invoicesNestedInput = { update?: Prisma.XOR, Prisma.CustomerUncheckedUpdateWithoutSales_invoicesInput> } -export type CustomerCreateWithoutCustomer_individualInput = { +export type CustomerCreateWithoutIndividualInput = { id?: string is_favorite?: boolean | null + type: $Enums.CustomerType created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - type: $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_legal?: Prisma.CustomerLegalCreateNestedOneWithoutCustomerInput + legal?: Prisma.CustomerLegalCreateNestedOneWithoutCustomerInput sales_invoices?: Prisma.SalesInvoiceCreateNestedManyWithoutCustomerInput } -export type CustomerUncheckedCreateWithoutCustomer_individualInput = { +export type CustomerUncheckedCreateWithoutIndividualInput = { id?: string is_favorite?: boolean | null + type: $Enums.CustomerType created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - type: $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_legal?: Prisma.CustomerLegalUncheckedCreateNestedOneWithoutCustomerInput + legal?: Prisma.CustomerLegalUncheckedCreateNestedOneWithoutCustomerInput sales_invoices?: Prisma.SalesInvoiceUncheckedCreateNestedManyWithoutCustomerInput } -export type CustomerCreateOrConnectWithoutCustomer_individualInput = { +export type CustomerCreateOrConnectWithoutIndividualInput = { where: Prisma.CustomerWhereUniqueInput - create: Prisma.XOR + create: Prisma.XOR } -export type CustomerUpsertWithoutCustomer_individualInput = { - update: Prisma.XOR - create: Prisma.XOR +export type CustomerUpsertWithoutIndividualInput = { + update: Prisma.XOR + create: Prisma.XOR where?: Prisma.CustomerWhereInput } -export type CustomerUpdateToOneWithWhereWithoutCustomer_individualInput = { +export type CustomerUpdateToOneWithWhereWithoutIndividualInput = { where?: Prisma.CustomerWhereInput - data: Prisma.XOR + data: Prisma.XOR } -export type CustomerUpdateWithoutCustomer_individualInput = { +export type CustomerUpdateWithoutIndividualInput = { id?: Prisma.StringFieldUpdateOperationsInput | string is_favorite?: Prisma.NullableBoolFieldUpdateOperationsInput | boolean | null + type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_legal?: Prisma.CustomerLegalUpdateOneWithoutCustomerNestedInput + legal?: Prisma.CustomerLegalUpdateOneWithoutCustomerNestedInput sales_invoices?: Prisma.SalesInvoiceUpdateManyWithoutCustomerNestedInput } -export type CustomerUncheckedUpdateWithoutCustomer_individualInput = { +export type CustomerUncheckedUpdateWithoutIndividualInput = { id?: Prisma.StringFieldUpdateOperationsInput | string is_favorite?: Prisma.NullableBoolFieldUpdateOperationsInput | boolean | null + type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_legal?: Prisma.CustomerLegalUncheckedUpdateOneWithoutCustomerNestedInput + legal?: Prisma.CustomerLegalUncheckedUpdateOneWithoutCustomerNestedInput sales_invoices?: Prisma.SalesInvoiceUncheckedUpdateManyWithoutCustomerNestedInput } -export type CustomerCreateWithoutCustomer_legalInput = { +export type CustomerCreateWithoutLegalInput = { id?: string is_favorite?: boolean | null + type: $Enums.CustomerType created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - type: $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_individual?: Prisma.CustomerIndividualCreateNestedOneWithoutCustomerInput + individual?: Prisma.CustomerIndividualCreateNestedOneWithoutCustomerInput sales_invoices?: Prisma.SalesInvoiceCreateNestedManyWithoutCustomerInput } -export type CustomerUncheckedCreateWithoutCustomer_legalInput = { +export type CustomerUncheckedCreateWithoutLegalInput = { id?: string is_favorite?: boolean | null + type: $Enums.CustomerType created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - type: $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_individual?: Prisma.CustomerIndividualUncheckedCreateNestedOneWithoutCustomerInput + individual?: Prisma.CustomerIndividualUncheckedCreateNestedOneWithoutCustomerInput sales_invoices?: Prisma.SalesInvoiceUncheckedCreateNestedManyWithoutCustomerInput } -export type CustomerCreateOrConnectWithoutCustomer_legalInput = { +export type CustomerCreateOrConnectWithoutLegalInput = { where: Prisma.CustomerWhereUniqueInput - create: Prisma.XOR + create: Prisma.XOR } -export type CustomerUpsertWithoutCustomer_legalInput = { - update: Prisma.XOR - create: Prisma.XOR +export type CustomerUpsertWithoutLegalInput = { + update: Prisma.XOR + create: Prisma.XOR where?: Prisma.CustomerWhereInput } -export type CustomerUpdateToOneWithWhereWithoutCustomer_legalInput = { +export type CustomerUpdateToOneWithWhereWithoutLegalInput = { where?: Prisma.CustomerWhereInput - data: Prisma.XOR + data: Prisma.XOR } -export type CustomerUpdateWithoutCustomer_legalInput = { +export type CustomerUpdateWithoutLegalInput = { id?: Prisma.StringFieldUpdateOperationsInput | string is_favorite?: Prisma.NullableBoolFieldUpdateOperationsInput | boolean | null + type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_individual?: Prisma.CustomerIndividualUpdateOneWithoutCustomerNestedInput + individual?: Prisma.CustomerIndividualUpdateOneWithoutCustomerNestedInput sales_invoices?: Prisma.SalesInvoiceUpdateManyWithoutCustomerNestedInput } -export type CustomerUncheckedUpdateWithoutCustomer_legalInput = { +export type CustomerUncheckedUpdateWithoutLegalInput = { id?: Prisma.StringFieldUpdateOperationsInput | string is_favorite?: Prisma.NullableBoolFieldUpdateOperationsInput | boolean | null + type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_individual?: Prisma.CustomerIndividualUncheckedUpdateOneWithoutCustomerNestedInput + individual?: Prisma.CustomerIndividualUncheckedUpdateOneWithoutCustomerNestedInput sales_invoices?: Prisma.SalesInvoiceUncheckedUpdateManyWithoutCustomerNestedInput } export type CustomerCreateWithoutSales_invoicesInput = { id?: string is_favorite?: boolean | null + type: $Enums.CustomerType created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - type: $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_individual?: Prisma.CustomerIndividualCreateNestedOneWithoutCustomerInput - customer_legal?: Prisma.CustomerLegalCreateNestedOneWithoutCustomerInput + individual?: Prisma.CustomerIndividualCreateNestedOneWithoutCustomerInput + legal?: Prisma.CustomerLegalCreateNestedOneWithoutCustomerInput } export type CustomerUncheckedCreateWithoutSales_invoicesInput = { id?: string is_favorite?: boolean | null + type: $Enums.CustomerType created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - type: $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_individual?: Prisma.CustomerIndividualUncheckedCreateNestedOneWithoutCustomerInput - customer_legal?: Prisma.CustomerLegalUncheckedCreateNestedOneWithoutCustomerInput + individual?: Prisma.CustomerIndividualUncheckedCreateNestedOneWithoutCustomerInput + legal?: Prisma.CustomerLegalUncheckedCreateNestedOneWithoutCustomerInput } export type CustomerCreateOrConnectWithoutSales_invoicesInput = { @@ -608,25 +582,23 @@ export type CustomerUpdateToOneWithWhereWithoutSales_invoicesInput = { export type CustomerUpdateWithoutSales_invoicesInput = { id?: Prisma.StringFieldUpdateOperationsInput | string is_favorite?: Prisma.NullableBoolFieldUpdateOperationsInput | boolean | null + type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_individual?: Prisma.CustomerIndividualUpdateOneWithoutCustomerNestedInput - customer_legal?: Prisma.CustomerLegalUpdateOneWithoutCustomerNestedInput + individual?: Prisma.CustomerIndividualUpdateOneWithoutCustomerNestedInput + legal?: Prisma.CustomerLegalUpdateOneWithoutCustomerNestedInput } export type CustomerUncheckedUpdateWithoutSales_invoicesInput = { id?: Prisma.StringFieldUpdateOperationsInput | string is_favorite?: Prisma.NullableBoolFieldUpdateOperationsInput | boolean | null + type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - type?: Prisma.EnumCustomerTypeFieldUpdateOperationsInput | $Enums.CustomerType - unknown_customer?: Prisma.NullableJsonNullValueInput | runtime.InputJsonValue - customer_individual?: Prisma.CustomerIndividualUncheckedUpdateOneWithoutCustomerNestedInput - customer_legal?: Prisma.CustomerLegalUncheckedUpdateOneWithoutCustomerNestedInput + individual?: Prisma.CustomerIndividualUncheckedUpdateOneWithoutCustomerNestedInput + legal?: Prisma.CustomerLegalUncheckedUpdateOneWithoutCustomerNestedInput } @@ -663,13 +635,12 @@ export type CustomerCountOutputTypeCountSales_invoicesArgs = runtime.Types.Extensions.GetSelect<{ id?: boolean is_favorite?: boolean + type?: boolean created_at?: boolean updated_at?: boolean deleted_at?: boolean - type?: boolean - unknown_customer?: boolean - customer_individual?: boolean | Prisma.Customer$customer_individualArgs - customer_legal?: boolean | Prisma.Customer$customer_legalArgs + individual?: boolean | Prisma.Customer$individualArgs + legal?: boolean | Prisma.Customer$legalArgs sales_invoices?: boolean | Prisma.Customer$sales_invoicesArgs _count?: boolean | Prisma.CustomerCountOutputTypeDefaultArgs }, ExtArgs["result"]["customer"]> @@ -679,17 +650,16 @@ export type CustomerSelect = runtime.Types.Extensions.GetOmit<"id" | "is_favorite" | "created_at" | "updated_at" | "deleted_at" | "type" | "unknown_customer", ExtArgs["result"]["customer"]> +export type CustomerOmit = runtime.Types.Extensions.GetOmit<"id" | "is_favorite" | "type" | "created_at" | "updated_at" | "deleted_at", ExtArgs["result"]["customer"]> export type CustomerInclude = { - customer_individual?: boolean | Prisma.Customer$customer_individualArgs - customer_legal?: boolean | Prisma.Customer$customer_legalArgs + individual?: boolean | Prisma.Customer$individualArgs + legal?: boolean | Prisma.Customer$legalArgs sales_invoices?: boolean | Prisma.Customer$sales_invoicesArgs _count?: boolean | Prisma.CustomerCountOutputTypeDefaultArgs } @@ -697,18 +667,17 @@ export type CustomerInclude = { name: "Customer" objects: { - customer_individual: Prisma.$CustomerIndividualPayload | null - customer_legal: Prisma.$CustomerLegalPayload | null + individual: Prisma.$CustomerIndividualPayload | null + legal: Prisma.$CustomerLegalPayload | null sales_invoices: Prisma.$SalesInvoicePayload[] } scalars: runtime.Types.Extensions.GetPayloadResult<{ id: string is_favorite: boolean | null + type: $Enums.CustomerType created_at: Date updated_at: Date deleted_at: Date | null - type: $Enums.CustomerType - unknown_customer: runtime.JsonValue | null }, ExtArgs["result"]["customer"]> composites: {} } @@ -1049,8 +1018,8 @@ readonly fields: CustomerFieldRefs; */ export interface Prisma__CustomerClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" - customer_individual = {}>(args?: Prisma.Subset>): Prisma.Prisma__CustomerIndividualClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> - customer_legal = {}>(args?: Prisma.Subset>): Prisma.Prisma__CustomerLegalClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + individual = {}>(args?: Prisma.Subset>): Prisma.Prisma__CustomerIndividualClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + legal = {}>(args?: Prisma.Subset>): Prisma.Prisma__CustomerLegalClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> sales_invoices = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> /** * Attaches callbacks for the resolution and/or rejection of the Promise. @@ -1083,11 +1052,10 @@ export interface Prisma__CustomerClient readonly is_favorite: Prisma.FieldRef<"Customer", 'Boolean'> + readonly type: Prisma.FieldRef<"Customer", 'CustomerType'> readonly created_at: Prisma.FieldRef<"Customer", 'DateTime'> readonly updated_at: Prisma.FieldRef<"Customer", 'DateTime'> readonly deleted_at: Prisma.FieldRef<"Customer", 'DateTime'> - readonly type: Prisma.FieldRef<"Customer", 'CustomerType'> - readonly unknown_customer: Prisma.FieldRef<"Customer", 'Json'> } @@ -1436,9 +1404,9 @@ export type CustomerDeleteManyArgs = { +export type Customer$individualArgs = { /** * Select specific fields to fetch from the CustomerIndividual */ @@ -1455,9 +1423,9 @@ export type Customer$customer_individualArgs = { +export type Customer$legalArgs = { /** * Select specific fields to fetch from the CustomerLegal */ diff --git a/src/generated/prisma/models/CustomerIndividual.ts b/src/generated/prisma/models/CustomerIndividual.ts index 6cbdde0..869ac24 100644 --- a/src/generated/prisma/models/CustomerIndividual.ts +++ b/src/generated/prisma/models/CustomerIndividual.ts @@ -28,30 +28,33 @@ export type CustomerIndividualMinAggregateOutputType = { first_name: string | null last_name: string | null national_id: string | null + mobile_number: string | null postal_code: string | null economic_code: string | null customer_id: string | null - complex_id: string | null + business_activity_id: string | null } export type CustomerIndividualMaxAggregateOutputType = { first_name: string | null last_name: string | null national_id: string | null + mobile_number: string | null postal_code: string | null economic_code: string | null customer_id: string | null - complex_id: string | null + business_activity_id: string | null } export type CustomerIndividualCountAggregateOutputType = { first_name: number last_name: number national_id: number + mobile_number: number postal_code: number economic_code: number customer_id: number - complex_id: number + business_activity_id: number _all: number } @@ -60,30 +63,33 @@ export type CustomerIndividualMinAggregateInputType = { first_name?: true last_name?: true national_id?: true + mobile_number?: true postal_code?: true economic_code?: true customer_id?: true - complex_id?: true + business_activity_id?: true } export type CustomerIndividualMaxAggregateInputType = { first_name?: true last_name?: true national_id?: true + mobile_number?: true postal_code?: true economic_code?: true customer_id?: true - complex_id?: true + business_activity_id?: true } export type CustomerIndividualCountAggregateInputType = { first_name?: true last_name?: true national_id?: true + mobile_number?: true postal_code?: true economic_code?: true customer_id?: true - complex_id?: true + business_activity_id?: true _all?: true } @@ -163,10 +169,11 @@ export type CustomerIndividualGroupByOutputType = { first_name: string last_name: string national_id: string + mobile_number: string postal_code: string economic_code: string | null customer_id: string - complex_id: string + business_activity_id: string _count: CustomerIndividualCountAggregateOutputType | null _min: CustomerIndividualMinAggregateOutputType | null _max: CustomerIndividualMaxAggregateOutputType | null @@ -194,51 +201,55 @@ export type CustomerIndividualWhereInput = { first_name?: Prisma.StringFilter<"CustomerIndividual"> | string last_name?: Prisma.StringFilter<"CustomerIndividual"> | string national_id?: Prisma.StringFilter<"CustomerIndividual"> | string + mobile_number?: Prisma.StringFilter<"CustomerIndividual"> | string postal_code?: Prisma.StringFilter<"CustomerIndividual"> | string economic_code?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null customer_id?: Prisma.StringFilter<"CustomerIndividual"> | string - complex_id?: Prisma.StringFilter<"CustomerIndividual"> | string + business_activity_id?: Prisma.StringFilter<"CustomerIndividual"> | string customer?: Prisma.XOR - complex?: Prisma.XOR + business_activity?: Prisma.XOR } export type CustomerIndividualOrderByWithRelationInput = { first_name?: Prisma.SortOrder last_name?: Prisma.SortOrder national_id?: Prisma.SortOrder + mobile_number?: Prisma.SortOrder postal_code?: Prisma.SortOrder economic_code?: Prisma.SortOrderInput | Prisma.SortOrder customer_id?: Prisma.SortOrder - complex_id?: Prisma.SortOrder + business_activity_id?: Prisma.SortOrder customer?: Prisma.CustomerOrderByWithRelationInput - complex?: Prisma.ComplexOrderByWithRelationInput + business_activity?: Prisma.BusinessActivityOrderByWithRelationInput _relevance?: Prisma.CustomerIndividualOrderByRelevanceInput } export type CustomerIndividualWhereUniqueInput = Prisma.AtLeast<{ customer_id?: string - complex_id_national_id?: Prisma.CustomerIndividualComplex_idNational_idCompoundUniqueInput + business_activity_id_national_id?: Prisma.CustomerIndividualBusiness_activity_idNational_idCompoundUniqueInput AND?: Prisma.CustomerIndividualWhereInput | Prisma.CustomerIndividualWhereInput[] OR?: Prisma.CustomerIndividualWhereInput[] NOT?: Prisma.CustomerIndividualWhereInput | Prisma.CustomerIndividualWhereInput[] first_name?: Prisma.StringFilter<"CustomerIndividual"> | string last_name?: Prisma.StringFilter<"CustomerIndividual"> | string national_id?: Prisma.StringFilter<"CustomerIndividual"> | string + mobile_number?: Prisma.StringFilter<"CustomerIndividual"> | string postal_code?: Prisma.StringFilter<"CustomerIndividual"> | string economic_code?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null - complex_id?: Prisma.StringFilter<"CustomerIndividual"> | string + business_activity_id?: Prisma.StringFilter<"CustomerIndividual"> | string customer?: Prisma.XOR - complex?: Prisma.XOR -}, "customer_id" | "complex_id_national_id"> + business_activity?: Prisma.XOR +}, "customer_id" | "business_activity_id_national_id"> export type CustomerIndividualOrderByWithAggregationInput = { first_name?: Prisma.SortOrder last_name?: Prisma.SortOrder national_id?: Prisma.SortOrder + mobile_number?: Prisma.SortOrder postal_code?: Prisma.SortOrder economic_code?: Prisma.SortOrderInput | Prisma.SortOrder customer_id?: Prisma.SortOrder - complex_id?: Prisma.SortOrder + business_activity_id?: Prisma.SortOrder _count?: Prisma.CustomerIndividualCountOrderByAggregateInput _max?: Prisma.CustomerIndividualMaxOrderByAggregateInput _min?: Prisma.CustomerIndividualMinOrderByAggregateInput @@ -251,66 +262,73 @@ export type CustomerIndividualScalarWhereWithAggregatesInput = { first_name?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string last_name?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string national_id?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string + mobile_number?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string postal_code?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string economic_code?: Prisma.StringNullableWithAggregatesFilter<"CustomerIndividual"> | string | null customer_id?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string - complex_id?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string + business_activity_id?: Prisma.StringWithAggregatesFilter<"CustomerIndividual"> | string } export type CustomerIndividualCreateInput = { first_name: string last_name: string national_id: string + mobile_number: string postal_code: string economic_code?: string | null - customer: Prisma.CustomerCreateNestedOneWithoutCustomer_individualInput - complex: Prisma.ComplexCreateNestedOneWithoutCustomer_individualsInput + customer: Prisma.CustomerCreateNestedOneWithoutIndividualInput + business_activity: Prisma.BusinessActivityCreateNestedOneWithoutCustomer_individualsInput } export type CustomerIndividualUncheckedCreateInput = { first_name: string last_name: string national_id: string + mobile_number: string postal_code: string economic_code?: string | null customer_id: string - complex_id: string + business_activity_id: string } export type CustomerIndividualUpdateInput = { first_name?: Prisma.StringFieldUpdateOperationsInput | string last_name?: Prisma.StringFieldUpdateOperationsInput | string national_id?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string postal_code?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - customer?: Prisma.CustomerUpdateOneRequiredWithoutCustomer_individualNestedInput - complex?: Prisma.ComplexUpdateOneRequiredWithoutCustomer_individualsNestedInput + customer?: Prisma.CustomerUpdateOneRequiredWithoutIndividualNestedInput + business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutCustomer_individualsNestedInput } export type CustomerIndividualUncheckedUpdateInput = { first_name?: Prisma.StringFieldUpdateOperationsInput | string last_name?: Prisma.StringFieldUpdateOperationsInput | string national_id?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string postal_code?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null customer_id?: Prisma.StringFieldUpdateOperationsInput | string - complex_id?: Prisma.StringFieldUpdateOperationsInput | string + business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string } export type CustomerIndividualCreateManyInput = { first_name: string last_name: string national_id: string + mobile_number: string postal_code: string economic_code?: string | null customer_id: string - complex_id: string + business_activity_id: string } export type CustomerIndividualUpdateManyMutationInput = { first_name?: Prisma.StringFieldUpdateOperationsInput | string last_name?: Prisma.StringFieldUpdateOperationsInput | string national_id?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string postal_code?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null } @@ -319,10 +337,11 @@ export type CustomerIndividualUncheckedUpdateManyInput = { first_name?: Prisma.StringFieldUpdateOperationsInput | string last_name?: Prisma.StringFieldUpdateOperationsInput | string national_id?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string postal_code?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null customer_id?: Prisma.StringFieldUpdateOperationsInput | string - complex_id?: Prisma.StringFieldUpdateOperationsInput | string + business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string } export type CustomerIndividualListRelationFilter = { @@ -346,8 +365,8 @@ export type CustomerIndividualOrderByRelevanceInput = { search: string } -export type CustomerIndividualComplex_idNational_idCompoundUniqueInput = { - complex_id: string +export type CustomerIndividualBusiness_activity_idNational_idCompoundUniqueInput = { + business_activity_id: string national_id: string } @@ -355,71 +374,74 @@ export type CustomerIndividualCountOrderByAggregateInput = { first_name?: Prisma.SortOrder last_name?: Prisma.SortOrder national_id?: Prisma.SortOrder + mobile_number?: Prisma.SortOrder postal_code?: Prisma.SortOrder economic_code?: Prisma.SortOrder customer_id?: Prisma.SortOrder - complex_id?: Prisma.SortOrder + business_activity_id?: Prisma.SortOrder } export type CustomerIndividualMaxOrderByAggregateInput = { first_name?: Prisma.SortOrder last_name?: Prisma.SortOrder national_id?: Prisma.SortOrder + mobile_number?: Prisma.SortOrder postal_code?: Prisma.SortOrder economic_code?: Prisma.SortOrder customer_id?: Prisma.SortOrder - complex_id?: Prisma.SortOrder + business_activity_id?: Prisma.SortOrder } export type CustomerIndividualMinOrderByAggregateInput = { first_name?: Prisma.SortOrder last_name?: Prisma.SortOrder national_id?: Prisma.SortOrder + mobile_number?: Prisma.SortOrder postal_code?: Prisma.SortOrder economic_code?: Prisma.SortOrder customer_id?: Prisma.SortOrder - complex_id?: Prisma.SortOrder + business_activity_id?: Prisma.SortOrder } -export type CustomerIndividualCreateNestedManyWithoutComplexInput = { - create?: Prisma.XOR | Prisma.CustomerIndividualCreateWithoutComplexInput[] | Prisma.CustomerIndividualUncheckedCreateWithoutComplexInput[] - connectOrCreate?: Prisma.CustomerIndividualCreateOrConnectWithoutComplexInput | Prisma.CustomerIndividualCreateOrConnectWithoutComplexInput[] - createMany?: Prisma.CustomerIndividualCreateManyComplexInputEnvelope +export type CustomerIndividualCreateNestedManyWithoutBusiness_activityInput = { + create?: Prisma.XOR | Prisma.CustomerIndividualCreateWithoutBusiness_activityInput[] | Prisma.CustomerIndividualUncheckedCreateWithoutBusiness_activityInput[] + connectOrCreate?: Prisma.CustomerIndividualCreateOrConnectWithoutBusiness_activityInput | Prisma.CustomerIndividualCreateOrConnectWithoutBusiness_activityInput[] + createMany?: Prisma.CustomerIndividualCreateManyBusiness_activityInputEnvelope connect?: Prisma.CustomerIndividualWhereUniqueInput | Prisma.CustomerIndividualWhereUniqueInput[] } -export type CustomerIndividualUncheckedCreateNestedManyWithoutComplexInput = { - create?: Prisma.XOR | Prisma.CustomerIndividualCreateWithoutComplexInput[] | Prisma.CustomerIndividualUncheckedCreateWithoutComplexInput[] - connectOrCreate?: Prisma.CustomerIndividualCreateOrConnectWithoutComplexInput | Prisma.CustomerIndividualCreateOrConnectWithoutComplexInput[] - createMany?: Prisma.CustomerIndividualCreateManyComplexInputEnvelope +export type CustomerIndividualUncheckedCreateNestedManyWithoutBusiness_activityInput = { + create?: Prisma.XOR | Prisma.CustomerIndividualCreateWithoutBusiness_activityInput[] | Prisma.CustomerIndividualUncheckedCreateWithoutBusiness_activityInput[] + connectOrCreate?: Prisma.CustomerIndividualCreateOrConnectWithoutBusiness_activityInput | Prisma.CustomerIndividualCreateOrConnectWithoutBusiness_activityInput[] + createMany?: Prisma.CustomerIndividualCreateManyBusiness_activityInputEnvelope connect?: Prisma.CustomerIndividualWhereUniqueInput | Prisma.CustomerIndividualWhereUniqueInput[] } -export type CustomerIndividualUpdateManyWithoutComplexNestedInput = { - create?: Prisma.XOR | Prisma.CustomerIndividualCreateWithoutComplexInput[] | Prisma.CustomerIndividualUncheckedCreateWithoutComplexInput[] - connectOrCreate?: Prisma.CustomerIndividualCreateOrConnectWithoutComplexInput | Prisma.CustomerIndividualCreateOrConnectWithoutComplexInput[] - upsert?: Prisma.CustomerIndividualUpsertWithWhereUniqueWithoutComplexInput | Prisma.CustomerIndividualUpsertWithWhereUniqueWithoutComplexInput[] - createMany?: Prisma.CustomerIndividualCreateManyComplexInputEnvelope +export type CustomerIndividualUpdateManyWithoutBusiness_activityNestedInput = { + create?: Prisma.XOR | Prisma.CustomerIndividualCreateWithoutBusiness_activityInput[] | Prisma.CustomerIndividualUncheckedCreateWithoutBusiness_activityInput[] + connectOrCreate?: Prisma.CustomerIndividualCreateOrConnectWithoutBusiness_activityInput | Prisma.CustomerIndividualCreateOrConnectWithoutBusiness_activityInput[] + upsert?: Prisma.CustomerIndividualUpsertWithWhereUniqueWithoutBusiness_activityInput | Prisma.CustomerIndividualUpsertWithWhereUniqueWithoutBusiness_activityInput[] + createMany?: Prisma.CustomerIndividualCreateManyBusiness_activityInputEnvelope set?: Prisma.CustomerIndividualWhereUniqueInput | Prisma.CustomerIndividualWhereUniqueInput[] disconnect?: Prisma.CustomerIndividualWhereUniqueInput | Prisma.CustomerIndividualWhereUniqueInput[] delete?: Prisma.CustomerIndividualWhereUniqueInput | Prisma.CustomerIndividualWhereUniqueInput[] connect?: Prisma.CustomerIndividualWhereUniqueInput | Prisma.CustomerIndividualWhereUniqueInput[] - update?: Prisma.CustomerIndividualUpdateWithWhereUniqueWithoutComplexInput | Prisma.CustomerIndividualUpdateWithWhereUniqueWithoutComplexInput[] - updateMany?: Prisma.CustomerIndividualUpdateManyWithWhereWithoutComplexInput | Prisma.CustomerIndividualUpdateManyWithWhereWithoutComplexInput[] + update?: Prisma.CustomerIndividualUpdateWithWhereUniqueWithoutBusiness_activityInput | Prisma.CustomerIndividualUpdateWithWhereUniqueWithoutBusiness_activityInput[] + updateMany?: Prisma.CustomerIndividualUpdateManyWithWhereWithoutBusiness_activityInput | Prisma.CustomerIndividualUpdateManyWithWhereWithoutBusiness_activityInput[] deleteMany?: Prisma.CustomerIndividualScalarWhereInput | Prisma.CustomerIndividualScalarWhereInput[] } -export type CustomerIndividualUncheckedUpdateManyWithoutComplexNestedInput = { - create?: Prisma.XOR | Prisma.CustomerIndividualCreateWithoutComplexInput[] | Prisma.CustomerIndividualUncheckedCreateWithoutComplexInput[] - connectOrCreate?: Prisma.CustomerIndividualCreateOrConnectWithoutComplexInput | Prisma.CustomerIndividualCreateOrConnectWithoutComplexInput[] - upsert?: Prisma.CustomerIndividualUpsertWithWhereUniqueWithoutComplexInput | Prisma.CustomerIndividualUpsertWithWhereUniqueWithoutComplexInput[] - createMany?: Prisma.CustomerIndividualCreateManyComplexInputEnvelope +export type CustomerIndividualUncheckedUpdateManyWithoutBusiness_activityNestedInput = { + create?: Prisma.XOR | Prisma.CustomerIndividualCreateWithoutBusiness_activityInput[] | Prisma.CustomerIndividualUncheckedCreateWithoutBusiness_activityInput[] + connectOrCreate?: Prisma.CustomerIndividualCreateOrConnectWithoutBusiness_activityInput | Prisma.CustomerIndividualCreateOrConnectWithoutBusiness_activityInput[] + upsert?: Prisma.CustomerIndividualUpsertWithWhereUniqueWithoutBusiness_activityInput | Prisma.CustomerIndividualUpsertWithWhereUniqueWithoutBusiness_activityInput[] + createMany?: Prisma.CustomerIndividualCreateManyBusiness_activityInputEnvelope set?: Prisma.CustomerIndividualWhereUniqueInput | Prisma.CustomerIndividualWhereUniqueInput[] disconnect?: Prisma.CustomerIndividualWhereUniqueInput | Prisma.CustomerIndividualWhereUniqueInput[] delete?: Prisma.CustomerIndividualWhereUniqueInput | Prisma.CustomerIndividualWhereUniqueInput[] connect?: Prisma.CustomerIndividualWhereUniqueInput | Prisma.CustomerIndividualWhereUniqueInput[] - update?: Prisma.CustomerIndividualUpdateWithWhereUniqueWithoutComplexInput | Prisma.CustomerIndividualUpdateWithWhereUniqueWithoutComplexInput[] - updateMany?: Prisma.CustomerIndividualUpdateManyWithWhereWithoutComplexInput | Prisma.CustomerIndividualUpdateManyWithWhereWithoutComplexInput[] + update?: Prisma.CustomerIndividualUpdateWithWhereUniqueWithoutBusiness_activityInput | Prisma.CustomerIndividualUpdateWithWhereUniqueWithoutBusiness_activityInput[] + updateMany?: Prisma.CustomerIndividualUpdateManyWithWhereWithoutBusiness_activityInput | Prisma.CustomerIndividualUpdateManyWithWhereWithoutBusiness_activityInput[] deleteMany?: Prisma.CustomerIndividualScalarWhereInput | Prisma.CustomerIndividualScalarWhereInput[] } @@ -455,48 +477,50 @@ export type CustomerIndividualUncheckedUpdateOneWithoutCustomerNestedInput = { update?: Prisma.XOR, Prisma.CustomerIndividualUncheckedUpdateWithoutCustomerInput> } -export type CustomerIndividualCreateWithoutComplexInput = { +export type CustomerIndividualCreateWithoutBusiness_activityInput = { first_name: string last_name: string national_id: string + mobile_number: string postal_code: string economic_code?: string | null - customer: Prisma.CustomerCreateNestedOneWithoutCustomer_individualInput + customer: Prisma.CustomerCreateNestedOneWithoutIndividualInput } -export type CustomerIndividualUncheckedCreateWithoutComplexInput = { +export type CustomerIndividualUncheckedCreateWithoutBusiness_activityInput = { first_name: string last_name: string national_id: string + mobile_number: string postal_code: string economic_code?: string | null customer_id: string } -export type CustomerIndividualCreateOrConnectWithoutComplexInput = { +export type CustomerIndividualCreateOrConnectWithoutBusiness_activityInput = { where: Prisma.CustomerIndividualWhereUniqueInput - create: Prisma.XOR + create: Prisma.XOR } -export type CustomerIndividualCreateManyComplexInputEnvelope = { - data: Prisma.CustomerIndividualCreateManyComplexInput | Prisma.CustomerIndividualCreateManyComplexInput[] +export type CustomerIndividualCreateManyBusiness_activityInputEnvelope = { + data: Prisma.CustomerIndividualCreateManyBusiness_activityInput | Prisma.CustomerIndividualCreateManyBusiness_activityInput[] skipDuplicates?: boolean } -export type CustomerIndividualUpsertWithWhereUniqueWithoutComplexInput = { +export type CustomerIndividualUpsertWithWhereUniqueWithoutBusiness_activityInput = { where: Prisma.CustomerIndividualWhereUniqueInput - update: Prisma.XOR - create: Prisma.XOR + update: Prisma.XOR + create: Prisma.XOR } -export type CustomerIndividualUpdateWithWhereUniqueWithoutComplexInput = { +export type CustomerIndividualUpdateWithWhereUniqueWithoutBusiness_activityInput = { where: Prisma.CustomerIndividualWhereUniqueInput - data: Prisma.XOR + data: Prisma.XOR } -export type CustomerIndividualUpdateManyWithWhereWithoutComplexInput = { +export type CustomerIndividualUpdateManyWithWhereWithoutBusiness_activityInput = { where: Prisma.CustomerIndividualScalarWhereInput - data: Prisma.XOR + data: Prisma.XOR } export type CustomerIndividualScalarWhereInput = { @@ -506,28 +530,31 @@ export type CustomerIndividualScalarWhereInput = { first_name?: Prisma.StringFilter<"CustomerIndividual"> | string last_name?: Prisma.StringFilter<"CustomerIndividual"> | string national_id?: Prisma.StringFilter<"CustomerIndividual"> | string + mobile_number?: Prisma.StringFilter<"CustomerIndividual"> | string postal_code?: Prisma.StringFilter<"CustomerIndividual"> | string economic_code?: Prisma.StringNullableFilter<"CustomerIndividual"> | string | null customer_id?: Prisma.StringFilter<"CustomerIndividual"> | string - complex_id?: Prisma.StringFilter<"CustomerIndividual"> | string + business_activity_id?: Prisma.StringFilter<"CustomerIndividual"> | string } export type CustomerIndividualCreateWithoutCustomerInput = { first_name: string last_name: string national_id: string + mobile_number: string postal_code: string economic_code?: string | null - complex: Prisma.ComplexCreateNestedOneWithoutCustomer_individualsInput + business_activity: Prisma.BusinessActivityCreateNestedOneWithoutCustomer_individualsInput } export type CustomerIndividualUncheckedCreateWithoutCustomerInput = { first_name: string last_name: string national_id: string + mobile_number: string postal_code: string economic_code?: string | null - complex_id: string + business_activity_id: string } export type CustomerIndividualCreateOrConnectWithoutCustomerInput = { @@ -550,51 +577,57 @@ export type CustomerIndividualUpdateWithoutCustomerInput = { first_name?: Prisma.StringFieldUpdateOperationsInput | string last_name?: Prisma.StringFieldUpdateOperationsInput | string national_id?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string postal_code?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - complex?: Prisma.ComplexUpdateOneRequiredWithoutCustomer_individualsNestedInput + business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutCustomer_individualsNestedInput } export type CustomerIndividualUncheckedUpdateWithoutCustomerInput = { first_name?: Prisma.StringFieldUpdateOperationsInput | string last_name?: Prisma.StringFieldUpdateOperationsInput | string national_id?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string postal_code?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - complex_id?: Prisma.StringFieldUpdateOperationsInput | string + business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string } -export type CustomerIndividualCreateManyComplexInput = { +export type CustomerIndividualCreateManyBusiness_activityInput = { first_name: string last_name: string national_id: string + mobile_number: string postal_code: string economic_code?: string | null customer_id: string } -export type CustomerIndividualUpdateWithoutComplexInput = { +export type CustomerIndividualUpdateWithoutBusiness_activityInput = { first_name?: Prisma.StringFieldUpdateOperationsInput | string last_name?: Prisma.StringFieldUpdateOperationsInput | string national_id?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string postal_code?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null - customer?: Prisma.CustomerUpdateOneRequiredWithoutCustomer_individualNestedInput + customer?: Prisma.CustomerUpdateOneRequiredWithoutIndividualNestedInput } -export type CustomerIndividualUncheckedUpdateWithoutComplexInput = { +export type CustomerIndividualUncheckedUpdateWithoutBusiness_activityInput = { first_name?: Prisma.StringFieldUpdateOperationsInput | string last_name?: Prisma.StringFieldUpdateOperationsInput | string national_id?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string postal_code?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null customer_id?: Prisma.StringFieldUpdateOperationsInput | string } -export type CustomerIndividualUncheckedUpdateManyWithoutComplexInput = { +export type CustomerIndividualUncheckedUpdateManyWithoutBusiness_activityInput = { first_name?: Prisma.StringFieldUpdateOperationsInput | string last_name?: Prisma.StringFieldUpdateOperationsInput | string national_id?: Prisma.StringFieldUpdateOperationsInput | string + mobile_number?: Prisma.StringFieldUpdateOperationsInput | string postal_code?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.NullableStringFieldUpdateOperationsInput | string | null customer_id?: Prisma.StringFieldUpdateOperationsInput | string @@ -606,12 +639,13 @@ export type CustomerIndividualSelect - complex?: boolean | Prisma.ComplexDefaultArgs + business_activity?: boolean | Prisma.BusinessActivityDefaultArgs }, ExtArgs["result"]["customerIndividual"]> @@ -620,32 +654,34 @@ export type CustomerIndividualSelectScalar = { first_name?: boolean last_name?: boolean national_id?: boolean + mobile_number?: boolean postal_code?: boolean economic_code?: boolean customer_id?: boolean - complex_id?: boolean + business_activity_id?: boolean } -export type CustomerIndividualOmit = runtime.Types.Extensions.GetOmit<"first_name" | "last_name" | "national_id" | "postal_code" | "economic_code" | "customer_id" | "complex_id", ExtArgs["result"]["customerIndividual"]> +export type CustomerIndividualOmit = runtime.Types.Extensions.GetOmit<"first_name" | "last_name" | "national_id" | "mobile_number" | "postal_code" | "economic_code" | "customer_id" | "business_activity_id", ExtArgs["result"]["customerIndividual"]> export type CustomerIndividualInclude = { customer?: boolean | Prisma.CustomerDefaultArgs - complex?: boolean | Prisma.ComplexDefaultArgs + business_activity?: boolean | Prisma.BusinessActivityDefaultArgs } export type $CustomerIndividualPayload = { name: "CustomerIndividual" objects: { customer: Prisma.$CustomerPayload - complex: Prisma.$ComplexPayload + business_activity: Prisma.$BusinessActivityPayload } scalars: runtime.Types.Extensions.GetPayloadResult<{ first_name: string last_name: string national_id: string + mobile_number: string postal_code: string economic_code: string | null customer_id: string - complex_id: string + business_activity_id: string }, ExtArgs["result"]["customerIndividual"]> composites: {} } @@ -987,7 +1023,7 @@ readonly fields: CustomerIndividualFieldRefs; export interface Prisma__CustomerIndividualClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" customer = {}>(args?: Prisma.Subset>): Prisma.Prisma__CustomerClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> - complex = {}>(args?: Prisma.Subset>): Prisma.Prisma__ComplexClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + business_activity = {}>(args?: Prisma.Subset>): Prisma.Prisma__BusinessActivityClient, 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. @@ -1020,10 +1056,11 @@ export interface CustomerIndividualFieldRefs { readonly first_name: Prisma.FieldRef<"CustomerIndividual", 'String'> readonly last_name: Prisma.FieldRef<"CustomerIndividual", 'String'> readonly national_id: Prisma.FieldRef<"CustomerIndividual", 'String'> + readonly mobile_number: Prisma.FieldRef<"CustomerIndividual", 'String'> readonly postal_code: Prisma.FieldRef<"CustomerIndividual", 'String'> readonly economic_code: Prisma.FieldRef<"CustomerIndividual", 'String'> readonly customer_id: Prisma.FieldRef<"CustomerIndividual", 'String'> - readonly complex_id: Prisma.FieldRef<"CustomerIndividual", 'String'> + readonly business_activity_id: Prisma.FieldRef<"CustomerIndividual", 'String'> } diff --git a/src/generated/prisma/models/CustomerLegal.ts b/src/generated/prisma/models/CustomerLegal.ts index 25f399e..893a213 100644 --- a/src/generated/prisma/models/CustomerLegal.ts +++ b/src/generated/prisma/models/CustomerLegal.ts @@ -30,7 +30,7 @@ export type CustomerLegalMinAggregateOutputType = { registration_number: string | null postal_code: string | null customer_id: string | null - complex_id: string | null + business_activity_id: string | null } export type CustomerLegalMaxAggregateOutputType = { @@ -39,7 +39,7 @@ export type CustomerLegalMaxAggregateOutputType = { registration_number: string | null postal_code: string | null customer_id: string | null - complex_id: string | null + business_activity_id: string | null } export type CustomerLegalCountAggregateOutputType = { @@ -48,7 +48,7 @@ export type CustomerLegalCountAggregateOutputType = { registration_number: number postal_code: number customer_id: number - complex_id: number + business_activity_id: number _all: number } @@ -59,7 +59,7 @@ export type CustomerLegalMinAggregateInputType = { registration_number?: true postal_code?: true customer_id?: true - complex_id?: true + business_activity_id?: true } export type CustomerLegalMaxAggregateInputType = { @@ -68,7 +68,7 @@ export type CustomerLegalMaxAggregateInputType = { registration_number?: true postal_code?: true customer_id?: true - complex_id?: true + business_activity_id?: true } export type CustomerLegalCountAggregateInputType = { @@ -77,7 +77,7 @@ export type CustomerLegalCountAggregateInputType = { registration_number?: true postal_code?: true customer_id?: true - complex_id?: true + business_activity_id?: true _all?: true } @@ -156,10 +156,10 @@ export type CustomerLegalGroupByArgs | string economic_code?: Prisma.StringFilter<"CustomerLegal"> | string - registration_number?: Prisma.StringFilter<"CustomerLegal"> | string + registration_number?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null postal_code?: Prisma.StringFilter<"CustomerLegal"> | string customer_id?: Prisma.StringFilter<"CustomerLegal"> | string - complex_id?: Prisma.StringFilter<"CustomerLegal"> | string + business_activity_id?: Prisma.StringFilter<"CustomerLegal"> | string customer?: Prisma.XOR - complex?: Prisma.XOR + business_activity?: Prisma.XOR } export type CustomerLegalOrderByWithRelationInput = { company_name?: Prisma.SortOrder economic_code?: Prisma.SortOrder - registration_number?: Prisma.SortOrder + registration_number?: Prisma.SortOrderInput | Prisma.SortOrder postal_code?: Prisma.SortOrder customer_id?: Prisma.SortOrder - complex_id?: Prisma.SortOrder + business_activity_id?: Prisma.SortOrder customer?: Prisma.CustomerOrderByWithRelationInput - complex?: Prisma.ComplexOrderByWithRelationInput + business_activity?: Prisma.BusinessActivityOrderByWithRelationInput _relevance?: Prisma.CustomerLegalOrderByRelevanceInput } export type CustomerLegalWhereUniqueInput = Prisma.AtLeast<{ customer_id?: string - complex_id_registration_number?: Prisma.CustomerLegalComplex_idRegistration_numberCompoundUniqueInput + business_activity_id_economic_code?: Prisma.CustomerLegalBusiness_activity_idEconomic_codeCompoundUniqueInput AND?: Prisma.CustomerLegalWhereInput | Prisma.CustomerLegalWhereInput[] OR?: Prisma.CustomerLegalWhereInput[] NOT?: Prisma.CustomerLegalWhereInput | Prisma.CustomerLegalWhereInput[] company_name?: Prisma.StringFilter<"CustomerLegal"> | string economic_code?: Prisma.StringFilter<"CustomerLegal"> | string - registration_number?: Prisma.StringFilter<"CustomerLegal"> | string + registration_number?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null postal_code?: Prisma.StringFilter<"CustomerLegal"> | string - complex_id?: Prisma.StringFilter<"CustomerLegal"> | string + business_activity_id?: Prisma.StringFilter<"CustomerLegal"> | string customer?: Prisma.XOR - complex?: Prisma.XOR -}, "customer_id" | "complex_id_registration_number"> + business_activity?: Prisma.XOR +}, "customer_id" | "business_activity_id_economic_code"> export type CustomerLegalOrderByWithAggregationInput = { company_name?: Prisma.SortOrder economic_code?: Prisma.SortOrder - registration_number?: Prisma.SortOrder + registration_number?: Prisma.SortOrderInput | Prisma.SortOrder postal_code?: Prisma.SortOrder customer_id?: Prisma.SortOrder - complex_id?: Prisma.SortOrder + business_activity_id?: Prisma.SortOrder _count?: Prisma.CustomerLegalCountOrderByAggregateInput _max?: Prisma.CustomerLegalMaxOrderByAggregateInput _min?: Prisma.CustomerLegalMinOrderByAggregateInput @@ -239,71 +239,71 @@ export type CustomerLegalScalarWhereWithAggregatesInput = { NOT?: Prisma.CustomerLegalScalarWhereWithAggregatesInput | Prisma.CustomerLegalScalarWhereWithAggregatesInput[] company_name?: Prisma.StringWithAggregatesFilter<"CustomerLegal"> | string economic_code?: Prisma.StringWithAggregatesFilter<"CustomerLegal"> | string - registration_number?: Prisma.StringWithAggregatesFilter<"CustomerLegal"> | string + registration_number?: Prisma.StringNullableWithAggregatesFilter<"CustomerLegal"> | string | null postal_code?: Prisma.StringWithAggregatesFilter<"CustomerLegal"> | string customer_id?: Prisma.StringWithAggregatesFilter<"CustomerLegal"> | string - complex_id?: Prisma.StringWithAggregatesFilter<"CustomerLegal"> | string + business_activity_id?: Prisma.StringWithAggregatesFilter<"CustomerLegal"> | string } export type CustomerLegalCreateInput = { company_name: string economic_code: string - registration_number: string + registration_number?: string | null postal_code: string - customer: Prisma.CustomerCreateNestedOneWithoutCustomer_legalInput - complex: Prisma.ComplexCreateNestedOneWithoutCustomer_legalsInput + customer: Prisma.CustomerCreateNestedOneWithoutLegalInput + business_activity: Prisma.BusinessActivityCreateNestedOneWithoutCustomer_legalsInput } export type CustomerLegalUncheckedCreateInput = { company_name: string economic_code: string - registration_number: string + registration_number?: string | null postal_code: string customer_id: string - complex_id: string + business_activity_id: string } export type CustomerLegalUpdateInput = { company_name?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.StringFieldUpdateOperationsInput | string - registration_number?: Prisma.StringFieldUpdateOperationsInput | string + registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null postal_code?: Prisma.StringFieldUpdateOperationsInput | string - customer?: Prisma.CustomerUpdateOneRequiredWithoutCustomer_legalNestedInput - complex?: Prisma.ComplexUpdateOneRequiredWithoutCustomer_legalsNestedInput + customer?: Prisma.CustomerUpdateOneRequiredWithoutLegalNestedInput + business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutCustomer_legalsNestedInput } export type CustomerLegalUncheckedUpdateInput = { company_name?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.StringFieldUpdateOperationsInput | string - registration_number?: Prisma.StringFieldUpdateOperationsInput | string + registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null postal_code?: Prisma.StringFieldUpdateOperationsInput | string customer_id?: Prisma.StringFieldUpdateOperationsInput | string - complex_id?: Prisma.StringFieldUpdateOperationsInput | string + business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string } export type CustomerLegalCreateManyInput = { company_name: string economic_code: string - registration_number: string + registration_number?: string | null postal_code: string customer_id: string - complex_id: string + business_activity_id: string } export type CustomerLegalUpdateManyMutationInput = { company_name?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.StringFieldUpdateOperationsInput | string - registration_number?: Prisma.StringFieldUpdateOperationsInput | string + registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null postal_code?: Prisma.StringFieldUpdateOperationsInput | string } export type CustomerLegalUncheckedUpdateManyInput = { company_name?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.StringFieldUpdateOperationsInput | string - registration_number?: Prisma.StringFieldUpdateOperationsInput | string + registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null postal_code?: Prisma.StringFieldUpdateOperationsInput | string customer_id?: Prisma.StringFieldUpdateOperationsInput | string - complex_id?: Prisma.StringFieldUpdateOperationsInput | string + business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string } export type CustomerLegalListRelationFilter = { @@ -327,9 +327,9 @@ export type CustomerLegalOrderByRelevanceInput = { search: string } -export type CustomerLegalComplex_idRegistration_numberCompoundUniqueInput = { - complex_id: string - registration_number: string +export type CustomerLegalBusiness_activity_idEconomic_codeCompoundUniqueInput = { + business_activity_id: string + economic_code: string } export type CustomerLegalCountOrderByAggregateInput = { @@ -338,7 +338,7 @@ export type CustomerLegalCountOrderByAggregateInput = { registration_number?: Prisma.SortOrder postal_code?: Prisma.SortOrder customer_id?: Prisma.SortOrder - complex_id?: Prisma.SortOrder + business_activity_id?: Prisma.SortOrder } export type CustomerLegalMaxOrderByAggregateInput = { @@ -347,7 +347,7 @@ export type CustomerLegalMaxOrderByAggregateInput = { registration_number?: Prisma.SortOrder postal_code?: Prisma.SortOrder customer_id?: Prisma.SortOrder - complex_id?: Prisma.SortOrder + business_activity_id?: Prisma.SortOrder } export type CustomerLegalMinOrderByAggregateInput = { @@ -356,48 +356,48 @@ export type CustomerLegalMinOrderByAggregateInput = { registration_number?: Prisma.SortOrder postal_code?: Prisma.SortOrder customer_id?: Prisma.SortOrder - complex_id?: Prisma.SortOrder + business_activity_id?: Prisma.SortOrder } -export type CustomerLegalCreateNestedManyWithoutComplexInput = { - create?: Prisma.XOR | Prisma.CustomerLegalCreateWithoutComplexInput[] | Prisma.CustomerLegalUncheckedCreateWithoutComplexInput[] - connectOrCreate?: Prisma.CustomerLegalCreateOrConnectWithoutComplexInput | Prisma.CustomerLegalCreateOrConnectWithoutComplexInput[] - createMany?: Prisma.CustomerLegalCreateManyComplexInputEnvelope +export type CustomerLegalCreateNestedManyWithoutBusiness_activityInput = { + create?: Prisma.XOR | Prisma.CustomerLegalCreateWithoutBusiness_activityInput[] | Prisma.CustomerLegalUncheckedCreateWithoutBusiness_activityInput[] + connectOrCreate?: Prisma.CustomerLegalCreateOrConnectWithoutBusiness_activityInput | Prisma.CustomerLegalCreateOrConnectWithoutBusiness_activityInput[] + createMany?: Prisma.CustomerLegalCreateManyBusiness_activityInputEnvelope connect?: Prisma.CustomerLegalWhereUniqueInput | Prisma.CustomerLegalWhereUniqueInput[] } -export type CustomerLegalUncheckedCreateNestedManyWithoutComplexInput = { - create?: Prisma.XOR | Prisma.CustomerLegalCreateWithoutComplexInput[] | Prisma.CustomerLegalUncheckedCreateWithoutComplexInput[] - connectOrCreate?: Prisma.CustomerLegalCreateOrConnectWithoutComplexInput | Prisma.CustomerLegalCreateOrConnectWithoutComplexInput[] - createMany?: Prisma.CustomerLegalCreateManyComplexInputEnvelope +export type CustomerLegalUncheckedCreateNestedManyWithoutBusiness_activityInput = { + create?: Prisma.XOR | Prisma.CustomerLegalCreateWithoutBusiness_activityInput[] | Prisma.CustomerLegalUncheckedCreateWithoutBusiness_activityInput[] + connectOrCreate?: Prisma.CustomerLegalCreateOrConnectWithoutBusiness_activityInput | Prisma.CustomerLegalCreateOrConnectWithoutBusiness_activityInput[] + createMany?: Prisma.CustomerLegalCreateManyBusiness_activityInputEnvelope connect?: Prisma.CustomerLegalWhereUniqueInput | Prisma.CustomerLegalWhereUniqueInput[] } -export type CustomerLegalUpdateManyWithoutComplexNestedInput = { - create?: Prisma.XOR | Prisma.CustomerLegalCreateWithoutComplexInput[] | Prisma.CustomerLegalUncheckedCreateWithoutComplexInput[] - connectOrCreate?: Prisma.CustomerLegalCreateOrConnectWithoutComplexInput | Prisma.CustomerLegalCreateOrConnectWithoutComplexInput[] - upsert?: Prisma.CustomerLegalUpsertWithWhereUniqueWithoutComplexInput | Prisma.CustomerLegalUpsertWithWhereUniqueWithoutComplexInput[] - createMany?: Prisma.CustomerLegalCreateManyComplexInputEnvelope +export type CustomerLegalUpdateManyWithoutBusiness_activityNestedInput = { + create?: Prisma.XOR | Prisma.CustomerLegalCreateWithoutBusiness_activityInput[] | Prisma.CustomerLegalUncheckedCreateWithoutBusiness_activityInput[] + connectOrCreate?: Prisma.CustomerLegalCreateOrConnectWithoutBusiness_activityInput | Prisma.CustomerLegalCreateOrConnectWithoutBusiness_activityInput[] + upsert?: Prisma.CustomerLegalUpsertWithWhereUniqueWithoutBusiness_activityInput | Prisma.CustomerLegalUpsertWithWhereUniqueWithoutBusiness_activityInput[] + createMany?: Prisma.CustomerLegalCreateManyBusiness_activityInputEnvelope set?: Prisma.CustomerLegalWhereUniqueInput | Prisma.CustomerLegalWhereUniqueInput[] disconnect?: Prisma.CustomerLegalWhereUniqueInput | Prisma.CustomerLegalWhereUniqueInput[] delete?: Prisma.CustomerLegalWhereUniqueInput | Prisma.CustomerLegalWhereUniqueInput[] connect?: Prisma.CustomerLegalWhereUniqueInput | Prisma.CustomerLegalWhereUniqueInput[] - update?: Prisma.CustomerLegalUpdateWithWhereUniqueWithoutComplexInput | Prisma.CustomerLegalUpdateWithWhereUniqueWithoutComplexInput[] - updateMany?: Prisma.CustomerLegalUpdateManyWithWhereWithoutComplexInput | Prisma.CustomerLegalUpdateManyWithWhereWithoutComplexInput[] + update?: Prisma.CustomerLegalUpdateWithWhereUniqueWithoutBusiness_activityInput | Prisma.CustomerLegalUpdateWithWhereUniqueWithoutBusiness_activityInput[] + updateMany?: Prisma.CustomerLegalUpdateManyWithWhereWithoutBusiness_activityInput | Prisma.CustomerLegalUpdateManyWithWhereWithoutBusiness_activityInput[] deleteMany?: Prisma.CustomerLegalScalarWhereInput | Prisma.CustomerLegalScalarWhereInput[] } -export type CustomerLegalUncheckedUpdateManyWithoutComplexNestedInput = { - create?: Prisma.XOR | Prisma.CustomerLegalCreateWithoutComplexInput[] | Prisma.CustomerLegalUncheckedCreateWithoutComplexInput[] - connectOrCreate?: Prisma.CustomerLegalCreateOrConnectWithoutComplexInput | Prisma.CustomerLegalCreateOrConnectWithoutComplexInput[] - upsert?: Prisma.CustomerLegalUpsertWithWhereUniqueWithoutComplexInput | Prisma.CustomerLegalUpsertWithWhereUniqueWithoutComplexInput[] - createMany?: Prisma.CustomerLegalCreateManyComplexInputEnvelope +export type CustomerLegalUncheckedUpdateManyWithoutBusiness_activityNestedInput = { + create?: Prisma.XOR | Prisma.CustomerLegalCreateWithoutBusiness_activityInput[] | Prisma.CustomerLegalUncheckedCreateWithoutBusiness_activityInput[] + connectOrCreate?: Prisma.CustomerLegalCreateOrConnectWithoutBusiness_activityInput | Prisma.CustomerLegalCreateOrConnectWithoutBusiness_activityInput[] + upsert?: Prisma.CustomerLegalUpsertWithWhereUniqueWithoutBusiness_activityInput | Prisma.CustomerLegalUpsertWithWhereUniqueWithoutBusiness_activityInput[] + createMany?: Prisma.CustomerLegalCreateManyBusiness_activityInputEnvelope set?: Prisma.CustomerLegalWhereUniqueInput | Prisma.CustomerLegalWhereUniqueInput[] disconnect?: Prisma.CustomerLegalWhereUniqueInput | Prisma.CustomerLegalWhereUniqueInput[] delete?: Prisma.CustomerLegalWhereUniqueInput | Prisma.CustomerLegalWhereUniqueInput[] connect?: Prisma.CustomerLegalWhereUniqueInput | Prisma.CustomerLegalWhereUniqueInput[] - update?: Prisma.CustomerLegalUpdateWithWhereUniqueWithoutComplexInput | Prisma.CustomerLegalUpdateWithWhereUniqueWithoutComplexInput[] - updateMany?: Prisma.CustomerLegalUpdateManyWithWhereWithoutComplexInput | Prisma.CustomerLegalUpdateManyWithWhereWithoutComplexInput[] + update?: Prisma.CustomerLegalUpdateWithWhereUniqueWithoutBusiness_activityInput | Prisma.CustomerLegalUpdateWithWhereUniqueWithoutBusiness_activityInput[] + updateMany?: Prisma.CustomerLegalUpdateManyWithWhereWithoutBusiness_activityInput | Prisma.CustomerLegalUpdateManyWithWhereWithoutBusiness_activityInput[] deleteMany?: Prisma.CustomerLegalScalarWhereInput | Prisma.CustomerLegalScalarWhereInput[] } @@ -433,46 +433,46 @@ export type CustomerLegalUncheckedUpdateOneWithoutCustomerNestedInput = { update?: Prisma.XOR, Prisma.CustomerLegalUncheckedUpdateWithoutCustomerInput> } -export type CustomerLegalCreateWithoutComplexInput = { +export type CustomerLegalCreateWithoutBusiness_activityInput = { company_name: string economic_code: string - registration_number: string + registration_number?: string | null postal_code: string - customer: Prisma.CustomerCreateNestedOneWithoutCustomer_legalInput + customer: Prisma.CustomerCreateNestedOneWithoutLegalInput } -export type CustomerLegalUncheckedCreateWithoutComplexInput = { +export type CustomerLegalUncheckedCreateWithoutBusiness_activityInput = { company_name: string economic_code: string - registration_number: string + registration_number?: string | null postal_code: string customer_id: string } -export type CustomerLegalCreateOrConnectWithoutComplexInput = { +export type CustomerLegalCreateOrConnectWithoutBusiness_activityInput = { where: Prisma.CustomerLegalWhereUniqueInput - create: Prisma.XOR + create: Prisma.XOR } -export type CustomerLegalCreateManyComplexInputEnvelope = { - data: Prisma.CustomerLegalCreateManyComplexInput | Prisma.CustomerLegalCreateManyComplexInput[] +export type CustomerLegalCreateManyBusiness_activityInputEnvelope = { + data: Prisma.CustomerLegalCreateManyBusiness_activityInput | Prisma.CustomerLegalCreateManyBusiness_activityInput[] skipDuplicates?: boolean } -export type CustomerLegalUpsertWithWhereUniqueWithoutComplexInput = { +export type CustomerLegalUpsertWithWhereUniqueWithoutBusiness_activityInput = { where: Prisma.CustomerLegalWhereUniqueInput - update: Prisma.XOR - create: Prisma.XOR + update: Prisma.XOR + create: Prisma.XOR } -export type CustomerLegalUpdateWithWhereUniqueWithoutComplexInput = { +export type CustomerLegalUpdateWithWhereUniqueWithoutBusiness_activityInput = { where: Prisma.CustomerLegalWhereUniqueInput - data: Prisma.XOR + data: Prisma.XOR } -export type CustomerLegalUpdateManyWithWhereWithoutComplexInput = { +export type CustomerLegalUpdateManyWithWhereWithoutBusiness_activityInput = { where: Prisma.CustomerLegalScalarWhereInput - data: Prisma.XOR + data: Prisma.XOR } export type CustomerLegalScalarWhereInput = { @@ -481,26 +481,26 @@ export type CustomerLegalScalarWhereInput = { NOT?: Prisma.CustomerLegalScalarWhereInput | Prisma.CustomerLegalScalarWhereInput[] company_name?: Prisma.StringFilter<"CustomerLegal"> | string economic_code?: Prisma.StringFilter<"CustomerLegal"> | string - registration_number?: Prisma.StringFilter<"CustomerLegal"> | string + registration_number?: Prisma.StringNullableFilter<"CustomerLegal"> | string | null postal_code?: Prisma.StringFilter<"CustomerLegal"> | string customer_id?: Prisma.StringFilter<"CustomerLegal"> | string - complex_id?: Prisma.StringFilter<"CustomerLegal"> | string + business_activity_id?: Prisma.StringFilter<"CustomerLegal"> | string } export type CustomerLegalCreateWithoutCustomerInput = { company_name: string economic_code: string - registration_number: string + registration_number?: string | null postal_code: string - complex: Prisma.ComplexCreateNestedOneWithoutCustomer_legalsInput + business_activity: Prisma.BusinessActivityCreateNestedOneWithoutCustomer_legalsInput } export type CustomerLegalUncheckedCreateWithoutCustomerInput = { company_name: string economic_code: string - registration_number: string + registration_number?: string | null postal_code: string - complex_id: string + business_activity_id: string } export type CustomerLegalCreateOrConnectWithoutCustomerInput = { @@ -522,47 +522,47 @@ export type CustomerLegalUpdateToOneWithWhereWithoutCustomerInput = { export type CustomerLegalUpdateWithoutCustomerInput = { company_name?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.StringFieldUpdateOperationsInput | string - registration_number?: Prisma.StringFieldUpdateOperationsInput | string + registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null postal_code?: Prisma.StringFieldUpdateOperationsInput | string - complex?: Prisma.ComplexUpdateOneRequiredWithoutCustomer_legalsNestedInput + business_activity?: Prisma.BusinessActivityUpdateOneRequiredWithoutCustomer_legalsNestedInput } export type CustomerLegalUncheckedUpdateWithoutCustomerInput = { company_name?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.StringFieldUpdateOperationsInput | string - registration_number?: Prisma.StringFieldUpdateOperationsInput | string + registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null postal_code?: Prisma.StringFieldUpdateOperationsInput | string - complex_id?: Prisma.StringFieldUpdateOperationsInput | string + business_activity_id?: Prisma.StringFieldUpdateOperationsInput | string } -export type CustomerLegalCreateManyComplexInput = { +export type CustomerLegalCreateManyBusiness_activityInput = { company_name: string economic_code: string - registration_number: string + registration_number?: string | null postal_code: string customer_id: string } -export type CustomerLegalUpdateWithoutComplexInput = { +export type CustomerLegalUpdateWithoutBusiness_activityInput = { company_name?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.StringFieldUpdateOperationsInput | string - registration_number?: Prisma.StringFieldUpdateOperationsInput | string + registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null postal_code?: Prisma.StringFieldUpdateOperationsInput | string - customer?: Prisma.CustomerUpdateOneRequiredWithoutCustomer_legalNestedInput + customer?: Prisma.CustomerUpdateOneRequiredWithoutLegalNestedInput } -export type CustomerLegalUncheckedUpdateWithoutComplexInput = { +export type CustomerLegalUncheckedUpdateWithoutBusiness_activityInput = { company_name?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.StringFieldUpdateOperationsInput | string - registration_number?: Prisma.StringFieldUpdateOperationsInput | string + registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null postal_code?: Prisma.StringFieldUpdateOperationsInput | string customer_id?: Prisma.StringFieldUpdateOperationsInput | string } -export type CustomerLegalUncheckedUpdateManyWithoutComplexInput = { +export type CustomerLegalUncheckedUpdateManyWithoutBusiness_activityInput = { company_name?: Prisma.StringFieldUpdateOperationsInput | string economic_code?: Prisma.StringFieldUpdateOperationsInput | string - registration_number?: Prisma.StringFieldUpdateOperationsInput | string + registration_number?: Prisma.NullableStringFieldUpdateOperationsInput | string | null postal_code?: Prisma.StringFieldUpdateOperationsInput | string customer_id?: Prisma.StringFieldUpdateOperationsInput | string } @@ -575,9 +575,9 @@ export type CustomerLegalSelect - complex?: boolean | Prisma.ComplexDefaultArgs + business_activity?: boolean | Prisma.BusinessActivityDefaultArgs }, ExtArgs["result"]["customerLegal"]> @@ -588,28 +588,28 @@ export type CustomerLegalSelectScalar = { registration_number?: boolean postal_code?: boolean customer_id?: boolean - complex_id?: boolean + business_activity_id?: boolean } -export type CustomerLegalOmit = runtime.Types.Extensions.GetOmit<"company_name" | "economic_code" | "registration_number" | "postal_code" | "customer_id" | "complex_id", ExtArgs["result"]["customerLegal"]> +export type CustomerLegalOmit = runtime.Types.Extensions.GetOmit<"company_name" | "economic_code" | "registration_number" | "postal_code" | "customer_id" | "business_activity_id", ExtArgs["result"]["customerLegal"]> export type CustomerLegalInclude = { customer?: boolean | Prisma.CustomerDefaultArgs - complex?: boolean | Prisma.ComplexDefaultArgs + business_activity?: boolean | Prisma.BusinessActivityDefaultArgs } export type $CustomerLegalPayload = { name: "CustomerLegal" objects: { customer: Prisma.$CustomerPayload - complex: Prisma.$ComplexPayload + business_activity: Prisma.$BusinessActivityPayload } scalars: runtime.Types.Extensions.GetPayloadResult<{ company_name: string economic_code: string - registration_number: string + registration_number: string | null postal_code: string customer_id: string - complex_id: string + business_activity_id: string }, ExtArgs["result"]["customerLegal"]> composites: {} } @@ -951,7 +951,7 @@ readonly fields: CustomerLegalFieldRefs; export interface Prisma__CustomerLegalClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" customer = {}>(args?: Prisma.Subset>): Prisma.Prisma__CustomerClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> - complex = {}>(args?: Prisma.Subset>): Prisma.Prisma__ComplexClient, T, "findUniqueOrThrow", GlobalOmitOptions> | Null, Null, ExtArgs, GlobalOmitOptions> + business_activity = {}>(args?: Prisma.Subset>): Prisma.Prisma__BusinessActivityClient, 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. @@ -986,7 +986,7 @@ export interface CustomerLegalFieldRefs { readonly registration_number: Prisma.FieldRef<"CustomerLegal", 'String'> readonly postal_code: Prisma.FieldRef<"CustomerLegal", 'String'> readonly customer_id: Prisma.FieldRef<"CustomerLegal", 'String'> - readonly complex_id: Prisma.FieldRef<"CustomerLegal", 'String'> + readonly business_activity_id: Prisma.FieldRef<"CustomerLegal", 'String'> } diff --git a/src/generated/prisma/models/Good.ts b/src/generated/prisma/models/Good.ts index 39bfb26..b8f45a8 100644 --- a/src/generated/prisma/models/Good.ts +++ b/src/generated/prisma/models/Good.ts @@ -49,8 +49,8 @@ export type GoodMinAggregateOutputType = { created_at: Date | null updated_at: Date | null deleted_at: Date | null - complex_id: string | null category_id: string | null + business_activity_id: string | null } export type GoodMaxAggregateOutputType = { @@ -68,8 +68,8 @@ export type GoodMaxAggregateOutputType = { created_at: Date | null updated_at: Date | null deleted_at: Date | null - complex_id: string | null category_id: string | null + business_activity_id: string | null } export type GoodCountAggregateOutputType = { @@ -87,8 +87,8 @@ export type GoodCountAggregateOutputType = { created_at: number updated_at: number deleted_at: number - complex_id: number category_id: number + business_activity_id: number _all: number } @@ -116,8 +116,8 @@ export type GoodMinAggregateInputType = { created_at?: true updated_at?: true deleted_at?: true - complex_id?: true category_id?: true + business_activity_id?: true } export type GoodMaxAggregateInputType = { @@ -135,8 +135,8 @@ export type GoodMaxAggregateInputType = { created_at?: true updated_at?: true deleted_at?: true - complex_id?: true category_id?: true + business_activity_id?: true } export type GoodCountAggregateInputType = { @@ -154,8 +154,8 @@ export type GoodCountAggregateInputType = { created_at?: true updated_at?: true deleted_at?: true - complex_id?: true category_id?: true + business_activity_id?: true _all?: true } @@ -260,8 +260,8 @@ export type GoodGroupByOutputType = { created_at: Date updated_at: Date deleted_at: Date | null - complex_id: string | null category_id: string | null + business_activity_id: string | null _count: GoodCountAggregateOutputType | null _avg: GoodAvgAggregateOutputType | null _sum: GoodSumAggregateOutputType | null @@ -302,10 +302,10 @@ export type GoodWhereInput = { created_at?: Prisma.DateTimeFilter<"Good"> | Date | string updated_at?: Prisma.DateTimeFilter<"Good"> | Date | string deleted_at?: Prisma.DateTimeNullableFilter<"Good"> | Date | string | null - complex_id?: Prisma.StringNullableFilter<"Good"> | string | null category_id?: Prisma.StringNullableFilter<"Good"> | string | null + business_activity_id?: Prisma.StringNullableFilter<"Good"> | string | null category?: Prisma.XOR | null - complex?: Prisma.XOR | null + business_activity?: Prisma.XOR | null sales_invoice_items?: Prisma.SalesInvoiceItemListRelationFilter } @@ -324,10 +324,10 @@ export type GoodOrderByWithRelationInput = { created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder deleted_at?: Prisma.SortOrderInput | Prisma.SortOrder - complex_id?: Prisma.SortOrderInput | Prisma.SortOrder category_id?: Prisma.SortOrderInput | Prisma.SortOrder + business_activity_id?: Prisma.SortOrderInput | Prisma.SortOrder category?: Prisma.GoodCategoryOrderByWithRelationInput - complex?: Prisma.ComplexOrderByWithRelationInput + business_activity?: Prisma.BusinessActivityOrderByWithRelationInput sales_invoice_items?: Prisma.SalesInvoiceItemOrderByRelationAggregateInput _relevance?: Prisma.GoodOrderByRelevanceInput } @@ -350,10 +350,10 @@ export type GoodWhereUniqueInput = Prisma.AtLeast<{ created_at?: Prisma.DateTimeFilter<"Good"> | Date | string updated_at?: Prisma.DateTimeFilter<"Good"> | Date | string deleted_at?: Prisma.DateTimeNullableFilter<"Good"> | Date | string | null - complex_id?: Prisma.StringNullableFilter<"Good"> | string | null category_id?: Prisma.StringNullableFilter<"Good"> | string | null + business_activity_id?: Prisma.StringNullableFilter<"Good"> | string | null category?: Prisma.XOR | null - complex?: Prisma.XOR | null + business_activity?: Prisma.XOR | null sales_invoice_items?: Prisma.SalesInvoiceItemListRelationFilter }, "id" | "local_sku" | "barcode"> @@ -372,8 +372,8 @@ export type GoodOrderByWithAggregationInput = { created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder deleted_at?: Prisma.SortOrderInput | Prisma.SortOrder - complex_id?: Prisma.SortOrderInput | Prisma.SortOrder category_id?: Prisma.SortOrderInput | Prisma.SortOrder + business_activity_id?: Prisma.SortOrderInput | Prisma.SortOrder _count?: Prisma.GoodCountOrderByAggregateInput _avg?: Prisma.GoodAvgOrderByAggregateInput _max?: Prisma.GoodMaxOrderByAggregateInput @@ -399,8 +399,8 @@ export type GoodScalarWhereWithAggregatesInput = { created_at?: Prisma.DateTimeWithAggregatesFilter<"Good"> | Date | string updated_at?: Prisma.DateTimeWithAggregatesFilter<"Good"> | Date | string deleted_at?: Prisma.DateTimeNullableWithAggregatesFilter<"Good"> | Date | string | null - complex_id?: Prisma.StringNullableWithAggregatesFilter<"Good"> | string | null category_id?: Prisma.StringNullableWithAggregatesFilter<"Good"> | string | null + business_activity_id?: Prisma.StringNullableWithAggregatesFilter<"Good"> | string | null } export type GoodCreateInput = { @@ -419,7 +419,7 @@ export type GoodCreateInput = { updated_at?: Date | string deleted_at?: Date | string | null category?: Prisma.GoodCategoryCreateNestedOneWithoutGoodsInput - complex?: Prisma.ComplexCreateNestedOneWithoutGoodsInput + business_activity?: Prisma.BusinessActivityCreateNestedOneWithoutGoodsInput sales_invoice_items?: Prisma.SalesInvoiceItemCreateNestedManyWithoutGoodInput } @@ -438,8 +438,8 @@ export type GoodUncheckedCreateInput = { created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - complex_id?: string | null category_id?: string | null + business_activity_id?: string | null sales_invoice_items?: Prisma.SalesInvoiceItemUncheckedCreateNestedManyWithoutGoodInput } @@ -459,7 +459,7 @@ export type GoodUpdateInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null category?: Prisma.GoodCategoryUpdateOneWithoutGoodsNestedInput - complex?: Prisma.ComplexUpdateOneWithoutGoodsNestedInput + business_activity?: Prisma.BusinessActivityUpdateOneWithoutGoodsNestedInput sales_invoice_items?: Prisma.SalesInvoiceItemUpdateManyWithoutGoodNestedInput } @@ -478,8 +478,8 @@ export type GoodUncheckedUpdateInput = { created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - complex_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null category_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + business_activity_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null sales_invoice_items?: Prisma.SalesInvoiceItemUncheckedUpdateManyWithoutGoodNestedInput } @@ -498,8 +498,8 @@ export type GoodCreateManyInput = { created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - complex_id?: string | null category_id?: string | null + business_activity_id?: string | null } export type GoodUpdateManyMutationInput = { @@ -534,8 +534,8 @@ export type GoodUncheckedUpdateManyInput = { created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - complex_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null category_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + business_activity_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null } export type GoodListRelationFilter = { @@ -569,8 +569,8 @@ export type GoodCountOrderByAggregateInput = { created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder deleted_at?: Prisma.SortOrder - complex_id?: Prisma.SortOrder category_id?: Prisma.SortOrder + business_activity_id?: Prisma.SortOrder } export type GoodAvgOrderByAggregateInput = { @@ -592,8 +592,8 @@ export type GoodMaxOrderByAggregateInput = { created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder deleted_at?: Prisma.SortOrder - complex_id?: Prisma.SortOrder category_id?: Prisma.SortOrder + business_activity_id?: Prisma.SortOrder } export type GoodMinOrderByAggregateInput = { @@ -611,8 +611,8 @@ export type GoodMinOrderByAggregateInput = { created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder deleted_at?: Prisma.SortOrder - complex_id?: Prisma.SortOrder category_id?: Prisma.SortOrder + business_activity_id?: Prisma.SortOrder } export type GoodSumOrderByAggregateInput = { @@ -624,45 +624,45 @@ export type GoodNullableScalarRelationFilter = { isNot?: Prisma.GoodWhereInput | null } -export type GoodCreateNestedManyWithoutComplexInput = { - create?: Prisma.XOR | Prisma.GoodCreateWithoutComplexInput[] | Prisma.GoodUncheckedCreateWithoutComplexInput[] - connectOrCreate?: Prisma.GoodCreateOrConnectWithoutComplexInput | Prisma.GoodCreateOrConnectWithoutComplexInput[] - createMany?: Prisma.GoodCreateManyComplexInputEnvelope +export type GoodCreateNestedManyWithoutBusiness_activityInput = { + create?: Prisma.XOR | Prisma.GoodCreateWithoutBusiness_activityInput[] | Prisma.GoodUncheckedCreateWithoutBusiness_activityInput[] + connectOrCreate?: Prisma.GoodCreateOrConnectWithoutBusiness_activityInput | Prisma.GoodCreateOrConnectWithoutBusiness_activityInput[] + createMany?: Prisma.GoodCreateManyBusiness_activityInputEnvelope connect?: Prisma.GoodWhereUniqueInput | Prisma.GoodWhereUniqueInput[] } -export type GoodUncheckedCreateNestedManyWithoutComplexInput = { - create?: Prisma.XOR | Prisma.GoodCreateWithoutComplexInput[] | Prisma.GoodUncheckedCreateWithoutComplexInput[] - connectOrCreate?: Prisma.GoodCreateOrConnectWithoutComplexInput | Prisma.GoodCreateOrConnectWithoutComplexInput[] - createMany?: Prisma.GoodCreateManyComplexInputEnvelope +export type GoodUncheckedCreateNestedManyWithoutBusiness_activityInput = { + create?: Prisma.XOR | Prisma.GoodCreateWithoutBusiness_activityInput[] | Prisma.GoodUncheckedCreateWithoutBusiness_activityInput[] + connectOrCreate?: Prisma.GoodCreateOrConnectWithoutBusiness_activityInput | Prisma.GoodCreateOrConnectWithoutBusiness_activityInput[] + createMany?: Prisma.GoodCreateManyBusiness_activityInputEnvelope connect?: Prisma.GoodWhereUniqueInput | Prisma.GoodWhereUniqueInput[] } -export type GoodUpdateManyWithoutComplexNestedInput = { - create?: Prisma.XOR | Prisma.GoodCreateWithoutComplexInput[] | Prisma.GoodUncheckedCreateWithoutComplexInput[] - connectOrCreate?: Prisma.GoodCreateOrConnectWithoutComplexInput | Prisma.GoodCreateOrConnectWithoutComplexInput[] - upsert?: Prisma.GoodUpsertWithWhereUniqueWithoutComplexInput | Prisma.GoodUpsertWithWhereUniqueWithoutComplexInput[] - createMany?: Prisma.GoodCreateManyComplexInputEnvelope +export type GoodUpdateManyWithoutBusiness_activityNestedInput = { + create?: Prisma.XOR | Prisma.GoodCreateWithoutBusiness_activityInput[] | Prisma.GoodUncheckedCreateWithoutBusiness_activityInput[] + connectOrCreate?: Prisma.GoodCreateOrConnectWithoutBusiness_activityInput | Prisma.GoodCreateOrConnectWithoutBusiness_activityInput[] + upsert?: Prisma.GoodUpsertWithWhereUniqueWithoutBusiness_activityInput | Prisma.GoodUpsertWithWhereUniqueWithoutBusiness_activityInput[] + createMany?: Prisma.GoodCreateManyBusiness_activityInputEnvelope set?: Prisma.GoodWhereUniqueInput | Prisma.GoodWhereUniqueInput[] disconnect?: Prisma.GoodWhereUniqueInput | Prisma.GoodWhereUniqueInput[] delete?: Prisma.GoodWhereUniqueInput | Prisma.GoodWhereUniqueInput[] connect?: Prisma.GoodWhereUniqueInput | Prisma.GoodWhereUniqueInput[] - update?: Prisma.GoodUpdateWithWhereUniqueWithoutComplexInput | Prisma.GoodUpdateWithWhereUniqueWithoutComplexInput[] - updateMany?: Prisma.GoodUpdateManyWithWhereWithoutComplexInput | Prisma.GoodUpdateManyWithWhereWithoutComplexInput[] + update?: Prisma.GoodUpdateWithWhereUniqueWithoutBusiness_activityInput | Prisma.GoodUpdateWithWhereUniqueWithoutBusiness_activityInput[] + updateMany?: Prisma.GoodUpdateManyWithWhereWithoutBusiness_activityInput | Prisma.GoodUpdateManyWithWhereWithoutBusiness_activityInput[] deleteMany?: Prisma.GoodScalarWhereInput | Prisma.GoodScalarWhereInput[] } -export type GoodUncheckedUpdateManyWithoutComplexNestedInput = { - create?: Prisma.XOR | Prisma.GoodCreateWithoutComplexInput[] | Prisma.GoodUncheckedCreateWithoutComplexInput[] - connectOrCreate?: Prisma.GoodCreateOrConnectWithoutComplexInput | Prisma.GoodCreateOrConnectWithoutComplexInput[] - upsert?: Prisma.GoodUpsertWithWhereUniqueWithoutComplexInput | Prisma.GoodUpsertWithWhereUniqueWithoutComplexInput[] - createMany?: Prisma.GoodCreateManyComplexInputEnvelope +export type GoodUncheckedUpdateManyWithoutBusiness_activityNestedInput = { + create?: Prisma.XOR | Prisma.GoodCreateWithoutBusiness_activityInput[] | Prisma.GoodUncheckedCreateWithoutBusiness_activityInput[] + connectOrCreate?: Prisma.GoodCreateOrConnectWithoutBusiness_activityInput | Prisma.GoodCreateOrConnectWithoutBusiness_activityInput[] + upsert?: Prisma.GoodUpsertWithWhereUniqueWithoutBusiness_activityInput | Prisma.GoodUpsertWithWhereUniqueWithoutBusiness_activityInput[] + createMany?: Prisma.GoodCreateManyBusiness_activityInputEnvelope set?: Prisma.GoodWhereUniqueInput | Prisma.GoodWhereUniqueInput[] disconnect?: Prisma.GoodWhereUniqueInput | Prisma.GoodWhereUniqueInput[] delete?: Prisma.GoodWhereUniqueInput | Prisma.GoodWhereUniqueInput[] connect?: Prisma.GoodWhereUniqueInput | Prisma.GoodWhereUniqueInput[] - update?: Prisma.GoodUpdateWithWhereUniqueWithoutComplexInput | Prisma.GoodUpdateWithWhereUniqueWithoutComplexInput[] - updateMany?: Prisma.GoodUpdateManyWithWhereWithoutComplexInput | Prisma.GoodUpdateManyWithWhereWithoutComplexInput[] + update?: Prisma.GoodUpdateWithWhereUniqueWithoutBusiness_activityInput | Prisma.GoodUpdateWithWhereUniqueWithoutBusiness_activityInput[] + updateMany?: Prisma.GoodUpdateManyWithWhereWithoutBusiness_activityInput | Prisma.GoodUpdateManyWithWhereWithoutBusiness_activityInput[] deleteMany?: Prisma.GoodScalarWhereInput | Prisma.GoodScalarWhereInput[] } @@ -740,7 +740,7 @@ export type GoodUpdateOneWithoutSales_invoice_itemsNestedInput = { update?: Prisma.XOR, Prisma.GoodUncheckedUpdateWithoutSales_invoice_itemsInput> } -export type GoodCreateWithoutComplexInput = { +export type GoodCreateWithoutBusiness_activityInput = { id?: string name: string is_default_guild_good?: boolean @@ -759,7 +759,7 @@ export type GoodCreateWithoutComplexInput = { sales_invoice_items?: Prisma.SalesInvoiceItemCreateNestedManyWithoutGoodInput } -export type GoodUncheckedCreateWithoutComplexInput = { +export type GoodUncheckedCreateWithoutBusiness_activityInput = { id?: string name: string is_default_guild_good?: boolean @@ -778,30 +778,30 @@ export type GoodUncheckedCreateWithoutComplexInput = { sales_invoice_items?: Prisma.SalesInvoiceItemUncheckedCreateNestedManyWithoutGoodInput } -export type GoodCreateOrConnectWithoutComplexInput = { +export type GoodCreateOrConnectWithoutBusiness_activityInput = { where: Prisma.GoodWhereUniqueInput - create: Prisma.XOR + create: Prisma.XOR } -export type GoodCreateManyComplexInputEnvelope = { - data: Prisma.GoodCreateManyComplexInput | Prisma.GoodCreateManyComplexInput[] +export type GoodCreateManyBusiness_activityInputEnvelope = { + data: Prisma.GoodCreateManyBusiness_activityInput | Prisma.GoodCreateManyBusiness_activityInput[] skipDuplicates?: boolean } -export type GoodUpsertWithWhereUniqueWithoutComplexInput = { +export type GoodUpsertWithWhereUniqueWithoutBusiness_activityInput = { where: Prisma.GoodWhereUniqueInput - update: Prisma.XOR - create: Prisma.XOR + update: Prisma.XOR + create: Prisma.XOR } -export type GoodUpdateWithWhereUniqueWithoutComplexInput = { +export type GoodUpdateWithWhereUniqueWithoutBusiness_activityInput = { where: Prisma.GoodWhereUniqueInput - data: Prisma.XOR + data: Prisma.XOR } -export type GoodUpdateManyWithWhereWithoutComplexInput = { +export type GoodUpdateManyWithWhereWithoutBusiness_activityInput = { where: Prisma.GoodScalarWhereInput - data: Prisma.XOR + data: Prisma.XOR } export type GoodScalarWhereInput = { @@ -822,8 +822,8 @@ export type GoodScalarWhereInput = { created_at?: Prisma.DateTimeFilter<"Good"> | Date | string updated_at?: Prisma.DateTimeFilter<"Good"> | Date | string deleted_at?: Prisma.DateTimeNullableFilter<"Good"> | Date | string | null - complex_id?: Prisma.StringNullableFilter<"Good"> | string | null category_id?: Prisma.StringNullableFilter<"Good"> | string | null + business_activity_id?: Prisma.StringNullableFilter<"Good"> | string | null } export type GoodCreateWithoutCategoryInput = { @@ -841,7 +841,7 @@ export type GoodCreateWithoutCategoryInput = { created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - complex?: Prisma.ComplexCreateNestedOneWithoutGoodsInput + business_activity?: Prisma.BusinessActivityCreateNestedOneWithoutGoodsInput sales_invoice_items?: Prisma.SalesInvoiceItemCreateNestedManyWithoutGoodInput } @@ -860,7 +860,7 @@ export type GoodUncheckedCreateWithoutCategoryInput = { created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - complex_id?: string | null + business_activity_id?: string | null sales_invoice_items?: Prisma.SalesInvoiceItemUncheckedCreateNestedManyWithoutGoodInput } @@ -906,7 +906,7 @@ export type GoodCreateWithoutSales_invoice_itemsInput = { updated_at?: Date | string deleted_at?: Date | string | null category?: Prisma.GoodCategoryCreateNestedOneWithoutGoodsInput - complex?: Prisma.ComplexCreateNestedOneWithoutGoodsInput + business_activity?: Prisma.BusinessActivityCreateNestedOneWithoutGoodsInput } export type GoodUncheckedCreateWithoutSales_invoice_itemsInput = { @@ -924,8 +924,8 @@ export type GoodUncheckedCreateWithoutSales_invoice_itemsInput = { created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - complex_id?: string | null category_id?: string | null + business_activity_id?: string | null } export type GoodCreateOrConnectWithoutSales_invoice_itemsInput = { @@ -960,7 +960,7 @@ export type GoodUpdateWithoutSales_invoice_itemsInput = { updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null category?: Prisma.GoodCategoryUpdateOneWithoutGoodsNestedInput - complex?: Prisma.ComplexUpdateOneWithoutGoodsNestedInput + business_activity?: Prisma.BusinessActivityUpdateOneWithoutGoodsNestedInput } export type GoodUncheckedUpdateWithoutSales_invoice_itemsInput = { @@ -978,11 +978,11 @@ export type GoodUncheckedUpdateWithoutSales_invoice_itemsInput = { created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - complex_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null category_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + business_activity_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null } -export type GoodCreateManyComplexInput = { +export type GoodCreateManyBusiness_activityInput = { id?: string name: string is_default_guild_good?: boolean @@ -1000,7 +1000,7 @@ export type GoodCreateManyComplexInput = { category_id?: string | null } -export type GoodUpdateWithoutComplexInput = { +export type GoodUpdateWithoutBusiness_activityInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string is_default_guild_good?: Prisma.BoolFieldUpdateOperationsInput | boolean @@ -1019,7 +1019,7 @@ export type GoodUpdateWithoutComplexInput = { sales_invoice_items?: Prisma.SalesInvoiceItemUpdateManyWithoutGoodNestedInput } -export type GoodUncheckedUpdateWithoutComplexInput = { +export type GoodUncheckedUpdateWithoutBusiness_activityInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string is_default_guild_good?: Prisma.BoolFieldUpdateOperationsInput | boolean @@ -1038,7 +1038,7 @@ export type GoodUncheckedUpdateWithoutComplexInput = { sales_invoice_items?: Prisma.SalesInvoiceItemUncheckedUpdateManyWithoutGoodNestedInput } -export type GoodUncheckedUpdateManyWithoutComplexInput = { +export type GoodUncheckedUpdateManyWithoutBusiness_activityInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string is_default_guild_good?: Prisma.BoolFieldUpdateOperationsInput | boolean @@ -1071,7 +1071,7 @@ export type GoodCreateManyCategoryInput = { created_at?: Date | string updated_at?: Date | string deleted_at?: Date | string | null - complex_id?: string | null + business_activity_id?: string | null } export type GoodUpdateWithoutCategoryInput = { @@ -1089,7 +1089,7 @@ export type GoodUpdateWithoutCategoryInput = { created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - complex?: Prisma.ComplexUpdateOneWithoutGoodsNestedInput + business_activity?: Prisma.BusinessActivityUpdateOneWithoutGoodsNestedInput sales_invoice_items?: Prisma.SalesInvoiceItemUpdateManyWithoutGoodNestedInput } @@ -1108,7 +1108,7 @@ export type GoodUncheckedUpdateWithoutCategoryInput = { created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - complex_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + business_activity_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null sales_invoice_items?: Prisma.SalesInvoiceItemUncheckedUpdateManyWithoutGoodNestedInput } @@ -1127,7 +1127,7 @@ export type GoodUncheckedUpdateManyWithoutCategoryInput = { created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string deleted_at?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null - complex_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + business_activity_id?: Prisma.NullableStringFieldUpdateOperationsInput | string | null } @@ -1176,10 +1176,10 @@ export type GoodSelect - complex?: boolean | Prisma.Good$complexArgs + business_activity?: boolean | Prisma.Good$business_activityArgs sales_invoice_items?: boolean | Prisma.Good$sales_invoice_itemsArgs _count?: boolean | Prisma.GoodCountOutputTypeDefaultArgs }, ExtArgs["result"]["good"]> @@ -1201,14 +1201,14 @@ export type GoodSelectScalar = { created_at?: boolean updated_at?: boolean deleted_at?: boolean - complex_id?: boolean category_id?: boolean + business_activity_id?: boolean } -export type GoodOmit = runtime.Types.Extensions.GetOmit<"id" | "name" | "is_default_guild_good" | "sku" | "unit_type" | "pricing_model" | "description" | "local_sku" | "barcode" | "base_sale_price" | "image_url" | "created_at" | "updated_at" | "deleted_at" | "complex_id" | "category_id", ExtArgs["result"]["good"]> +export type GoodOmit = runtime.Types.Extensions.GetOmit<"id" | "name" | "is_default_guild_good" | "sku" | "unit_type" | "pricing_model" | "description" | "local_sku" | "barcode" | "base_sale_price" | "image_url" | "created_at" | "updated_at" | "deleted_at" | "category_id" | "business_activity_id", ExtArgs["result"]["good"]> export type GoodInclude = { category?: boolean | Prisma.Good$categoryArgs - complex?: boolean | Prisma.Good$complexArgs + business_activity?: boolean | Prisma.Good$business_activityArgs sales_invoice_items?: boolean | Prisma.Good$sales_invoice_itemsArgs _count?: boolean | Prisma.GoodCountOutputTypeDefaultArgs } @@ -1217,7 +1217,7 @@ export type $GoodPayload | null - complex: Prisma.$ComplexPayload | null + business_activity: Prisma.$BusinessActivityPayload | null sales_invoice_items: Prisma.$SalesInvoiceItemPayload[] } scalars: runtime.Types.Extensions.GetPayloadResult<{ @@ -1235,8 +1235,8 @@ export type $GoodPayload composites: {} } @@ -1578,7 +1578,7 @@ readonly fields: GoodFieldRefs; export interface Prisma__GoodClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" category = {}>(args?: Prisma.Subset>): Prisma.Prisma__GoodCategoryClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> - complex = {}>(args?: Prisma.Subset>): Prisma.Prisma__ComplexClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> + business_activity = {}>(args?: Prisma.Subset>): Prisma.Prisma__BusinessActivityClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> sales_invoice_items = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> /** * Attaches callbacks for the resolution and/or rejection of the Promise. @@ -1623,8 +1623,8 @@ export interface GoodFieldRefs { readonly created_at: Prisma.FieldRef<"Good", 'DateTime'> readonly updated_at: Prisma.FieldRef<"Good", 'DateTime'> readonly deleted_at: Prisma.FieldRef<"Good", 'DateTime'> - readonly complex_id: Prisma.FieldRef<"Good", 'String'> readonly category_id: Prisma.FieldRef<"Good", 'String'> + readonly business_activity_id: Prisma.FieldRef<"Good", 'String'> } @@ -1992,22 +1992,22 @@ export type Good$categoryArgs = { +export type Good$business_activityArgs = { /** - * Select specific fields to fetch from the Complex + * Select specific fields to fetch from the BusinessActivity */ - select?: Prisma.ComplexSelect | null + select?: Prisma.BusinessActivitySelect | null /** - * Omit specific fields from the Complex + * Omit specific fields from the BusinessActivity */ - omit?: Prisma.ComplexOmit | null + omit?: Prisma.BusinessActivityOmit | null /** * Choose, which related nodes to fetch as well */ - include?: Prisma.ComplexInclude | null - where?: Prisma.ComplexWhereInput + include?: Prisma.BusinessActivityInclude | null + where?: Prisma.BusinessActivityWhereInput } /** diff --git a/src/generated/prisma/models/Partner.ts b/src/generated/prisma/models/Partner.ts index ec81142..c023a55 100644 --- a/src/generated/prisma/models/Partner.ts +++ b/src/generated/prisma/models/Partner.ts @@ -198,8 +198,9 @@ export type PartnerWhereInput = { logo_url?: Prisma.StringNullableFilter<"Partner"> | string | null created_at?: Prisma.DateTimeFilter<"Partner"> | Date | string updated_at?: Prisma.DateTimeFilter<"Partner"> | Date | string - consumers?: Prisma.ConsumerListRelationFilter - partner_accounts?: Prisma.PartnerAccountListRelationFilter + accounts?: Prisma.PartnerAccountListRelationFilter + consumers_individual?: Prisma.ConsumerIndividualListRelationFilter + consumers_legal?: Prisma.ConsumerLegalListRelationFilter license_charge_transactions?: Prisma.LicenseChargeTransactionListRelationFilter account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionListRelationFilter license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionListRelationFilter @@ -213,8 +214,9 @@ export type PartnerOrderByWithRelationInput = { logo_url?: Prisma.SortOrderInput | Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder - consumers?: Prisma.ConsumerOrderByRelationAggregateInput - partner_accounts?: Prisma.PartnerAccountOrderByRelationAggregateInput + accounts?: Prisma.PartnerAccountOrderByRelationAggregateInput + consumers_individual?: Prisma.ConsumerIndividualOrderByRelationAggregateInput + consumers_legal?: Prisma.ConsumerLegalOrderByRelationAggregateInput license_charge_transactions?: Prisma.LicenseChargeTransactionOrderByRelationAggregateInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionOrderByRelationAggregateInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionOrderByRelationAggregateInput @@ -232,8 +234,9 @@ export type PartnerWhereUniqueInput = Prisma.AtLeast<{ logo_url?: Prisma.StringNullableFilter<"Partner"> | string | null created_at?: Prisma.DateTimeFilter<"Partner"> | Date | string updated_at?: Prisma.DateTimeFilter<"Partner"> | Date | string - consumers?: Prisma.ConsumerListRelationFilter - partner_accounts?: Prisma.PartnerAccountListRelationFilter + accounts?: Prisma.PartnerAccountListRelationFilter + consumers_individual?: Prisma.ConsumerIndividualListRelationFilter + consumers_legal?: Prisma.ConsumerLegalListRelationFilter license_charge_transactions?: Prisma.LicenseChargeTransactionListRelationFilter account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionListRelationFilter license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionListRelationFilter @@ -273,8 +276,9 @@ export type PartnerCreateInput = { logo_url?: string | null created_at?: Date | string updated_at?: Date | string - consumers?: Prisma.ConsumerCreateNestedManyWithoutPartnerInput - partner_accounts?: Prisma.PartnerAccountCreateNestedManyWithoutPartnerInput + accounts?: Prisma.PartnerAccountCreateNestedManyWithoutPartnerInput + consumers_individual?: Prisma.ConsumerIndividualCreateNestedManyWithoutPartnerInput + consumers_legal?: Prisma.ConsumerLegalCreateNestedManyWithoutPartnerInput license_charge_transactions?: Prisma.LicenseChargeTransactionCreateNestedManyWithoutPartnerInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionCreateNestedManyWithoutPartnerInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionCreateNestedManyWithoutPartnerInput @@ -288,8 +292,9 @@ export type PartnerUncheckedCreateInput = { logo_url?: string | null created_at?: Date | string updated_at?: Date | string - consumers?: Prisma.ConsumerUncheckedCreateNestedManyWithoutPartnerInput - partner_accounts?: Prisma.PartnerAccountUncheckedCreateNestedManyWithoutPartnerInput + accounts?: Prisma.PartnerAccountUncheckedCreateNestedManyWithoutPartnerInput + consumers_individual?: Prisma.ConsumerIndividualUncheckedCreateNestedManyWithoutPartnerInput + consumers_legal?: Prisma.ConsumerLegalUncheckedCreateNestedManyWithoutPartnerInput license_charge_transactions?: Prisma.LicenseChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput @@ -303,8 +308,9 @@ export type PartnerUpdateInput = { logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumers?: Prisma.ConsumerUpdateManyWithoutPartnerNestedInput - partner_accounts?: Prisma.PartnerAccountUpdateManyWithoutPartnerNestedInput + accounts?: Prisma.PartnerAccountUpdateManyWithoutPartnerNestedInput + consumers_individual?: Prisma.ConsumerIndividualUpdateManyWithoutPartnerNestedInput + consumers_legal?: Prisma.ConsumerLegalUpdateManyWithoutPartnerNestedInput license_charge_transactions?: Prisma.LicenseChargeTransactionUpdateManyWithoutPartnerNestedInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUpdateManyWithoutPartnerNestedInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUpdateManyWithoutPartnerNestedInput @@ -318,8 +324,9 @@ export type PartnerUncheckedUpdateInput = { logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumers?: Prisma.ConsumerUncheckedUpdateManyWithoutPartnerNestedInput - partner_accounts?: Prisma.PartnerAccountUncheckedUpdateManyWithoutPartnerNestedInput + accounts?: Prisma.PartnerAccountUncheckedUpdateManyWithoutPartnerNestedInput + consumers_individual?: Prisma.ConsumerIndividualUncheckedUpdateManyWithoutPartnerNestedInput + consumers_legal?: Prisma.ConsumerLegalUncheckedUpdateManyWithoutPartnerNestedInput license_charge_transactions?: Prisma.LicenseChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput @@ -396,18 +403,32 @@ export type PartnerMinOrderByAggregateInput = { updated_at?: Prisma.SortOrder } -export type PartnerCreateNestedOneWithoutConsumersInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.PartnerCreateOrConnectWithoutConsumersInput +export type PartnerCreateNestedOneWithoutConsumers_individualInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.PartnerCreateOrConnectWithoutConsumers_individualInput connect?: Prisma.PartnerWhereUniqueInput } -export type PartnerUpdateOneRequiredWithoutConsumersNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.PartnerCreateOrConnectWithoutConsumersInput - upsert?: Prisma.PartnerUpsertWithoutConsumersInput +export type PartnerUpdateOneRequiredWithoutConsumers_individualNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.PartnerCreateOrConnectWithoutConsumers_individualInput + upsert?: Prisma.PartnerUpsertWithoutConsumers_individualInput connect?: Prisma.PartnerWhereUniqueInput - update?: Prisma.XOR, Prisma.PartnerUncheckedUpdateWithoutConsumersInput> + update?: Prisma.XOR, Prisma.PartnerUncheckedUpdateWithoutConsumers_individualInput> +} + +export type PartnerCreateNestedOneWithoutConsumers_legalInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.PartnerCreateOrConnectWithoutConsumers_legalInput + connect?: Prisma.PartnerWhereUniqueInput +} + +export type PartnerUpdateOneRequiredWithoutConsumers_legalNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.PartnerCreateOrConnectWithoutConsumers_legalInput + upsert?: Prisma.PartnerUpsertWithoutConsumers_legalInput + connect?: Prisma.PartnerWhereUniqueInput + update?: Prisma.XOR, Prisma.PartnerUncheckedUpdateWithoutConsumers_legalInput> } export type PartnerCreateNestedOneWithoutLicense_charge_transactionsInput = { @@ -452,25 +473,25 @@ export type PartnerUpdateOneRequiredWithoutAccount_quota_charge_transactionsNest update?: Prisma.XOR, Prisma.PartnerUncheckedUpdateWithoutAccount_quota_charge_transactionsInput> } -export type PartnerCreateNestedOneWithoutPartner_accountsInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.PartnerCreateOrConnectWithoutPartner_accountsInput +export type PartnerCreateNestedOneWithoutAccountsInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.PartnerCreateOrConnectWithoutAccountsInput connect?: Prisma.PartnerWhereUniqueInput } -export type PartnerUpdateOneRequiredWithoutPartner_accountsNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.PartnerCreateOrConnectWithoutPartner_accountsInput - upsert?: Prisma.PartnerUpsertWithoutPartner_accountsInput +export type PartnerUpdateOneRequiredWithoutAccountsNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.PartnerCreateOrConnectWithoutAccountsInput + upsert?: Prisma.PartnerUpsertWithoutAccountsInput connect?: Prisma.PartnerWhereUniqueInput - update?: Prisma.XOR, Prisma.PartnerUncheckedUpdateWithoutPartner_accountsInput> + update?: Prisma.XOR, Prisma.PartnerUncheckedUpdateWithoutAccountsInput> } export type EnumPartnerStatusFieldUpdateOperationsInput = { set?: $Enums.PartnerStatus } -export type PartnerCreateWithoutConsumersInput = { +export type PartnerCreateWithoutConsumers_individualInput = { id?: string name: string code: string @@ -478,13 +499,14 @@ export type PartnerCreateWithoutConsumersInput = { logo_url?: string | null created_at?: Date | string updated_at?: Date | string - partner_accounts?: Prisma.PartnerAccountCreateNestedManyWithoutPartnerInput + accounts?: Prisma.PartnerAccountCreateNestedManyWithoutPartnerInput + consumers_legal?: Prisma.ConsumerLegalCreateNestedManyWithoutPartnerInput license_charge_transactions?: Prisma.LicenseChargeTransactionCreateNestedManyWithoutPartnerInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionCreateNestedManyWithoutPartnerInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionCreateNestedManyWithoutPartnerInput } -export type PartnerUncheckedCreateWithoutConsumersInput = { +export type PartnerUncheckedCreateWithoutConsumers_individualInput = { id?: string name: string code: string @@ -492,29 +514,30 @@ export type PartnerUncheckedCreateWithoutConsumersInput = { logo_url?: string | null created_at?: Date | string updated_at?: Date | string - partner_accounts?: Prisma.PartnerAccountUncheckedCreateNestedManyWithoutPartnerInput + accounts?: Prisma.PartnerAccountUncheckedCreateNestedManyWithoutPartnerInput + consumers_legal?: Prisma.ConsumerLegalUncheckedCreateNestedManyWithoutPartnerInput license_charge_transactions?: Prisma.LicenseChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput } -export type PartnerCreateOrConnectWithoutConsumersInput = { +export type PartnerCreateOrConnectWithoutConsumers_individualInput = { where: Prisma.PartnerWhereUniqueInput - create: Prisma.XOR + create: Prisma.XOR } -export type PartnerUpsertWithoutConsumersInput = { - update: Prisma.XOR - create: Prisma.XOR +export type PartnerUpsertWithoutConsumers_individualInput = { + update: Prisma.XOR + create: Prisma.XOR where?: Prisma.PartnerWhereInput } -export type PartnerUpdateToOneWithWhereWithoutConsumersInput = { +export type PartnerUpdateToOneWithWhereWithoutConsumers_individualInput = { where?: Prisma.PartnerWhereInput - data: Prisma.XOR + data: Prisma.XOR } -export type PartnerUpdateWithoutConsumersInput = { +export type PartnerUpdateWithoutConsumers_individualInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string @@ -522,13 +545,14 @@ export type PartnerUpdateWithoutConsumersInput = { logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - partner_accounts?: Prisma.PartnerAccountUpdateManyWithoutPartnerNestedInput + accounts?: Prisma.PartnerAccountUpdateManyWithoutPartnerNestedInput + consumers_legal?: Prisma.ConsumerLegalUpdateManyWithoutPartnerNestedInput license_charge_transactions?: Prisma.LicenseChargeTransactionUpdateManyWithoutPartnerNestedInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUpdateManyWithoutPartnerNestedInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUpdateManyWithoutPartnerNestedInput } -export type PartnerUncheckedUpdateWithoutConsumersInput = { +export type PartnerUncheckedUpdateWithoutConsumers_individualInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string @@ -536,7 +560,84 @@ export type PartnerUncheckedUpdateWithoutConsumersInput = { logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - partner_accounts?: Prisma.PartnerAccountUncheckedUpdateManyWithoutPartnerNestedInput + accounts?: Prisma.PartnerAccountUncheckedUpdateManyWithoutPartnerNestedInput + consumers_legal?: Prisma.ConsumerLegalUncheckedUpdateManyWithoutPartnerNestedInput + license_charge_transactions?: Prisma.LicenseChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput + account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput + license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput +} + +export type PartnerCreateWithoutConsumers_legalInput = { + id?: string + name: string + code: string + status?: $Enums.PartnerStatus + logo_url?: string | null + created_at?: Date | string + updated_at?: Date | string + accounts?: Prisma.PartnerAccountCreateNestedManyWithoutPartnerInput + consumers_individual?: Prisma.ConsumerIndividualCreateNestedManyWithoutPartnerInput + license_charge_transactions?: Prisma.LicenseChargeTransactionCreateNestedManyWithoutPartnerInput + account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionCreateNestedManyWithoutPartnerInput + license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionCreateNestedManyWithoutPartnerInput +} + +export type PartnerUncheckedCreateWithoutConsumers_legalInput = { + id?: string + name: string + code: string + status?: $Enums.PartnerStatus + logo_url?: string | null + created_at?: Date | string + updated_at?: Date | string + accounts?: Prisma.PartnerAccountUncheckedCreateNestedManyWithoutPartnerInput + consumers_individual?: Prisma.ConsumerIndividualUncheckedCreateNestedManyWithoutPartnerInput + license_charge_transactions?: Prisma.LicenseChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput + account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput + license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput +} + +export type PartnerCreateOrConnectWithoutConsumers_legalInput = { + where: Prisma.PartnerWhereUniqueInput + create: Prisma.XOR +} + +export type PartnerUpsertWithoutConsumers_legalInput = { + update: Prisma.XOR + create: Prisma.XOR + where?: Prisma.PartnerWhereInput +} + +export type PartnerUpdateToOneWithWhereWithoutConsumers_legalInput = { + where?: Prisma.PartnerWhereInput + data: Prisma.XOR +} + +export type PartnerUpdateWithoutConsumers_legalInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + name?: Prisma.StringFieldUpdateOperationsInput | string + code?: Prisma.StringFieldUpdateOperationsInput | string + status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus + logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + accounts?: Prisma.PartnerAccountUpdateManyWithoutPartnerNestedInput + consumers_individual?: Prisma.ConsumerIndividualUpdateManyWithoutPartnerNestedInput + license_charge_transactions?: Prisma.LicenseChargeTransactionUpdateManyWithoutPartnerNestedInput + account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUpdateManyWithoutPartnerNestedInput + license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUpdateManyWithoutPartnerNestedInput +} + +export type PartnerUncheckedUpdateWithoutConsumers_legalInput = { + id?: Prisma.StringFieldUpdateOperationsInput | string + name?: Prisma.StringFieldUpdateOperationsInput | string + code?: Prisma.StringFieldUpdateOperationsInput | string + status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus + logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null + created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + accounts?: Prisma.PartnerAccountUncheckedUpdateManyWithoutPartnerNestedInput + consumers_individual?: Prisma.ConsumerIndividualUncheckedUpdateManyWithoutPartnerNestedInput license_charge_transactions?: Prisma.LicenseChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput @@ -550,8 +651,9 @@ export type PartnerCreateWithoutLicense_charge_transactionsInput = { logo_url?: string | null created_at?: Date | string updated_at?: Date | string - consumers?: Prisma.ConsumerCreateNestedManyWithoutPartnerInput - partner_accounts?: Prisma.PartnerAccountCreateNestedManyWithoutPartnerInput + accounts?: Prisma.PartnerAccountCreateNestedManyWithoutPartnerInput + consumers_individual?: Prisma.ConsumerIndividualCreateNestedManyWithoutPartnerInput + consumers_legal?: Prisma.ConsumerLegalCreateNestedManyWithoutPartnerInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionCreateNestedManyWithoutPartnerInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionCreateNestedManyWithoutPartnerInput } @@ -564,8 +666,9 @@ export type PartnerUncheckedCreateWithoutLicense_charge_transactionsInput = { logo_url?: string | null created_at?: Date | string updated_at?: Date | string - consumers?: Prisma.ConsumerUncheckedCreateNestedManyWithoutPartnerInput - partner_accounts?: Prisma.PartnerAccountUncheckedCreateNestedManyWithoutPartnerInput + accounts?: Prisma.PartnerAccountUncheckedCreateNestedManyWithoutPartnerInput + consumers_individual?: Prisma.ConsumerIndividualUncheckedCreateNestedManyWithoutPartnerInput + consumers_legal?: Prisma.ConsumerLegalUncheckedCreateNestedManyWithoutPartnerInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput } @@ -594,8 +697,9 @@ export type PartnerUpdateWithoutLicense_charge_transactionsInput = { logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumers?: Prisma.ConsumerUpdateManyWithoutPartnerNestedInput - partner_accounts?: Prisma.PartnerAccountUpdateManyWithoutPartnerNestedInput + accounts?: Prisma.PartnerAccountUpdateManyWithoutPartnerNestedInput + consumers_individual?: Prisma.ConsumerIndividualUpdateManyWithoutPartnerNestedInput + consumers_legal?: Prisma.ConsumerLegalUpdateManyWithoutPartnerNestedInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUpdateManyWithoutPartnerNestedInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUpdateManyWithoutPartnerNestedInput } @@ -608,8 +712,9 @@ export type PartnerUncheckedUpdateWithoutLicense_charge_transactionsInput = { logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumers?: Prisma.ConsumerUncheckedUpdateManyWithoutPartnerNestedInput - partner_accounts?: Prisma.PartnerAccountUncheckedUpdateManyWithoutPartnerNestedInput + accounts?: Prisma.PartnerAccountUncheckedUpdateManyWithoutPartnerNestedInput + consumers_individual?: Prisma.ConsumerIndividualUncheckedUpdateManyWithoutPartnerNestedInput + consumers_legal?: Prisma.ConsumerLegalUncheckedUpdateManyWithoutPartnerNestedInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput } @@ -622,8 +727,9 @@ export type PartnerCreateWithoutLicense_renew_charge_transactionsInput = { logo_url?: string | null created_at?: Date | string updated_at?: Date | string - consumers?: Prisma.ConsumerCreateNestedManyWithoutPartnerInput - partner_accounts?: Prisma.PartnerAccountCreateNestedManyWithoutPartnerInput + accounts?: Prisma.PartnerAccountCreateNestedManyWithoutPartnerInput + consumers_individual?: Prisma.ConsumerIndividualCreateNestedManyWithoutPartnerInput + consumers_legal?: Prisma.ConsumerLegalCreateNestedManyWithoutPartnerInput license_charge_transactions?: Prisma.LicenseChargeTransactionCreateNestedManyWithoutPartnerInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionCreateNestedManyWithoutPartnerInput } @@ -636,8 +742,9 @@ export type PartnerUncheckedCreateWithoutLicense_renew_charge_transactionsInput logo_url?: string | null created_at?: Date | string updated_at?: Date | string - consumers?: Prisma.ConsumerUncheckedCreateNestedManyWithoutPartnerInput - partner_accounts?: Prisma.PartnerAccountUncheckedCreateNestedManyWithoutPartnerInput + accounts?: Prisma.PartnerAccountUncheckedCreateNestedManyWithoutPartnerInput + consumers_individual?: Prisma.ConsumerIndividualUncheckedCreateNestedManyWithoutPartnerInput + consumers_legal?: Prisma.ConsumerLegalUncheckedCreateNestedManyWithoutPartnerInput license_charge_transactions?: Prisma.LicenseChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput } @@ -666,8 +773,9 @@ export type PartnerUpdateWithoutLicense_renew_charge_transactionsInput = { logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumers?: Prisma.ConsumerUpdateManyWithoutPartnerNestedInput - partner_accounts?: Prisma.PartnerAccountUpdateManyWithoutPartnerNestedInput + accounts?: Prisma.PartnerAccountUpdateManyWithoutPartnerNestedInput + consumers_individual?: Prisma.ConsumerIndividualUpdateManyWithoutPartnerNestedInput + consumers_legal?: Prisma.ConsumerLegalUpdateManyWithoutPartnerNestedInput license_charge_transactions?: Prisma.LicenseChargeTransactionUpdateManyWithoutPartnerNestedInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUpdateManyWithoutPartnerNestedInput } @@ -680,8 +788,9 @@ export type PartnerUncheckedUpdateWithoutLicense_renew_charge_transactionsInput logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumers?: Prisma.ConsumerUncheckedUpdateManyWithoutPartnerNestedInput - partner_accounts?: Prisma.PartnerAccountUncheckedUpdateManyWithoutPartnerNestedInput + accounts?: Prisma.PartnerAccountUncheckedUpdateManyWithoutPartnerNestedInput + consumers_individual?: Prisma.ConsumerIndividualUncheckedUpdateManyWithoutPartnerNestedInput + consumers_legal?: Prisma.ConsumerLegalUncheckedUpdateManyWithoutPartnerNestedInput license_charge_transactions?: Prisma.LicenseChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput } @@ -694,8 +803,9 @@ export type PartnerCreateWithoutAccount_quota_charge_transactionsInput = { logo_url?: string | null created_at?: Date | string updated_at?: Date | string - consumers?: Prisma.ConsumerCreateNestedManyWithoutPartnerInput - partner_accounts?: Prisma.PartnerAccountCreateNestedManyWithoutPartnerInput + accounts?: Prisma.PartnerAccountCreateNestedManyWithoutPartnerInput + consumers_individual?: Prisma.ConsumerIndividualCreateNestedManyWithoutPartnerInput + consumers_legal?: Prisma.ConsumerLegalCreateNestedManyWithoutPartnerInput license_charge_transactions?: Prisma.LicenseChargeTransactionCreateNestedManyWithoutPartnerInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionCreateNestedManyWithoutPartnerInput } @@ -708,8 +818,9 @@ export type PartnerUncheckedCreateWithoutAccount_quota_charge_transactionsInput logo_url?: string | null created_at?: Date | string updated_at?: Date | string - consumers?: Prisma.ConsumerUncheckedCreateNestedManyWithoutPartnerInput - partner_accounts?: Prisma.PartnerAccountUncheckedCreateNestedManyWithoutPartnerInput + accounts?: Prisma.PartnerAccountUncheckedCreateNestedManyWithoutPartnerInput + consumers_individual?: Prisma.ConsumerIndividualUncheckedCreateNestedManyWithoutPartnerInput + consumers_legal?: Prisma.ConsumerLegalUncheckedCreateNestedManyWithoutPartnerInput license_charge_transactions?: Prisma.LicenseChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput } @@ -738,8 +849,9 @@ export type PartnerUpdateWithoutAccount_quota_charge_transactionsInput = { logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumers?: Prisma.ConsumerUpdateManyWithoutPartnerNestedInput - partner_accounts?: Prisma.PartnerAccountUpdateManyWithoutPartnerNestedInput + accounts?: Prisma.PartnerAccountUpdateManyWithoutPartnerNestedInput + consumers_individual?: Prisma.ConsumerIndividualUpdateManyWithoutPartnerNestedInput + consumers_legal?: Prisma.ConsumerLegalUpdateManyWithoutPartnerNestedInput license_charge_transactions?: Prisma.LicenseChargeTransactionUpdateManyWithoutPartnerNestedInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUpdateManyWithoutPartnerNestedInput } @@ -752,13 +864,14 @@ export type PartnerUncheckedUpdateWithoutAccount_quota_charge_transactionsInput logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumers?: Prisma.ConsumerUncheckedUpdateManyWithoutPartnerNestedInput - partner_accounts?: Prisma.PartnerAccountUncheckedUpdateManyWithoutPartnerNestedInput + accounts?: Prisma.PartnerAccountUncheckedUpdateManyWithoutPartnerNestedInput + consumers_individual?: Prisma.ConsumerIndividualUncheckedUpdateManyWithoutPartnerNestedInput + consumers_legal?: Prisma.ConsumerLegalUncheckedUpdateManyWithoutPartnerNestedInput license_charge_transactions?: Prisma.LicenseChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput } -export type PartnerCreateWithoutPartner_accountsInput = { +export type PartnerCreateWithoutAccountsInput = { id?: string name: string code: string @@ -766,13 +879,14 @@ export type PartnerCreateWithoutPartner_accountsInput = { logo_url?: string | null created_at?: Date | string updated_at?: Date | string - consumers?: Prisma.ConsumerCreateNestedManyWithoutPartnerInput + consumers_individual?: Prisma.ConsumerIndividualCreateNestedManyWithoutPartnerInput + consumers_legal?: Prisma.ConsumerLegalCreateNestedManyWithoutPartnerInput license_charge_transactions?: Prisma.LicenseChargeTransactionCreateNestedManyWithoutPartnerInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionCreateNestedManyWithoutPartnerInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionCreateNestedManyWithoutPartnerInput } -export type PartnerUncheckedCreateWithoutPartner_accountsInput = { +export type PartnerUncheckedCreateWithoutAccountsInput = { id?: string name: string code: string @@ -780,29 +894,30 @@ export type PartnerUncheckedCreateWithoutPartner_accountsInput = { logo_url?: string | null created_at?: Date | string updated_at?: Date | string - consumers?: Prisma.ConsumerUncheckedCreateNestedManyWithoutPartnerInput + consumers_individual?: Prisma.ConsumerIndividualUncheckedCreateNestedManyWithoutPartnerInput + consumers_legal?: Prisma.ConsumerLegalUncheckedCreateNestedManyWithoutPartnerInput license_charge_transactions?: Prisma.LicenseChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUncheckedCreateNestedManyWithoutPartnerInput } -export type PartnerCreateOrConnectWithoutPartner_accountsInput = { +export type PartnerCreateOrConnectWithoutAccountsInput = { where: Prisma.PartnerWhereUniqueInput - create: Prisma.XOR + create: Prisma.XOR } -export type PartnerUpsertWithoutPartner_accountsInput = { - update: Prisma.XOR - create: Prisma.XOR +export type PartnerUpsertWithoutAccountsInput = { + update: Prisma.XOR + create: Prisma.XOR where?: Prisma.PartnerWhereInput } -export type PartnerUpdateToOneWithWhereWithoutPartner_accountsInput = { +export type PartnerUpdateToOneWithWhereWithoutAccountsInput = { where?: Prisma.PartnerWhereInput - data: Prisma.XOR + data: Prisma.XOR } -export type PartnerUpdateWithoutPartner_accountsInput = { +export type PartnerUpdateWithoutAccountsInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string @@ -810,13 +925,14 @@ export type PartnerUpdateWithoutPartner_accountsInput = { logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumers?: Prisma.ConsumerUpdateManyWithoutPartnerNestedInput + consumers_individual?: Prisma.ConsumerIndividualUpdateManyWithoutPartnerNestedInput + consumers_legal?: Prisma.ConsumerLegalUpdateManyWithoutPartnerNestedInput license_charge_transactions?: Prisma.LicenseChargeTransactionUpdateManyWithoutPartnerNestedInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUpdateManyWithoutPartnerNestedInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUpdateManyWithoutPartnerNestedInput } -export type PartnerUncheckedUpdateWithoutPartner_accountsInput = { +export type PartnerUncheckedUpdateWithoutAccountsInput = { id?: Prisma.StringFieldUpdateOperationsInput | string name?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string @@ -824,7 +940,8 @@ export type PartnerUncheckedUpdateWithoutPartner_accountsInput = { logo_url?: Prisma.NullableStringFieldUpdateOperationsInput | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - consumers?: Prisma.ConsumerUncheckedUpdateManyWithoutPartnerNestedInput + consumers_individual?: Prisma.ConsumerIndividualUncheckedUpdateManyWithoutPartnerNestedInput + consumers_legal?: Prisma.ConsumerLegalUncheckedUpdateManyWithoutPartnerNestedInput license_charge_transactions?: Prisma.LicenseChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput account_quota_charge_transactions?: Prisma.PartnerAccountQuotaChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput license_renew_charge_transactions?: Prisma.LicenseRenewChargeTransactionUncheckedUpdateManyWithoutPartnerNestedInput @@ -836,16 +953,18 @@ export type PartnerUncheckedUpdateWithoutPartner_accountsInput = { */ export type PartnerCountOutputType = { - consumers: number - partner_accounts: number + accounts: number + consumers_individual: number + consumers_legal: number license_charge_transactions: number account_quota_charge_transactions: number license_renew_charge_transactions: number } export type PartnerCountOutputTypeSelect = { - consumers?: boolean | PartnerCountOutputTypeCountConsumersArgs - partner_accounts?: boolean | PartnerCountOutputTypeCountPartner_accountsArgs + accounts?: boolean | PartnerCountOutputTypeCountAccountsArgs + consumers_individual?: boolean | PartnerCountOutputTypeCountConsumers_individualArgs + consumers_legal?: boolean | PartnerCountOutputTypeCountConsumers_legalArgs license_charge_transactions?: boolean | PartnerCountOutputTypeCountLicense_charge_transactionsArgs account_quota_charge_transactions?: boolean | PartnerCountOutputTypeCountAccount_quota_charge_transactionsArgs license_renew_charge_transactions?: boolean | PartnerCountOutputTypeCountLicense_renew_charge_transactionsArgs @@ -864,15 +983,22 @@ export type PartnerCountOutputTypeDefaultArgs = { - where?: Prisma.ConsumerWhereInput +export type PartnerCountOutputTypeCountAccountsArgs = { + where?: Prisma.PartnerAccountWhereInput } /** * PartnerCountOutputType without action */ -export type PartnerCountOutputTypeCountPartner_accountsArgs = { - where?: Prisma.PartnerAccountWhereInput +export type PartnerCountOutputTypeCountConsumers_individualArgs = { + where?: Prisma.ConsumerIndividualWhereInput +} + +/** + * PartnerCountOutputType without action + */ +export type PartnerCountOutputTypeCountConsumers_legalArgs = { + where?: Prisma.ConsumerLegalWhereInput } /** @@ -905,8 +1031,9 @@ export type PartnerSelect - partner_accounts?: boolean | Prisma.Partner$partner_accountsArgs + accounts?: boolean | Prisma.Partner$accountsArgs + consumers_individual?: boolean | Prisma.Partner$consumers_individualArgs + consumers_legal?: boolean | Prisma.Partner$consumers_legalArgs license_charge_transactions?: boolean | Prisma.Partner$license_charge_transactionsArgs account_quota_charge_transactions?: boolean | Prisma.Partner$account_quota_charge_transactionsArgs license_renew_charge_transactions?: boolean | Prisma.Partner$license_renew_charge_transactionsArgs @@ -927,8 +1054,9 @@ export type PartnerSelectScalar = { export type PartnerOmit = runtime.Types.Extensions.GetOmit<"id" | "name" | "code" | "status" | "logo_url" | "created_at" | "updated_at", ExtArgs["result"]["partner"]> export type PartnerInclude = { - consumers?: boolean | Prisma.Partner$consumersArgs - partner_accounts?: boolean | Prisma.Partner$partner_accountsArgs + accounts?: boolean | Prisma.Partner$accountsArgs + consumers_individual?: boolean | Prisma.Partner$consumers_individualArgs + consumers_legal?: boolean | Prisma.Partner$consumers_legalArgs license_charge_transactions?: boolean | Prisma.Partner$license_charge_transactionsArgs account_quota_charge_transactions?: boolean | Prisma.Partner$account_quota_charge_transactionsArgs license_renew_charge_transactions?: boolean | Prisma.Partner$license_renew_charge_transactionsArgs @@ -938,8 +1066,9 @@ export type PartnerInclude = { name: "Partner" objects: { - consumers: Prisma.$ConsumerPayload[] - partner_accounts: Prisma.$PartnerAccountPayload[] + accounts: Prisma.$PartnerAccountPayload[] + consumers_individual: Prisma.$ConsumerIndividualPayload[] + consumers_legal: Prisma.$ConsumerLegalPayload[] license_charge_transactions: Prisma.$LicenseChargeTransactionPayload[] account_quota_charge_transactions: Prisma.$PartnerAccountQuotaChargeTransactionPayload[] license_renew_charge_transactions: Prisma.$LicenseRenewChargeTransactionPayload[] @@ -1292,8 +1421,9 @@ readonly fields: PartnerFieldRefs; */ export interface Prisma__PartnerClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" - consumers = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> - partner_accounts = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + accounts = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + consumers_individual = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> + consumers_legal = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> license_charge_transactions = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> account_quota_charge_transactions = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> license_renew_charge_transactions = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> @@ -1681,33 +1811,9 @@ export type PartnerDeleteManyArgs = { - /** - * Select specific fields to fetch from the Consumer - */ - select?: Prisma.ConsumerSelect | null - /** - * Omit specific fields from the Consumer - */ - omit?: Prisma.ConsumerOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.ConsumerInclude | null - where?: Prisma.ConsumerWhereInput - orderBy?: Prisma.ConsumerOrderByWithRelationInput | Prisma.ConsumerOrderByWithRelationInput[] - cursor?: Prisma.ConsumerWhereUniqueInput - take?: number - skip?: number - distinct?: Prisma.ConsumerScalarFieldEnum | Prisma.ConsumerScalarFieldEnum[] -} - -/** - * Partner.partner_accounts - */ -export type Partner$partner_accountsArgs = { +export type Partner$accountsArgs = { /** * Select specific fields to fetch from the PartnerAccount */ @@ -1728,6 +1834,54 @@ export type Partner$partner_accountsArgs = { + /** + * Select specific fields to fetch from the ConsumerIndividual + */ + select?: Prisma.ConsumerIndividualSelect | null + /** + * Omit specific fields from the ConsumerIndividual + */ + omit?: Prisma.ConsumerIndividualOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerIndividualInclude | null + where?: Prisma.ConsumerIndividualWhereInput + orderBy?: Prisma.ConsumerIndividualOrderByWithRelationInput | Prisma.ConsumerIndividualOrderByWithRelationInput[] + cursor?: Prisma.ConsumerIndividualWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.ConsumerIndividualScalarFieldEnum | Prisma.ConsumerIndividualScalarFieldEnum[] +} + +/** + * Partner.consumers_legal + */ +export type Partner$consumers_legalArgs = { + /** + * Select specific fields to fetch from the ConsumerLegal + */ + select?: Prisma.ConsumerLegalSelect | null + /** + * Omit specific fields from the ConsumerLegal + */ + omit?: Prisma.ConsumerLegalOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ConsumerLegalInclude | null + where?: Prisma.ConsumerLegalWhereInput + orderBy?: Prisma.ConsumerLegalOrderByWithRelationInput | Prisma.ConsumerLegalOrderByWithRelationInput[] + cursor?: Prisma.ConsumerLegalWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.ConsumerLegalScalarFieldEnum | Prisma.ConsumerLegalScalarFieldEnum[] +} + /** * Partner.license_charge_transactions */ diff --git a/src/generated/prisma/models/PartnerAccount.ts b/src/generated/prisma/models/PartnerAccount.ts index 1290581..4a8b1e5 100644 --- a/src/generated/prisma/models/PartnerAccount.ts +++ b/src/generated/prisma/models/PartnerAccount.ts @@ -249,7 +249,7 @@ export type PartnerAccountCreateInput = { role: $Enums.PartnerRole created_at?: Date | string updated_at?: Date | string - partner: Prisma.PartnerCreateNestedOneWithoutPartner_accountsInput + partner: Prisma.PartnerCreateNestedOneWithoutAccountsInput account: Prisma.AccountCreateNestedOneWithoutPartner_accountInput } @@ -267,7 +267,7 @@ export type PartnerAccountUpdateInput = { role?: Prisma.EnumPartnerRoleFieldUpdateOperationsInput | $Enums.PartnerRole created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - partner?: Prisma.PartnerUpdateOneRequiredWithoutPartner_accountsNestedInput + partner?: Prisma.PartnerUpdateOneRequiredWithoutAccountsNestedInput account?: Prisma.AccountUpdateOneRequiredWithoutPartner_accountNestedInput } @@ -436,7 +436,7 @@ export type PartnerAccountCreateWithoutAccountInput = { role: $Enums.PartnerRole created_at?: Date | string updated_at?: Date | string - partner: Prisma.PartnerCreateNestedOneWithoutPartner_accountsInput + partner: Prisma.PartnerCreateNestedOneWithoutAccountsInput } export type PartnerAccountUncheckedCreateWithoutAccountInput = { @@ -468,7 +468,7 @@ export type PartnerAccountUpdateWithoutAccountInput = { role?: Prisma.EnumPartnerRoleFieldUpdateOperationsInput | $Enums.PartnerRole created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - partner?: Prisma.PartnerUpdateOneRequiredWithoutPartner_accountsNestedInput + partner?: Prisma.PartnerUpdateOneRequiredWithoutAccountsNestedInput } export type PartnerAccountUncheckedUpdateWithoutAccountInput = { diff --git a/src/generated/prisma/models/Provider.ts b/src/generated/prisma/models/Provider.ts index 464879d..50eec99 100644 --- a/src/generated/prisma/models/Provider.ts +++ b/src/generated/prisma/models/Provider.ts @@ -190,8 +190,8 @@ export type ProviderWhereInput = { name?: Prisma.StringFilter<"Provider"> | string created_at?: Prisma.DateTimeFilter<"Provider"> | Date | string updated_at?: Prisma.DateTimeFilter<"Provider"> | Date | string + accounts?: Prisma.ProviderAccountListRelationFilter pos_list?: Prisma.PosListRelationFilter - provider_accounts?: Prisma.ProviderAccountListRelationFilter } export type ProviderOrderByWithRelationInput = { @@ -201,8 +201,8 @@ export type ProviderOrderByWithRelationInput = { name?: Prisma.SortOrder created_at?: Prisma.SortOrder updated_at?: Prisma.SortOrder + accounts?: Prisma.ProviderAccountOrderByRelationAggregateInput pos_list?: Prisma.PosOrderByRelationAggregateInput - provider_accounts?: Prisma.ProviderAccountOrderByRelationAggregateInput _relevance?: Prisma.ProviderOrderByRelevanceInput } @@ -216,8 +216,8 @@ export type ProviderWhereUniqueInput = Prisma.AtLeast<{ name?: Prisma.StringFilter<"Provider"> | string created_at?: Prisma.DateTimeFilter<"Provider"> | Date | string updated_at?: Prisma.DateTimeFilter<"Provider"> | Date | string + accounts?: Prisma.ProviderAccountListRelationFilter pos_list?: Prisma.PosListRelationFilter - provider_accounts?: Prisma.ProviderAccountListRelationFilter }, "id" | "code"> export type ProviderOrderByWithAggregationInput = { @@ -251,8 +251,8 @@ export type ProviderCreateInput = { name: string created_at?: Date | string updated_at?: Date | string + accounts?: Prisma.ProviderAccountCreateNestedManyWithoutProviderInput pos_list?: Prisma.PosCreateNestedManyWithoutProviderInput - provider_accounts?: Prisma.ProviderAccountCreateNestedManyWithoutProviderInput } export type ProviderUncheckedCreateInput = { @@ -262,8 +262,8 @@ export type ProviderUncheckedCreateInput = { name: string created_at?: Date | string updated_at?: Date | string + accounts?: Prisma.ProviderAccountUncheckedCreateNestedManyWithoutProviderInput pos_list?: Prisma.PosUncheckedCreateNestedManyWithoutProviderInput - provider_accounts?: Prisma.ProviderAccountUncheckedCreateNestedManyWithoutProviderInput } export type ProviderUpdateInput = { @@ -273,8 +273,8 @@ export type ProviderUpdateInput = { name?: Prisma.StringFieldUpdateOperationsInput | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + accounts?: Prisma.ProviderAccountUpdateManyWithoutProviderNestedInput pos_list?: Prisma.PosUpdateManyWithoutProviderNestedInput - provider_accounts?: Prisma.ProviderAccountUpdateManyWithoutProviderNestedInput } export type ProviderUncheckedUpdateInput = { @@ -284,8 +284,8 @@ export type ProviderUncheckedUpdateInput = { name?: Prisma.StringFieldUpdateOperationsInput | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string + accounts?: Prisma.ProviderAccountUncheckedUpdateManyWithoutProviderNestedInput pos_list?: Prisma.PosUncheckedUpdateManyWithoutProviderNestedInput - provider_accounts?: Prisma.ProviderAccountUncheckedUpdateManyWithoutProviderNestedInput } export type ProviderCreateManyInput = { @@ -374,18 +374,18 @@ export type ProviderUpdateOneWithoutPos_listNestedInput = { update?: Prisma.XOR, Prisma.ProviderUncheckedUpdateWithoutPos_listInput> } -export type ProviderCreateNestedOneWithoutProvider_accountsInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.ProviderCreateOrConnectWithoutProvider_accountsInput +export type ProviderCreateNestedOneWithoutAccountsInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ProviderCreateOrConnectWithoutAccountsInput connect?: Prisma.ProviderWhereUniqueInput } -export type ProviderUpdateOneRequiredWithoutProvider_accountsNestedInput = { - create?: Prisma.XOR - connectOrCreate?: Prisma.ProviderCreateOrConnectWithoutProvider_accountsInput - upsert?: Prisma.ProviderUpsertWithoutProvider_accountsInput +export type ProviderUpdateOneRequiredWithoutAccountsNestedInput = { + create?: Prisma.XOR + connectOrCreate?: Prisma.ProviderCreateOrConnectWithoutAccountsInput + upsert?: Prisma.ProviderUpsertWithoutAccountsInput connect?: Prisma.ProviderWhereUniqueInput - update?: Prisma.XOR, Prisma.ProviderUncheckedUpdateWithoutProvider_accountsInput> + update?: Prisma.XOR, Prisma.ProviderUncheckedUpdateWithoutAccountsInput> } export type ProviderCreateWithoutPos_listInput = { @@ -395,7 +395,7 @@ export type ProviderCreateWithoutPos_listInput = { name: string created_at?: Date | string updated_at?: Date | string - provider_accounts?: Prisma.ProviderAccountCreateNestedManyWithoutProviderInput + accounts?: Prisma.ProviderAccountCreateNestedManyWithoutProviderInput } export type ProviderUncheckedCreateWithoutPos_listInput = { @@ -405,7 +405,7 @@ export type ProviderUncheckedCreateWithoutPos_listInput = { name: string created_at?: Date | string updated_at?: Date | string - provider_accounts?: Prisma.ProviderAccountUncheckedCreateNestedManyWithoutProviderInput + accounts?: Prisma.ProviderAccountUncheckedCreateNestedManyWithoutProviderInput } export type ProviderCreateOrConnectWithoutPos_listInput = { @@ -431,7 +431,7 @@ export type ProviderUpdateWithoutPos_listInput = { name?: Prisma.StringFieldUpdateOperationsInput | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - provider_accounts?: Prisma.ProviderAccountUpdateManyWithoutProviderNestedInput + accounts?: Prisma.ProviderAccountUpdateManyWithoutProviderNestedInput } export type ProviderUncheckedUpdateWithoutPos_listInput = { @@ -441,10 +441,10 @@ export type ProviderUncheckedUpdateWithoutPos_listInput = { name?: Prisma.StringFieldUpdateOperationsInput | string created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - provider_accounts?: Prisma.ProviderAccountUncheckedUpdateManyWithoutProviderNestedInput + accounts?: Prisma.ProviderAccountUncheckedUpdateManyWithoutProviderNestedInput } -export type ProviderCreateWithoutProvider_accountsInput = { +export type ProviderCreateWithoutAccountsInput = { id?: string code: string status?: $Enums.PartnerStatus @@ -454,7 +454,7 @@ export type ProviderCreateWithoutProvider_accountsInput = { pos_list?: Prisma.PosCreateNestedManyWithoutProviderInput } -export type ProviderUncheckedCreateWithoutProvider_accountsInput = { +export type ProviderUncheckedCreateWithoutAccountsInput = { id?: string code: string status?: $Enums.PartnerStatus @@ -464,23 +464,23 @@ export type ProviderUncheckedCreateWithoutProvider_accountsInput = { pos_list?: Prisma.PosUncheckedCreateNestedManyWithoutProviderInput } -export type ProviderCreateOrConnectWithoutProvider_accountsInput = { +export type ProviderCreateOrConnectWithoutAccountsInput = { where: Prisma.ProviderWhereUniqueInput - create: Prisma.XOR + create: Prisma.XOR } -export type ProviderUpsertWithoutProvider_accountsInput = { - update: Prisma.XOR - create: Prisma.XOR +export type ProviderUpsertWithoutAccountsInput = { + update: Prisma.XOR + create: Prisma.XOR where?: Prisma.ProviderWhereInput } -export type ProviderUpdateToOneWithWhereWithoutProvider_accountsInput = { +export type ProviderUpdateToOneWithWhereWithoutAccountsInput = { where?: Prisma.ProviderWhereInput - data: Prisma.XOR + data: Prisma.XOR } -export type ProviderUpdateWithoutProvider_accountsInput = { +export type ProviderUpdateWithoutAccountsInput = { id?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus @@ -490,7 +490,7 @@ export type ProviderUpdateWithoutProvider_accountsInput = { pos_list?: Prisma.PosUpdateManyWithoutProviderNestedInput } -export type ProviderUncheckedUpdateWithoutProvider_accountsInput = { +export type ProviderUncheckedUpdateWithoutAccountsInput = { id?: Prisma.StringFieldUpdateOperationsInput | string code?: Prisma.StringFieldUpdateOperationsInput | string status?: Prisma.EnumPartnerStatusFieldUpdateOperationsInput | $Enums.PartnerStatus @@ -506,13 +506,13 @@ export type ProviderUncheckedUpdateWithoutProvider_accountsInput = { */ export type ProviderCountOutputType = { + accounts: number pos_list: number - provider_accounts: number } export type ProviderCountOutputTypeSelect = { + accounts?: boolean | ProviderCountOutputTypeCountAccountsArgs pos_list?: boolean | ProviderCountOutputTypeCountPos_listArgs - provider_accounts?: boolean | ProviderCountOutputTypeCountProvider_accountsArgs } /** @@ -528,15 +528,15 @@ export type ProviderCountOutputTypeDefaultArgs = { - where?: Prisma.PosWhereInput +export type ProviderCountOutputTypeCountAccountsArgs = { + where?: Prisma.ProviderAccountWhereInput } /** * ProviderCountOutputType without action */ -export type ProviderCountOutputTypeCountProvider_accountsArgs = { - where?: Prisma.ProviderAccountWhereInput +export type ProviderCountOutputTypeCountPos_listArgs = { + where?: Prisma.PosWhereInput } @@ -547,8 +547,8 @@ export type ProviderSelect pos_list?: boolean | Prisma.Provider$pos_listArgs - provider_accounts?: boolean | Prisma.Provider$provider_accountsArgs _count?: boolean | Prisma.ProviderCountOutputTypeDefaultArgs }, ExtArgs["result"]["provider"]> @@ -565,16 +565,16 @@ export type ProviderSelectScalar = { export type ProviderOmit = runtime.Types.Extensions.GetOmit<"id" | "code" | "status" | "name" | "created_at" | "updated_at", ExtArgs["result"]["provider"]> export type ProviderInclude = { + accounts?: boolean | Prisma.Provider$accountsArgs pos_list?: boolean | Prisma.Provider$pos_listArgs - provider_accounts?: boolean | Prisma.Provider$provider_accountsArgs _count?: boolean | Prisma.ProviderCountOutputTypeDefaultArgs } export type $ProviderPayload = { name: "Provider" objects: { + accounts: Prisma.$ProviderAccountPayload[] pos_list: Prisma.$PosPayload[] - provider_accounts: Prisma.$ProviderAccountPayload[] } scalars: runtime.Types.Extensions.GetPayloadResult<{ id: string @@ -923,8 +923,8 @@ readonly fields: ProviderFieldRefs; */ export interface Prisma__ProviderClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" + accounts = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> pos_list = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> - provider_accounts = {}>(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. @@ -1307,6 +1307,30 @@ export type ProviderDeleteManyArgs = { + /** + * Select specific fields to fetch from the ProviderAccount + */ + select?: Prisma.ProviderAccountSelect | null + /** + * Omit specific fields from the ProviderAccount + */ + omit?: Prisma.ProviderAccountOmit | null + /** + * Choose, which related nodes to fetch as well + */ + include?: Prisma.ProviderAccountInclude | null + where?: Prisma.ProviderAccountWhereInput + orderBy?: Prisma.ProviderAccountOrderByWithRelationInput | Prisma.ProviderAccountOrderByWithRelationInput[] + cursor?: Prisma.ProviderAccountWhereUniqueInput + take?: number + skip?: number + distinct?: Prisma.ProviderAccountScalarFieldEnum | Prisma.ProviderAccountScalarFieldEnum[] +} + /** * Provider.pos_list */ @@ -1331,30 +1355,6 @@ export type Provider$pos_listArgs = { - /** - * Select specific fields to fetch from the ProviderAccount - */ - select?: Prisma.ProviderAccountSelect | null - /** - * Omit specific fields from the ProviderAccount - */ - omit?: Prisma.ProviderAccountOmit | null - /** - * Choose, which related nodes to fetch as well - */ - include?: Prisma.ProviderAccountInclude | null - where?: Prisma.ProviderAccountWhereInput - orderBy?: Prisma.ProviderAccountOrderByWithRelationInput | Prisma.ProviderAccountOrderByWithRelationInput[] - cursor?: Prisma.ProviderAccountWhereUniqueInput - take?: number - skip?: number - distinct?: Prisma.ProviderAccountScalarFieldEnum | Prisma.ProviderAccountScalarFieldEnum[] -} - /** * Provider without action */ diff --git a/src/generated/prisma/models/ProviderAccount.ts b/src/generated/prisma/models/ProviderAccount.ts index fe55928..a86dac7 100644 --- a/src/generated/prisma/models/ProviderAccount.ts +++ b/src/generated/prisma/models/ProviderAccount.ts @@ -249,7 +249,7 @@ export type ProviderAccountCreateInput = { role: $Enums.ProviderRole created_at?: Date | string updated_at?: Date | string - provider: Prisma.ProviderCreateNestedOneWithoutProvider_accountsInput + provider: Prisma.ProviderCreateNestedOneWithoutAccountsInput account: Prisma.AccountCreateNestedOneWithoutProvider_accountInput } @@ -267,7 +267,7 @@ export type ProviderAccountUpdateInput = { role?: Prisma.EnumProviderRoleFieldUpdateOperationsInput | $Enums.ProviderRole created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - provider?: Prisma.ProviderUpdateOneRequiredWithoutProvider_accountsNestedInput + provider?: Prisma.ProviderUpdateOneRequiredWithoutAccountsNestedInput account?: Prisma.AccountUpdateOneRequiredWithoutProvider_accountNestedInput } @@ -436,7 +436,7 @@ export type ProviderAccountCreateWithoutAccountInput = { role: $Enums.ProviderRole created_at?: Date | string updated_at?: Date | string - provider: Prisma.ProviderCreateNestedOneWithoutProvider_accountsInput + provider: Prisma.ProviderCreateNestedOneWithoutAccountsInput } export type ProviderAccountUncheckedCreateWithoutAccountInput = { @@ -468,7 +468,7 @@ export type ProviderAccountUpdateWithoutAccountInput = { role?: Prisma.EnumProviderRoleFieldUpdateOperationsInput | $Enums.ProviderRole created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - provider?: Prisma.ProviderUpdateOneRequiredWithoutProvider_accountsNestedInput + provider?: Prisma.ProviderUpdateOneRequiredWithoutAccountsNestedInput } export type ProviderAccountUncheckedUpdateWithoutAccountInput = { diff --git a/src/generated/prisma/models/SalesInvoice.ts b/src/generated/prisma/models/SalesInvoice.ts index 2e6bc99..846894d 100644 --- a/src/generated/prisma/models/SalesInvoice.ts +++ b/src/generated/prisma/models/SalesInvoice.ts @@ -261,8 +261,8 @@ export type SalesInvoiceWhereInput = { account_id?: Prisma.StringFilter<"SalesInvoice"> | string pos_id?: Prisma.StringFilter<"SalesInvoice"> | string customer?: Prisma.XOR | null - pos?: Prisma.XOR consumer_account?: Prisma.XOR + pos?: Prisma.XOR items?: Prisma.SalesInvoiceItemListRelationFilter payments?: Prisma.SalesInvoicePaymentListRelationFilter } @@ -280,8 +280,8 @@ export type SalesInvoiceOrderByWithRelationInput = { account_id?: Prisma.SortOrder pos_id?: Prisma.SortOrder customer?: Prisma.CustomerOrderByWithRelationInput - pos?: Prisma.PosOrderByWithRelationInput consumer_account?: Prisma.ConsumerAccountOrderByWithRelationInput + pos?: Prisma.PosOrderByWithRelationInput items?: Prisma.SalesInvoiceItemOrderByRelationAggregateInput payments?: Prisma.SalesInvoicePaymentOrderByRelationAggregateInput _relevance?: Prisma.SalesInvoiceOrderByRelevanceInput @@ -303,8 +303,8 @@ export type SalesInvoiceWhereUniqueInput = Prisma.AtLeast<{ account_id?: Prisma.StringFilter<"SalesInvoice"> | string pos_id?: Prisma.StringFilter<"SalesInvoice"> | string customer?: Prisma.XOR | null - pos?: Prisma.XOR consumer_account?: Prisma.XOR + pos?: Prisma.XOR items?: Prisma.SalesInvoiceItemListRelationFilter payments?: Prisma.SalesInvoicePaymentListRelationFilter }, "id" | "code"> @@ -355,8 +355,8 @@ export type SalesInvoiceCreateInput = { created_at?: Date | string updated_at?: Date | string customer?: Prisma.CustomerCreateNestedOneWithoutSales_invoicesInput - pos: Prisma.PosCreateNestedOneWithoutSales_invoicesInput consumer_account: Prisma.ConsumerAccountCreateNestedOneWithoutSales_invoicesInput + pos: Prisma.PosCreateNestedOneWithoutSales_invoicesInput items?: Prisma.SalesInvoiceItemCreateNestedManyWithoutInvoiceInput payments?: Prisma.SalesInvoicePaymentCreateNestedManyWithoutInvoiceInput } @@ -387,8 +387,8 @@ export type SalesInvoiceUpdateInput = { created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string customer?: Prisma.CustomerUpdateOneWithoutSales_invoicesNestedInput - pos?: Prisma.PosUpdateOneRequiredWithoutSales_invoicesNestedInput consumer_account?: Prisma.ConsumerAccountUpdateOneRequiredWithoutSales_invoicesNestedInput + pos?: Prisma.PosUpdateOneRequiredWithoutSales_invoicesNestedInput items?: Prisma.SalesInvoiceItemUpdateManyWithoutInvoiceNestedInput payments?: Prisma.SalesInvoicePaymentUpdateManyWithoutInvoiceNestedInput } @@ -817,8 +817,8 @@ export type SalesInvoiceCreateWithoutCustomerInput = { invoice_date?: Date | string | null created_at?: Date | string updated_at?: Date | string - pos: Prisma.PosCreateNestedOneWithoutSales_invoicesInput consumer_account: Prisma.ConsumerAccountCreateNestedOneWithoutSales_invoicesInput + pos: Prisma.PosCreateNestedOneWithoutSales_invoicesInput items?: Prisma.SalesInvoiceItemCreateNestedManyWithoutInvoiceInput payments?: Prisma.SalesInvoicePaymentCreateNestedManyWithoutInvoiceInput } @@ -874,8 +874,8 @@ export type SalesInvoiceCreateWithoutItemsInput = { created_at?: Date | string updated_at?: Date | string customer?: Prisma.CustomerCreateNestedOneWithoutSales_invoicesInput - pos: Prisma.PosCreateNestedOneWithoutSales_invoicesInput consumer_account: Prisma.ConsumerAccountCreateNestedOneWithoutSales_invoicesInput + pos: Prisma.PosCreateNestedOneWithoutSales_invoicesInput payments?: Prisma.SalesInvoicePaymentCreateNestedManyWithoutInvoiceInput } @@ -920,8 +920,8 @@ export type SalesInvoiceUpdateWithoutItemsInput = { created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string customer?: Prisma.CustomerUpdateOneWithoutSales_invoicesNestedInput - pos?: Prisma.PosUpdateOneRequiredWithoutSales_invoicesNestedInput consumer_account?: Prisma.ConsumerAccountUpdateOneRequiredWithoutSales_invoicesNestedInput + pos?: Prisma.PosUpdateOneRequiredWithoutSales_invoicesNestedInput payments?: Prisma.SalesInvoicePaymentUpdateManyWithoutInvoiceNestedInput } @@ -950,8 +950,8 @@ export type SalesInvoiceCreateWithoutPaymentsInput = { created_at?: Date | string updated_at?: Date | string customer?: Prisma.CustomerCreateNestedOneWithoutSales_invoicesInput - pos: Prisma.PosCreateNestedOneWithoutSales_invoicesInput consumer_account: Prisma.ConsumerAccountCreateNestedOneWithoutSales_invoicesInput + pos: Prisma.PosCreateNestedOneWithoutSales_invoicesInput items?: Prisma.SalesInvoiceItemCreateNestedManyWithoutInvoiceInput } @@ -996,8 +996,8 @@ export type SalesInvoiceUpdateWithoutPaymentsInput = { created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string customer?: Prisma.CustomerUpdateOneWithoutSales_invoicesNestedInput - pos?: Prisma.PosUpdateOneRequiredWithoutSales_invoicesNestedInput consumer_account?: Prisma.ConsumerAccountUpdateOneRequiredWithoutSales_invoicesNestedInput + pos?: Prisma.PosUpdateOneRequiredWithoutSales_invoicesNestedInput items?: Prisma.SalesInvoiceItemUpdateManyWithoutInvoiceNestedInput } @@ -1150,8 +1150,8 @@ export type SalesInvoiceUpdateWithoutCustomerInput = { invoice_date?: Prisma.NullableDateTimeFieldUpdateOperationsInput | Date | string | null created_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string updated_at?: Prisma.DateTimeFieldUpdateOperationsInput | Date | string - pos?: Prisma.PosUpdateOneRequiredWithoutSales_invoicesNestedInput consumer_account?: Prisma.ConsumerAccountUpdateOneRequiredWithoutSales_invoicesNestedInput + pos?: Prisma.PosUpdateOneRequiredWithoutSales_invoicesNestedInput items?: Prisma.SalesInvoiceItemUpdateManyWithoutInvoiceNestedInput payments?: Prisma.SalesInvoicePaymentUpdateManyWithoutInvoiceNestedInput } @@ -1237,8 +1237,8 @@ export type SalesInvoiceSelect - pos?: boolean | Prisma.PosDefaultArgs consumer_account?: boolean | Prisma.ConsumerAccountDefaultArgs + pos?: boolean | Prisma.PosDefaultArgs items?: boolean | Prisma.SalesInvoice$itemsArgs payments?: boolean | Prisma.SalesInvoice$paymentsArgs _count?: boolean | Prisma.SalesInvoiceCountOutputTypeDefaultArgs @@ -1263,8 +1263,8 @@ export type SalesInvoiceSelectScalar = { export type SalesInvoiceOmit = runtime.Types.Extensions.GetOmit<"id" | "code" | "total_amount" | "notes" | "unknown_customer" | "invoice_date" | "created_at" | "updated_at" | "customer_id" | "account_id" | "pos_id", ExtArgs["result"]["salesInvoice"]> export type SalesInvoiceInclude = { customer?: boolean | Prisma.SalesInvoice$customerArgs - pos?: boolean | Prisma.PosDefaultArgs consumer_account?: boolean | Prisma.ConsumerAccountDefaultArgs + pos?: boolean | Prisma.PosDefaultArgs items?: boolean | Prisma.SalesInvoice$itemsArgs payments?: boolean | Prisma.SalesInvoice$paymentsArgs _count?: boolean | Prisma.SalesInvoiceCountOutputTypeDefaultArgs @@ -1274,8 +1274,8 @@ export type $SalesInvoicePayload | null - pos: Prisma.$PosPayload consumer_account: Prisma.$ConsumerAccountPayload + pos: Prisma.$PosPayload items: Prisma.$SalesInvoiceItemPayload[] payments: Prisma.$SalesInvoicePaymentPayload[] } @@ -1632,8 +1632,8 @@ readonly fields: SalesInvoiceFieldRefs; export interface Prisma__SalesInvoiceClient extends Prisma.PrismaPromise { readonly [Symbol.toStringTag]: "PrismaPromise" customer = {}>(args?: Prisma.Subset>): Prisma.Prisma__CustomerClient, T, "findUniqueOrThrow", GlobalOmitOptions> | null, null, ExtArgs, GlobalOmitOptions> - pos = {}>(args?: Prisma.Subset>): Prisma.Prisma__PosClient, 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> items = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> payments = {}>(args?: Prisma.Subset>): Prisma.PrismaPromise, T, "findMany", GlobalOmitOptions> | Null> /** diff --git a/src/modules/admin/consumers/accounts/accounts.controller.ts b/src/modules/admin/consumers/accounts/accounts.controller.ts index fad97ab..8d5952a 100644 --- a/src/modules/admin/consumers/accounts/accounts.controller.ts +++ b/src/modules/admin/consumers/accounts/accounts.controller.ts @@ -2,6 +2,7 @@ import { Body, Controller, Get, Param, Patch, Post } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { AccountsService } from './accounts.service' import { CreateConsumerAccountDto, UpdateAccountDto } from './dto/account.dto' +import type { AccountsServiceCreateResponseDto, AccountsServiceFindAllResponseDto, AccountsServiceFindOneResponseDto, AccountsServiceUpdateResponseDto } from './dto/accounts-response.dto' @ApiTags('AdminConsumerAccounts') @Controller('admin/consumers/:consumerId/accounts') @@ -9,12 +10,12 @@ export class AccountsController { constructor(private readonly accountsService: AccountsService) {} @Get() - async findAll(@Param('consumerId') consumerId: string) { + async findAll(@Param('consumerId') consumerId: string): Promise { return this.accountsService.findAll(consumerId) } @Get(':id') - async findOne(@Param('id') id: string) { + async findOne(@Param('id') id: string): Promise { return this.accountsService.findOne(id) } @@ -22,12 +23,12 @@ export class AccountsController { async create( @Param('consumerId') consumerId: string, @Body() data: CreateConsumerAccountDto, - ) { + ): Promise { return this.accountsService.create(consumerId, data) } @Patch(':id') - async update(@Param('id') id: string, @Body() data: UpdateAccountDto) { + async update(@Param('id') id: string, @Body() data: UpdateAccountDto): Promise { return this.accountsService.update(id, data) } diff --git a/src/modules/admin/consumers/accounts/dto/accounts-response.dto.ts b/src/modules/admin/consumers/accounts/dto/accounts-response.dto.ts new file mode 100644 index 0000000..8e956c7 --- /dev/null +++ b/src/modules/admin/consumers/accounts/dto/accounts-response.dto.ts @@ -0,0 +1,7 @@ +import type { AccountsService } from '../accounts.service' + +export type AccountsServiceCreateResponseDto = Awaited> +export type AccountsServiceDeleteResponseDto = Awaited> +export type AccountsServiceFindAllResponseDto = Awaited> +export type AccountsServiceFindOneResponseDto = Awaited> +export type AccountsServiceUpdateResponseDto = Awaited> diff --git a/src/modules/admin/consumers/business-activities/business-activities.controller.ts b/src/modules/admin/consumers/business-activities/business-activities.controller.ts index 10dcf16..899d93b 100644 --- a/src/modules/admin/consumers/business-activities/business-activities.controller.ts +++ b/src/modules/admin/consumers/business-activities/business-activities.controller.ts @@ -1,17 +1,18 @@ import { Controller, Get, Param } from '@nestjs/common' import { BusinessActivitiesService } from './business-activities.service' +import type { BusinessActivitiesServiceFindAllResponseDto, BusinessActivitiesServiceFindOneResponseDto } from './dto/business-activities-response.dto' @Controller('admin/consumers/:consumerId/business_activities') export class BusinessActivitiesController { constructor(private readonly businessActivitiesService: BusinessActivitiesService) {} @Get() - async findAll(@Param('consumerId') consumerId: string) { + async findAll(@Param('consumerId') consumerId: string): Promise { return this.businessActivitiesService.findAll(consumerId) } @Get(':id') - async findOne(@Param('consumerId') consumerId: string, @Param('id') id: string) { + async findOne(@Param('consumerId') consumerId: string, @Param('id') id: string): Promise { return this.businessActivitiesService.findOne(consumerId, id) } diff --git a/src/modules/admin/consumers/business-activities/complexes/complexes.controller.ts b/src/modules/admin/consumers/business-activities/complexes/complexes.controller.ts index feb823b..36bbac3 100644 --- a/src/modules/admin/consumers/business-activities/complexes/complexes.controller.ts +++ b/src/modules/admin/consumers/business-activities/complexes/complexes.controller.ts @@ -1,6 +1,7 @@ import { Controller, Get, Param } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { BusinessActivityComplexesService } from './complexes.service' +import type { BusinessActivityComplexesServiceFindAllResponseDto, BusinessActivityComplexesServiceFindOneResponseDto } from './dto/complexes-response.dto' @ApiTags('AdminBusinessActivityComplexes') @Controller( @@ -13,7 +14,7 @@ export class BusinessActivityComplexesController { async findAll( @Param('consumerId') consumerId: string, @Param('businessActivityId') businessActivityId: string, - ) { + ): Promise { return this.service.findAll(consumerId, businessActivityId) } @@ -22,7 +23,7 @@ export class BusinessActivityComplexesController { @Param('consumerId') consumerId: string, @Param('businessActivityId') businessActivityId: string, @Param('id') id: string, - ) { + ): Promise { return this.service.findOne(consumerId, businessActivityId, id) } diff --git a/src/modules/admin/consumers/business-activities/complexes/dto/complexes-response.dto.ts b/src/modules/admin/consumers/business-activities/complexes/dto/complexes-response.dto.ts new file mode 100644 index 0000000..365d03e --- /dev/null +++ b/src/modules/admin/consumers/business-activities/complexes/dto/complexes-response.dto.ts @@ -0,0 +1,4 @@ +import type { BusinessActivityComplexesService } from '../complexes.service' + +export type BusinessActivityComplexesServiceFindAllResponseDto = Awaited> +export type BusinessActivityComplexesServiceFindOneResponseDto = Awaited> diff --git a/src/modules/admin/consumers/business-activities/complexes/poses/dto/poses-response.dto.ts b/src/modules/admin/consumers/business-activities/complexes/poses/dto/poses-response.dto.ts new file mode 100644 index 0000000..5e19b2b --- /dev/null +++ b/src/modules/admin/consumers/business-activities/complexes/poses/dto/poses-response.dto.ts @@ -0,0 +1,4 @@ +import type { ComplexPosesService } from '../poses.service' + +export type ComplexPosesServiceFindAllResponseDto = Awaited> +export type ComplexPosesServiceFindOneResponseDto = Awaited> diff --git a/src/modules/admin/consumers/business-activities/complexes/poses/poses.controller.ts b/src/modules/admin/consumers/business-activities/complexes/poses/poses.controller.ts index 080e5ca..b6fd2cb 100644 --- a/src/modules/admin/consumers/business-activities/complexes/poses/poses.controller.ts +++ b/src/modules/admin/consumers/business-activities/complexes/poses/poses.controller.ts @@ -1,6 +1,7 @@ import { Controller, Get, Param } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { ComplexPosesService } from './poses.service' +import type { ComplexPosesServiceFindAllResponseDto, ComplexPosesServiceFindOneResponseDto } from './dto/poses-response.dto' @ApiTags('AdminComplexPoses') @Controller('admin/business_activities/:businessActivityId/complexes/:complexId/poses') @@ -11,7 +12,7 @@ export class ComplexPosesController { async findAll( @Param('businessActivityId') businessActivityId: string, @Param('complexId') complexId: string, - ) { + ): Promise { return this.service.findAll(businessActivityId, complexId) } @@ -20,7 +21,7 @@ export class ComplexPosesController { @Param('businessActivityId') businessActivityId: string, @Param('complexId') complexId: string, @Param('id') id: string, - ) { + ): Promise { return this.service.findOne(businessActivityId, complexId, id) } diff --git a/src/modules/admin/consumers/business-activities/dto/business-activities-response.dto.ts b/src/modules/admin/consumers/business-activities/dto/business-activities-response.dto.ts new file mode 100644 index 0000000..a7de0b9 --- /dev/null +++ b/src/modules/admin/consumers/business-activities/dto/business-activities-response.dto.ts @@ -0,0 +1,4 @@ +import type { BusinessActivitiesService } from '../business-activities.service' + +export type BusinessActivitiesServiceFindAllResponseDto = Awaited> +export type BusinessActivitiesServiceFindOneResponseDto = Awaited> diff --git a/src/modules/admin/consumers/consumers.controller.ts b/src/modules/admin/consumers/consumers.controller.ts index 98427ba..2326072 100644 --- a/src/modules/admin/consumers/consumers.controller.ts +++ b/src/modules/admin/consumers/consumers.controller.ts @@ -1,17 +1,18 @@ import { Controller, Get, Param } from '@nestjs/common' import { AdminConsumersService } from './consumers.service' +import type { AdminConsumersServiceFindAllResponseDto, AdminConsumersServiceFindOneResponseDto } from './dto/consumers-response.dto' @Controller('admin/consumers') export class AdminUsersController { constructor(private readonly usersService: AdminConsumersService) {} @Get() - async findAll() { + async findAll(): Promise { return this.usersService.findAll() } @Get(':id') - async findOne(@Param('id') id: string) { + async findOne(@Param('id') id: string): Promise { return this.usersService.findOne(id) } diff --git a/src/modules/admin/consumers/consumers.service.ts b/src/modules/admin/consumers/consumers.service.ts index 885d3ba..f43c81a 100644 --- a/src/modules/admin/consumers/consumers.service.ts +++ b/src/modules/admin/consumers/consumers.service.ts @@ -1,5 +1,6 @@ +import { QUERY_CONSTANTS } from '@/common/queryConstants' +import consumer_mappersUtil from '@/common/utils/mappers/consumer_mappers.util' import { ConsumerSelect } from '@/generated/prisma/models' -import mapConsumerWithLicenseUtil from '@/modules/consumer/utils/mapConsumerWithLicense.util' import { PrismaService } from '@/prisma/prisma.service' import { Injectable } from '@nestjs/common' import { ResponseMapper } from 'common/response/response-mapper' @@ -8,41 +9,41 @@ import { ResponseMapper } from 'common/response/response-mapper' export class AdminConsumersService { constructor(private readonly prisma: PrismaService) {} + private readonly now = new Date() + private readonly defaultSelect: ConsumerSelect = { id: true, - first_name: true, - last_name: true, - mobile_number: true, + type: true, + ...QUERY_CONSTANTS.CONSUMER.infoSelect, status: true, - partner: { + + created_at: true, + _count: { select: { - id: true, - name: true, - code: true, + business_activities: { + where: { + license_activation: { + OR: [ + { + expires_at: { + gt: this.now, + }, + }, + { + license_renews: { + some: { + expires_at: { + gt: this.now, + }, + }, + }, + }, + ], + }, + }, + }, }, }, - created_at: true, - // activation: { - // select: { - // id: true, - // starts_at: true, - // expires_at: true, - // license: { - // select: { - // charge_transaction: { - // select: { - // partner: { - // select: { - // id: true, - // name: true, - // }, - // }, - // }, - // }, - // }, - // }, - // }, - // }, } async findAll() { @@ -53,7 +54,7 @@ export class AdminConsumersService { this.prisma.consumer.count(), ]) - return ResponseMapper.paginate(consumers.map(mapConsumerWithLicenseUtil), { total }) + return ResponseMapper.paginate(consumers.map(consumer_mappersUtil), { total }) } async findOne(id: string) { @@ -62,7 +63,7 @@ export class AdminConsumersService { select: this.defaultSelect, }) - return ResponseMapper.single(mapConsumerWithLicenseUtil(consumer)) + return ResponseMapper.single(consumer_mappersUtil(consumer)) } // async create(data: CreateConsumerDto) { @@ -72,7 +73,7 @@ export class AdminConsumersService { // const { username, password, partner_id, ...rest } = data // const dataToCreate: ConsumerCreateInput = { // ...rest, - // consumer_accounts: { + // accounts: { // create: { // role: ConsumerRole.OWNER, // account: { diff --git a/src/modules/admin/consumers/dto/consumers-response.dto.ts b/src/modules/admin/consumers/dto/consumers-response.dto.ts new file mode 100644 index 0000000..76ddbcf --- /dev/null +++ b/src/modules/admin/consumers/dto/consumers-response.dto.ts @@ -0,0 +1,4 @@ +import type { AdminConsumersService } from '../consumers.service' + +export type AdminConsumersServiceFindAllResponseDto = Awaited> +export type AdminConsumersServiceFindOneResponseDto = Awaited> diff --git a/src/modules/admin/consumers/licenses/dto/licenses-response.dto.ts b/src/modules/admin/consumers/licenses/dto/licenses-response.dto.ts new file mode 100644 index 0000000..78d4a23 --- /dev/null +++ b/src/modules/admin/consumers/licenses/dto/licenses-response.dto.ts @@ -0,0 +1,3 @@ +import type { LicensesService } from '../licenses.service' + +export type LicensesServiceFindAllResponseDto = Awaited> diff --git a/src/modules/admin/consumers/licenses/licenses.controller.ts b/src/modules/admin/consumers/licenses/licenses.controller.ts index 14f4fc6..c95aca9 100644 --- a/src/modules/admin/consumers/licenses/licenses.controller.ts +++ b/src/modules/admin/consumers/licenses/licenses.controller.ts @@ -1,6 +1,7 @@ import { Controller, Get, Param } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { LicensesService } from './licenses.service' +import type { LicensesServiceFindAllResponseDto } from './dto/licenses-response.dto' @ApiTags('AdminConsumerAccounts') @Controller('admin/consumers/:consumerId/licenses') @@ -8,7 +9,7 @@ export class LicensesController { constructor(private readonly service: LicensesService) {} @Get() - async findAll(@Param('consumerId') consumerId: string) { + async findAll(@Param('consumerId') consumerId: string): Promise { return this.service.findAll(consumerId) } diff --git a/src/modules/admin/device-brands/device-brands.controller.ts b/src/modules/admin/device-brands/device-brands.controller.ts index 0d8d117..2d5f066 100644 --- a/src/modules/admin/device-brands/device-brands.controller.ts +++ b/src/modules/admin/device-brands/device-brands.controller.ts @@ -2,33 +2,34 @@ import { Body, Controller, Delete, Get, Param, Patch, Post } from '@nestjs/commo import { DeviceBrandsService } from './device-brands.service' import { CreateDeviceBrandDto } from './dto/create-device-brand.dto' import { UpdateDeviceBrandDto } from './dto/update-device-brand.dto' +import type { DeviceBrandsServiceCreateResponseDto, DeviceBrandsServiceDeleteResponseDto, DeviceBrandsServiceFindAllResponseDto, DeviceBrandsServiceFindOneResponseDto, DeviceBrandsServiceUpdateResponseDto } from './dto/device-brands-response.dto' @Controller('admin/device_brands') export class DeviceBrandsController { constructor(private readonly deviceBrandsService: DeviceBrandsService) {} @Get() - async findAll() { + async findAll(): Promise { return this.deviceBrandsService.findAll() } @Get(':id') - async findOne(@Param('id') id: string) { + async findOne(@Param('id') id: string): Promise { return this.deviceBrandsService.findOne(id) } @Post() - async create(@Body() data: CreateDeviceBrandDto) { + async create(@Body() data: CreateDeviceBrandDto): Promise { return this.deviceBrandsService.create(data) } @Patch(':id') - async update(@Param('id') id: string, @Body() data: UpdateDeviceBrandDto) { + async update(@Param('id') id: string, @Body() data: UpdateDeviceBrandDto): Promise { return this.deviceBrandsService.update(id, data) } @Delete(':id') - async delete(@Param('id') id: string) { + async delete(@Param('id') id: string): Promise { return this.deviceBrandsService.delete(id) } } diff --git a/src/modules/admin/device-brands/dto/device-brands-response.dto.ts b/src/modules/admin/device-brands/dto/device-brands-response.dto.ts new file mode 100644 index 0000000..fe2b3a8 --- /dev/null +++ b/src/modules/admin/device-brands/dto/device-brands-response.dto.ts @@ -0,0 +1,7 @@ +import type { DeviceBrandsService } from '../device-brands.service' + +export type DeviceBrandsServiceCreateResponseDto = Awaited> +export type DeviceBrandsServiceDeleteResponseDto = Awaited> +export type DeviceBrandsServiceFindAllResponseDto = Awaited> +export type DeviceBrandsServiceFindOneResponseDto = Awaited> +export type DeviceBrandsServiceUpdateResponseDto = Awaited> diff --git a/src/modules/admin/devices/devices.controller.ts b/src/modules/admin/devices/devices.controller.ts index 00e0414..8b256dd 100644 --- a/src/modules/admin/devices/devices.controller.ts +++ b/src/modules/admin/devices/devices.controller.ts @@ -1,33 +1,34 @@ import { Body, Controller, Delete, Get, Param, Patch, Post } from '@nestjs/common' import { DevicesService } from './devices.service' import { CreateDeviceDto, UpdateDeviceDto } from './dto/device.dto' +import type { DevicesServiceCreateResponseDto, DevicesServiceDeleteResponseDto, DevicesServiceFindAllResponseDto, DevicesServiceFindOneResponseDto, DevicesServiceUpdateResponseDto } from './dto/devices-response.dto' @Controller('admin/devices') export class DevicesController { constructor(private readonly devicesService: DevicesService) {} @Get() - async findAll() { + async findAll(): Promise { return this.devicesService.findAll() } @Get(':id') - async findOne(@Param('id') id: string) { + async findOne(@Param('id') id: string): Promise { return this.devicesService.findOne(id) } @Post() - async create(@Body() data: CreateDeviceDto) { + async create(@Body() data: CreateDeviceDto): Promise { return this.devicesService.create(data) } @Patch(':id') - async update(@Param('id') id: string, @Body() data: UpdateDeviceDto) { + async update(@Param('id') id: string, @Body() data: UpdateDeviceDto): Promise { return this.devicesService.update(id, data) } @Delete(':id') - async delete(@Param('id') id: string) { + async delete(@Param('id') id: string): Promise { return this.devicesService.delete(id) } } diff --git a/src/modules/admin/devices/dto/devices-response.dto.ts b/src/modules/admin/devices/dto/devices-response.dto.ts new file mode 100644 index 0000000..fc0fdef --- /dev/null +++ b/src/modules/admin/devices/dto/devices-response.dto.ts @@ -0,0 +1,7 @@ +import type { DevicesService } from '../devices.service' + +export type DevicesServiceCreateResponseDto = Awaited> +export type DevicesServiceDeleteResponseDto = Awaited> +export type DevicesServiceFindAllResponseDto = Awaited> +export type DevicesServiceFindOneResponseDto = Awaited> +export type DevicesServiceUpdateResponseDto = Awaited> diff --git a/src/modules/admin/guilds/dto/guilds-response.dto.ts b/src/modules/admin/guilds/dto/guilds-response.dto.ts new file mode 100644 index 0000000..197bcda --- /dev/null +++ b/src/modules/admin/guilds/dto/guilds-response.dto.ts @@ -0,0 +1,6 @@ +import type { GuildsService } from '../guilds.service' + +export type GuildsServiceCreateResponseDto = Awaited> +export type GuildsServiceFindAllResponseDto = Awaited> +export type GuildsServiceFindOneResponseDto = Awaited> +export type GuildsServiceUpdateResponseDto = Awaited> diff --git a/src/modules/admin/guilds/good-categories/dto/good-categories-response.dto.ts b/src/modules/admin/guilds/good-categories/dto/good-categories-response.dto.ts new file mode 100644 index 0000000..b0a2c36 --- /dev/null +++ b/src/modules/admin/guilds/good-categories/dto/good-categories-response.dto.ts @@ -0,0 +1,6 @@ +import type { GoodCategoriesService } from '../good-categories.service' + +export type GoodCategoriesServiceCreateResponseDto = Awaited> +export type GoodCategoriesServiceFindAllResponseDto = Awaited> +export type GoodCategoriesServiceFindOneResponseDto = Awaited> +export type GoodCategoriesServiceUpdateResponseDto = Awaited> diff --git a/src/modules/admin/guilds/goods/dto/goods-response.dto.ts b/src/modules/admin/guilds/goods/dto/goods-response.dto.ts new file mode 100644 index 0000000..64c37f4 --- /dev/null +++ b/src/modules/admin/guilds/goods/dto/goods-response.dto.ts @@ -0,0 +1,6 @@ +import type { GoodsService } from '../goods.service' + +export type GoodsServiceCreateResponseDto = Awaited> +export type GoodsServiceFindAllResponseDto = Awaited> +export type GoodsServiceFindOneResponseDto = Awaited> +export type GoodsServiceUpdateResponseDto = Awaited> diff --git a/src/modules/admin/guilds/goods/images/dto/images-response.dto.ts b/src/modules/admin/guilds/goods/images/dto/images-response.dto.ts new file mode 100644 index 0000000..a6f9857 --- /dev/null +++ b/src/modules/admin/guilds/goods/images/dto/images-response.dto.ts @@ -0,0 +1,6 @@ +import type { GuildGoodImagesService } from '../images.service' + +export type GuildGoodImagesServiceUploadFileResponseDto = Awaited> +export type GuildGoodImagesControllerUploadImageResponseDto = { + url: GuildGoodImagesServiceUploadFileResponseDto +} diff --git a/src/modules/admin/guilds/goods/images/images.controller.ts b/src/modules/admin/guilds/goods/images/images.controller.ts index 0b5e218..037a651 100644 --- a/src/modules/admin/guilds/goods/images/images.controller.ts +++ b/src/modules/admin/guilds/goods/images/images.controller.ts @@ -11,6 +11,7 @@ import { import { FileInterceptor } from '@nestjs/platform-express' import { ApiBody, ApiConsumes } from '@nestjs/swagger' import { GuildGoodImagesService } from './images.service' +import type { GuildGoodImagesControllerUploadImageResponseDto } from './dto/images-response.dto' @Controller('admin/guilds/:guildId/goods/:goodId/images') export class GuildGoodImagesController { @@ -32,7 +33,7 @@ export class GuildGoodImagesController { @Param('guildId') guildId: string, @Param('goodId') goodId: string, @UploadedFile() file: Express.Multer.File, - ) { + ): Promise { if (!file) { throw new BadRequestException('فایل را وارد کنید') } diff --git a/src/modules/admin/guilds/guilds.controller.ts b/src/modules/admin/guilds/guilds.controller.ts index 7c24a06..7f610a6 100644 --- a/src/modules/admin/guilds/guilds.controller.ts +++ b/src/modules/admin/guilds/guilds.controller.ts @@ -3,6 +3,12 @@ import { ApiTags } from '@nestjs/swagger' import { CreateGuildDto } from './dto/create-guild.dto' import { UpdateGuildDto } from './dto/update-guild.dto' import { GuildsService } from './guilds.service' +import type { + GuildsServiceCreateResponseDto, + GuildsServiceFindAllResponseDto, + GuildsServiceFindOneResponseDto, + GuildsServiceUpdateResponseDto, +} from './dto/guilds-response.dto' @ApiTags('guilds') @Controller('admin/guilds') @@ -10,22 +16,25 @@ export class GuildsController { constructor(private readonly guildsService: GuildsService) {} @Get() - async findAll() { + async findAll(): Promise { return this.guildsService.findAll() } @Get(':id') - async findOne(@Param('id') id: string) { + async findOne(@Param('id') id: string): Promise { return this.guildsService.findOne(id) } @Post() - async create(@Body() data: CreateGuildDto) { + async create(@Body() data: CreateGuildDto): Promise { return await this.guildsService.create(data) } @Patch(':id') - async update(@Param('id') id: string, @Body() data: UpdateGuildDto) { + async update( + @Param('id') id: string, + @Body() data: UpdateGuildDto, + ): Promise { return await this.guildsService.update(id, data) } diff --git a/src/modules/admin/licenses/dto/licenses-response.dto.ts b/src/modules/admin/licenses/dto/licenses-response.dto.ts new file mode 100644 index 0000000..20b37aa --- /dev/null +++ b/src/modules/admin/licenses/dto/licenses-response.dto.ts @@ -0,0 +1,4 @@ +import type { PartnerLicensesService } from '../licenses.service' + +export type PartnerLicensesServiceFindAllResponseDto = Awaited> +export type PartnerLicensesServiceFindOneResponseDto = Awaited> diff --git a/src/modules/admin/licenses/licenses.controller.ts b/src/modules/admin/licenses/licenses.controller.ts index 5d15451..582f344 100644 --- a/src/modules/admin/licenses/licenses.controller.ts +++ b/src/modules/admin/licenses/licenses.controller.ts @@ -1,17 +1,18 @@ import { Controller, Get, Param } from '@nestjs/common' import { PartnerLicensesService } from './licenses.service' +import type { PartnerLicensesServiceFindAllResponseDto, PartnerLicensesServiceFindOneResponseDto } from './dto/licenses-response.dto' @Controller('admin/licenses') export class LicensesController { constructor(private readonly licensesService: PartnerLicensesService) {} @Get() - async findAll() { + async findAll(): Promise { return this.licensesService.findAll() } @Get(':id') - async findOne(@Param('id') id: string) { + async findOne(@Param('id') id: string): Promise { return this.licensesService.findOne(id) } diff --git a/src/modules/admin/licenses/licenses.service.ts b/src/modules/admin/licenses/licenses.service.ts index 1eaba6e..acd9e76 100644 --- a/src/modules/admin/licenses/licenses.service.ts +++ b/src/modules/admin/licenses/licenses.service.ts @@ -1,3 +1,5 @@ +import { QUERY_CONSTANTS } from '@/common/queryConstants' +import consumer_mappersUtil from '@/common/utils/mappers/consumer_mappers.util' import { LicenseActivationSelect } from '@/generated/prisma/models' import { PrismaService } from '@/prisma/prisma.service' import { Injectable } from '@nestjs/common' @@ -18,8 +20,7 @@ export class PartnerLicensesService { consumer: { select: { id: true, - first_name: true, - last_name: true, + ...QUERY_CONSTANTS.CONSUMER.infoSelect, }, }, }, @@ -49,7 +50,7 @@ export class PartnerLicensesService { } async findAll(page = 1, perPage = 10) { - const [licenses, total] = await this.prisma.$transaction([ + const [activatedLicenses, total] = await this.prisma.$transaction([ this.prisma.licenseActivation.findMany({ select: this.licenseDefaultSelect, skip: (page - 1) * perPage, @@ -58,7 +59,22 @@ export class PartnerLicensesService { this.prisma.licenseActivation.count(), ]) - return ResponseMapper.paginate(licenses, { + const mappedLicenses = activatedLicenses.map(license => { + const { business_activity, ...rest } = license + const { consumer, ...businessActivityRest } = business_activity as any + + const mappedConsumer = consumer_mappersUtil(consumer) + + return { + ...rest, + business_activity: { + ...businessActivityRest, + mappedConsumer, + }, + } + }) + + return ResponseMapper.paginate(activatedLicenses, { total, page, perPage, diff --git a/src/modules/admin/partners/activatedLicenses/activatedLicenses.controller.ts b/src/modules/admin/partners/activatedLicenses/activatedLicenses.controller.ts index a71a97f..0b3e7e9 100644 --- a/src/modules/admin/partners/activatedLicenses/activatedLicenses.controller.ts +++ b/src/modules/admin/partners/activatedLicenses/activatedLicenses.controller.ts @@ -1,6 +1,7 @@ import { Controller, Get, Param } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { PartnerActivatedLicensesService } from './activatedLicenses.service' +import type { PartnerActivatedLicensesServiceFindAllResponseDto } from './dto/activatedLicenses-response.dto' @ApiTags('AdminPartnerActivatedLicenses') @Controller('admin/partners/:partnerId/activated-licenses') @@ -8,7 +9,7 @@ export class PartnerLicensesController { constructor(private readonly service: PartnerActivatedLicensesService) {} @Get() - async findAll(@Param('partnerId') partnerId: string) { + async findAll(@Param('partnerId') partnerId: string): Promise { return this.service.findAll(partnerId) } diff --git a/src/modules/admin/partners/activatedLicenses/activatedLicenses.service.ts b/src/modules/admin/partners/activatedLicenses/activatedLicenses.service.ts index 47114ba..218803b 100644 --- a/src/modules/admin/partners/activatedLicenses/activatedLicenses.service.ts +++ b/src/modules/admin/partners/activatedLicenses/activatedLicenses.service.ts @@ -1,3 +1,5 @@ +import { QUERY_CONSTANTS } from '@/common/queryConstants' +import consumer_mappersUtil from '@/common/utils/mappers/consumer_mappers.util' import { LicenseActivationWhereInput } from '@/generated/prisma/models' import { PrismaService } from '@/prisma/prisma.service' import { Injectable } from '@nestjs/common' @@ -15,7 +17,7 @@ export class PartnerActivatedLicensesService { }, }, } - const [licenses, total] = await this.prisma.$transaction(async tx => [ + const [activatedLicense, total] = await this.prisma.$transaction(async tx => [ await tx.licenseActivation.findMany({ where: defaultWhere, skip: (page - 1) * perPage, @@ -38,8 +40,7 @@ export class PartnerActivatedLicensesService { consumer: { select: { id: true, - first_name: true, - last_name: true, + ...QUERY_CONSTANTS.CONSUMER.infoSelect, }, }, }, @@ -51,8 +52,11 @@ export class PartnerActivatedLicensesService { }), ]) - const mappedLicenses = licenses.map(license => { + const mappedLicenses = activatedLicense.map(license => { const { account_allocations, business_activity, ...rest } = license + const { consumer, ...businessActivityRest } = business_activity + + const mappedConsumer = consumer_mappersUtil(consumer) return { ...rest, @@ -64,7 +68,7 @@ export class PartnerActivatedLicensesService { }, business_activity: { ...business_activity, - consumer_name: `${business_activity.consumer.first_name} ${business_activity.consumer.last_name}`, + consumer_name: mappedConsumer.name, }, } }) diff --git a/src/modules/admin/partners/activatedLicenses/dto/activatedLicenses-response.dto.ts b/src/modules/admin/partners/activatedLicenses/dto/activatedLicenses-response.dto.ts new file mode 100644 index 0000000..d09f28e --- /dev/null +++ b/src/modules/admin/partners/activatedLicenses/dto/activatedLicenses-response.dto.ts @@ -0,0 +1,4 @@ +import type { PartnerActivatedLicensesService } from '../activatedLicenses.service' + +export type PartnerActivatedLicensesServiceDeleteResponseDto = Awaited> +export type PartnerActivatedLicensesServiceFindAllResponseDto = Awaited> diff --git a/src/modules/admin/partners/allocatedAccounts/allocatedAccounts.controller.ts b/src/modules/admin/partners/allocatedAccounts/allocatedAccounts.controller.ts index f58e3ea..436c2fe 100644 --- a/src/modules/admin/partners/allocatedAccounts/allocatedAccounts.controller.ts +++ b/src/modules/admin/partners/allocatedAccounts/allocatedAccounts.controller.ts @@ -1,6 +1,7 @@ import { Controller, Get, Param } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { PartnerAllocatedAccountsService } from './allocatedAccounts.service' +import type { PartnerAllocatedAccountsServiceFindAllResponseDto } from './dto/allocatedAccounts-response.dto' @ApiTags('AdminPartnerAllocatedAccounts') @Controller('admin/partners/:partnerId/allocated-accounts') @@ -8,7 +9,7 @@ export class PartnerAllocatedAccountsController { constructor(private readonly service: PartnerAllocatedAccountsService) {} @Get() - async findAll(@Param('partnerId') partnerId: string) { + async findAll(@Param('partnerId') partnerId: string): Promise { return this.service.findAll(partnerId) } } diff --git a/src/modules/admin/partners/allocatedAccounts/dto/allocatedAccounts-response.dto.ts b/src/modules/admin/partners/allocatedAccounts/dto/allocatedAccounts-response.dto.ts new file mode 100644 index 0000000..cdcd5a1 --- /dev/null +++ b/src/modules/admin/partners/allocatedAccounts/dto/allocatedAccounts-response.dto.ts @@ -0,0 +1,3 @@ +import type { PartnerAllocatedAccountsService } from '../allocatedAccounts.service' + +export type PartnerAllocatedAccountsServiceFindAllResponseDto = Awaited> diff --git a/src/modules/admin/partners/chargeAccountQoutaTransactions/chargeAccountQuotaTransactions.controller.ts b/src/modules/admin/partners/chargeAccountQoutaTransactions/chargeAccountQuotaTransactions.controller.ts index ceeb4e2..479bd70 100644 --- a/src/modules/admin/partners/chargeAccountQoutaTransactions/chargeAccountQuotaTransactions.controller.ts +++ b/src/modules/admin/partners/chargeAccountQoutaTransactions/chargeAccountQuotaTransactions.controller.ts @@ -2,6 +2,7 @@ import { Body, Controller, Get, Param, Post } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { PartnerAccountChargeTransactionService } from './chargeAccountQuotaTransactions.service' import { ChargeAccountQuotaDto } from './dto/chargeAccountQuotaTransactions.dto' +import type { PartnerAccountChargeTransactionServiceCreateResponseDto, PartnerAccountChargeTransactionServiceFindAllResponseDto, PartnerAccountChargeTransactionServiceFindOneResponseDto } from './dto/chargeAccountQuotaTransactions-response.dto' @ApiTags('Admin Partner Account Charge') @Controller('admin/partners/:partnerId/charge-account-transactions') @@ -9,12 +10,12 @@ export class PartnerAccountChargeTransactionController { constructor(private readonly service: PartnerAccountChargeTransactionService) {} @Get() - async findAll(@Param('partnerId') partnerId: string) { + async findAll(@Param('partnerId') partnerId: string): Promise { return this.service.findAll(partnerId) } @Get(':id') - async findOne(@Param('partnerId') partnerId: string, @Param('id') id: string) { + async findOne(@Param('partnerId') partnerId: string, @Param('id') id: string): Promise { return this.service.findOne(partnerId, id) } @@ -22,7 +23,7 @@ export class PartnerAccountChargeTransactionController { async create( @Param('partnerId') partnerId: string, @Body() data: ChargeAccountQuotaDto, - ) { + ): Promise { return this.service.create(partnerId, data) } diff --git a/src/modules/admin/partners/chargeAccountQoutaTransactions/dto/chargeAccountQuotaTransactions-response.dto.ts b/src/modules/admin/partners/chargeAccountQoutaTransactions/dto/chargeAccountQuotaTransactions-response.dto.ts new file mode 100644 index 0000000..1c921e9 --- /dev/null +++ b/src/modules/admin/partners/chargeAccountQoutaTransactions/dto/chargeAccountQuotaTransactions-response.dto.ts @@ -0,0 +1,5 @@ +import type { PartnerAccountChargeTransactionService } from '../chargeAccountQuotaTransactions.service' + +export type PartnerAccountChargeTransactionServiceCreateResponseDto = Awaited> +export type PartnerAccountChargeTransactionServiceFindAllResponseDto = Awaited> +export type PartnerAccountChargeTransactionServiceFindOneResponseDto = Awaited> diff --git a/src/modules/admin/partners/chargedLicenseTransactions/chargedLicenseTransactions.controller.ts b/src/modules/admin/partners/chargedLicenseTransactions/chargedLicenseTransactions.controller.ts index 7836256..0809517 100644 --- a/src/modules/admin/partners/chargedLicenseTransactions/chargedLicenseTransactions.controller.ts +++ b/src/modules/admin/partners/chargedLicenseTransactions/chargedLicenseTransactions.controller.ts @@ -2,6 +2,7 @@ import { Body, Controller, Get, Param, Post } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { PartnerLicenseChargeTransactionService } from './chargedLicenseTransactions.service' import { ChargeLicenseDto } from './dto/chargedLicenseTransactions.dto' +import type { PartnerLicenseChargeTransactionServiceCreateResponseDto, PartnerLicenseChargeTransactionServiceFindAllResponseDto, PartnerLicenseChargeTransactionServiceFindOneResponseDto } from './dto/chargedLicenseTransactions-response.dto' @ApiTags('AdminPartnerLicenseChargeTransaction') @Controller('admin/partners/:partnerId/charge-license-transactions') @@ -9,17 +10,17 @@ export class PartnerLicenseChargeTransactionController { constructor(private readonly service: PartnerLicenseChargeTransactionService) {} @Get() - async findAll(@Param('partnerId') partnerId: string) { + async findAll(@Param('partnerId') partnerId: string): Promise { return this.service.findAll(partnerId) } @Get(':id') - async findOne(@Param('partnerId') partnerId: string, @Param('id') id: string) { + async findOne(@Param('partnerId') partnerId: string, @Param('id') id: string): Promise { return this.service.findOne(partnerId, id) } @Post() - async create(@Param('partnerId') partnerId: string, @Body() data: ChargeLicenseDto) { + async create(@Param('partnerId') partnerId: string, @Body() data: ChargeLicenseDto): Promise { return this.service.create(partnerId, data) } diff --git a/src/modules/admin/partners/chargedLicenseTransactions/dto/chargedLicenseTransactions-response.dto.ts b/src/modules/admin/partners/chargedLicenseTransactions/dto/chargedLicenseTransactions-response.dto.ts new file mode 100644 index 0000000..8d5a020 --- /dev/null +++ b/src/modules/admin/partners/chargedLicenseTransactions/dto/chargedLicenseTransactions-response.dto.ts @@ -0,0 +1,5 @@ +import type { PartnerLicenseChargeTransactionService } from '../chargedLicenseTransactions.service' + +export type PartnerLicenseChargeTransactionServiceCreateResponseDto = Awaited> +export type PartnerLicenseChargeTransactionServiceFindAllResponseDto = Awaited> +export type PartnerLicenseChargeTransactionServiceFindOneResponseDto = Awaited> diff --git a/src/modules/admin/partners/dto/partner.dto.ts b/src/modules/admin/partners/dto/partner.dto.ts index f5ff9bc..41dcfa9 100644 --- a/src/modules/admin/partners/dto/partner.dto.ts +++ b/src/modules/admin/partners/dto/partner.dto.ts @@ -23,6 +23,10 @@ export class CreatePartnerDto { @IsString() @ApiProperty({ required: true }) password: string + + @IsOptional() + @ApiProperty({ required: false, type: 'string', format: 'binary' }) + logo?: any } export class UpdatePartnerDto extends PartialType(CreatePartnerDto) { diff --git a/src/modules/admin/partners/dto/partners-response.dto.ts b/src/modules/admin/partners/dto/partners-response.dto.ts new file mode 100644 index 0000000..96c1261 --- /dev/null +++ b/src/modules/admin/partners/dto/partners-response.dto.ts @@ -0,0 +1,7 @@ +import type { PartnersService } from '../partners.service' + +export type PartnersServiceCreateResponseDto = Awaited> +export type PartnersServiceDeleteResponseDto = Awaited> +export type PartnersServiceFindAllResponseDto = Awaited> +export type PartnersServiceFindOneResponseDto = Awaited> +export type PartnersServiceUpdateResponseDto = Awaited> diff --git a/src/modules/admin/partners/partnerAccounts/accounts.controller.ts b/src/modules/admin/partners/partnerAccounts/accounts.controller.ts index e1d69b9..87434f9 100644 --- a/src/modules/admin/partners/partnerAccounts/accounts.controller.ts +++ b/src/modules/admin/partners/partnerAccounts/accounts.controller.ts @@ -1,18 +1,19 @@ import { Body, Controller, Delete, Get, Param, Patch, Post } from '@nestjs/common' import { AccountsService } from './accounts.service' import { CreatePartnerAccountDto, UpdateAccountDto } from './dto/account.dto' +import type { AccountsServiceCreateResponseDto, AccountsServiceDeleteResponseDto, AccountsServiceFindAllResponseDto, AccountsServiceFindOneResponseDto, AccountsServiceUpdateResponseDto } from './dto/accounts-response.dto' @Controller('admin/partners/:partnerId/accounts') export class AccountsController { constructor(private readonly accountsService: AccountsService) {} @Get() - async findAll(@Param('partnerId') partnerId: string) { + async findAll(@Param('partnerId') partnerId: string): Promise { return this.accountsService.findAll(partnerId) } @Get(':id') - async findOne(@Param('id') id: string) { + async findOne(@Param('id') id: string): Promise { return this.accountsService.findOne(id) } @@ -20,17 +21,17 @@ export class AccountsController { async create( @Param('partnerId') partnerId: string, @Body() data: CreatePartnerAccountDto, - ) { + ): Promise { return this.accountsService.create(partnerId, data) } @Patch(':id') - async update(@Param('id') id: string, @Body() data: UpdateAccountDto) { + async update(@Param('id') id: string, @Body() data: UpdateAccountDto): Promise { return this.accountsService.update(id, data) } @Delete(':id') - async delete(@Param('id') id: string) { + async delete(@Param('id') id: string): Promise { return this.accountsService.delete(id) } } diff --git a/src/modules/admin/partners/partnerAccounts/dto/accounts-response.dto.ts b/src/modules/admin/partners/partnerAccounts/dto/accounts-response.dto.ts new file mode 100644 index 0000000..8e956c7 --- /dev/null +++ b/src/modules/admin/partners/partnerAccounts/dto/accounts-response.dto.ts @@ -0,0 +1,7 @@ +import type { AccountsService } from '../accounts.service' + +export type AccountsServiceCreateResponseDto = Awaited> +export type AccountsServiceDeleteResponseDto = Awaited> +export type AccountsServiceFindAllResponseDto = Awaited> +export type AccountsServiceFindOneResponseDto = Awaited> +export type AccountsServiceUpdateResponseDto = Awaited> diff --git a/src/modules/admin/partners/partners.controller.ts b/src/modules/admin/partners/partners.controller.ts index 92c7b1b..2d1a548 100644 --- a/src/modules/admin/partners/partners.controller.ts +++ b/src/modules/admin/partners/partners.controller.ts @@ -1,4 +1,16 @@ -import { Body, Controller, Get, Param, Patch, Post } from '@nestjs/common' +import { multerImageOptions } from '@/multer.config' +import { + Body, + Controller, + Get, + Param, + Patch, + Post, + UploadedFile, + UseInterceptors, +} from '@nestjs/common' +import { FileInterceptor } from '@nestjs/platform-express' +import { ApiBody, ApiConsumes } from '@nestjs/swagger' import { CreatePartnerDto, UpdatePartnerDto } from './dto/partner.dto' import { PartnersService } from './partners.service' @@ -7,23 +19,47 @@ export class PartnersController { constructor(private readonly partnersService: PartnersService) {} @Get() - async findAll() { + async findAll(): Promise { return this.partnersService.findAll() } @Get(':id') - async findOne(@Param('id') id: string) { + async findOne(@Param('id') id: string): Promise { return this.partnersService.findOne(id) } @Post() - async create(@Body() data: CreatePartnerDto) { - return this.partnersService.create(data) + @UseInterceptors(FileInterceptor('logo', multerImageOptions)) + @ApiConsumes('multipart/form-data') + @ApiBody({ + schema: { + type: 'object', + properties: { + logo: { type: 'string', format: 'binary' }, + }, + }, + }) + async create(@Body() data: CreatePartnerDto, @UploadedFile() logo: any): Promise { + return this.partnersService.create(data, logo) } @Patch(':id') - async update(@Param('id') id: string, @Body() data: UpdatePartnerDto) { - return this.partnersService.update(id, data) + @UseInterceptors(FileInterceptor('logo', multerImageOptions)) + @ApiConsumes('multipart/form-data') + @ApiBody({ + schema: { + type: 'object', + properties: { + logo: { type: 'string', format: 'binary' }, + }, + }, + }) + async update( + @Param('id') id: string, + @Body() data: UpdatePartnerDto, + @UploadedFile() logo: Express.Multer.File, + ): Promise { + return this.partnersService.update(id, data, logo) } // @Delete(':id') @@ -31,3 +67,5 @@ export class PartnersController { // return this.partnersService.delete(id) // } } + +import type { PartnersServiceCreateResponseDto, PartnersServiceFindAllResponseDto, PartnersServiceFindOneResponseDto, PartnersServiceUpdateResponseDto } from './dto/partners-response.dto' \ No newline at end of file diff --git a/src/modules/admin/partners/partners.module.ts b/src/modules/admin/partners/partners.module.ts index 780e995..b51830f 100644 --- a/src/modules/admin/partners/partners.module.ts +++ b/src/modules/admin/partners/partners.module.ts @@ -1,3 +1,4 @@ +import { UploaderModule } from '@/modules/uploader/uploader.module' import { PrismaModule } from '@/prisma/prisma.module' import { Module } from '@nestjs/common' @@ -11,6 +12,7 @@ import { PartnersService } from './partners.service' @Module({ imports: [ PrismaModule, + UploaderModule, AdminPartnerLicenseChargeTransactionModule, AdminPartnerActivatedLicensesModule, // AdminPartnerAllocatedAccountsModule, diff --git a/src/modules/admin/partners/partners.service.ts b/src/modules/admin/partners/partners.service.ts index 2cbd9a0..b226272 100644 --- a/src/modules/admin/partners/partners.service.ts +++ b/src/modules/admin/partners/partners.service.ts @@ -1,3 +1,4 @@ +import { UploadedFileTypes } from '@/common/enums/enums' import { PasswordUtil } from '@/common/utils/password.util' import { AccountStatus, @@ -6,6 +7,7 @@ import { PartnerStatus, } from '@/generated/prisma/enums' import { PartnerSelect } from '@/generated/prisma/models' +import { UploaderService } from '@/modules/uploader/uploader.service' import { PrismaService } from '@/prisma/prisma.service' import { Injectable } from '@nestjs/common' import { ResponseMapper } from 'common/response/response-mapper' @@ -14,13 +16,17 @@ import { CreatePartnerDto, UpdatePartnerDto } from './dto/partner.dto' @Injectable() export class PartnersService { private now = new Date().getTime() - constructor(private readonly prisma: PrismaService) {} + constructor( + private readonly prisma: PrismaService, + private readonly uploaderService: UploaderService, + ) {} private readonly defaultSelect: PartnerSelect = { id: true, name: true, code: true, status: true, + logo_url: true, created_at: true, license_charge_transactions: { select: { @@ -145,19 +151,26 @@ export class PartnersService { return ResponseMapper.single(this.mapPartner(partner)) } - async create(data: CreatePartnerDto) { - const { username, password, ...rest } = data + async create(data: CreatePartnerDto, logo?: any) { + const { username, password, ...rest } = data as any + delete rest.logo + + const logo_url = logo + ? await this.uploaderService.uploadFile(logo, UploadedFileTypes.PARTNER_LOGO) + : undefined + const partner = await this.prisma.partner.create({ data: { ...rest, status: PartnerStatus.ACTIVE, - partner_accounts: { + ...(logo_url ? { logo_url } : {}), + accounts: { create: { role: PartnerRole.OWNER, account: { create: { username, - password: await PasswordUtil.hash(data.password), + password: await PasswordUtil.hash(password), status: AccountStatus.ACTIVE, type: AccountType.PARTNER, }, @@ -170,12 +183,39 @@ export class PartnersService { return ResponseMapper.create(partner) } - async update(id: string, data: UpdatePartnerDto) { - const partner = await this.prisma.partner.update({ - where: { id }, - data, - select: this.defaultSelect, + async update(id: string, data: UpdatePartnerDto, logo?: any) { + const rest = { ...(data as any) } + delete rest.logo + + const partner = await this.prisma.$transaction(async tx => { + let logo_url = '' + if (logo) { + const uploadedUrl = await this.uploaderService.uploadFile( + logo, + UploadedFileTypes.PARTNER_LOGO, + ) + logo_url = uploadedUrl || '' + } + + const prevLogo = await tx.partner.findUnique({ + where: { id }, + select: { logo_url: true }, + }) + + if (logo_url && prevLogo?.logo_url) { + this.uploaderService.deleteFile(prevLogo.logo_url, UploadedFileTypes.PARTNER_LOGO) + } + + return tx.partner.update({ + where: { id }, + data: { + ...rest, + ...(logo_url ? { logo_url } : {}), + }, + select: this.defaultSelect, + }) }) + return ResponseMapper.update(partner) } diff --git a/src/modules/admin/providers/dto/providers-response.dto.ts b/src/modules/admin/providers/dto/providers-response.dto.ts new file mode 100644 index 0000000..809f155 --- /dev/null +++ b/src/modules/admin/providers/dto/providers-response.dto.ts @@ -0,0 +1,6 @@ +import type { ProvidersService } from '../providers.service' + +export type ProvidersServiceCreateResponseDto = Awaited> +export type ProvidersServiceFindAllResponseDto = Awaited> +export type ProvidersServiceFindOneResponseDto = Awaited> +export type ProvidersServiceUpdateResponseDto = Awaited> diff --git a/src/modules/admin/providers/providers.controller.ts b/src/modules/admin/providers/providers.controller.ts index a35314e..2959fb5 100644 --- a/src/modules/admin/providers/providers.controller.ts +++ b/src/modules/admin/providers/providers.controller.ts @@ -2,6 +2,7 @@ import { Body, Controller, Get, Param, Patch, Post } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { CreateProviderDto, UpdateProviderDto } from './dto/provider.dto' import { ProvidersService } from './providers.service' +import type { ProvidersServiceCreateResponseDto, ProvidersServiceFindAllResponseDto, ProvidersServiceFindOneResponseDto, ProvidersServiceUpdateResponseDto } from './dto/providers-response.dto' @ApiTags('Admin Providers') @Controller('admin/providers') @@ -9,22 +10,22 @@ export class ProvidersController { constructor(private readonly providersService: ProvidersService) {} @Get() - async findAll() { + async findAll(): Promise { return this.providersService.findAll() } @Get(':id') - async findOne(@Param('id') id: string) { + async findOne(@Param('id') id: string): Promise { return this.providersService.findOne(id) } @Post() - async create(@Body() data: CreateProviderDto) { + async create(@Body() data: CreateProviderDto): Promise { return this.providersService.create(data) } @Patch(':id') - async update(@Param('id') id: string, @Body() data: UpdateProviderDto) { + async update(@Param('id') id: string, @Body() data: UpdateProviderDto): Promise { return this.providersService.update(id, data) } diff --git a/src/modules/admin/providers/providers.service.ts b/src/modules/admin/providers/providers.service.ts index 872c40c..56eb92c 100644 --- a/src/modules/admin/providers/providers.service.ts +++ b/src/modules/admin/providers/providers.service.ts @@ -27,7 +27,7 @@ export class ProvidersService { const provider = await this.prisma.provider.create({ data: { ...rest, - provider_accounts: { + accounts: { create: { role: ProviderRole.OWNER, account: { diff --git a/src/modules/admin/translate/dto/translate-response.dto.ts b/src/modules/admin/translate/dto/translate-response.dto.ts new file mode 100644 index 0000000..804c20d --- /dev/null +++ b/src/modules/admin/translate/dto/translate-response.dto.ts @@ -0,0 +1,3 @@ +import type { TranslateService } from '../translate.service' + +export type TranslateServiceGetTranslationsResponseDto = Awaited> diff --git a/src/modules/admin/translate/translate.controller.ts b/src/modules/admin/translate/translate.controller.ts index c3126d4..fcc1466 100644 --- a/src/modules/admin/translate/translate.controller.ts +++ b/src/modules/admin/translate/translate.controller.ts @@ -1,12 +1,13 @@ import { Controller, Get } from '@nestjs/common' import { TranslateService } from './translate.service' +import type { TranslateServiceGetTranslationsResponseDto } from './dto/translate-response.dto' @Controller('admin/translates') export class TranslateController { constructor(private readonly translateService: TranslateService) {} @Get() - async getTranslations() { + async getTranslations(): Promise { return this.translateService.getTranslations() } } diff --git a/src/modules/admin/translate/translate.service.ts b/src/modules/admin/translate/translate.service.ts index 3ba9e00..e82f7df 100644 --- a/src/modules/admin/translate/translate.service.ts +++ b/src/modules/admin/translate/translate.service.ts @@ -40,11 +40,11 @@ export class TranslateService { guild_goods: 'کالا', guild_good_categories: 'دسته‌بندی کالا', partners: 'شریک تجاری', - partner_accounts: 'حساب', + accounts: 'حساب', partner_licenses: 'مجوز', providers: 'ارائه‌دهنده', - provider_accounts: 'حساب', - accounts: 'حساب کاربری', + // accounts: 'حساب', + // accounts: 'حساب کاربری', licenses: 'لایسنس', business_activities: 'فعالیت‌ اقتصادی', }, @@ -56,11 +56,11 @@ export class TranslateService { guild_goods: 'کالاها', guild_good_categories: 'دسته‌بندی کالاها', partners: 'شرکای تجاری', - partner_accounts: 'حساب‌های شریک تجاری', + accounts: 'حساب‌های شریک تجاری', partner_licenses: 'مجوزهای داده شده', providers: 'ارائه‌دهندگان', - provider_accounts: 'حساب‌های ارائه‌دهنده', - accounts: 'حساب‌های کاربری', + // accounts: 'حساب‌های ارائه‌دهنده', + // accounts: 'حساب‌های کاربری', licenses: 'لایسنس‌ها', business_activities: 'فعالیت‌های اقتصادی', }, diff --git a/src/modules/admin/users/accounts/accounts.controller.ts b/src/modules/admin/users/accounts/accounts.controller.ts index 206fd8b..532e71d 100644 --- a/src/modules/admin/users/accounts/accounts.controller.ts +++ b/src/modules/admin/users/accounts/accounts.controller.ts @@ -2,29 +2,30 @@ import { Body, Controller, Get, Param, Patch, Post } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { AccountsService } from './accounts.service' import { CreateAccountDto, UpdateAccountDto } from './dto/account.dto' +import type { AccountsServiceCreateResponseDto, AccountsServiceFindAllResponseDto, AccountsServiceFindOneResponseDto, AccountsServiceUpdateResponseDto } from './dto/accounts-response.dto' -@ApiTags('AdminAccounts') +@ApiTags('accounts') @Controller('admin/users/:userId/accounts') export class AccountsController { constructor(private readonly accountsService: AccountsService) {} @Get() - async findAll(@Param('userId') userId: string) { + async findAll(@Param('userId') userId: string): Promise { return this.accountsService.findAll(userId) } @Get(':id') - async findOne(@Param('id') id: string) { + async findOne(@Param('id') id: string): Promise { return this.accountsService.findOne(id) } @Post() - async create(@Param('userId') userId: string, @Body() data: CreateAccountDto) { + async create(@Param('userId') userId: string, @Body() data: CreateAccountDto): Promise { return this.accountsService.create(userId, data) } @Patch(':id') - async update(@Param('id') id: string, @Body() data: UpdateAccountDto) { + async update(@Param('id') id: string, @Body() data: UpdateAccountDto): Promise { return this.accountsService.update(id, data) } diff --git a/src/modules/admin/users/accounts/dto/accounts-response.dto.ts b/src/modules/admin/users/accounts/dto/accounts-response.dto.ts new file mode 100644 index 0000000..8e956c7 --- /dev/null +++ b/src/modules/admin/users/accounts/dto/accounts-response.dto.ts @@ -0,0 +1,7 @@ +import type { AccountsService } from '../accounts.service' + +export type AccountsServiceCreateResponseDto = Awaited> +export type AccountsServiceDeleteResponseDto = Awaited> +export type AccountsServiceFindAllResponseDto = Awaited> +export type AccountsServiceFindOneResponseDto = Awaited> +export type AccountsServiceUpdateResponseDto = Awaited> diff --git a/src/modules/admin/users/dto/users-response.dto.ts b/src/modules/admin/users/dto/users-response.dto.ts new file mode 100644 index 0000000..c4061da --- /dev/null +++ b/src/modules/admin/users/dto/users-response.dto.ts @@ -0,0 +1,7 @@ +import type { AdminUsersService } from '../users.service' + +export type AdminUsersServiceCreateResponseDto = Awaited> +export type AdminUsersServiceDeleteResponseDto = Awaited> +export type AdminUsersServiceFindAllResponseDto = Awaited> +export type AdminUsersServiceFindOneResponseDto = Awaited> +export type AdminUsersServiceUpdateResponseDto = Awaited> diff --git a/src/modules/admin/users/users.controller.ts b/src/modules/admin/users/users.controller.ts index 81176be..8cc5027 100644 --- a/src/modules/admin/users/users.controller.ts +++ b/src/modules/admin/users/users.controller.ts @@ -1,33 +1,34 @@ import { Body, Controller, Delete, Get, Param, Patch, Post } from '@nestjs/common' import { CreateUserDto, UpdateUserDto } from './dto/user.dto' import { AdminUsersService } from './users.service' +import type { AdminUsersServiceCreateResponseDto, AdminUsersServiceDeleteResponseDto, AdminUsersServiceFindAllResponseDto, AdminUsersServiceFindOneResponseDto, AdminUsersServiceUpdateResponseDto } from './dto/users-response.dto' @Controller('admin/users') export class AdminUsersController { constructor(private readonly usersService: AdminUsersService) {} @Get() - async findAll() { + async findAll(): Promise { return this.usersService.findAll() } @Get(':id') - async findOne(@Param('id') id: string) { + async findOne(@Param('id') id: string): Promise { return this.usersService.findOne(id) } @Post() - async create(@Body() data: any) { + async create(@Body() data: any): Promise { return this.usersService.create(data as CreateUserDto) } @Patch(':id') - async update(@Param('id') id: string, @Body() data: any) { + async update(@Param('id') id: string, @Body() data: any): Promise { return this.usersService.update(id, data as UpdateUserDto) } @Delete(':id') - async delete(@Param('id') id: string) { + async delete(@Param('id') id: string): Promise { return this.usersService.delete(id) } } diff --git a/src/modules/application/application.middleware.ts b/src/modules/application/application.middleware.ts index 6f45f71..feed88b 100644 --- a/src/modules/application/application.middleware.ts +++ b/src/modules/application/application.middleware.ts @@ -43,7 +43,7 @@ export class PosMiddleware implements NestMiddleware { complex: { business_activity: { consumer: { - consumer_accounts: { + accounts: { some: { id: account_id, }, diff --git a/src/modules/application/auth/dto/auth-response.dto.ts b/src/modules/application/auth/dto/auth-response.dto.ts new file mode 100644 index 0000000..21d5249 --- /dev/null +++ b/src/modules/application/auth/dto/auth-response.dto.ts @@ -0,0 +1,3 @@ +import type { ApplicationAuthService } from '../auth.service' + +export type ApplicationAuthServiceLoginResponseDto = Awaited> diff --git a/src/modules/application/config/config.service.ts b/src/modules/application/config/config.service.ts index e8947c7..e144efd 100644 --- a/src/modules/application/config/config.service.ts +++ b/src/modules/application/config/config.service.ts @@ -1,3 +1,4 @@ +import { QUERY_CONSTANTS } from '@/common/queryConstants' import { ConsumerDevicesSelect } from '@/generated/prisma/models' import { PrismaService } from '@/prisma/prisma.service' import { BadRequestException, Injectable } from '@nestjs/common' @@ -24,8 +25,7 @@ export class ConfigService { consumer: { select: { id: true, - first_name: true, - last_name: true, + ...QUERY_CONSTANTS.CONSUMER.infoSelect, }, }, } diff --git a/src/modules/application/config/dto/config-response.dto.ts b/src/modules/application/config/dto/config-response.dto.ts new file mode 100644 index 0000000..54b240e --- /dev/null +++ b/src/modules/application/config/dto/config-response.dto.ts @@ -0,0 +1,4 @@ +import type { ConfigService } from '../config.service' + +export type ConfigServiceCreateResponseDto = Awaited> +export type ConfigServiceFindOneResponseDto = Awaited> diff --git a/src/modules/application/dto/application-response.dto.ts b/src/modules/application/dto/application-response.dto.ts new file mode 100644 index 0000000..83fee8b --- /dev/null +++ b/src/modules/application/dto/application-response.dto.ts @@ -0,0 +1,3 @@ +import type { AppService } from '../application.service' + +export type AppServiceCheckVersionResponseDto = Awaited> diff --git a/src/modules/auth/auth.controller.ts b/src/modules/auth/auth.controller.ts index 3c49932..836cf67 100644 --- a/src/modules/auth/auth.controller.ts +++ b/src/modules/auth/auth.controller.ts @@ -4,6 +4,7 @@ import { ApiTags } from '@nestjs/swagger' import { AuthService } from './auth.service' import { reqTokenPayload } from './current-user.decorator' import { LoginDto } from './dto/login.dto' +import type { AuthServiceMeResponseDto } from './dto/auth-response.dto' @ApiTags('auth') @Controller('auth') @@ -44,7 +45,7 @@ export class AuthController { } @Get('me') - async me(@reqTokenPayload() user: any) { + async me(@reqTokenPayload() user: any): Promise { return this.auth.me(user.username) } } diff --git a/src/modules/auth/auth.utils.ts b/src/modules/auth/auth.utils.ts index 74fde42..176f5ec 100644 --- a/src/modules/auth/auth.utils.ts +++ b/src/modules/auth/auth.utils.ts @@ -1,3 +1,5 @@ +import { QUERY_CONSTANTS } from '@/common/queryConstants' +import consumer_mappersUtil from '@/common/utils/mappers/consumer_mappers.util' import { PasswordUtil } from '@/common/utils/password.util' import { Account } from '@/generated/prisma/client' import { AccountType } from '@/generated/prisma/enums' @@ -85,9 +87,8 @@ export class AuthUtils { consumer: { select: { id: true, - first_name: true, - last_name: true, - mobile_number: true, + type: true, + ...QUERY_CONSTANTS.CONSUMER.infoSelect, }, }, }, @@ -99,12 +100,14 @@ export class AuthUtils { throw new NotFoundException('متاسفانه کاربر شما یافت نشد') const { consumer, id, role } = consumerAccount.consumer_account + const { legal, individual, id: userId, type, name } = consumer_mappersUtil(consumer) return { account_id: id, role, user: { - ...consumer, - fullname: `${consumer.first_name} ${consumer.last_name}`, + id: userId, + type, + fullname: name, }, } } diff --git a/src/modules/auth/dto/auth-response.dto.ts b/src/modules/auth/dto/auth-response.dto.ts new file mode 100644 index 0000000..215999a --- /dev/null +++ b/src/modules/auth/dto/auth-response.dto.ts @@ -0,0 +1,5 @@ +import type { AuthService } from '../auth.service' + +export type AuthServiceLoginResponseDto = Awaited> +export type AuthServiceMeResponseDto = Awaited> +export type AuthServiceRefreshResponseDto = Awaited> diff --git a/src/modules/catalog/catalog.controller.ts b/src/modules/catalog/catalog.controller.ts index 29bd1a2..e2626f0 100644 --- a/src/modules/catalog/catalog.controller.ts +++ b/src/modules/catalog/catalog.controller.ts @@ -2,6 +2,7 @@ import { PublicWithToken } from '@/common/decorators/withToken.decorator' import { Controller, Get, Param } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { CatalogsService } from './catalog.service' +import type { CatalogsServiceGetDeviceBrandsResponseDto, CatalogsServiceGetDevicesResponseDto, CatalogsServiceGetGuildGoodCategoriesResponseDto, CatalogsServiceGetGuildsResponseDto, CatalogsServiceGetProvidersResponseDto } from './dto/catalog-response.dto' @ApiTags('Catalog') @Controller('catalog') @@ -10,31 +11,31 @@ export class CatalogsController { @Get('guilds') @PublicWithToken() - async getGuilds() { + async getGuilds(): Promise { return this.catalogService.getGuilds() } @Get('providers') @PublicWithToken() - async getProviders() { + async getProviders(): Promise { return this.catalogService.getProviders() } @Get('devices') @PublicWithToken() - async getDevices() { + async getDevices(): Promise { return this.catalogService.getDevices() } @Get('device_brands') @PublicWithToken() - async getDeviceBrands() { + async getDeviceBrands(): Promise { return this.catalogService.getDeviceBrands() } @Get('guilds/:guildId/good_categories') @PublicWithToken() - async getGuildGoodCategories(@Param('guildId') guild_id: string) { + async getGuildGoodCategories(@Param('guildId') guild_id: string): Promise { return this.catalogService.getGuildGoodCategories(guild_id) } } diff --git a/src/modules/catalog/dto/catalog-response.dto.ts b/src/modules/catalog/dto/catalog-response.dto.ts new file mode 100644 index 0000000..1960e8f --- /dev/null +++ b/src/modules/catalog/dto/catalog-response.dto.ts @@ -0,0 +1,7 @@ +import type { CatalogsService } from '../catalog.service' + +export type CatalogsServiceGetDeviceBrandsResponseDto = Awaited> +export type CatalogsServiceGetDevicesResponseDto = Awaited> +export type CatalogsServiceGetGuildGoodCategoriesResponseDto = Awaited> +export type CatalogsServiceGetGuildsResponseDto = Awaited> +export type CatalogsServiceGetProvidersResponseDto = Awaited> diff --git a/src/modules/consumer/accounts/accounts.controller.ts b/src/modules/consumer/accounts/accounts.controller.ts index 723465a..10615df 100644 --- a/src/modules/consumer/accounts/accounts.controller.ts +++ b/src/modules/consumer/accounts/accounts.controller.ts @@ -3,6 +3,7 @@ import { Body, Controller, Get, Param, Patch } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { AccountsService } from './accounts.service' import { UpdateAccountDto } from './dto/account.dto' +import type { AccountsServiceFindAllResponseDto, AccountsServiceFindOneResponseDto, AccountsServiceUpdateResponseDto } from './dto/accounts-response.dto' @ApiTags('ConsumerAccounts') @Controller('consumer/accounts') @@ -10,12 +11,12 @@ export class AccountsController { constructor(private readonly accountsService: AccountsService) {} @Get() - async findAll(@TokenAccount('userId') consumerId: string) { + async findAll(@TokenAccount('userId') consumerId: string): Promise { return this.accountsService.findAll(consumerId) } @Get(':id') - async findOne(@Param('id') id: string) { + async findOne(@Param('id') id: string): Promise { return this.accountsService.findOne(id) } @@ -28,7 +29,7 @@ export class AccountsController { // } @Patch(':id') - async update(@Param('id') id: string, @Body() data: UpdateAccountDto) { + async update(@Param('id') id: string, @Body() data: UpdateAccountDto): Promise { return this.accountsService.update(id, data) } diff --git a/src/modules/consumer/accounts/dto/accounts-response.dto.ts b/src/modules/consumer/accounts/dto/accounts-response.dto.ts new file mode 100644 index 0000000..1a0166e --- /dev/null +++ b/src/modules/consumer/accounts/dto/accounts-response.dto.ts @@ -0,0 +1,5 @@ +import type { AccountsService } from '../accounts.service' + +export type AccountsServiceFindAllResponseDto = Awaited> +export type AccountsServiceFindOneResponseDto = Awaited> +export type AccountsServiceUpdateResponseDto = Awaited> diff --git a/src/modules/consumer/accounts/permissions/dto/permissions-response.dto.ts b/src/modules/consumer/accounts/permissions/dto/permissions-response.dto.ts new file mode 100644 index 0000000..c8fafea --- /dev/null +++ b/src/modules/consumer/accounts/permissions/dto/permissions-response.dto.ts @@ -0,0 +1,4 @@ +import type { AccountsService } from '../permissions.service' + +export type AccountsServiceCreateResponseDto = Awaited> +export type AccountsServiceFindAllResponseDto = Awaited> diff --git a/src/modules/consumer/accounts/permissions/permissions.controller.ts b/src/modules/consumer/accounts/permissions/permissions.controller.ts index 1987f73..1c89eee 100644 --- a/src/modules/consumer/accounts/permissions/permissions.controller.ts +++ b/src/modules/consumer/accounts/permissions/permissions.controller.ts @@ -3,6 +3,7 @@ import { Body, Controller, Get, Param, Put } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { UpdatePermissionDto } from './dto/permission.dto' import { AccountsService } from './permissions.service' +import type { AccountsServiceCreateResponseDto, AccountsServiceFindAllResponseDto } from './dto/permissions-response.dto' @ApiTags('ConsumerAccountPermissions') @Controller('consumer/accounts/:accountId/permissions') @@ -13,7 +14,7 @@ export class AccountPermissionsController { async findAll( @TokenAccount('userId') userId: string, @Param('accountId') accountId: string, - ) { + ): Promise { return this.service.findAll(userId, accountId) } @@ -22,7 +23,7 @@ export class AccountPermissionsController { @Param('userId') userId: string, @Param('accountId') accountId: string, @Body() data: UpdatePermissionDto, - ) { + ): Promise { return this.service.create(userId, accountId, data) } } diff --git a/src/modules/consumer/accounts/permissions/permissions.service.ts b/src/modules/consumer/accounts/permissions/permissions.service.ts index 91964e5..7503d28 100644 --- a/src/modules/consumer/accounts/permissions/permissions.service.ts +++ b/src/modules/consumer/accounts/permissions/permissions.service.ts @@ -70,7 +70,7 @@ export class AccountsService { complex: { business_activity: { consumer: { - consumer_accounts: { + accounts: { some: { id: account_id, }, @@ -112,9 +112,9 @@ export class AccountsService { const businessActivities = await this.prisma.businessActivity.findMany({ where: { consumer: { - consumer_accounts: { + accounts: { some: { - account_id, + id: account_id, }, }, }, diff --git a/src/modules/consumer/business-activities/business-activities.controller.ts b/src/modules/consumer/business-activities/business-activities.controller.ts index dfa9ab2..4209c03 100644 --- a/src/modules/consumer/business-activities/business-activities.controller.ts +++ b/src/modules/consumer/business-activities/business-activities.controller.ts @@ -2,18 +2,19 @@ import { TokenAccount } from '@/common/decorators/tokenInfo.decorator' import { Body, Controller, Get, Param, Patch } from '@nestjs/common' import { BusinessActivitiesService } from './business-activities.service' import { UpdateBusinessActivityDto } from './dto/create-business-activities.dto' +import type { BusinessActivitiesServiceFindAllResponseDto, BusinessActivitiesServiceFindOneResponseDto, BusinessActivitiesServiceUpdateResponseDto } from './dto/business-activities-response.dto' @Controller('consumer/business_activities') export class BusinessActivitiesController { constructor(private readonly service: BusinessActivitiesService) {} @Get() - async findAll(@TokenAccount('userId') userId: string) { + async findAll(@TokenAccount('userId') userId: string): Promise { return this.service.findAll(userId) } @Get(':id') - async findOne(@TokenAccount('userId') userId: string, @Param('id') id: string) { + async findOne(@TokenAccount('userId') userId: string, @Param('id') id: string): Promise { return this.service.findOne(userId, id) } @@ -22,7 +23,7 @@ export class BusinessActivitiesController { @TokenAccount('userId') userId: string, @Param('id') id: string, @Body() data: UpdateBusinessActivityDto, - ) { + ): Promise { return this.service.update(userId, id, data) } } diff --git a/src/modules/consumer/business-activities/business-activities.module.ts b/src/modules/consumer/business-activities/business-activities.module.ts index 27a8989..ab698d9 100644 --- a/src/modules/consumer/business-activities/business-activities.module.ts +++ b/src/modules/consumer/business-activities/business-activities.module.ts @@ -3,9 +3,14 @@ import { Module } from '@nestjs/common' import { BusinessActivitiesController } from './business-activities.controller' import { BusinessActivitiesService } from './business-activities.service' import { ConsumerBusinessActivityComplexesModule } from './complexes/complexes.module' +import { ConsumerBusinessActivityGoodsModule } from './goods/goods.module' @Module({ - imports: [PrismaModule, ConsumerBusinessActivityComplexesModule], + imports: [ + PrismaModule, + ConsumerBusinessActivityComplexesModule, + ConsumerBusinessActivityGoodsModule, + ], controllers: [BusinessActivitiesController], providers: [BusinessActivitiesService], }) diff --git a/src/modules/consumer/business-activities/complexes/complexes.controller.ts b/src/modules/consumer/business-activities/complexes/complexes.controller.ts index c460a25..2ae8e58 100644 --- a/src/modules/consumer/business-activities/complexes/complexes.controller.ts +++ b/src/modules/consumer/business-activities/complexes/complexes.controller.ts @@ -3,6 +3,7 @@ import { Body, Controller, Get, Param, Patch, Post } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { BusinessActivityComplexesService } from './complexes.service' import { CreateConsumerComplexDto, UpdateConsumerComplexDto } from './dto/complex.dto' +import type { BusinessActivityComplexesServiceCreateResponseDto, BusinessActivityComplexesServiceFindAllResponseDto, BusinessActivityComplexesServiceFindOneResponseDto, BusinessActivityComplexesServiceUpdateResponseDto } from './dto/complexes-response.dto' @ApiTags('AdminBusinessActivityComplexes') @Controller('consumer/business_activities/:businessActivityId/complexes') @@ -13,7 +14,7 @@ export class BusinessActivityComplexesController { async findAll( @ConsumerInfo('id') consumerId: string, @Param('businessActivityId') businessActivityId: string, - ) { + ): Promise { return this.service.findAll(consumerId, businessActivityId) } @@ -22,7 +23,7 @@ export class BusinessActivityComplexesController { @ConsumerInfo('id') consumerId: string, @Param('businessActivityId') businessActivityId: string, @Param('id') id: string, - ) { + ): Promise { return this.service.findOne(consumerId, businessActivityId, id) } @@ -31,7 +32,7 @@ export class BusinessActivityComplexesController { @ConsumerInfo('id') consumerId: string, @Param('businessActivityId') businessActivityId: string, @Body() data: CreateConsumerComplexDto, - ) { + ): Promise { return this.service.create(consumerId, businessActivityId, data) } @@ -41,7 +42,7 @@ export class BusinessActivityComplexesController { @Param('businessActivityId') businessActivityId: string, @Param('id') id: string, @Body() data: UpdateConsumerComplexDto, - ) { + ): Promise { return this.service.update(consumerId, businessActivityId, id, data) } } diff --git a/src/modules/consumer/business-activities/complexes/complexes.module.ts b/src/modules/consumer/business-activities/complexes/complexes.module.ts index 6a3ac9d..5e1b130 100644 --- a/src/modules/consumer/business-activities/complexes/complexes.module.ts +++ b/src/modules/consumer/business-activities/complexes/complexes.module.ts @@ -2,11 +2,10 @@ import { PrismaModule } from '@/prisma/prisma.module' import { Module } from '@nestjs/common' import { BusinessActivityComplexesController } from './complexes.controller' import { BusinessActivityComplexesService } from './complexes.service' -import { ConsumerComplexGoodsModule } from './goods/goods.module' import { ConsumerComplexPosesModule } from './poses/poses.module' @Module({ - imports: [PrismaModule, ConsumerComplexPosesModule, ConsumerComplexGoodsModule], + imports: [PrismaModule, ConsumerComplexPosesModule], controllers: [BusinessActivityComplexesController], providers: [BusinessActivityComplexesService], }) diff --git a/src/modules/consumer/business-activities/complexes/dto/complexes-response.dto.ts b/src/modules/consumer/business-activities/complexes/dto/complexes-response.dto.ts new file mode 100644 index 0000000..1f1c01d --- /dev/null +++ b/src/modules/consumer/business-activities/complexes/dto/complexes-response.dto.ts @@ -0,0 +1,6 @@ +import type { BusinessActivityComplexesService } from '../complexes.service' + +export type BusinessActivityComplexesServiceCreateResponseDto = Awaited> +export type BusinessActivityComplexesServiceFindAllResponseDto = Awaited> +export type BusinessActivityComplexesServiceFindOneResponseDto = Awaited> +export type BusinessActivityComplexesServiceUpdateResponseDto = Awaited> diff --git a/src/modules/consumer/business-activities/complexes/goods/goods.controller.ts b/src/modules/consumer/business-activities/complexes/goods/goods.controller.ts deleted file mode 100644 index a4dcf24..0000000 --- a/src/modules/consumer/business-activities/complexes/goods/goods.controller.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { TokenAccount } from '@/common/decorators/tokenInfo.decorator' -import { Body, Controller, Get, Param, Patch, Post } from '@nestjs/common' -import { ApiTags } from '@nestjs/swagger' -import { CreateGoodDto, UpdateGoodDto } from './dto/good.dto' -import { ConsumerComplexGoodsService } from './goods.service' - -@ApiTags('ConsumerComplexGoods') -@Controller('consumer/business_activities/:businessActivityId/complexes/:complexId/goods') -export class ConsumerComplexGoodsController { - constructor(private readonly service: ConsumerComplexGoodsService) {} - - @Get() - async findAll( - @TokenAccount('userId') userId: string, - @Param('businessActivityId') businessActivityId: string, - @Param('complexId') complexId: string, - ) { - return this.service.findAll(userId, businessActivityId, complexId) - } - - @Get(':id') - async findOne( - @TokenAccount('userId') userId: string, - @Param('businessActivityId') businessActivityId: string, - @Param('complexId') complexId: string, - @Param('id') id: string, - ) { - return this.service.findOne(userId, businessActivityId, complexId, id) - } - - @Post() - async create(@Param('complexId') complexId: string, @Body() data: CreateGoodDto) { - return this.service.create(complexId, data) - } - - @Patch(':id') - async update( - @TokenAccount('userId') userId: string, - @Param('businessActivityId') businessActivityId: string, - @Param('complexId') complexId: string, - @Param('id') id: string, - @Body() data: UpdateGoodDto, - ) { - return this.service.update(userId, businessActivityId, complexId, id, data) - } - - // @Delete(':id') - // async delete(@Param('id') id: string) { - // return this.businessActivityAccountsService.delete(id) - // } -} diff --git a/src/modules/consumer/business-activities/complexes/goods/goods.module.ts b/src/modules/consumer/business-activities/complexes/goods/goods.module.ts deleted file mode 100644 index 180be0f..0000000 --- a/src/modules/consumer/business-activities/complexes/goods/goods.module.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { PrismaModule } from '@/prisma/prisma.module' -import { Module } from '@nestjs/common' -import { ConsumerComplexGoodsController } from './goods.controller' -import { ConsumerComplexGoodsService } from './goods.service' - -@Module({ - imports: [PrismaModule], - controllers: [ConsumerComplexGoodsController], - providers: [ConsumerComplexGoodsService], - exports: [ConsumerComplexGoodsService], -}) -export class ConsumerComplexGoodsModule {} diff --git a/src/modules/consumer/business-activities/complexes/poses/dto/poses-response.dto.ts b/src/modules/consumer/business-activities/complexes/poses/dto/poses-response.dto.ts new file mode 100644 index 0000000..b029066 --- /dev/null +++ b/src/modules/consumer/business-activities/complexes/poses/dto/poses-response.dto.ts @@ -0,0 +1,6 @@ +import type { ComplexPosesService } from '../poses.service' + +export type ComplexPosesServiceCreateResponseDto = Awaited> +export type ComplexPosesServiceFindAllResponseDto = Awaited> +export type ComplexPosesServiceFindOneResponseDto = Awaited> +export type ComplexPosesServiceUpdateResponseDto = Awaited> diff --git a/src/modules/consumer/business-activities/complexes/poses/poses.controller.ts b/src/modules/consumer/business-activities/complexes/poses/poses.controller.ts index 2bab702..6d06805 100644 --- a/src/modules/consumer/business-activities/complexes/poses/poses.controller.ts +++ b/src/modules/consumer/business-activities/complexes/poses/poses.controller.ts @@ -3,6 +3,7 @@ import { Body, Controller, Get, Param, Patch, Post } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { CreatePosDto, UpdatePosDto } from './dto/pos.dto' import { ComplexPosesService } from './poses.service' +import type { ComplexPosesServiceCreateResponseDto, ComplexPosesServiceFindAllResponseDto, ComplexPosesServiceFindOneResponseDto, ComplexPosesServiceUpdateResponseDto } from './dto/poses-response.dto' @ApiTags('ConsumerComplexPoses') @Controller('consumer/business_activities/:businessActivityId/complexes/:complexId/poses') @@ -14,7 +15,7 @@ export class ComplexPosesController { @ConsumerInfo('id') consumerId: string, @Param('businessActivityId') businessActivityId: string, @Param('complexId') complexId: string, - ) { + ): Promise { return this.service.findAll(consumerId, businessActivityId, complexId) } @@ -24,7 +25,7 @@ export class ComplexPosesController { @Param('businessActivityId') businessActivityId: string, @Param('complexId') complexId: string, @Param('id') id: string, - ) { + ): Promise { return this.service.findOne(consumerId, businessActivityId, complexId, id) } @@ -34,7 +35,7 @@ export class ComplexPosesController { @Param('businessActivityId') businessActivityId: string, @Param('complexId') complexId: string, @Body() data: CreatePosDto, - ) { + ): Promise { return this.service.create(consumerId, businessActivityId, complexId, data) } @@ -45,7 +46,7 @@ export class ComplexPosesController { @Param('complexId') complexId: string, @Param('id') id: string, @Body() data: UpdatePosDto, - ) { + ): Promise { return this.service.update(consumerId, businessActivityId, complexId, id, data) } diff --git a/src/modules/consumer/business-activities/complexes/poses/sales-invoices/dto/sales-invoices-response.dto.ts b/src/modules/consumer/business-activities/complexes/poses/sales-invoices/dto/sales-invoices-response.dto.ts new file mode 100644 index 0000000..f094215 --- /dev/null +++ b/src/modules/consumer/business-activities/complexes/poses/sales-invoices/dto/sales-invoices-response.dto.ts @@ -0,0 +1,4 @@ +import type { SalesInvoicesService } from '../sales-invoices.service' + +export type SalesInvoicesServiceFindAllResponseDto = Awaited> +export type SalesInvoicesServiceFindOneResponseDto = Awaited> diff --git a/src/modules/consumer/business-activities/complexes/poses/sales-invoices/sales-invoice-items/dto/sales-invoice-items-response.dto.ts b/src/modules/consumer/business-activities/complexes/poses/sales-invoices/sales-invoice-items/dto/sales-invoice-items-response.dto.ts new file mode 100644 index 0000000..13ccdd0 --- /dev/null +++ b/src/modules/consumer/business-activities/complexes/poses/sales-invoices/sales-invoice-items/dto/sales-invoice-items-response.dto.ts @@ -0,0 +1,5 @@ +import type { SalesInvoiceItemsService } from '../sales-invoice-items.service' + +export type SalesInvoiceItemsServiceCreateResponseDto = Awaited> +export type SalesInvoiceItemsServiceFindAllResponseDto = Awaited> +export type SalesInvoiceItemsServiceFindOneResponseDto = Awaited> diff --git a/src/modules/consumer/business-activities/complexes/poses/sales-invoices/sales-invoice-payments/dto/sales-invoice-payments-response.dto.ts b/src/modules/consumer/business-activities/complexes/poses/sales-invoices/sales-invoice-payments/dto/sales-invoice-payments-response.dto.ts new file mode 100644 index 0000000..815dac3 --- /dev/null +++ b/src/modules/consumer/business-activities/complexes/poses/sales-invoices/sales-invoice-payments/dto/sales-invoice-payments-response.dto.ts @@ -0,0 +1,5 @@ +import type { SalesInvoicePaymentsService } from '../sales-invoice-payments.service' + +export type SalesInvoicePaymentsServiceCreateResponseDto = Awaited> +export type SalesInvoicePaymentsServiceFindAllResponseDto = Awaited> +export type SalesInvoicePaymentsServiceFindOneResponseDto = Awaited> diff --git a/src/modules/consumer/business-activities/complexes/poses/sales-invoices/sales-invoices.service.ts b/src/modules/consumer/business-activities/complexes/poses/sales-invoices/sales-invoices.service.ts index 50cb19a..7ba3a43 100644 --- a/src/modules/consumer/business-activities/complexes/poses/sales-invoices/sales-invoices.service.ts +++ b/src/modules/consumer/business-activities/complexes/poses/sales-invoices/sales-invoices.service.ts @@ -71,7 +71,7 @@ export class SalesInvoicesService { customer: { select: { type: true, - customer_individual: { + individual: { select: { economic_code: true, first_name: true, @@ -80,7 +80,7 @@ export class SalesInvoicesService { national_id: true, }, }, - customer_legal: { + legal: { select: { economic_code: true, postal_code: true, diff --git a/src/modules/consumer/business-activities/dto/business-activities-response.dto.ts b/src/modules/consumer/business-activities/dto/business-activities-response.dto.ts new file mode 100644 index 0000000..9183207 --- /dev/null +++ b/src/modules/consumer/business-activities/dto/business-activities-response.dto.ts @@ -0,0 +1,5 @@ +import type { BusinessActivitiesService } from '../business-activities.service' + +export type BusinessActivitiesServiceFindAllResponseDto = Awaited> +export type BusinessActivitiesServiceFindOneResponseDto = Awaited> +export type BusinessActivitiesServiceUpdateResponseDto = Awaited> diff --git a/src/modules/consumer/business-activities/complexes/goods/dto/good.dto.ts b/src/modules/consumer/business-activities/goods/dto/good.dto.ts similarity index 100% rename from src/modules/consumer/business-activities/complexes/goods/dto/good.dto.ts rename to src/modules/consumer/business-activities/goods/dto/good.dto.ts diff --git a/src/modules/consumer/business-activities/goods/dto/goods-response.dto.ts b/src/modules/consumer/business-activities/goods/dto/goods-response.dto.ts new file mode 100644 index 0000000..f2f1c94 --- /dev/null +++ b/src/modules/consumer/business-activities/goods/dto/goods-response.dto.ts @@ -0,0 +1,6 @@ +import type { ConsumerBusinessActivityGoodsService } from '../goods.service' + +export type ConsumerBusinessActivityGoodsServiceCreateResponseDto = Awaited> +export type ConsumerBusinessActivityGoodsServiceFindAllResponseDto = Awaited> +export type ConsumerBusinessActivityGoodsServiceFindOneResponseDto = Awaited> +export type ConsumerBusinessActivityGoodsServiceUpdateResponseDto = Awaited> diff --git a/src/modules/consumer/business-activities/goods/goods.controller.ts b/src/modules/consumer/business-activities/goods/goods.controller.ts new file mode 100644 index 0000000..d0187a4 --- /dev/null +++ b/src/modules/consumer/business-activities/goods/goods.controller.ts @@ -0,0 +1,54 @@ +import { TokenAccount } from '@/common/decorators/tokenInfo.decorator' +import { Body, Controller, Get, Param, Patch, Post } from '@nestjs/common' +import { ApiTags } from '@nestjs/swagger' +import { CreateGoodDto, UpdateGoodDto } from './dto/good.dto' +import { ConsumerBusinessActivityGoodsService } from './goods.service' +import type { ConsumerBusinessActivityGoodsServiceCreateResponseDto, ConsumerBusinessActivityGoodsServiceFindAllResponseDto, ConsumerBusinessActivityGoodsServiceFindOneResponseDto, ConsumerBusinessActivityGoodsServiceUpdateResponseDto } from './dto/goods-response.dto' + +@ApiTags('ConsumerBusinessActivityGoods') +@Controller('consumer/business_activities/:businessActivityId/goods') +export class ConsumerBusinessActivityGoodsController { + constructor(private readonly service: ConsumerBusinessActivityGoodsService) {} + + @Get() + async findAll( + @TokenAccount('userId') consumer_id: string, + @Param('businessActivityId') businessActivityId: string, + ): Promise { + return this.service.findAll(consumer_id, businessActivityId) + } + + @Get(':id') + async findOne( + @TokenAccount('userId') consumer_id: string, + @Param('businessActivityId') businessActivityId: string, + + @Param('id') id: string, + ): Promise { + return this.service.findOne(consumer_id, businessActivityId, id) + } + + @Post() + async create( + @Param('businessActivityId') businessActivityId: string, + @Body() data: CreateGoodDto, + ): Promise { + return this.service.create(businessActivityId, data) + } + + @Patch(':id') + async update( + @TokenAccount('userId') consumer_id: string, + @Param('businessActivityId') businessActivityId: string, + + @Param('id') id: string, + @Body() data: UpdateGoodDto, + ): Promise { + return this.service.update(consumer_id, businessActivityId, id, data) + } + + // @Delete(':id') + // async delete(@Param('id') id: string) { + // return this.businessActivityAccountsService.delete(id) + // } +} diff --git a/src/modules/consumer/business-activities/goods/goods.module.ts b/src/modules/consumer/business-activities/goods/goods.module.ts new file mode 100644 index 0000000..e047853 --- /dev/null +++ b/src/modules/consumer/business-activities/goods/goods.module.ts @@ -0,0 +1,12 @@ +import { PrismaModule } from '@/prisma/prisma.module' +import { Module } from '@nestjs/common' +import { ConsumerBusinessActivityGoodsController } from './goods.controller' +import { ConsumerBusinessActivityGoodsService } from './goods.service' + +@Module({ + imports: [PrismaModule], + controllers: [ConsumerBusinessActivityGoodsController], + providers: [ConsumerBusinessActivityGoodsService], + exports: [ConsumerBusinessActivityGoodsService], +}) +export class ConsumerBusinessActivityGoodsModule {} diff --git a/src/modules/consumer/business-activities/complexes/goods/goods.service.ts b/src/modules/consumer/business-activities/goods/goods.service.ts similarity index 73% rename from src/modules/consumer/business-activities/complexes/goods/goods.service.ts rename to src/modules/consumer/business-activities/goods/goods.service.ts index d256610..9cdc3fb 100644 --- a/src/modules/consumer/business-activities/complexes/goods/goods.service.ts +++ b/src/modules/consumer/business-activities/goods/goods.service.ts @@ -5,7 +5,7 @@ import { ResponseMapper } from 'common/response/response-mapper' import { CreateGoodDto, UpdateGoodDto } from './dto/good.dto' @Injectable() -export class ConsumerComplexGoodsService { +export class ConsumerBusinessActivityGoodsService { constructor(private readonly prisma: PrismaService) {} defaultSelect: GoodSelect = { @@ -26,16 +26,12 @@ export class ConsumerComplexGoodsService { created_at: true, } - async findAll(consumer_id: string, business_activity_id: string, complex_id: string) { + async findAll(consumer_id: string, business_activity_id: string) { const goods = await this.prisma.good.findMany({ where: { - complex_id, - complex: { - id: complex_id, - business_activity: { - id: business_activity_id, - consumer_id, - }, + business_activity: { + id: business_activity_id, + consumer_id, }, }, select: this.defaultSelect, @@ -44,20 +40,12 @@ export class ConsumerComplexGoodsService { return ResponseMapper.list(goods) } - async findOne( - consumer_id: string, - business_activity_id: string, - complex_id: string, - id: string, - ) { + async findOne(consumer_id: string, business_activity_id: string, id: string) { const good = await this.prisma.good.findUnique({ where: { - complex: { - id: complex_id, - business_activity: { - id: business_activity_id, - consumer_id, - }, + business_activity: { + id: business_activity_id, + consumer_id, }, id, }, @@ -66,15 +54,15 @@ export class ConsumerComplexGoodsService { return ResponseMapper.single(good) } - async create(complex_id: string, data: CreateGoodDto) { + async create(business_activity_id: string, data: CreateGoodDto) { const { category_id, ...rest } = data const good = await this.prisma.good.create({ data: { ...rest, - complex: { + business_activity: { connect: { - id: complex_id, + id: business_activity_id, }, }, category: { @@ -90,26 +78,22 @@ export class ConsumerComplexGoodsService { async update( consumer_id: string, business_activity_id: string, - complex_id: string, id: string, data: UpdateGoodDto, ) { const { category_id, ...rest } = data const good = await this.prisma.good.update({ where: { - complex: { - id: complex_id, - business_activity: { - id: business_activity_id, - consumer_id, - }, + business_activity: { + id: business_activity_id, + consumer_id, }, id, }, data: { - complex: { + business_activity: { connect: { - id: complex_id, + id: business_activity_id, }, }, category: { diff --git a/src/modules/consumer/consumer.controller.ts b/src/modules/consumer/consumer.controller.ts index 0f0ee08..bc2de55 100644 --- a/src/modules/consumer/consumer.controller.ts +++ b/src/modules/consumer/consumer.controller.ts @@ -2,6 +2,7 @@ import { ConsumerInfo } from '@/common/decorators/consumerInfo.decorator' import { Controller, Get } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { ConsumerService } from './consumer.service' +import type { ConsumerServiceGetInfoResponseDto } from './dto/consumer-response.dto' @ApiTags('Consumer') @Controller('consumer') @@ -9,7 +10,7 @@ export class ConsumerController { constructor(private service: ConsumerService) {} @Get('') - async findOne(@ConsumerInfo('id') consumerId: string) { + async findOne(@ConsumerInfo('id') consumerId: string): Promise { return this.service.getInfo(consumerId) } } diff --git a/src/modules/consumer/consumer.service.ts b/src/modules/consumer/consumer.service.ts index cc0e3be..03817a1 100644 --- a/src/modules/consumer/consumer.service.ts +++ b/src/modules/consumer/consumer.service.ts @@ -1,7 +1,8 @@ +import { QUERY_CONSTANTS } from '@/common/queryConstants' import { ResponseMapper } from '@/common/response/response-mapper' import { PrismaService } from '@/prisma/prisma.service' import { Injectable } from '@nestjs/common' -import mapConsumerWithLicenseUtil from './utils/mapConsumerWithLicense.util' +import consumer_mappersUtil from '../../common/utils/mappers/consumer_mappers.util' @Injectable() export class ConsumerService { @@ -14,13 +15,11 @@ export class ConsumerService { }, select: { id: true, - first_name: true, - last_name: true, - mobile_number: true, status: true, + ...QUERY_CONSTANTS.CONSUMER.infoSelect, }, }) - return ResponseMapper.single(mapConsumerWithLicenseUtil(consumer)) + return ResponseMapper.single(consumer_mappersUtil(consumer)) } } diff --git a/src/modules/consumer/customers/customers.controller.ts b/src/modules/consumer/customers/customers.controller.ts index a545d22..6b2a637 100644 --- a/src/modules/consumer/customers/customers.controller.ts +++ b/src/modules/consumer/customers/customers.controller.ts @@ -11,12 +11,12 @@ export class consumerCustomersController { constructor(private readonly service: consumerCustomersService) {} @Get() - async findAll(@ConsumerInfo('id') consumerId: string) { + async findAll(@ConsumerInfo('id') consumerId: string): Promise { return this.service.findAll(consumerId) } @Get(':id') - async findOne(@ConsumerInfo('id') consumerId: string, @Param('id') id: string) { + async findOne(@ConsumerInfo('id') consumerId: string, @Param('id') id: string): Promise { return this.service.findOne(consumerId, id) } @@ -25,7 +25,7 @@ export class consumerCustomersController { @ConsumerInfo('id') consumerId: string, @Param('id') id: string, @Body() data: UpdateCustomerLegalDto, - ) { + ): Promise { return this.service.updateLegal(consumerId, id, data) } @@ -34,7 +34,9 @@ export class consumerCustomersController { @ConsumerInfo('id') consumerId: string, @Param('id') id: string, @Body() data: UpdateCustomerIndividualDto, - ) { + ): Promise { return this.service.updateIndividual(consumerId, id, data) } } + +import type { consumerCustomersServiceFindAllResponseDto, consumerCustomersServiceFindOneResponseDto, consumerCustomersServiceUpdateIndividualResponseDto, consumerCustomersServiceUpdateLegalResponseDto } from './dto/customers-response.dto' \ No newline at end of file diff --git a/src/modules/consumer/customers/customers.service.ts b/src/modules/consumer/customers/customers.service.ts index 8319f4c..f1e2425 100644 --- a/src/modules/consumer/customers/customers.service.ts +++ b/src/modules/consumer/customers/customers.service.ts @@ -16,7 +16,7 @@ export class consumerCustomersService { type: true, is_favorite: true, created_at: true, - customer_individual: { + individual: { select: { first_name: true, last_name: true, @@ -25,7 +25,7 @@ export class consumerCustomersService { economic_code: true, }, }, - customer_legal: { + legal: { select: { company_name: true, registration_number: true, @@ -39,20 +39,16 @@ export class consumerCustomersService { return { OR: [ { - customer_individual: { - complex: { - business_activity: { - consumer_id, - }, + individual: { + business_activity: { + consumer_id, }, }, }, { - customer_legal: { - complex: { - business_activity: { - consumer_id, - }, + legal: { + business_activity: { + consumer_id, }, }, }, @@ -95,17 +91,15 @@ export class consumerCustomersService { const customer = await this.prisma.customer.update({ where: { id: customer_id, - customer_legal: { - complex: { - business_activity: { - consumer_id, - }, + legal: { + business_activity: { + consumer_id, }, }, }, data: { is_favorite: data.is_favorite, - customer_legal: { + legal: { update: { ...data, }, @@ -124,18 +118,16 @@ export class consumerCustomersService { const customer = await this.prisma.customer.update({ where: { id: customer_id, - customer_individual: { - complex: { - business_activity: { - consumer_id, - }, + individual: { + business_activity: { + consumer_id, }, }, }, data: { is_favorite: data.is_favorite, - customer_individual: { + individual: { update: { ...data, }, diff --git a/src/modules/consumer/customers/dto/customers-response.dto.ts b/src/modules/consumer/customers/dto/customers-response.dto.ts new file mode 100644 index 0000000..f0c0baa --- /dev/null +++ b/src/modules/consumer/customers/dto/customers-response.dto.ts @@ -0,0 +1,6 @@ +import type { consumerCustomersService } from '../customers.service' + +export type consumerCustomersServiceFindAllResponseDto = Awaited> +export type consumerCustomersServiceFindOneResponseDto = Awaited> +export type consumerCustomersServiceUpdateIndividualResponseDto = Awaited> +export type consumerCustomersServiceUpdateLegalResponseDto = Awaited> diff --git a/src/modules/consumer/customers/sale-invoices/dto/sale-invoices-response.dto.ts b/src/modules/consumer/customers/sale-invoices/dto/sale-invoices-response.dto.ts new file mode 100644 index 0000000..6fdd0b3 --- /dev/null +++ b/src/modules/consumer/customers/sale-invoices/dto/sale-invoices-response.dto.ts @@ -0,0 +1,4 @@ +import type { CustomerSaleInvoicesService } from '../sale-invoices.service' + +export type CustomerSaleInvoicesServiceFindAllResponseDto = Awaited> +export type CustomerSaleInvoicesServiceFindOneResponseDto = Awaited> diff --git a/src/modules/consumer/customers/sale-invoices/sale-invoices.controller.ts b/src/modules/consumer/customers/sale-invoices/sale-invoices.controller.ts index 5bd30bb..f87b72d 100644 --- a/src/modules/consumer/customers/sale-invoices/sale-invoices.controller.ts +++ b/src/modules/consumer/customers/sale-invoices/sale-invoices.controller.ts @@ -2,6 +2,7 @@ import { TokenAccount } from '@/common/decorators/tokenInfo.decorator' import { Controller, Get, Param } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { CustomerSaleInvoicesService } from './sale-invoices.service' +import type { CustomerSaleInvoicesServiceFindAllResponseDto, CustomerSaleInvoicesServiceFindOneResponseDto } from './dto/sale-invoices-response.dto' @ApiTags('customerSaleInvoices') @Controller('consumer/customers/:customerId/sale-invoices') @@ -12,7 +13,7 @@ export class CustomerSaleInvoicesController { async findAll( @TokenAccount('userId') userId: string, @Param('customerId') customerId: string, - ) { + ): Promise { return this.service.findAll(userId, customerId) } @@ -21,7 +22,7 @@ export class CustomerSaleInvoicesController { @TokenAccount('userId') userId: string, @Param('customerId') customerId: string, @Param('id') id: string, - ) { + ): Promise { return this.service.findOne(userId, customerId, id) } } diff --git a/src/modules/consumer/customers/sale-invoices/sale-invoices.service.ts b/src/modules/consumer/customers/sale-invoices/sale-invoices.service.ts index 5dbd9b8..a520ec5 100644 --- a/src/modules/consumer/customers/sale-invoices/sale-invoices.service.ts +++ b/src/modules/consumer/customers/sale-invoices/sale-invoices.service.ts @@ -1,3 +1,5 @@ +import { QUERY_CONSTANTS } from '@/common/queryConstants' +import consumer_mappersUtil from '@/common/utils/mappers/consumer_mappers.util' import { SalesInvoiceSelect, SalesInvoiceWhereInput } from '@/generated/prisma/models' import { PrismaService } from '@/prisma/prisma.service' import { Injectable } from '@nestjs/common' @@ -7,7 +9,7 @@ import { ResponseMapper } from 'common/response/response-mapper' export class CustomerSaleInvoicesService { constructor(private readonly prisma: PrismaService) {} - defaultSelect: SalesInvoiceSelect = { + private readonly defaultSelect: SalesInvoiceSelect = { id: true, code: true, invoice_date: true, @@ -36,8 +38,7 @@ export class CustomerSaleInvoicesService { role: true, consumer: { select: { - first_name: true, - last_name: true, + ...QUERY_CONSTANTS.CONSUMER.infoSelect, }, }, account: { @@ -62,7 +63,7 @@ export class CustomerSaleInvoicesService { }, } - const [accounts, total] = await this.prisma.$transaction(async tx => [ + const [saleInvoices, total] = await this.prisma.$transaction(async tx => [ await tx.salesInvoice.findMany({ where: salesWhere, select: { @@ -81,11 +82,17 @@ export class CustomerSaleInvoicesService { }), ]) - const mappedAccounts = accounts.map(account => { - const { _count, ...rest } = account + const mappedAccounts = saleInvoices.map(saleInvoice => { + const { _count, consumer_account, ...rest } = saleInvoice + const { consumer, ...restConsumerAccount } = consumer_account as any + const mappedConsumer = consumer_mappersUtil(consumer) return { ...rest, items_count: _count.items, + consumer_account: { + ...restConsumerAccount, + consumer: mappedConsumer, + }, } }) @@ -97,7 +104,7 @@ export class CustomerSaleInvoicesService { } async findOne(consumer_id: string, customer_id: string, id: string) { - const account = await this.prisma.salesInvoice.findUniqueOrThrow({ + const saleInvoice = await this.prisma.salesInvoice.findUniqueOrThrow({ where: { id, customer_id, @@ -111,7 +118,6 @@ export class CustomerSaleInvoicesService { }, select: { ...this.defaultSelect, - items: { select: { id: true, @@ -147,6 +153,17 @@ export class CustomerSaleInvoicesService { }, }, }) - return ResponseMapper.single(account) + const { _count, consumer_account, ...rest } = saleInvoice + const { consumer, ...restConsumerAccount } = consumer_account as any + const mappedConsumer = consumer_mappersUtil(consumer) + + return ResponseMapper.single({ + ...rest, + items_count: _count.items, + consumer_account: { + ...restConsumerAccount, + consumer: mappedConsumer, + }, + }) } } diff --git a/src/modules/consumer/dto/consumer-response.dto.ts b/src/modules/consumer/dto/consumer-response.dto.ts new file mode 100644 index 0000000..c118702 --- /dev/null +++ b/src/modules/consumer/dto/consumer-response.dto.ts @@ -0,0 +1,3 @@ +import type { ConsumerService } from '../consumer.service' + +export type ConsumerServiceGetInfoResponseDto = Awaited> diff --git a/src/modules/consumer/poses/dto/poses-response.dto.ts b/src/modules/consumer/poses/dto/poses-response.dto.ts new file mode 100644 index 0000000..26130c4 --- /dev/null +++ b/src/modules/consumer/poses/dto/poses-response.dto.ts @@ -0,0 +1,5 @@ +import type { PosesService } from '../poses.service' + +export type PosesServiceFindAllResponseDto = Awaited> +export type PosesServiceFindOneResponseDto = Awaited> +export type PosesServiceUpdateResponseDto = Awaited> diff --git a/src/modules/consumer/poses/poses.controller.ts b/src/modules/consumer/poses/poses.controller.ts index 86fc93b..4bf8027 100644 --- a/src/modules/consumer/poses/poses.controller.ts +++ b/src/modules/consumer/poses/poses.controller.ts @@ -2,18 +2,19 @@ import { TokenAccount } from '@/common/decorators/tokenInfo.decorator' import { Body, Controller, Get, Param, Patch } from '@nestjs/common' import { UpdateBusinessActivityDto } from './dto/poses.dto' import { PosesService } from './poses.service' +import type { PosesServiceFindAllResponseDto, PosesServiceFindOneResponseDto, PosesServiceUpdateResponseDto } from './dto/poses-response.dto' @Controller('consumer/poses') export class PosesController { constructor(private readonly service: PosesService) {} @Get() - async findAll(@TokenAccount('userId') userId: string) { + async findAll(@TokenAccount('userId') userId: string): Promise { return this.service.findAll(userId) } @Get(':id') - async findOne(@TokenAccount('userId') userId: string, @Param('id') id: string) { + async findOne(@TokenAccount('userId') userId: string, @Param('id') id: string): Promise { return this.service.findOne(userId, id) } @@ -22,7 +23,7 @@ export class PosesController { @TokenAccount('userId') userId: string, @Param('id') id: string, @Body() data: UpdateBusinessActivityDto, - ) { + ): Promise { return this.service.update(userId, id, data) } } diff --git a/src/modules/consumer/poses/poses.service.ts b/src/modules/consumer/poses/poses.service.ts index 794d427..12d6822 100644 --- a/src/modules/consumer/poses/poses.service.ts +++ b/src/modules/consumer/poses/poses.service.ts @@ -7,7 +7,7 @@ import { ResponseMapper } from 'common/response/response-mapper' export class PosesService { constructor(private readonly prisma: PrismaService) {} - private readonly defaultSelect = QUERY_CONSTANTS.pos.select + private readonly defaultSelect = QUERY_CONSTANTS.POS.select private readonly defaultWhere = (consumer_id: string) => ({ complex: { business_activity: { diff --git a/src/modules/consumer/saleInvoices/dto/saleInvoices-response.dto.ts b/src/modules/consumer/saleInvoices/dto/saleInvoices-response.dto.ts new file mode 100644 index 0000000..66197e3 --- /dev/null +++ b/src/modules/consumer/saleInvoices/dto/saleInvoices-response.dto.ts @@ -0,0 +1,4 @@ +import type { SaleInvoicesService } from '../saleInvoices.service' + +export type SaleInvoicesServiceFindAllResponseDto = Awaited> +export type SaleInvoicesServiceFindOneResponseDto = Awaited> diff --git a/src/modules/consumer/saleInvoices/saleInvoices.controller.ts b/src/modules/consumer/saleInvoices/saleInvoices.controller.ts index 0713163..ba0e06b 100644 --- a/src/modules/consumer/saleInvoices/saleInvoices.controller.ts +++ b/src/modules/consumer/saleInvoices/saleInvoices.controller.ts @@ -2,6 +2,7 @@ import { TokenAccount } from '@/common/decorators/tokenInfo.decorator' import { Controller, Get, Param } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { SaleInvoicesService } from './saleInvoices.service' +import type { SaleInvoicesServiceFindAllResponseDto, SaleInvoicesServiceFindOneResponseDto } from './dto/saleInvoices-response.dto' @ApiTags('ConsumerSaleInvoices') @Controller('consumer/sale-invoices') @@ -9,12 +10,12 @@ export class StatisticsController { constructor(private readonly service: SaleInvoicesService) {} @Get('') - async findAll(@TokenAccount('userId') consumerId: string) { + async findAll(@TokenAccount('userId') consumerId: string): Promise { return this.service.findAll(consumerId) } @Get(':id') - async findOne(@TokenAccount('userId') consumerId: string, @Param('id') id: string) { + async findOne(@TokenAccount('userId') consumerId: string, @Param('id') id: string): Promise { return this.service.findOne(consumerId, id) } } diff --git a/src/modules/consumer/saleInvoices/saleInvoices.service.ts b/src/modules/consumer/saleInvoices/saleInvoices.service.ts index 54787cb..4981135 100644 --- a/src/modules/consumer/saleInvoices/saleInvoices.service.ts +++ b/src/modules/consumer/saleInvoices/saleInvoices.service.ts @@ -115,7 +115,7 @@ export class SaleInvoicesService { select: { id: true, type: true, - customer_legal: { + legal: { select: { company_name: true, economic_code: true, @@ -123,7 +123,7 @@ export class SaleInvoicesService { postal_code: true, }, }, - customer_individual: { + individual: { select: { first_name: true, last_name: true, diff --git a/src/modules/consumer/statistics/dto/statistics-response.dto.ts b/src/modules/consumer/statistics/dto/statistics-response.dto.ts new file mode 100644 index 0000000..ef904f9 --- /dev/null +++ b/src/modules/consumer/statistics/dto/statistics-response.dto.ts @@ -0,0 +1,3 @@ +import type { StatisticsService } from '../statistics.service' + +export type StatisticsServiceGetInvoicesResponseDto = Awaited> diff --git a/src/modules/consumer/statistics/statistics.controller.ts b/src/modules/consumer/statistics/statistics.controller.ts index 15b1dc6..15ec79e 100644 --- a/src/modules/consumer/statistics/statistics.controller.ts +++ b/src/modules/consumer/statistics/statistics.controller.ts @@ -2,6 +2,7 @@ import { TokenAccount } from '@/common/decorators/tokenInfo.decorator' import { Controller, Get } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { StatisticsService } from './statistics.service' +import type { StatisticsServiceGetInvoicesResponseDto } from './dto/statistics-response.dto' @ApiTags('ConsumerStatistics') @Controller('consumer/statistics') @@ -9,7 +10,7 @@ export class StatisticsController { constructor(private readonly service: StatisticsService) {} @Get('invoices') - async getInvoices(@TokenAccount('userId') consumerId: string) { + async getInvoices(@TokenAccount('userId') consumerId: string): Promise { return this.service.getInvoices(consumerId) } } diff --git a/src/modules/consumer/utils/index.ts b/src/modules/consumer/utils/index.ts index 7a969c5..fdaff28 100644 --- a/src/modules/consumer/utils/index.ts +++ b/src/modules/consumer/utils/index.ts @@ -1 +1 @@ -export * from './mapConsumerWithLicense.util' +export * from '../../../common/utils/mappers/consumer_mappers.util' diff --git a/src/modules/consumer/utils/mapConsumerWithLicense.util.ts b/src/modules/consumer/utils/mapConsumerWithLicense.util.ts deleted file mode 100644 index 7265eac..0000000 --- a/src/modules/consumer/utils/mapConsumerWithLicense.util.ts +++ /dev/null @@ -1,18 +0,0 @@ -export default (consumer: any) => { - const { activation, ...rest } = consumer - - return { - ...rest, - fullname: `${rest?.first_name} ${rest?.last_name}`, - license_info: prepareLicenseInfo(activation), - } -} - -function prepareLicenseInfo(latestLicense: any) { - if (!latestLicense) return null - const { license, ...rest } = latestLicense - - return { - ...rest, - } -} diff --git a/src/modules/enums/dto/enums-response.dto.ts b/src/modules/enums/dto/enums-response.dto.ts new file mode 100644 index 0000000..719f5a0 --- /dev/null +++ b/src/modules/enums/dto/enums-response.dto.ts @@ -0,0 +1,4 @@ +import type { EnumsService } from '../enums.service' + +export type EnumsServiceGetAllEnumsResponseDto = Awaited> +export type EnumsServiceGetEnumValuesResponseDto = Awaited> diff --git a/src/modules/enums/enums.controller.ts b/src/modules/enums/enums.controller.ts index b24b823..0844d56 100644 --- a/src/modules/enums/enums.controller.ts +++ b/src/modules/enums/enums.controller.ts @@ -1,6 +1,7 @@ import { PublicWithToken } from '@/common/decorators/withToken.decorator' import { Controller, Get } from '@nestjs/common' import { EnumsService } from './enums.service' +import type { EnumsServiceGetEnumValuesResponseDto } from './dto/enums-response.dto' @Controller('enums') export class EnumsController { @@ -8,109 +9,109 @@ export class EnumsController { @Get('gold_karat') @PublicWithToken() - async getGoldKarat() { + async getGoldKarat(): Promise { return this.enumsService.getEnumValues('GoldKarat') } @Get('user_status') @PublicWithToken() - async getUserStatus() { + async getUserStatus(): Promise { return this.enumsService.getEnumValues('UserStatus') } @Get('account_role') @PublicWithToken() - async getAccountRole() { + async getAccountRole(): Promise { return this.enumsService.getEnumValues('AccountRole') } @Get('account_status') @PublicWithToken() - async getAccountStatus() { + async getAccountStatus(): Promise { return this.enumsService.getEnumValues('AccountStatus') } @Get('pos_status') @PublicWithToken() - async getPOSStatus() { + async getPOSStatus(): Promise { return this.enumsService.getEnumValues('POSStatus') } @Get('pos_role') @PublicWithToken() - async getPOSRole() { + async getPOSRole(): Promise { return this.enumsService.getEnumValues('POSRole') } @Get('license_type') @PublicWithToken() - async getLicenseType() { + async getLicenseType(): Promise { return this.enumsService.getEnumValues('LicenseType') } @Get('license_status') @PublicWithToken() - async getLicenseStatus() { + async getLicenseStatus(): Promise { return this.enumsService.getEnumValues('LicenseStatus') } @Get('pos_type') @PublicWithToken() - async getPOSType() { + async getPOSType(): Promise { return this.enumsService.getEnumValues('POSType') } @Get('user_type') @PublicWithToken() - async getUserType() { + async getUserType(): Promise { return this.enumsService.getEnumValues('UserType') } @Get('account_type') @PublicWithToken() - async getAccountType() { + async getAccountType(): Promise { return this.enumsService.getEnumValues('AccountType') } @Get('partner_role') @PublicWithToken() - async getPartnerRole() { + async getPartnerRole(): Promise { return this.enumsService.getEnumValues('PartnerRole') } @Get('business_role') @PublicWithToken() - async getBusinessRole() { + async getBusinessRole(): Promise { return this.enumsService.getEnumValues('BusinessRole') } @Get('provider_role') @PublicWithToken() - async getProviderRole() { + async getProviderRole(): Promise { return this.enumsService.getEnumValues('ProviderRole') } @Get('token_type') @PublicWithToken() - async getTokenType() { + async getTokenType(): Promise { return this.enumsService.getEnumValues('TokenType') } @Get('unit_type') @PublicWithToken() - async getUnitType() { + async getUnitType(): Promise { return this.enumsService.getEnumValues('UnitType') } @Get('good_pricing_model') @PublicWithToken() - async getGoodPricingModel() { + async getGoodPricingModel(): Promise { return this.enumsService.getEnumValues('GoodPricingModel') } @Get('consumer_role') @PublicWithToken() - async getConsumerRoleModel() { + async getConsumerRoleModel(): Promise { return this.enumsService.getEnumValues('ConsumerRole') } } diff --git a/src/modules/partners/accounts/accounts.controller.ts b/src/modules/partners/accounts/accounts.controller.ts index 80e5ba9..717a07e 100644 --- a/src/modules/partners/accounts/accounts.controller.ts +++ b/src/modules/partners/accounts/accounts.controller.ts @@ -3,6 +3,7 @@ import { Body, Controller, Get, Param, Patch } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { AccountsService } from './accounts.service' import { UpdateAccountDto } from './dto/account.dto' +import type { AccountsServiceFindAllResponseDto, AccountsServiceFindOneResponseDto, AccountsServiceUpdateResponseDto } from './dto/accounts-response.dto' @ApiTags('PartnerAccounts') @Controller('partner/accounts') @@ -10,12 +11,12 @@ export class AccountsController { constructor(private readonly service: AccountsService) {} @Get() - async findAll(@TokenAccount('userId') consumerId: string) { + async findAll(@TokenAccount('userId') consumerId: string): Promise { return this.service.findAll(consumerId) } @Get(':id') - async findOne(@Param('id') id: string) { + async findOne(@Param('id') id: string): Promise { return this.service.findOne(id) } @@ -28,7 +29,7 @@ export class AccountsController { // } @Patch(':id') - async update(@Param('id') id: string, @Body() data: UpdateAccountDto) { + async update(@Param('id') id: string, @Body() data: UpdateAccountDto): Promise { return this.service.update(id, data) } diff --git a/src/modules/partners/accounts/dto/accounts-response.dto.ts b/src/modules/partners/accounts/dto/accounts-response.dto.ts new file mode 100644 index 0000000..f3f76aa --- /dev/null +++ b/src/modules/partners/accounts/dto/accounts-response.dto.ts @@ -0,0 +1,6 @@ +import type { AccountsService } from '../accounts.service' + +export type AccountsServiceCreateResponseDto = Awaited> +export type AccountsServiceFindAllResponseDto = Awaited> +export type AccountsServiceFindOneResponseDto = Awaited> +export type AccountsServiceUpdateResponseDto = Awaited> diff --git a/src/modules/partners/consumers/accounts/accounts.controller.ts b/src/modules/partners/consumers/accounts/accounts.controller.ts index 6b16cb5..bf1a444 100644 --- a/src/modules/partners/consumers/accounts/accounts.controller.ts +++ b/src/modules/partners/consumers/accounts/accounts.controller.ts @@ -3,6 +3,7 @@ import { Body, Controller, Get, Param, Patch } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { AccountsService } from './accounts.service' import { UpdateAccountDto } from './dto/account.dto' +import type { AccountsServiceFindAllResponseDto, AccountsServiceFindOneResponseDto, AccountsServiceUpdateResponseDto } from './dto/accounts-response.dto' @ApiTags('PartnerConsumerAccounts') @Controller('partner/consumers/:consumerId/accounts') @@ -13,7 +14,7 @@ export class AccountsController { async findAll( @PartnerInfo('id') partnerId: string, @Param('consumerId') consumerId: string, - ) { + ): Promise { return this.accountsService.findAll(partnerId, consumerId) } @@ -22,7 +23,7 @@ export class AccountsController { @PartnerInfo('id') partnerId: string, @Param('consumerId') consumerId: string, @Param('id') id: string, - ) { + ): Promise { return this.accountsService.findOne(partnerId, consumerId, id) } @@ -41,7 +42,7 @@ export class AccountsController { @Param('consumerId') consumerId: string, @Param('id') id: string, @Body() data: UpdateAccountDto, - ) { + ): Promise { return this.accountsService.update(partnerId, consumerId, id, data) } diff --git a/src/modules/partners/consumers/accounts/accounts.service.ts b/src/modules/partners/consumers/accounts/accounts.service.ts index f7d65ab..99d964d 100644 --- a/src/modules/partners/consumers/accounts/accounts.service.ts +++ b/src/modules/partners/consumers/accounts/accounts.service.ts @@ -42,7 +42,18 @@ export class AccountsService { private readonly defaultWhere = (partner_id, consumer_id) => ({ consumer_id, consumer: { - partner_id, + OR: [ + { + legal: { + partner_id, + }, + }, + { + individual: { + partner_id, + }, + }, + ], }, }) diff --git a/src/modules/partners/consumers/accounts/dto/accounts-response.dto.ts b/src/modules/partners/consumers/accounts/dto/accounts-response.dto.ts new file mode 100644 index 0000000..1a0166e --- /dev/null +++ b/src/modules/partners/consumers/accounts/dto/accounts-response.dto.ts @@ -0,0 +1,5 @@ +import type { AccountsService } from '../accounts.service' + +export type AccountsServiceFindAllResponseDto = Awaited> +export type AccountsServiceFindOneResponseDto = Awaited> +export type AccountsServiceUpdateResponseDto = Awaited> diff --git a/src/modules/partners/consumers/business-activities/accounts-charge/accounts-charge.controller.ts b/src/modules/partners/consumers/business-activities/accounts-charge/accounts-charge.controller.ts index b8db0d4..e02a1aa 100644 --- a/src/modules/partners/consumers/business-activities/accounts-charge/accounts-charge.controller.ts +++ b/src/modules/partners/consumers/business-activities/accounts-charge/accounts-charge.controller.ts @@ -3,6 +3,7 @@ import { Body, Controller, Param, Post } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { PartnerBusinessActivityAccountsChargeService } from './accounts-charge.service' import { CreateBusinessActivityAccountsChargeDto } from './dto/accounts-charge.dto' +import type { PartnerBusinessActivityAccountsChargeServiceCreateResponseDto } from './dto/accounts-charge-response.dto' @ApiTags('PartnerConsumerBAAccountsCharge') @Controller( @@ -17,7 +18,7 @@ export class PartnerBusinessActivityAccountsChargeController { @Param('consumerId') consumerId: string, @Param('businessActivityId') businessActivityId: string, @Body() data: CreateBusinessActivityAccountsChargeDto, - ) { + ): Promise { return this.service.create(partnerId, consumerId, businessActivityId, data) } } diff --git a/src/modules/partners/consumers/business-activities/accounts-charge/accounts-charge.service.ts b/src/modules/partners/consumers/business-activities/accounts-charge/accounts-charge.service.ts index 36ab6d5..8513b17 100644 --- a/src/modules/partners/consumers/business-activities/accounts-charge/accounts-charge.service.ts +++ b/src/modules/partners/consumers/business-activities/accounts-charge/accounts-charge.service.ts @@ -26,7 +26,18 @@ export class PartnerBusinessActivityAccountsChargeService { id: business_activity_id, consumer: { id: consumer_id, - partner_id, + OR: [ + { + legal: { + partner_id, + }, + }, + { + individual: { + partner_id, + }, + }, + ], }, }, OR: [ diff --git a/src/modules/partners/consumers/business-activities/accounts-charge/dto/accounts-charge-response.dto.ts b/src/modules/partners/consumers/business-activities/accounts-charge/dto/accounts-charge-response.dto.ts new file mode 100644 index 0000000..afbfc00 --- /dev/null +++ b/src/modules/partners/consumers/business-activities/accounts-charge/dto/accounts-charge-response.dto.ts @@ -0,0 +1,3 @@ +import type { PartnerBusinessActivityAccountsChargeService } from '../accounts-charge.service' + +export type PartnerBusinessActivityAccountsChargeServiceCreateResponseDto = Awaited> diff --git a/src/modules/partners/consumers/business-activities/business-activities.controller.ts b/src/modules/partners/consumers/business-activities/business-activities.controller.ts index fcf8870..3782956 100644 --- a/src/modules/partners/consumers/business-activities/business-activities.controller.ts +++ b/src/modules/partners/consumers/business-activities/business-activities.controller.ts @@ -16,7 +16,7 @@ export class BusinessActivitiesController { async findAll( @PartnerInfo('id') partnerId: string, @Param('consumerId') consumerId: string, - ) { + ): Promise { return this.businessActivitiesService.findAll(partnerId, consumerId) } @@ -25,7 +25,7 @@ export class BusinessActivitiesController { @PartnerInfo('id') partnerId: string, @Param('consumerId') consumerId: string, @Param('id') id: string, - ) { + ): Promise { return this.businessActivitiesService.findOne(partnerId, consumerId, id) } @@ -34,7 +34,7 @@ export class BusinessActivitiesController { @PartnerInfo('id') partnerId: string, @Param('consumerId') consumerId: string, @Body() data: CreateBusinessActivitiesDto, - ) { + ): Promise { return this.businessActivitiesService.create(partnerId, consumerId, data) } @@ -44,7 +44,7 @@ export class BusinessActivitiesController { @Param('consumerId') consumerId: string, @Param('id') id: string, @Body() data: UpdateBusinessActivityDto, - ) { + ): Promise { return this.businessActivitiesService.update(partnerId, consumerId, id, data) } @@ -53,3 +53,5 @@ export class BusinessActivitiesController { // return this.businessActivitiesService.delete(id) // } } + +import type { BusinessActivitiesServiceCreateResponseDto, BusinessActivitiesServiceFindAllResponseDto, BusinessActivitiesServiceFindOneResponseDto, BusinessActivitiesServiceUpdateResponseDto } from './dto/business-activities-response.dto' \ No newline at end of file diff --git a/src/modules/partners/consumers/business-activities/business-activities.service.ts b/src/modules/partners/consumers/business-activities/business-activities.service.ts index f58827a..06f8411 100644 --- a/src/modules/partners/consumers/business-activities/business-activities.service.ts +++ b/src/modules/partners/consumers/business-activities/business-activities.service.ts @@ -15,7 +15,7 @@ export class BusinessActivitiesService { ).toISOString() } - defaultSelect: BusinessActivitySelect = { + private readonly defaultSelect: BusinessActivitySelect = { id: true, name: true, economic_code: true, @@ -49,6 +49,24 @@ export class BusinessActivitiesService { }, } + private readonly defaultWhere = (partner_id: string, consumer_id: string) => ({ + consumer: { + id: consumer_id, + OR: [ + { + legal: { + partner_id, + }, + }, + { + individual: { + partner_id, + }, + }, + ], + }, + }) + private readonly prepareBusinessActivityResponse = (businessActivity: any) => { const { license_activation, ...rest } = businessActivity const { license, ...license_activation_rest } = license_activation @@ -65,12 +83,7 @@ export class BusinessActivitiesService { async findAll(partner_id: string, consumer_id: string) { const businessActivities = await this.prisma.businessActivity.findMany({ - where: { - consumer: { - id: consumer_id, - partner_id, - }, - }, + where: this.defaultWhere(partner_id, consumer_id), select: this.defaultSelect, }) return ResponseMapper.list( @@ -81,10 +94,7 @@ export class BusinessActivitiesService { async findOne(partner_id: string, consumer_id: string, id: string) { const businessActivity = await this.prisma.businessActivity.findUnique({ where: { - consumer: { - id: consumer_id, - partner_id, - }, + ...this.defaultWhere(partner_id, consumer_id), id, }, select: this.defaultSelect, @@ -171,7 +181,7 @@ export class BusinessActivitiesService { async update(partner_id: string, consumer_id: string, id: string, data: any) { const businessActivity = await this.prisma.businessActivity.update({ - where: { id, consumer: { id: consumer_id, partner_id } }, + where: { ...this.defaultWhere(partner_id, consumer_id), id }, data, select: this.defaultSelect, }) diff --git a/src/modules/partners/consumers/business-activities/complexes/complexes.controller.ts b/src/modules/partners/consumers/business-activities/complexes/complexes.controller.ts index 4082955..ec9d618 100644 --- a/src/modules/partners/consumers/business-activities/complexes/complexes.controller.ts +++ b/src/modules/partners/consumers/business-activities/complexes/complexes.controller.ts @@ -3,6 +3,7 @@ import { Body, Controller, Get, Param, Patch, Post } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { BusinessActivityComplexesService } from './complexes.service' import { CreateComplexDto, UpdateComplexDto } from './dto/complex.dto' +import type { BusinessActivityComplexesServiceCreateResponseDto, BusinessActivityComplexesServiceFindAllResponseDto, BusinessActivityComplexesServiceFindOneResponseDto, BusinessActivityComplexesServiceUpdateResponseDto } from './dto/complexes-response.dto' @ApiTags('PartnerBusinessActivityComplexes') @Controller( @@ -16,7 +17,7 @@ export class BusinessActivityComplexesController { @PartnerInfo('id') partnerId: string, @Param('consumerId') consumerId: string, @Param('businessActivityId') businessActivityId: string, - ) { + ): Promise { return this.service.findAll(partnerId, consumerId, businessActivityId) } @@ -26,7 +27,7 @@ export class BusinessActivityComplexesController { @Param('consumerId') consumerId: string, @Param('businessActivityId') businessActivityId: string, @Param('id') id: string, - ) { + ): Promise { return this.service.findOne(partnerId, consumerId, businessActivityId, id) } @@ -35,7 +36,7 @@ export class BusinessActivityComplexesController { @PartnerInfo('id') partnerId: string, @Param('businessActivityId') businessActivityId: string, @Body() data: CreateComplexDto, - ) { + ): Promise { return this.service.create(partnerId, businessActivityId, data) } @@ -46,7 +47,7 @@ export class BusinessActivityComplexesController { @Param('businessActivityId') businessActivityId: string, @Param('id') id: string, @Body() data: UpdateComplexDto, - ) { + ): Promise { return this.service.update(partnerId, consumerId, businessActivityId, id, data) } diff --git a/src/modules/partners/consumers/business-activities/complexes/complexes.service.ts b/src/modules/partners/consumers/business-activities/complexes/complexes.service.ts index a9bd46b..3cd5744 100644 --- a/src/modules/partners/consumers/business-activities/complexes/complexes.service.ts +++ b/src/modules/partners/consumers/business-activities/complexes/complexes.service.ts @@ -25,7 +25,18 @@ export class BusinessActivityComplexesService { id: business_activity_id, consumer: { id: consumer_id, - partner_id, + OR: [ + { + legal: { + partner_id, + }, + }, + { + individual: { + partner_id, + }, + }, + ], }, }, }) diff --git a/src/modules/partners/consumers/business-activities/complexes/dto/complexes-response.dto.ts b/src/modules/partners/consumers/business-activities/complexes/dto/complexes-response.dto.ts new file mode 100644 index 0000000..1f1c01d --- /dev/null +++ b/src/modules/partners/consumers/business-activities/complexes/dto/complexes-response.dto.ts @@ -0,0 +1,6 @@ +import type { BusinessActivityComplexesService } from '../complexes.service' + +export type BusinessActivityComplexesServiceCreateResponseDto = Awaited> +export type BusinessActivityComplexesServiceFindAllResponseDto = Awaited> +export type BusinessActivityComplexesServiceFindOneResponseDto = Awaited> +export type BusinessActivityComplexesServiceUpdateResponseDto = Awaited> diff --git a/src/modules/partners/consumers/business-activities/complexes/poses/dto/poses-response.dto.ts b/src/modules/partners/consumers/business-activities/complexes/poses/dto/poses-response.dto.ts new file mode 100644 index 0000000..b029066 --- /dev/null +++ b/src/modules/partners/consumers/business-activities/complexes/poses/dto/poses-response.dto.ts @@ -0,0 +1,6 @@ +import type { ComplexPosesService } from '../poses.service' + +export type ComplexPosesServiceCreateResponseDto = Awaited> +export type ComplexPosesServiceFindAllResponseDto = Awaited> +export type ComplexPosesServiceFindOneResponseDto = Awaited> +export type ComplexPosesServiceUpdateResponseDto = Awaited> diff --git a/src/modules/partners/consumers/business-activities/complexes/poses/poses.controller.ts b/src/modules/partners/consumers/business-activities/complexes/poses/poses.controller.ts index 67d0337..c5283e0 100644 --- a/src/modules/partners/consumers/business-activities/complexes/poses/poses.controller.ts +++ b/src/modules/partners/consumers/business-activities/complexes/poses/poses.controller.ts @@ -3,6 +3,7 @@ import { Body, Controller, Get, Param, Patch, Post } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { CreatePosDto, UpdatePosDto } from './dto/pos.dto' import { ComplexPosesService } from './poses.service' +import type { ComplexPosesServiceCreateResponseDto, ComplexPosesServiceFindAllResponseDto, ComplexPosesServiceFindOneResponseDto, ComplexPosesServiceUpdateResponseDto } from './dto/poses-response.dto' @ApiTags('AdminComplexPoses') @Controller('partner/business_activities/:businessActivityId/complexes/:complexId/poses') @@ -14,7 +15,7 @@ export class ComplexPosesController { @PartnerInfo('id') partnerId: string, @Param('businessActivityId') businessActivityId: string, @Param('complexId') complexId: string, - ) { + ): Promise { return this.service.findAll(partnerId, businessActivityId, complexId) } @@ -24,7 +25,7 @@ export class ComplexPosesController { @Param('businessActivityId') businessActivityId: string, @Param('complexId') complexId: string, @Param('id') id: string, - ) { + ): Promise { return this.service.findOne(partnerId, businessActivityId, complexId, id) } @@ -34,7 +35,7 @@ export class ComplexPosesController { @Param('businessActivityId') businessActivityId: string, @Param('complexId') complexId: string, @Body() data: CreatePosDto, - ) { + ): Promise { return this.service.create(partnerId, businessActivityId, complexId, data) } @@ -45,7 +46,7 @@ export class ComplexPosesController { @Param('complexId') complexId: string, @Param('id') id: string, @Body() data: UpdatePosDto, - ) { + ): Promise { return this.service.update(partnerId, businessActivityId, complexId, id, data) } diff --git a/src/modules/partners/consumers/business-activities/dto/business-activities-response.dto.ts b/src/modules/partners/consumers/business-activities/dto/business-activities-response.dto.ts new file mode 100644 index 0000000..c9d85f5 --- /dev/null +++ b/src/modules/partners/consumers/business-activities/dto/business-activities-response.dto.ts @@ -0,0 +1,6 @@ +import type { BusinessActivitiesService } from '../business-activities.service' + +export type BusinessActivitiesServiceCreateResponseDto = Awaited> +export type BusinessActivitiesServiceFindAllResponseDto = Awaited> +export type BusinessActivitiesServiceFindOneResponseDto = Awaited> +export type BusinessActivitiesServiceUpdateResponseDto = Awaited> diff --git a/src/modules/partners/consumers/consumers.controller.ts b/src/modules/partners/consumers/consumers.controller.ts index 8cd48ed..722d548 100644 --- a/src/modules/partners/consumers/consumers.controller.ts +++ b/src/modules/partners/consumers/consumers.controller.ts @@ -2,23 +2,24 @@ import { PartnerInfo } from '@/common/decorators/partnerInfo.decorator' import { Body, Controller, Get, Param, Patch, Post } from '@nestjs/common' import { PartnerConsumersService } from './consumers.service' import { CreateConsumerDto, UpdateConsumerDto } from './dto/create-consumers.dto' +import type { PartnerConsumersServiceCreateResponseDto, PartnerConsumersServiceFindAllResponseDto, PartnerConsumersServiceFindOneResponseDto, PartnerConsumersServiceUpdateResponseDto } from './dto/consumers-response.dto' @Controller('partner/consumers') export class PartnerConsumersController { constructor(private readonly service: PartnerConsumersService) {} @Get() - async findAll(@PartnerInfo('id') partnerId: string) { + async findAll(@PartnerInfo('id') partnerId: string): Promise { return this.service.findAll(partnerId) } @Get(':id') - async findOne(@PartnerInfo('id') partnerId: string, @Param('id') id: string) { + async findOne(@PartnerInfo('id') partnerId: string, @Param('id') id: string): Promise { return this.service.findOne(partnerId, id) } @Post() - async create(@PartnerInfo('id') partnerId: string, @Body() data: CreateConsumerDto) { + async create(@PartnerInfo('id') partnerId: string, @Body() data: CreateConsumerDto): Promise { return this.service.create(partnerId, data) } @@ -27,7 +28,7 @@ export class PartnerConsumersController { @Param('id') id: string, @PartnerInfo('id') partnerId: string, @Body() data: UpdateConsumerDto, - ) { + ): Promise { return this.service.update(id, partnerId, data) } } diff --git a/src/modules/partners/consumers/consumers.service.ts b/src/modules/partners/consumers/consumers.service.ts index 7f0aacd..44ba944 100644 --- a/src/modules/partners/consumers/consumers.service.ts +++ b/src/modules/partners/consumers/consumers.service.ts @@ -1,13 +1,19 @@ +import { QUERY_CONSTANTS } from '@/common/queryConstants' +import mapConsumerWithLicenseUtil from '@/common/utils/mappers/consumer_mappers.util' import { PasswordUtil } from '@/common/utils/password.util' import { AccountStatus, AccountType, ConsumerRole, ConsumerStatus, + ConsumerType, PartnerStatus, } from '@/generated/prisma/enums' -import { ConsumerSelect, ConsumerWhereInput } from '@/generated/prisma/models' -import mapConsumerWithLicenseUtil from '@/modules/consumer/utils/mapConsumerWithLicense.util' +import { + ConsumerCreateInput, + ConsumerSelect, + ConsumerWhereInput, +} from '@/generated/prisma/models' import { PrismaService } from '@/prisma/prisma.service' import { BadRequestException, Injectable } from '@nestjs/common' import { ResponseMapper } from 'common/response/response-mapper' @@ -25,16 +31,24 @@ export class PartnerConsumersService { defaultSelect: ConsumerSelect = { id: true, - first_name: true, - last_name: true, - mobile_number: true, - national_code: true, + ...QUERY_CONSTANTS.CONSUMER.infoSelect, status: true, created_at: true, } private defaultWhere = (partner_id: string): ConsumerWhereInput => ({ - partner_id, + OR: [ + { + legal: { + partner_id, + }, + }, + { + individual: { + partner_id, + }, + }, + ], }) async findAll(partner_id: string, page = 1, perPage = 10) { @@ -105,48 +119,102 @@ export class PartnerConsumersService { throw new BadRequestException(`تعداد لایسنس‌های فعلی شما به پایان رسیده است.`) } - const { username, password, license_starts_at, ...rest } = data + const { username, password, customer, ...rest } = data + const { individual, legal } = customer - const existingConsumer = await tx.consumer.findFirst({ - where: { - partner_id, - OR: [ - { mobile_number: data.mobile_number }, - { national_code: data.national_code }, - ], - }, - select: { id: true, first_name: true, last_name: true }, - }) - - if (existingConsumer) { - throw new BadRequestException( - `مصرف کننده‌ی ${existingConsumer.first_name} ${existingConsumer.last_name} با شماره موبایل یا کد ملی وارد شده از قبل ثبت شده است.`, - ) - } - - return await tx.consumer.create({ - data: { - ...rest, - partner: { - connect: { - id: partner_id, - }, - }, - consumer_accounts: { - create: { - role: ConsumerRole.OWNER, - account: { - create: { - username, - password: await PasswordUtil.hash(password), - type: AccountType.CONSUMER, - status: AccountStatus.ACTIVE, - }, + const createConsumerData: ConsumerCreateInput = { + ...rest, + accounts: { + create: { + role: ConsumerRole.OWNER, + account: { + create: { + username, + password: await PasswordUtil.hash(password), + type: AccountType.CONSUMER, + status: AccountStatus.ACTIVE, }, }, }, - status: ConsumerStatus.ACTIVE, }, + status: ConsumerStatus.ACTIVE, + } + + const partner = { + partner: { connect: { id: partner_id } }, + } + + if (!legal && !individual) { + throw new BadRequestException( + `برای ایجاد مصرف کننده باید یکی از اطلاعات فردی یا حقوقی وارد شود.`, + ) + } + if (data.type === ConsumerType.INDIVIDUAL && !individual) { + throw new BadRequestException( + `برای ایجاد مصرف کننده با نوع حقیقی باید اطلاعات فردی وارد شود.`, + ) + } + if (data.type === ConsumerType.LEGAL && !legal) { + throw new BadRequestException( + `برای ایجاد مصرف کننده با نوع حقوقی باید اطلاعات حقوقی وارد شود.`, + ) + } + + let consumerExistError = '' + + if (legal) { + const existingConsumer = await tx.consumer.findFirst({ + where: { + legal: { registration_code: legal.registration_code, partner_id }, + }, + select: { + id: true, + legal: { + select: { + name: true, + }, + }, + }, + }) + createConsumerData.legal = { + create: { + ...legal, + ...partner, + }, + } + + if (existingConsumer) { + consumerExistError = `مشتری با نام ${existingConsumer.legal!.name} با این شماره ثبت، از قبل توسط شما ایجاد شده است.` + } + } else if (individual) { + const existingConsumer = await tx.consumer.findFirst({ + where: { + individual: { national_code: individual.national_code, partner_id }, + }, + select: { + id: true, + individual: { + select: { + first_name: true, + last_name: true, + }, + }, + }, + }) + createConsumerData.individual = { + create: { + ...individual, + ...partner, + }, + } + + if (existingConsumer) { + ;`مشتری با نام ${existingConsumer.individual!.first_name} ${existingConsumer.individual!.last_name} یا این کد ملی، از قبل توسط شما ایجاد شده است.` + } + } + + return await tx.consumer.create({ + data: createConsumerData, select: this.defaultSelect, }) }) diff --git a/src/modules/partners/consumers/dto/consumers-response.dto.ts b/src/modules/partners/consumers/dto/consumers-response.dto.ts new file mode 100644 index 0000000..3144542 --- /dev/null +++ b/src/modules/partners/consumers/dto/consumers-response.dto.ts @@ -0,0 +1,6 @@ +import type { PartnerConsumersService } from '../consumers.service' + +export type PartnerConsumersServiceCreateResponseDto = Awaited> +export type PartnerConsumersServiceFindAllResponseDto = Awaited> +export type PartnerConsumersServiceFindOneResponseDto = Awaited> +export type PartnerConsumersServiceUpdateResponseDto = Awaited> diff --git a/src/modules/partners/consumers/dto/create-consumers.dto.ts b/src/modules/partners/consumers/dto/create-consumers.dto.ts index 3fd2e89..838503b 100644 --- a/src/modules/partners/consumers/dto/create-consumers.dto.ts +++ b/src/modules/partners/consumers/dto/create-consumers.dto.ts @@ -1,23 +1,12 @@ -import { ConsumerStatus } from '@/generated/prisma/enums' +import { ConsumerIndividual, ConsumerLegal } from '@/generated/prisma/client' +import { ConsumerStatus, ConsumerType } from '@/generated/prisma/enums' import { ApiProperty, OmitType, PartialType } from '@nestjs/swagger' -import { IsDateString, IsEnum, IsString } from 'class-validator' +import { IsEnum, IsObject, IsString } from 'class-validator' export class CreateConsumerDto { - @IsString() - @ApiProperty({ required: true }) - first_name: string - - @IsString() - @ApiProperty({ required: true }) - last_name: string - - @IsString() - @ApiProperty({ required: true }) - mobile_number: string - - @IsString() - @ApiProperty({ required: true }) - national_code: string + @IsEnum(ConsumerType) + @ApiProperty({ enum: ConsumerType, required: true }) + type: ConsumerType @IsString() @ApiProperty({ required: true }) @@ -28,11 +17,11 @@ export class CreateConsumerDto { password: string @ApiProperty({ required: true }) - @IsDateString( - { strict: true }, - { message: 'invoice_date must be a valid ISO-8601 string' }, - ) - license_starts_at: Date + @IsObject() + customer: { + individual?: Omit + legal?: Omit + } } export class UpdateConsumerDto extends OmitType(PartialType(CreateConsumerDto), [ 'password', diff --git a/src/modules/partners/consumers/licenses/dto/licenses-response.dto.ts b/src/modules/partners/consumers/licenses/dto/licenses-response.dto.ts new file mode 100644 index 0000000..78d4a23 --- /dev/null +++ b/src/modules/partners/consumers/licenses/dto/licenses-response.dto.ts @@ -0,0 +1,3 @@ +import type { LicensesService } from '../licenses.service' + +export type LicensesServiceFindAllResponseDto = Awaited> diff --git a/src/modules/partners/consumers/licenses/licenses.controller.ts b/src/modules/partners/consumers/licenses/licenses.controller.ts index 6e5c873..faaf75e 100644 --- a/src/modules/partners/consumers/licenses/licenses.controller.ts +++ b/src/modules/partners/consumers/licenses/licenses.controller.ts @@ -2,6 +2,7 @@ import { PartnerInfo } from '@/common/decorators/partnerInfo.decorator' import { Controller, Get, Param } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' import { LicensesService } from './licenses.service' +import type { LicensesServiceFindAllResponseDto } from './dto/licenses-response.dto' @ApiTags('AdminConsumerAccounts') @Controller('admin/consumers/:consumerId/licenses') @@ -12,7 +13,7 @@ export class LicensesController { async findAll( @PartnerInfo('id') partnerId: string, @Param('consumerId') consumerId: string, - ) { + ): Promise { return this.service.findAll(partnerId, consumerId) } diff --git a/src/modules/partners/dto/partner.dto.ts b/src/modules/partners/dto/partner.dto.ts index 2773adb..ae4addf 100644 --- a/src/modules/partners/dto/partner.dto.ts +++ b/src/modules/partners/dto/partner.dto.ts @@ -1,5 +1,5 @@ import { ApiProperty } from '@nestjs/swagger' -import { IsString } from 'class-validator' +import { IsOptional, IsString } from 'class-validator' export class UpdatePartnerProfileDto { @IsString() @@ -9,4 +9,8 @@ export class UpdatePartnerProfileDto { @IsString() @ApiProperty({ required: true }) code: string + + @IsOptional() + @ApiProperty({ required: false, type: 'string', format: 'binary' }) + logo?: any } diff --git a/src/modules/partners/dto/partners-response.dto.ts b/src/modules/partners/dto/partners-response.dto.ts new file mode 100644 index 0000000..dc5148b --- /dev/null +++ b/src/modules/partners/dto/partners-response.dto.ts @@ -0,0 +1,5 @@ +import type { PartnerService } from '../partners.service' + +export type PartnerServiceGetInfoResponseDto = Awaited> +export type PartnerServiceMeResponseDto = Awaited> +export type PartnerServiceUpdateInfoResponseDto = Awaited> diff --git a/src/modules/partners/licenses/dto/licenses-filter.dto.ts b/src/modules/partners/licenses/dto/licenses-filter.dto.ts new file mode 100644 index 0000000..0eda906 --- /dev/null +++ b/src/modules/partners/licenses/dto/licenses-filter.dto.ts @@ -0,0 +1,38 @@ +import { ApiPropertyOptional } from '@nestjs/swagger' +import { Type } from 'class-transformer' +import { IsOptional, IsString, Max, Min } from 'class-validator' + +export class PartnerLicensesFilterDto { + @ApiPropertyOptional({ type: Number, example: 1 }) + @Type(() => Number) + @Min(1) + @IsOptional() + page?: number + + @ApiPropertyOptional({ type: Number, example: 10, description: 'Max value is 50.' }) + @Type(() => Number) + @Min(1) + @Max(50) + @IsOptional() + perPage?: number + + @ApiPropertyOptional({ type: String }) + @IsString() + @IsOptional() + consumer_name?: string + + @ApiPropertyOptional({ type: String }) + @IsString() + @IsOptional() + consumer_mobile?: string + + @ApiPropertyOptional({ type: String, example: '2026-01-01' }) + @IsString() + @IsOptional() + expires_from?: string + + @ApiPropertyOptional({ type: String, example: '2026-12-31' }) + @IsString() + @IsOptional() + expires_to?: string +} diff --git a/src/modules/partners/licenses/dto/licenses-response.dto.ts b/src/modules/partners/licenses/dto/licenses-response.dto.ts index a4a4fe4..a0c8299 100644 --- a/src/modules/partners/licenses/dto/licenses-response.dto.ts +++ b/src/modules/partners/licenses/dto/licenses-response.dto.ts @@ -1,11 +1,15 @@ -import { ApiProperty } from '@nestjs/swagger' -import { Paginated } from 'common/response/response-mapper' +import { ConsumerType } from '@/generated/prisma/enums' +import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger' +import type { PartnerLicensesService } from '../licenses.service' export interface PartnerLicenseActivationConsumerResponseDto { id: string - first_name: string - last_name: string - mobile_number: string + type: ConsumerType + first_name?: string | null + last_name?: string | null + mobile_number?: string | null + name?: string | null + registration_code?: string | null } export interface PartnerLicenseActivationBusinessActivityResponseDto { @@ -41,21 +45,34 @@ export interface PartnerLicenseActivationResponseDto { _count: PartnerLicenseActivationCountResponseDto } +export type PartnerLicensesServiceFindAllResponseDto = Awaited< + ReturnType +> + export type PartnerLicenseActivationPaginatedResponseDto = - Paginated + PartnerLicensesServiceFindAllResponseDto export class PartnerLicenseActivationConsumerResponseSchema { @ApiProperty() id: string - @ApiProperty() - first_name: string + @ApiProperty({ enum: ConsumerType }) + type: ConsumerType - @ApiProperty() - last_name: string + @ApiPropertyOptional() + first_name?: string - @ApiProperty() - mobile_number: string + @ApiPropertyOptional() + last_name?: string + + @ApiPropertyOptional() + mobile_number?: string + + @ApiPropertyOptional() + name?: string + + @ApiPropertyOptional() + registration_code?: string } export class PartnerLicenseActivationBusinessActivityResponseSchema { diff --git a/src/modules/partners/licenses/licenses.controller.ts b/src/modules/partners/licenses/licenses.controller.ts index 5721c60..c3050fe 100644 --- a/src/modules/partners/licenses/licenses.controller.ts +++ b/src/modules/partners/licenses/licenses.controller.ts @@ -1,7 +1,9 @@ import { PartnerInfo } from '@/common/decorators/partnerInfo.decorator' import { Controller, Get, Query } from '@nestjs/common' import { ApiOkResponse, ApiQuery, ApiTags } from '@nestjs/swagger' +import { PartnerLicensesFilterDto } from './dto/licenses-filter.dto' import { PartnerLicenseActivationPaginatedResponseSchema } from './dto/licenses-response.dto' +import type { PartnerLicensesServiceFindAllResponseDto } from './dto/licenses-response.dto' import { PartnerLicensesService } from './licenses.service' @ApiTags('PartnerLicenses') @@ -36,14 +38,16 @@ export class PartnerLicensesController { @Query('consumer_mobile') consumer_mobile?: string, @Query('expires_from') expires_from?: string, @Query('expires_to') expires_to?: string, - ) { - return this.service.findAll(partnerId, { + ): Promise { + const filter: PartnerLicensesFilterDto = { page: Number(page) || 1, perPage: Number(perPage) || 10, consumer_name, consumer_mobile, expires_from, expires_to, - }) + } + + return this.service.findAll(partnerId, filter) } } diff --git a/src/modules/partners/licenses/licenses.mapper.ts b/src/modules/partners/licenses/licenses.mapper.ts new file mode 100644 index 0000000..f6d09d1 --- /dev/null +++ b/src/modules/partners/licenses/licenses.mapper.ts @@ -0,0 +1,104 @@ +import { + PartnerLicenseActivationBusinessActivityResponseDto, + PartnerLicenseActivationChargeTransactionResponseDto, + PartnerLicenseActivationConsumerResponseDto, + PartnerLicenseActivationCountResponseDto, + PartnerLicenseActivationLicenseResponseDto, + PartnerLicenseActivationResponseDto, +} from './dto/licenses-response.dto' + +type PartnerLicenseActivationConsumerQueryResult = { + id: string + type: PartnerLicenseActivationConsumerResponseDto['type'] + individual?: { + first_name: string + last_name: string + mobile_number: string + } | null + legal?: { + name: string + registration_code: string + } | null +} + +type PartnerLicenseActivationBusinessActivityQueryResult = { + id: string + name: string + consumer: PartnerLicenseActivationConsumerQueryResult +} + +type PartnerLicenseActivationChargeTransactionQueryResult = { + id: string + tracking_code: string + activation_expires_at: Date +} + +type PartnerLicenseActivationLicenseQueryResult = { + id: string + accounts_limit: number + charge_transaction: PartnerLicenseActivationChargeTransactionQueryResult +} + +type PartnerLicenseActivationQueryResult = { + id: string + starts_at: Date + expires_at: Date + created_at: Date + updated_at: Date + business_activity: PartnerLicenseActivationBusinessActivityQueryResult + license: PartnerLicenseActivationLicenseQueryResult + _count: PartnerLicenseActivationCountResponseDto +} + +export const mapPartnerLicenseActivationConsumer = ( + consumer: PartnerLicenseActivationConsumerQueryResult, +): PartnerLicenseActivationConsumerResponseDto => { + const individual = consumer.individual ?? null + const legal = consumer.legal ?? null + + return { + id: consumer.id, + type: consumer.type, + first_name: individual?.first_name ?? null, + last_name: individual?.last_name ?? null, + mobile_number: individual?.mobile_number ?? null, + name: legal?.name ?? null, + registration_code: legal?.registration_code ?? null, + } +} + +export const mapPartnerLicenseActivation = ( + licenseActivation: PartnerLicenseActivationQueryResult, +): PartnerLicenseActivationResponseDto => { + const businessActivity: PartnerLicenseActivationBusinessActivityResponseDto = { + id: licenseActivation.business_activity.id, + name: licenseActivation.business_activity.name, + consumer: mapPartnerLicenseActivationConsumer( + licenseActivation.business_activity.consumer, + ), + } + + const chargeTransaction: PartnerLicenseActivationChargeTransactionResponseDto = { + id: licenseActivation.license.charge_transaction.id, + tracking_code: licenseActivation.license.charge_transaction.tracking_code, + activation_expires_at: + licenseActivation.license.charge_transaction.activation_expires_at, + } + + const license: PartnerLicenseActivationLicenseResponseDto = { + id: licenseActivation.license.id, + accounts_limit: licenseActivation.license.accounts_limit, + charge_transaction: chargeTransaction, + } + + return { + id: licenseActivation.id, + starts_at: licenseActivation.starts_at, + expires_at: licenseActivation.expires_at, + created_at: licenseActivation.created_at, + updated_at: licenseActivation.updated_at, + business_activity: businessActivity, + license, + _count: licenseActivation._count, + } +} diff --git a/src/modules/partners/licenses/licenses.service.ts b/src/modules/partners/licenses/licenses.service.ts index c757705..54198d9 100644 --- a/src/modules/partners/licenses/licenses.service.ts +++ b/src/modules/partners/licenses/licenses.service.ts @@ -1,19 +1,8 @@ import { PrismaService } from '@/prisma/prisma.service' import { BadRequestException, Injectable } from '@nestjs/common' import { ResponseMapper } from 'common/response/response-mapper' -import { - PartnerLicenseActivationPaginatedResponseDto, - PartnerLicenseActivationResponseDto, -} from './dto/licenses-response.dto' - -type FindPartnerLicensesParams = { - perPage?: number - page?: number - consumer_name?: string - consumer_mobile?: string - expires_from?: string - expires_to?: string -} +import { PartnerLicensesFilterDto } from './dto/licenses-filter.dto' +import { mapPartnerLicenseActivation } from './licenses.mapper' @Injectable() export class PartnerLicensesService { @@ -24,16 +13,18 @@ export class PartnerLicensesService { async findAll( partner_id: string, - params: FindPartnerLicensesParams = {}, - ): Promise { + params: PartnerLicensesFilterDto = {}, + ) { const { perPage, page, consumer_name, consumer_mobile, expires_from, expires_to } = params - const normalizedPage = Number.isFinite(page) - ? Math.max(1, Math.floor(page as number)) + const normalizedPageValue = Number(page ?? 1) + const normalizedPage = Number.isFinite(normalizedPageValue) + ? Math.max(1, Math.floor(normalizedPageValue)) : 1 - const requestedPerPage = Number.isFinite(perPage) - ? Math.max(1, Math.floor(perPage as number)) + const requestedPerPageValue = Number(perPage ?? this.defaultPerPage) + const requestedPerPage = Number.isFinite(requestedPerPageValue) + ? Math.max(1, Math.floor(requestedPerPageValue)) : this.defaultPerPage const normalizedPerPage = Math.min(requestedPerPage, this.maxPerPage) @@ -50,7 +41,7 @@ export class PartnerLicensesService { const consumerName = consumer_name?.trim() const consumerMobile = consumer_mobile?.trim() - if (consumerName || consumerMobile) { + if (consumerName) { andWhere.push({ business_activity: { consumer: { @@ -125,9 +116,20 @@ export class PartnerLicensesService { consumer: { select: { id: true, - first_name: true, - last_name: true, - mobile_number: true, + type: true, + individual: { + select: { + first_name: true, + last_name: true, + mobile_number: true, + }, + }, + legal: { + select: { + name: true, + registration_code: true, + }, + }, }, }, }, @@ -155,13 +157,12 @@ export class PartnerLicensesService { await tx.licenseActivation.count({ where }), ]) - return ResponseMapper.paginate( - licenseActivations, - { - total, - page: normalizedPage, - perPage: normalizedPerPage, - }, - ) + const mappedData = licenseActivations.map(mapPartnerLicenseActivation) + + return ResponseMapper.paginate(mappedData, { + total, + page: normalizedPage, + perPage: normalizedPerPage, + }) } } diff --git a/src/modules/partners/partners.controller.ts b/src/modules/partners/partners.controller.ts index 69aa98f..855e97a 100644 --- a/src/modules/partners/partners.controller.ts +++ b/src/modules/partners/partners.controller.ts @@ -1,7 +1,15 @@ import { PartnerInfo } from '@/common/decorators/partnerInfo.decorator' -import type { IPartnerPayload } from '@/common/models/partnerPayload.model' -import { Controller, Get, Patch } from '@nestjs/common' -import { ApiTags } from '@nestjs/swagger' +import { multerImageOptions } from '@/multer.config' +import { + Body, + Controller, + Get, + Patch, + UploadedFile, + UseInterceptors, +} from '@nestjs/common' +import { FileInterceptor } from '@nestjs/platform-express' +import { ApiBody, ApiConsumes, ApiTags } from '@nestjs/swagger' import { UpdatePartnerProfileDto } from './dto/partner.dto' import { PartnerService } from './partners.service' @@ -11,17 +19,34 @@ export class PartnerController { constructor(private service: PartnerService) {} @Get('') - async me(@PartnerInfo() { id, account_id }: IPartnerPayload) { + async me(@PartnerInfo() { id, account_id }: IPartnerPayload): Promise { return this.service.me(id, account_id) } @Get('info') - async getInfo(@PartnerInfo('id') partnerId: string) { + async getInfo(@PartnerInfo('id') partnerId: string): Promise { return this.service.getInfo(partnerId) } @Patch('profile') - async update(@PartnerInfo('id') partnerId: string, data: UpdatePartnerProfileDto) { - return this.service.updateInfo(partnerId, data) + @UseInterceptors(FileInterceptor('logo', multerImageOptions)) + @ApiConsumes('multipart/form-data') + @ApiBody({ + schema: { + type: 'object', + properties: { + logo: { type: 'string', format: 'binary' }, + }, + }, + }) + async update( + @PartnerInfo('id') partnerId: string, + @Body() data: UpdatePartnerProfileDto, + @UploadedFile() logo: Express.Multer.File, + ): Promise { + return this.service.updateInfo(partnerId, data, logo) } } + +import type { IPartnerPayload } from '@/common/models/partnerPayload.model' +import type { PartnerServiceGetInfoResponseDto, PartnerServiceMeResponseDto, PartnerServiceUpdateInfoResponseDto } from './dto/partners-response.dto' \ No newline at end of file diff --git a/src/modules/partners/partners.module.ts b/src/modules/partners/partners.module.ts index da7f32c..0594f74 100644 --- a/src/modules/partners/partners.module.ts +++ b/src/modules/partners/partners.module.ts @@ -1,5 +1,6 @@ import { MiddlewareConsumer, Module, NestModule, RequestMethod } from '@nestjs/common' import { JwtService } from '@nestjs/jwt' +import { UploaderModule } from '../uploader/uploader.module' import { PartnerAccountsModule } from './accounts/accounts.module' import { PartnerCustomersModule } from './consumers/consumers.module' import { PartnerLicensesModule } from './licenses/licenses.module' @@ -9,7 +10,12 @@ import { PartnerService } from './partners.service' @Module({ controllers: [PartnerController], - imports: [PartnerAccountsModule, PartnerCustomersModule, PartnerLicensesModule], + imports: [ + PartnerAccountsModule, + PartnerCustomersModule, + PartnerLicensesModule, + UploaderModule, + ], providers: [JwtService, PartnerService], }) export class PartnerModule implements NestModule { diff --git a/src/modules/partners/partners.service.ts b/src/modules/partners/partners.service.ts index 7e9a06b..c49903b 100644 --- a/src/modules/partners/partners.service.ts +++ b/src/modules/partners/partners.service.ts @@ -1,12 +1,17 @@ +import { UploadedFileTypes } from '@/common/enums/enums' import { ResponseMapper } from '@/common/response/response-mapper' import { PartnerAccountSelect } from '@/generated/prisma/models' +import { UploaderService } from '@/modules/uploader/uploader.service' import { PrismaService } from '@/prisma/prisma.service' import { Injectable } from '@nestjs/common' import { UpdatePartnerProfileDto } from './dto/partner.dto' @Injectable() export class PartnerService { - constructor(private readonly prisma: PrismaService) {} + constructor( + private readonly prisma: PrismaService, + private readonly uploaderService: UploaderService, + ) {} private readonly defaultSelect: PartnerAccountSelect = {} @@ -45,6 +50,7 @@ export class PartnerService { id: true, name: true, code: true, + logo_url: true, created_at: true, license_charge_transactions: { select: { @@ -193,13 +199,43 @@ export class PartnerService { }) } - async updateInfo(partner_id: string, data: UpdatePartnerProfileDto) { - const updatedPartner = await this.prisma.partner.update({ - where: { - id: partner_id, - }, - data, - select: this.defaultSelect, + async updateInfo( + partner_id: string, + data: UpdatePartnerProfileDto, + logo?: Express.Multer.File, + ) { + const rest = { ...(data as any) } + delete rest.logo + + const updatedPartner = await this.prisma.$transaction(async tx => { + let logo_url = '' + if (logo) { + const uploadedUrl = await this.uploaderService.uploadFile( + logo, + UploadedFileTypes.PARTNER_LOGO, + ) + logo_url = uploadedUrl || '' + } + + const prevLogo = await tx.partner.findUnique({ + where: { id: partner_id }, + select: { logo_url: true }, + }) + + if (logo_url && prevLogo?.logo_url) { + this.uploaderService.deleteFile(prevLogo.logo_url, UploadedFileTypes.PARTNER_LOGO) + } + + return tx.partner.update({ + where: { + id: partner_id, + }, + data: { + ...rest, + ...(logo_url ? { logo_url } : {}), + }, + select: this.defaultSelect, + }) }) return ResponseMapper.single(updatedPartner) diff --git a/src/modules/pos/customers/dto/customers-response.dto.ts b/src/modules/pos/customers/dto/customers-response.dto.ts new file mode 100644 index 0000000..5bd6ff7 --- /dev/null +++ b/src/modules/pos/customers/dto/customers-response.dto.ts @@ -0,0 +1,5 @@ +import type { CustomersService } from '../customers.service' + +export type CustomersServiceCreateResponseDto = Awaited> +export type CustomersServiceFindAllResponseDto = Awaited> +export type CustomersServiceFindOneResponseDto = Awaited> diff --git a/src/modules/pos/dto/pos-response.dto.ts b/src/modules/pos/dto/pos-response.dto.ts new file mode 100644 index 0000000..e9811b0 --- /dev/null +++ b/src/modules/pos/dto/pos-response.dto.ts @@ -0,0 +1,5 @@ +import type { PosService } from '../pos.service' + +export type PosServiceGetAccessibleResponseDto = Awaited> +export type PosServiceGetInfoResponseDto = Awaited> +export type PosServiceGetMeResponseDto = Awaited> diff --git a/src/modules/pos/good-categories/dto/good-categories-response.dto.ts b/src/modules/pos/good-categories/dto/good-categories-response.dto.ts new file mode 100644 index 0000000..2192c59 --- /dev/null +++ b/src/modules/pos/good-categories/dto/good-categories-response.dto.ts @@ -0,0 +1,3 @@ +import type { GoodCategoriesService } from '../good-categories.service' + +export type GoodCategoriesServiceFindAllResponseDto = Awaited> diff --git a/src/modules/pos/good-categories/good-categories.controller.ts b/src/modules/pos/good-categories/good-categories.controller.ts index 0598842..31d2e08 100644 --- a/src/modules/pos/good-categories/good-categories.controller.ts +++ b/src/modules/pos/good-categories/good-categories.controller.ts @@ -1,15 +1,15 @@ import { PosInfo } from '@/common/decorators/posInfo.decorator' -import type { IPosPayload } from '@/common/models/posPayload.model' import { Controller, Get } from '@nestjs/common' import { GoodCategoriesService } from './good-categories.service' +import type { IPosPayload } from '@/common/models/posPayload.model' @Controller('pos/good_categories') export class GoodCategoriesController { constructor(private readonly goodCategoriesService: GoodCategoriesService) {} @Get() - findAll(@PosInfo() { complex_id, guild_id }: IPosPayload) { - return this.goodCategoriesService.findAll(complex_id, guild_id) + findAll(@PosInfo() { business_id, guild_id }: IPosPayload) { + return this.goodCategoriesService.findAll(business_id, guild_id) } // @Get(':id') diff --git a/src/modules/pos/good-categories/good-categories.service.ts b/src/modules/pos/good-categories/good-categories.service.ts index c92003e..2e8444d 100644 --- a/src/modules/pos/good-categories/good-categories.service.ts +++ b/src/modules/pos/good-categories/good-categories.service.ts @@ -13,7 +13,7 @@ export class GoodCategoriesService { image_url: true, } - async findAll(complex_id: string, guild_id: string) { + async findAll(business_activity_id: string, guild_id: string) { const categories = await this.prisma.goodCategory.findMany({ where: { guild_id, @@ -27,7 +27,7 @@ export class GoodCategoriesService { OR: [ { is_default_guild_good: true }, { - complex_id, + business_activity_id, }, ], }, @@ -48,15 +48,15 @@ export class GoodCategoriesService { ) } - // findOne(categoryId: string, complex_id: string) { + // findOne(categoryId: string, business_activity_id: string) { // return {} // } - // create(data: CreateGoodCategoryDto, complex_id: string) { + // create(data: CreateGoodCategoryDto, business_activity_id: string) { // const category = this.prisma.goodCategory.create({ // data: { // ...data, - // complex_id, + // business_activity_id, // }, // }) diff --git a/src/modules/pos/goods/dto/goods-response.dto.ts b/src/modules/pos/goods/dto/goods-response.dto.ts new file mode 100644 index 0000000..619425c --- /dev/null +++ b/src/modules/pos/goods/dto/goods-response.dto.ts @@ -0,0 +1,5 @@ +import type { GoodsService } from '../goods.service' + +export type GoodsServiceCreateResponseDto = Awaited> +export type GoodsServiceFindAllResponseDto = Awaited> +export type GoodsServiceFindOneResponseDto = Awaited> diff --git a/src/modules/pos/goods/goods.controller.ts b/src/modules/pos/goods/goods.controller.ts index 23c9bb0..78a3fea 100644 --- a/src/modules/pos/goods/goods.controller.ts +++ b/src/modules/pos/goods/goods.controller.ts @@ -1,20 +1,23 @@ import { PosInfo } from '@/common/decorators/posInfo.decorator' -import type { IPosPayload } from '@/common/models/posPayload.model' import { Controller, Get, Param } from '@nestjs/common' import { GoodsService } from './goods.service' +import type { IPosPayload } from '@/common/models/posPayload.model' @Controller('pos/goods') export class GoodsController { constructor(private readonly goodsService: GoodsService) {} @Get() - findAll(@PosInfo() { complex_id, guild_id }: IPosPayload) { - return this.goodsService.findAll(complex_id, guild_id) + findAll(@PosInfo() { business_id, guild_id }: IPosPayload) { + return this.goodsService.findAll(business_id, guild_id) } @Get(':id') - findOne(@PosInfo() { complex_id, guild_id }: IPosPayload, @Param('id') goodId: string) { - return this.goodsService.findOne(goodId, complex_id, guild_id) + findOne( + @PosInfo() { business_id, guild_id }: IPosPayload, + @Param('id') goodId: string, + ) { + return this.goodsService.findOne(goodId, business_id, guild_id) } // @Post() diff --git a/src/modules/pos/goods/goods.service.ts b/src/modules/pos/goods/goods.service.ts index d4bfedb..a4266b0 100644 --- a/src/modules/pos/goods/goods.service.ts +++ b/src/modules/pos/goods/goods.service.ts @@ -29,7 +29,7 @@ export class GoodsService { }, } - async findAll(complex_id: string, guild_id: string) { + async findAll(business_activity_id: string, guild_id: string) { const goods = await this.prisma.good.findMany({ where: { OR: [ @@ -40,7 +40,7 @@ export class GoodsService { }, }, { - complex_id, + business_activity_id, }, ], }, @@ -50,15 +50,13 @@ export class GoodsService { return ResponseMapper.list(goods) } - async findOne(good_id: string, complex_id: string, guild_id: string) { + async findOne(good_id: string, business_activity_id: string, guild_id: string) { const good = await this.prisma.good.findUnique({ where: { id: good_id, - complex: { - id: complex_id, - business_activity: { - guild_id, - }, + business_activity: { + id: business_activity_id, + guild_id, }, }, select: this.defaultSelect, @@ -67,12 +65,12 @@ export class GoodsService { return ResponseMapper.single(good) } - async create(data: CreateGoodDto, complex_id: string) { + async create(data: CreateGoodDto, business_activity_id: string) { const { category_id, ...rest } = data const dataToCreate = { ...rest, - complex_id, + business_activity_id, connect: { category: { id: category_id, @@ -88,9 +86,9 @@ export class GoodsService { id: category_id, }, }, - complex: { + business_activity: { connect: { - id: complex_id, + id: business_activity_id, }, }, }, diff --git a/src/modules/pos/pos.controller.ts b/src/modules/pos/pos.controller.ts index 1f6daa3..0b34d37 100644 --- a/src/modules/pos/pos.controller.ts +++ b/src/modules/pos/pos.controller.ts @@ -2,6 +2,11 @@ import { PosInfo } from '@/common/decorators/posInfo.decorator' import { TokenAccount } from '@/common/decorators/tokenInfo.decorator' import { Controller, Get, Res } from '@nestjs/common' import { ApiTags } from '@nestjs/swagger' +import type { + PosServiceGetAccessibleResponseDto, + PosServiceGetInfoResponseDto, + PosServiceGetMeResponseDto, +} from './dto/pos-response.dto' import { PosService } from './pos.service' @ApiTags('Pos') @@ -10,7 +15,10 @@ export class PosController { constructor(private service: PosService) {} @Get() - async getInfo(@PosInfo('pos_id') pos_id: string, @Res({ passthrough: true }) res) { + async getInfo( + @PosInfo('pos_id') pos_id: string, + @Res({ passthrough: true }) res, + ): Promise { const result = await this.service.getInfo(pos_id) if (result) { @@ -27,12 +35,17 @@ export class PosController { } @Get('/accessible') - async getAccessiblePos(@TokenAccount('account_id') account_id) { + async getAccessiblePos( + @TokenAccount('account_id') account_id, + ): Promise { return await this.service.getAccessible(account_id) } @Get('/me') - async getMe(@TokenAccount('account_id') account_id, @PosInfo('pos_id') pos_id: string) { + async getMe( + @TokenAccount('account_id') account_id, + @PosInfo('pos_id') pos_id: string, + ): Promise { return await this.service.getMe(account_id, pos_id) } } diff --git a/src/modules/pos/pos.middleware.ts b/src/modules/pos/pos.middleware.ts index 5735845..edf9351 100644 --- a/src/modules/pos/pos.middleware.ts +++ b/src/modules/pos/pos.middleware.ts @@ -60,7 +60,7 @@ export class PosMiddleware implements NestMiddleware { complex: { business_activity: { consumer: { - consumer_accounts: { + accounts: { some: { id: account_id, }, diff --git a/src/modules/pos/pos.service.ts b/src/modules/pos/pos.service.ts index 5ce2f8f..786a713 100644 --- a/src/modules/pos/pos.service.ts +++ b/src/modules/pos/pos.service.ts @@ -1,3 +1,5 @@ +import { QUERY_CONSTANTS } from '@/common/queryConstants' +import consumer_mappersUtil from '@/common/utils/mappers/consumer_mappers.util' import { ConsumerStatus } from '@/generated/prisma/enums' import { PrismaService } from '@/prisma/prisma.service' import { Injectable } from '@nestjs/common' @@ -95,7 +97,7 @@ export class PosService { complex: { business_activity: { consumer: { - consumer_accounts: { + accounts: { some: { id: account_id, }, @@ -133,7 +135,7 @@ export class PosService { } async getMe(account_id: string, pos_id: string) { - const account = await this.prisma.consumerAccount.findUniqueOrThrow({ + const pos = await this.prisma.consumerAccount.findUniqueOrThrow({ where: { id: account_id, consumer: { @@ -158,8 +160,10 @@ export class PosService { role: true, consumer: { select: { - first_name: true, - last_name: true, + id: true, + type: true, + status: true, + ...QUERY_CONSTANTS.CONSUMER.infoSelect, }, }, account: { @@ -170,6 +174,11 @@ export class PosService { }, }) - return ResponseMapper.single(account) + const { consumer, ...rest } = pos + + return ResponseMapper.single({ + ...rest, + consumer: consumer_mappersUtil(consumer), + }) } } 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 4ccc3ef..89da934 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 @@ -55,8 +55,8 @@ export class CreateSalesInvoiceDto { @IsOptional() @IsObject() customer?: { - customer_individual?: Omit - customer_legal?: Omit + customer_individual?: Omit + customer_legal?: Omit customer_unknown?: { first_name: string last_name: string diff --git a/src/modules/pos/sales-invoices/dto/sales-invoices-response.dto.ts b/src/modules/pos/sales-invoices/dto/sales-invoices-response.dto.ts new file mode 100644 index 0000000..67a2c13 --- /dev/null +++ b/src/modules/pos/sales-invoices/dto/sales-invoices-response.dto.ts @@ -0,0 +1,5 @@ +import type { SalesInvoicesService } from '../sales-invoices.service' + +export type SalesInvoicesServiceCreateResponseDto = Awaited> +export type SalesInvoicesServiceFindAllResponseDto = Awaited> +export type SalesInvoicesServiceFindOneResponseDto = Awaited> diff --git a/src/modules/pos/sales-invoices/sales-invoice-items/dto/sales-invoice-items-response.dto.ts b/src/modules/pos/sales-invoices/sales-invoice-items/dto/sales-invoice-items-response.dto.ts new file mode 100644 index 0000000..13ccdd0 --- /dev/null +++ b/src/modules/pos/sales-invoices/sales-invoice-items/dto/sales-invoice-items-response.dto.ts @@ -0,0 +1,5 @@ +import type { SalesInvoiceItemsService } from '../sales-invoice-items.service' + +export type SalesInvoiceItemsServiceCreateResponseDto = Awaited> +export type SalesInvoiceItemsServiceFindAllResponseDto = Awaited> +export type SalesInvoiceItemsServiceFindOneResponseDto = Awaited> diff --git a/src/modules/pos/sales-invoices/sales-invoice-payments/dto/sales-invoice-payments-response.dto.ts b/src/modules/pos/sales-invoices/sales-invoice-payments/dto/sales-invoice-payments-response.dto.ts new file mode 100644 index 0000000..815dac3 --- /dev/null +++ b/src/modules/pos/sales-invoices/sales-invoice-payments/dto/sales-invoice-payments-response.dto.ts @@ -0,0 +1,5 @@ +import type { SalesInvoicePaymentsService } from '../sales-invoice-payments.service' + +export type SalesInvoicePaymentsServiceCreateResponseDto = Awaited> +export type SalesInvoicePaymentsServiceFindAllResponseDto = Awaited> +export type SalesInvoicePaymentsServiceFindOneResponseDto = Awaited> diff --git a/src/modules/pos/sales-invoices/sales-invoices.controller.ts b/src/modules/pos/sales-invoices/sales-invoices.controller.ts index 4de7bb6..37bd9c1 100644 --- a/src/modules/pos/sales-invoices/sales-invoices.controller.ts +++ b/src/modules/pos/sales-invoices/sales-invoices.controller.ts @@ -1,9 +1,9 @@ import { Body, Controller, Get, Param, Post } from '@nestjs/common' import { PosInfo } from '@/common/decorators/posInfo.decorator' -import type { IPosPayload } from '@/common/models/posPayload.model' import { CreateSalesInvoiceDto } from './dto/create-sales-invoice.dto' import { SalesInvoicesService } from './sales-invoices.service' +import type { IPosPayload } from '@/common/models/posPayload.model' @Controller('pos/sales_invoices') export class SalesInvoicesController { diff --git a/src/modules/pos/sales-invoices/sales-invoices.service.ts b/src/modules/pos/sales-invoices/sales-invoices.service.ts index 2c36a5f..447c63b 100644 --- a/src/modules/pos/sales-invoices/sales-invoices.service.ts +++ b/src/modules/pos/sales-invoices/sales-invoices.service.ts @@ -42,7 +42,7 @@ export class SalesInvoicesService { async create(data: CreateSalesInvoiceDto, posInfo: IPosPayload) { data.invoice_date = new Date(data.invoice_date).toISOString() as any - const { complex_id, pos_id, consumer_account_id } = posInfo + const { business_id, pos_id, consumer_account_id } = posInfo const salesInvoice = await this.prisma.$transaction(async $tx => { const payments = Object.entries(data.payments) @@ -71,8 +71,8 @@ export class SalesInvoicesService { const customer_individual = customer.customer_individual const customerIndividual = await $tx.customerIndividual.upsert({ where: { - complex_id_national_id: { - complex_id, + business_activity_id_national_id: { + business_activity_id: business_id, national_id: customer_individual.national_id, }, }, @@ -83,9 +83,9 @@ export class SalesInvoicesService { type: CustomerType.INDIVIDUAL, }, }, - complex: { + business_activity: { connect: { - id: complex_id, + id: business_id, }, }, }, @@ -104,9 +104,9 @@ export class SalesInvoicesService { const customerLegal = await $tx.customerLegal.upsert({ where: { - complex_id_registration_number: { - complex_id, - registration_number: customer_legal.registration_number, + business_activity_id_economic_code: { + business_activity_id: business_id, + economic_code: customer_legal.economic_code, }, }, create: { @@ -116,9 +116,9 @@ export class SalesInvoicesService { type: CustomerType.LEGAL, }, }, - complex: { + business_activity: { connect: { - id: complex_id, + id: business_id, }, }, }, diff --git a/src/modules/storage/dto/storage-response.dto.ts b/src/modules/storage/dto/storage-response.dto.ts new file mode 100644 index 0000000..5ba6fa1 --- /dev/null +++ b/src/modules/storage/dto/storage-response.dto.ts @@ -0,0 +1,4 @@ +import type { StorageService } from '../storage.service' + +export type StorageServiceDeleteFileResponseDto = Awaited> +export type StorageServiceUploadFileResponseDto = Awaited> diff --git a/src/modules/trigger-logs/dto/trigger-logs-response.dto.ts b/src/modules/trigger-logs/dto/trigger-logs-response.dto.ts new file mode 100644 index 0000000..3f7dda3 --- /dev/null +++ b/src/modules/trigger-logs/dto/trigger-logs-response.dto.ts @@ -0,0 +1,5 @@ +import type { TriggerLogsService } from '../trigger-logs.service' + +export type TriggerLogsServiceCreateResponseDto = Awaited> +export type TriggerLogsServiceFindAllResponseDto = Awaited> +export type TriggerLogsServiceFindOneResponseDto = Awaited> diff --git a/src/modules/uploader/dto/image-uploader-response.dto.ts b/src/modules/uploader/dto/image-uploader-response.dto.ts new file mode 100644 index 0000000..7edd43a --- /dev/null +++ b/src/modules/uploader/dto/image-uploader-response.dto.ts @@ -0,0 +1,3 @@ +import type { ImageUploaderService } from '../image-uploader.service' + +export type ImageUploaderServiceUploadImageResponseDto = Awaited> diff --git a/src/modules/uploader/dto/uploader-response.dto.ts b/src/modules/uploader/dto/uploader-response.dto.ts new file mode 100644 index 0000000..e8f2141 --- /dev/null +++ b/src/modules/uploader/dto/uploader-response.dto.ts @@ -0,0 +1,7 @@ +import type { UploaderService } from '../uploader.service' + +export type UploaderServiceDeleteFileResponseDto = Awaited> +export type UploaderServiceUploadFileResponseDto = Awaited> +export type UploaderControllerUploadImageResponseDto = { + url: UploaderServiceUploadFileResponseDto +} diff --git a/src/modules/uploader/uploader.controller.ts b/src/modules/uploader/uploader.controller.ts index b3ddae1..9df1791 100644 --- a/src/modules/uploader/uploader.controller.ts +++ b/src/modules/uploader/uploader.controller.ts @@ -10,6 +10,7 @@ import { import { FileInterceptor } from '@nestjs/platform-express' import { ApiBody, ApiConsumes } from '@nestjs/swagger' import { UploadImageDto } from './dto/image-upload.dto' +import type { UploaderControllerUploadImageResponseDto } from './dto/uploader-response.dto' import { UploaderService } from './uploader.service' @Controller('uploader') @@ -34,7 +35,7 @@ export class UploaderController { async uploadImage( @UploadedFile() file: Express.Multer.File, @Body() dto: UploadImageDto, - ) { + ): Promise { if (!file) { throw new BadRequestException('فایل را وارد کنید') }