@customafk/lunas-api-sdk 0.0.82 → 0.0.84

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -3566,6 +3566,68 @@ declare const _createClient: () => {
3566
3566
  }>>) & {
3567
3567
  '~path': string;
3568
3568
  };
3569
+ lookup: {
3570
+ get: ((options?: {
3571
+ fetch?: RequestInit | undefined;
3572
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
3573
+ headers?: {} | undefined;
3574
+ query?: {
3575
+ page?: number | undefined;
3576
+ limit?: number | undefined;
3577
+ search?: string | undefined;
3578
+ } | undefined;
3579
+ } | undefined) => Promise<Treaty.TreatyResponse<{
3580
+ 200: {
3581
+ success: false;
3582
+ statusCode: number;
3583
+ data: null;
3584
+ message: string;
3585
+ error: TResponseError;
3586
+ meta: TResponseMeta;
3587
+ } | {
3588
+ success: true;
3589
+ statusCode: number;
3590
+ data: {
3591
+ data: {
3592
+ uuid: string;
3593
+ username: string;
3594
+ email: string;
3595
+ role: string;
3596
+ isActive: boolean | null;
3597
+ createdAt: Date | null;
3598
+ profile: {
3599
+ fullname: string;
3600
+ phoneNumber: string | null;
3601
+ } | null;
3602
+ }[];
3603
+ pagination: {
3604
+ page: number;
3605
+ limit: number;
3606
+ total: number;
3607
+ totalPages: number;
3608
+ hasNextPage: boolean;
3609
+ hasPreviousPage: boolean;
3610
+ };
3611
+ };
3612
+ message: null;
3613
+ error: null;
3614
+ meta: TResponseMeta;
3615
+ };
3616
+ 422: {
3617
+ type: "validation";
3618
+ on: string;
3619
+ summary?: string;
3620
+ message?: string;
3621
+ found?: unknown;
3622
+ property?: string;
3623
+ expected?: string;
3624
+ };
3625
+ }>>) & {
3626
+ '~path': string;
3627
+ };
3628
+ } & {
3629
+ '~path': string;
3630
+ };
3569
3631
  post: ((body: {
3570
3632
  email: string;
3571
3633
  password: string;
@@ -4872,6 +4934,359 @@ declare const _createClient: () => {
4872
4934
  } & {
4873
4935
  '~path': string;
4874
4936
  };
4937
+ dashboard: {
4938
+ overview: {
4939
+ get: ((options?: {
4940
+ fetch?: RequestInit | undefined;
4941
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
4942
+ headers?: {} | undefined;
4943
+ query?: {
4944
+ startDate?: string | undefined;
4945
+ endDate?: string | undefined;
4946
+ } | undefined;
4947
+ } | undefined) => Promise<Treaty.TreatyResponse<{
4948
+ 200: {
4949
+ success: false;
4950
+ statusCode: number;
4951
+ data: null;
4952
+ message: string;
4953
+ error: TResponseError;
4954
+ meta: TResponseMeta;
4955
+ } | {
4956
+ success: true;
4957
+ statusCode: number;
4958
+ data: {
4959
+ period: {
4960
+ startDate: string;
4961
+ endDate: string;
4962
+ };
4963
+ previousPeriod: {
4964
+ startDate: string;
4965
+ endDate: string;
4966
+ };
4967
+ revenue: {
4968
+ current: number;
4969
+ previous: number;
4970
+ changePercent: number | null;
4971
+ };
4972
+ orders: {
4973
+ current: number;
4974
+ previous: number;
4975
+ changePercent: number | null;
4976
+ };
4977
+ newCustomers: {
4978
+ current: number;
4979
+ previous: number;
4980
+ changePercent: number | null;
4981
+ };
4982
+ averageOrderValue: {
4983
+ current: number;
4984
+ previous: number;
4985
+ changePercent: number | null;
4986
+ };
4987
+ };
4988
+ message: null;
4989
+ error: null;
4990
+ meta: TResponseMeta;
4991
+ };
4992
+ 422: {
4993
+ type: "validation";
4994
+ on: string;
4995
+ summary?: string;
4996
+ message?: string;
4997
+ found?: unknown;
4998
+ property?: string;
4999
+ expected?: string;
5000
+ };
5001
+ }>>) & {
5002
+ '~path': string;
5003
+ };
5004
+ } & {
5005
+ '~path': string;
5006
+ };
5007
+ "revenue-trend": {
5008
+ get: ((options: {
5009
+ fetch?: RequestInit | undefined;
5010
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
5011
+ headers?: {} | undefined;
5012
+ query: {
5013
+ interval: "day" | "week" | "month";
5014
+ startDate?: string | undefined;
5015
+ endDate?: string | undefined;
5016
+ };
5017
+ }) => Promise<Treaty.TreatyResponse<{
5018
+ 200: {
5019
+ success: false;
5020
+ statusCode: number;
5021
+ data: null;
5022
+ message: string;
5023
+ error: TResponseError;
5024
+ meta: TResponseMeta;
5025
+ } | {
5026
+ success: true;
5027
+ statusCode: number;
5028
+ data: {
5029
+ interval: "day" | "week" | "month";
5030
+ series: {
5031
+ bucket: string;
5032
+ revenue: number;
5033
+ orderCount: number;
5034
+ }[];
5035
+ };
5036
+ message: null;
5037
+ error: null;
5038
+ meta: TResponseMeta;
5039
+ };
5040
+ 422: {
5041
+ type: "validation";
5042
+ on: string;
5043
+ summary?: string;
5044
+ message?: string;
5045
+ found?: unknown;
5046
+ property?: string;
5047
+ expected?: string;
5048
+ };
5049
+ }>>) & {
5050
+ '~path': string;
5051
+ };
5052
+ } & {
5053
+ '~path': string;
5054
+ };
5055
+ "top-products": {
5056
+ get: ((options: {
5057
+ fetch?: RequestInit | undefined;
5058
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
5059
+ headers?: {} | undefined;
5060
+ query: {
5061
+ limit: number;
5062
+ startDate?: string | undefined;
5063
+ endDate?: string | undefined;
5064
+ };
5065
+ }) => Promise<Treaty.TreatyResponse<{
5066
+ 200: {
5067
+ success: false;
5068
+ statusCode: number;
5069
+ data: null;
5070
+ message: string;
5071
+ error: TResponseError;
5072
+ meta: TResponseMeta;
5073
+ } | {
5074
+ success: true;
5075
+ statusCode: number;
5076
+ data: {
5077
+ productUuid: string | null;
5078
+ productName: string;
5079
+ unitsSold: number;
5080
+ revenue: number;
5081
+ }[];
5082
+ message: null;
5083
+ error: null;
5084
+ meta: TResponseMeta;
5085
+ };
5086
+ 422: {
5087
+ type: "validation";
5088
+ on: string;
5089
+ summary?: string;
5090
+ message?: string;
5091
+ found?: unknown;
5092
+ property?: string;
5093
+ expected?: string;
5094
+ };
5095
+ }>>) & {
5096
+ '~path': string;
5097
+ };
5098
+ } & {
5099
+ '~path': string;
5100
+ };
5101
+ "category-performance": {
5102
+ get: ((options: {
5103
+ fetch?: RequestInit | undefined;
5104
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
5105
+ headers?: {} | undefined;
5106
+ query: {
5107
+ limit: number;
5108
+ startDate?: string | undefined;
5109
+ endDate?: string | undefined;
5110
+ };
5111
+ }) => Promise<Treaty.TreatyResponse<{
5112
+ 200: {
5113
+ success: false;
5114
+ statusCode: number;
5115
+ data: null;
5116
+ message: string;
5117
+ error: TResponseError;
5118
+ meta: TResponseMeta;
5119
+ } | {
5120
+ success: true;
5121
+ statusCode: number;
5122
+ data: {
5123
+ categoryUuid: string | null;
5124
+ categoryName: string | null;
5125
+ revenue: number;
5126
+ unitsSold: number;
5127
+ estimatedMargin: number;
5128
+ }[];
5129
+ message: null;
5130
+ error: null;
5131
+ meta: TResponseMeta;
5132
+ };
5133
+ 422: {
5134
+ type: "validation";
5135
+ on: string;
5136
+ summary?: string;
5137
+ message?: string;
5138
+ found?: unknown;
5139
+ property?: string;
5140
+ expected?: string;
5141
+ };
5142
+ }>>) & {
5143
+ '~path': string;
5144
+ };
5145
+ } & {
5146
+ '~path': string;
5147
+ };
5148
+ "customer-growth": {
5149
+ get: ((options: {
5150
+ fetch?: RequestInit | undefined;
5151
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
5152
+ headers?: {} | undefined;
5153
+ query: {
5154
+ interval: "day" | "week" | "month";
5155
+ startDate?: string | undefined;
5156
+ endDate?: string | undefined;
5157
+ };
5158
+ }) => Promise<Treaty.TreatyResponse<{
5159
+ 200: {
5160
+ success: false;
5161
+ statusCode: number;
5162
+ data: null;
5163
+ message: string;
5164
+ error: TResponseError;
5165
+ meta: TResponseMeta;
5166
+ } | {
5167
+ success: true;
5168
+ statusCode: number;
5169
+ data: {
5170
+ interval: "day" | "week" | "month";
5171
+ series: {
5172
+ bucket: string;
5173
+ newSignups: number;
5174
+ cumulativeTotal: number;
5175
+ }[];
5176
+ };
5177
+ message: null;
5178
+ error: null;
5179
+ meta: TResponseMeta;
5180
+ };
5181
+ 422: {
5182
+ type: "validation";
5183
+ on: string;
5184
+ summary?: string;
5185
+ message?: string;
5186
+ found?: unknown;
5187
+ property?: string;
5188
+ expected?: string;
5189
+ };
5190
+ }>>) & {
5191
+ '~path': string;
5192
+ };
5193
+ } & {
5194
+ '~path': string;
5195
+ };
5196
+ "payment-methods": {
5197
+ get: ((options?: {
5198
+ fetch?: RequestInit | undefined;
5199
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
5200
+ headers?: {} | undefined;
5201
+ query?: {
5202
+ startDate?: string | undefined;
5203
+ endDate?: string | undefined;
5204
+ } | undefined;
5205
+ } | undefined) => Promise<Treaty.TreatyResponse<{
5206
+ 200: {
5207
+ success: false;
5208
+ statusCode: number;
5209
+ data: null;
5210
+ message: string;
5211
+ error: TResponseError;
5212
+ meta: TResponseMeta;
5213
+ } | {
5214
+ success: true;
5215
+ statusCode: number;
5216
+ data: {
5217
+ paymentMethod: string;
5218
+ transactionCount: number;
5219
+ totalAmount: number;
5220
+ }[];
5221
+ message: null;
5222
+ error: null;
5223
+ meta: TResponseMeta;
5224
+ };
5225
+ 422: {
5226
+ type: "validation";
5227
+ on: string;
5228
+ summary?: string;
5229
+ message?: string;
5230
+ found?: unknown;
5231
+ property?: string;
5232
+ expected?: string;
5233
+ };
5234
+ }>>) & {
5235
+ '~path': string;
5236
+ };
5237
+ } & {
5238
+ '~path': string;
5239
+ };
5240
+ "revenue-by-payment-type": {
5241
+ get: ((options?: {
5242
+ fetch?: RequestInit | undefined;
5243
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
5244
+ headers?: {} | undefined;
5245
+ query?: {
5246
+ startDate?: string | undefined;
5247
+ endDate?: string | undefined;
5248
+ } | undefined;
5249
+ } | undefined) => Promise<Treaty.TreatyResponse<{
5250
+ 200: {
5251
+ success: false;
5252
+ statusCode: number;
5253
+ data: null;
5254
+ message: string;
5255
+ error: TResponseError;
5256
+ meta: TResponseMeta;
5257
+ } | {
5258
+ success: true;
5259
+ statusCode: number;
5260
+ data: {
5261
+ total: number;
5262
+ byPaymentType: {
5263
+ paymentType: "OTHER" | "DEPOSIT" | "FULL_PAYMENT" | "PARTIAL_PAYMENT" | "FEE" | "ADJUSTMENT";
5264
+ transactionCount: number;
5265
+ totalAmount: number;
5266
+ }[];
5267
+ };
5268
+ message: null;
5269
+ error: null;
5270
+ meta: TResponseMeta;
5271
+ };
5272
+ 422: {
5273
+ type: "validation";
5274
+ on: string;
5275
+ summary?: string;
5276
+ message?: string;
5277
+ found?: unknown;
5278
+ property?: string;
5279
+ expected?: string;
5280
+ };
5281
+ }>>) & {
5282
+ '~path': string;
5283
+ };
5284
+ } & {
5285
+ '~path': string;
5286
+ };
5287
+ } & {
5288
+ '~path': string;
5289
+ };
4875
5290
  deposits: ((params: {
4876
5291
  depositId: string | number;
4877
5292
  }) => {
@@ -10417,10 +10832,12 @@ declare const _createClient: () => {
10417
10832
  headers?: {} | undefined;
10418
10833
  query?: {
10419
10834
  search?: string | undefined;
10835
+ customerEmail?: string | undefined;
10420
10836
  limit?: number | undefined;
10421
10837
  page?: number | undefined;
10422
10838
  isGuest?: boolean | undefined;
10423
10839
  customerUuid?: string | undefined;
10840
+ excludeUserUuid?: string | undefined;
10424
10841
  } | undefined;
10425
10842
  } | undefined) => Promise<Treaty.TreatyResponse<{
10426
10843
  200: {
@@ -17574,5 +17991,5 @@ declare class ClientApi {
17574
17991
  private _onUnauthorized?;
17575
17992
  }
17576
17993
  //#endregion
17577
- export { ClientApi, type ECartStatus, type ECartType, type ECountry, type EDimensionUnit, type EMediaEntityType, type EMimeType, type EProductInventoryStatus, type EProductStatus, type EProvider, type ERole, type EWeightUnit, type TResponse, type TResponseError, type TUser };
17994
+ export { ClientApi, type ECartStatus, type ECartType, type ECountry, type ECouponDiscountType, type ECouponScopeType, type EDimensionUnit, type EMediaEntityType, type EMimeType, type EProductInventoryStatus, type EProductStatus, type EProvider, type ERole, type EWeightUnit, type TResponse, type TResponseError, type TUser };
17578
17995
  //# sourceMappingURL=index.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":["AppType","router","EMediaEntityType","EMimeType","EWeightUnit","EDimensionUnit","ECountry","ERole","EFacebookPostStatus","EProvider","EProductStatus","EProductType","EProductInventoryStatus","ECartStatus","ECartType","ECouponDiscountType","ECouponScopeType","ECouponConditionType","ECouponConditionOperator","ECouponUsageStatus","TResponsePagination","TResponseError","TResponseMeta","TResponse","T","TPayloadJwt","TEmailTag","TEmailObject","TEmailListItem","Omit","TEmailListResult","TEmailIdResult","TEmailMutationResult","TEmailBatchResult","TAttachmentData","TAttachmentObject","TAttachmentListResult","TInboundAttachment","TReceivedEmailObject","Record","TReceivedEmailListItem","TReceivedEmailListResult"],"sources":["../../app/src/types.d.ts","../../app/src/modules/admin/email/email.types.d.ts","../src/utils.ts"],"sourcesContent":["import type { AppType } from './router';\n\nexport type AppType = typeof router;\n\nexport enum EMediaEntityType {\n PRODUCT = 'product',\n EXTRA_PRODUCT = 'extra_product',\n VARIANT = 'variant',\n CATEGORY = 'category',\n BRAND = 'brand',\n BLOG_POST = 'blog_post',\n SERIES = 'series',\n}\n\nexport enum EMimeType {\n IMAGE_WEBP = 'image/webp',\n IMAGE_JPEG = 'image/jpeg',\n IMAGE_JPG = 'image/jpg',\n IMAGE_PNG = 'image/png',\n IMAGE_GIF = 'image/gif',\n IMAGE_AVIF = 'image/avif',\n IMAGE_SVG = 'image/svg+xml',\n}\n\nexport enum EWeightUnit {\n KG = 'kg',\n G = 'g',\n LB = 'lb',\n OZ = 'oz',\n}\n\nexport enum EDimensionUnit {\n CM = 'cm',\n M = 'm',\n INCH = 'inch',\n FT = 'ft',\n}\n\nexport enum ECountry {\n VIETNAM = 'Vietnam',\n USA = 'USA',\n JAPAN = 'Japan',\n KOREA = 'Korea',\n CHINA = 'China',\n TAIWAN = 'Taiwan',\n THAILAND = 'Thailand',\n MALAYSIA = 'Malaysia',\n SINGAPORE = 'Singapore',\n INDONESIA = 'Indonesia',\n}\n\nexport enum ERole {\n SUPER_ADMIN = 'SUPER_ADMIN',\n ADMIN = 'ADMIN',\n MODERATOR = 'MODERATOR',\n STAFF = 'STAFF',\n EDITOR = 'EDITOR',\n VIEWER = 'VIEWER',\n USER = 'USER',\n}\n\nexport enum EFacebookPostStatus {\n DRAFT = 'draft',\n SCHEDULED = 'scheduled',\n PUBLISHED = 'published',\n FAILED = 'failed',\n}\n\nexport enum EProvider {\n BASIC = 'BASIC',\n FACEBOOK = 'FACEBOOK',\n GOOGLE = 'GOOGLE',\n GITHUB = 'GITHUB',\n TWITTER = 'TWITTER',\n}\n\nexport enum EProductStatus {\n DRAFT = 'draft',\n REVIEW = 'review',\n PUBLISHED = 'published',\n CANCELLED = 'cancelled',\n}\n\nexport enum EProductType {\n REGULAR = 'regular',\n GIFT = 'gift',\n}\n\nexport enum EProductInventoryStatus {\n IN_STOCK = 'in_stock',\n OUT_OF_STOCK = 'out_of_stock',\n ORDER = 'order',\n PREORDER = 'preorder',\n}\n\nexport enum ECartStatus {\n ACTIVE = 'active',\n COMPLETED = 'completed',\n ABANDONED = 'abandoned',\n EXPIRED = 'expired',\n}\n\nexport enum ECartType {\n IN_STOCK = 'in_stock',\n ORDER = 'order',\n}\n\nexport enum ECouponDiscountType {\n PERCENTAGE = 'PERCENTAGE',\n FIXED_AMOUNT = 'FIXED_AMOUNT',\n FREE_SHIPPING = 'FREE_SHIPPING',\n}\n\nexport enum ECouponScopeType {\n ORDER = 'ORDER',\n PRODUCT = 'PRODUCT',\n SHIPPING = 'SHIPPING',\n}\n\nexport enum ECouponConditionType {\n PRODUCT = 'PRODUCT',\n CATEGORY = 'CATEGORY',\n BRAND = 'BRAND',\n PRODUCT_ATTRIBUTE = 'PRODUCT_ATTRIBUTE',\n ORDER_AMOUNT = 'ORDER_AMOUNT',\n QUANTITY = 'QUANTITY',\n CUSTOMER_GROUP = 'CUSTOMER_GROUP',\n FIRST_ORDER = 'FIRST_ORDER',\n}\n\nexport enum ECouponConditionOperator {\n EQ = 'EQ',\n NEQ = 'NEQ',\n IN = 'IN',\n NOT_IN = 'NOT_IN',\n GT = 'GT',\n GTE = 'GTE',\n LT = 'LT',\n LTE = 'LTE',\n}\n\nexport enum ECouponUsageStatus {\n APPLIED = 'APPLIED',\n REFUNDED = 'REFUNDED',\n}\n\nexport type TResponsePagination = {\n page: number;\n limit: number;\n total: number;\n totalPages: number;\n hasNextPage: boolean;\n hasPreviousPage: boolean;\n};\n\nexport type TResponseError = {\n statusCode: number;\n message: string;\n reference?: string | null;\n fields?: {\n [key: string]: string;\n };\n};\n\nexport type TResponseMeta = {\n version: string;\n timestamp: string;\n path: string;\n pagination?: TResponsePagination;\n};\n\nexport type TResponse<T> = T extends string\n ?\n | {\n success: true;\n statusCode: number;\n data: null;\n message: string;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n }\n :\n | {\n success: true;\n statusCode: number;\n data: T;\n message: null;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n };\n\nexport type TPayloadJwt = {\n uuid: string;\n role: string;\n};\n\nexport type { AppType };\n","// App-local response types mirroring the Resend SDK shapes. The email module\n// proxies Resend, but its route responses must NOT reference Resend's vendor\n// types directly — those types live under `app/node_modules/resend` and cannot\n// be named portably when the SDK package generates its declaration files.\n// Returning these local types keeps `AppType` (and the generated SDK) portable.\n\nexport type TEmailTag = {\n name: string;\n value: string;\n};\n\nexport type TEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n tags?: TEmailTag[];\n topic_id?: string | null;\n last_event: string;\n scheduled_at: string | null;\n created_at: string;\n};\n\nexport type TEmailListItem = Omit<\n TEmailObject,\n 'html' | 'text' | 'tags' | 'object'\n>;\n\nexport type TEmailListResult = {\n data: TEmailListItem[];\n hasMore: boolean;\n};\n\nexport type TEmailIdResult = {\n id: string;\n};\n\nexport type TEmailMutationResult = {\n id: string;\n object: 'email';\n};\n\nexport type TEmailBatchResult = {\n data: TEmailIdResult[];\n};\n\nexport type TAttachmentData = {\n id: string;\n filename?: string;\n size: number;\n content_type: string;\n content_disposition: 'inline' | 'attachment';\n content_id?: string;\n download_url: string;\n expires_at: string;\n};\n\nexport type TAttachmentObject = TAttachmentData & {\n object: 'attachment';\n};\n\nexport type TAttachmentListResult = {\n data: TAttachmentData[];\n hasMore: boolean;\n};\n\nexport type TInboundAttachment = {\n id: string;\n filename: string | null;\n size: number;\n content_type: string;\n content_id: string | null;\n content_disposition: string | null;\n};\n\nexport type TReceivedEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n headers: Record<string, string> | null;\n message_id: string;\n raw?: { download_url: string; expires_at: string } | null;\n attachments: TInboundAttachment[];\n created_at: string;\n};\n\nexport type TReceivedEmailListItem = Omit<\n TReceivedEmailObject,\n 'html' | 'text' | 'headers' | 'raw' | 'object'\n>;\n\nexport type TReceivedEmailListResult = {\n data: TReceivedEmailListItem[];\n hasMore: boolean;\n};\n"],"mappings":";;;;AAIYE,aAAAA,gBAAAA;EAUZ,OAAYC,GAAAA,SAAS;EAUrB,aAAYC,GAAW,eAAA;EAOvB,OAAYC,GAAAA,SAAc;EAO1B,QAAYC,GAAAA,UAAQ;EAapB,KAAYC,GAAAA,OAAK;EAUjB,SAAYC,GAAAA,WAAAA;EAOZ,MAAYC,GAAAA,QAAS;AAQrB;AAYYG,aA1EAT,SAAAA;EAiFZ,UAAYU,GAAAA,YAAW;EAOvB,UAAYC,GAAAA,YAAS;EAKrB,SAAYC,GAAAA,WAAAA;EAMZ,SAAYC,GAAAA,WAAgB;EAM5B,SAAYC,GAAAA,WAAAA;EAWZ,UAAYC,GAAAA,YAAAA;EAgBZ,SAAYE,GAAAA,eAAmB;AAS/B;AAgBYG,aAnJAnB,WAAAA;EAmJeoB,EAAAA,GAAAA,IAAAA;EAQXF,CAAAA,GAAAA,GAAAA;EAOCD,EAAAA,GAAAA,IAAAA;EACDC,EAAAA,GAAAA,IAAAA;;AAgBCD,aA5KLhB,cAAAA;EA6KIiB,EAAAA,GAAAA,IAAAA;EAAa,CAAA,GAAA,GAAA;;;;ACjMjBK,aD2BArB,QAAAA;ECTZ,OAAYsB,GAAAA,SAAc;EAK1B,GAAYE,GAAAA,KAAAA;EAKZ,KAAYC,GAAAA,OAAAA;EAIZ,KAAYC,GAAAA,OAAAA;EAKZ,KAAYC,GAAAA,OAAAA;EAIZ,MAAYC,GAAAA,QAAAA;EAWZ,QAAYC,GAAAA,UAAAA;EAIZ,QAAYC,GAAAA,UAAAA;EAKZ,SAAYC,GAAAA,WAAkB;EAS9B,SAAYC,GAAAA,WAAAA;AAkBZ;aDhDY/B,KAAAA;;;EElDiC,SAiBvC,GAAA,WAAoC;;;;;;aF2C9BC,mBAAAA;;;;;;aAOAC,SAAAA;;;;;;;aAQAC,cAAAA;;;;;;aAOAC,YAAAA;;;;aAKAC,uBAAAA;;;;;;aAOAC,WAAAA;;;;;;aAOAC,SAAAA;;;;aAKAC,mBAAAA;;;;;aAMAC,gBAAAA;;;;;aAMAC,oBAAAA;;;;;;;;;;aAWAC,wBAAAA;;;;;;;;;;KAgBAE,mBAAAA;;;;;;;;KASAC,cAAAA;;;;;;;;KASAC,aAAAA;;;;eAIGF;;KAGHG,eAAeC;;;;;;QAQXF;;;;;;SAOCD;QACDC;;;;QAMAE;;;QAGAF;;;;;;SAOCD;QACDC;;;;;;;;AAxMhB;;AAoBYlB,KClBAsB,SAAAA,GDkBW;EAOvB,IAAYrB,EAAAA,MAAAA;EAOZ,KAAYC,EAAAA,MAAQ;AAapB,CAAA;AAiBYG,KCzDAkB,YAAAA,GDyDS;EAQrB,EAAYjB,EAAAA,MAAAA;EAOZ,MAAYC,EAAAA,OAAAA;EAKZ,IAAYC,EAAAA,MAAAA;EAOZ,EAAYC,EAAAA,MAAAA,EAAAA;EAOZ,OAAYC,EAAAA,MAAS;EAKrB,IAAYC,EAAAA,MAAAA,GAAAA,IAAAA;EAMZ,IAAYC,EAAAA,MAAAA,GAAAA,IAAAA;EAMZ,GAAYC,EAAAA,MAAAA,EAAAA,GAAAA,IAAAA;EAWZ,EAAYC,EAAAA,MAAAA,EAAAA,GAAAA,IAAAA;EAgBZ,QAAYE,EAAAA,MAAAA,EAAAA,GAAAA,IAAmB;EAS/B,IAAYC,CAAAA,ECrIHK,SDqIGL,EAAAA;EASZ,QAAYC,CAAAA,EAAAA,MAAAA,GAAa,IAAA;EAOzB,UAAYC,EAAAA,MAAS;EAAMC,YAAAA,EAAAA,MAAAA,GAAAA,IAAAA;EAQXF,UAAAA,EAAAA,MAAAA;CAOCD;AAODG,KCpKJI,cAAAA,GAAiBC,IDoKbL,CCnKdG,YDsKcL,EAOCD,MAAAA,GAAAA,MAAAA,GAAAA,MAAAA,GAAAA,QAAAA,CACDC;KC1KJQ,gBAAAA;QACJF;;AA7BR,CAAA;AAuBYA,KAUAG,cAAAA,GAVc;EAK1B,EAAYD,EAAAA,MAAAA;AAKZ,CAAA;AASYG,KALAD,oBAAAA,GAKiB;EAI7B,EAAYE,EAAAA,MAAAA;EAWZ,MAAYC,EAAAA,OAAAA;AAIZ,CAAA;AAcYG,KAjCAL,iBAAAA,GAiCoB;EAkBhC,IAAYO,EAlDJT,cAkDIS,EAAAA;AAKZ,CAAA;KApDYN,eAAAA;;ECnDiC,QAiBvC,CAAA,EAAA,MAAA;;;;;;;;KD6CMC,iBAAAA,GAAoBD;;;KAIpBE,qBAAAA;QACJF;;;KAIIG,kBAAAA;;;;;;;;KASAC,oBAAAA;;;;;;;;;;;WAWDC;;;;;;eAGIF;;;KAIHG,sBAAAA,GAAyBX,KACnCS;KAIUG,wBAAAA;QACJD;;;;;cCvFF;;;MFdMtC,IAAAA,EAAAA;QAUS,GAAA,EAAA,CAAA,CAAA,OA+CU,CA/CV,EAAA;UAUE,KAAA,CAAA,aAAA,GAAA,SAAA;UAOXG,cAAc,CAAA,0CAAA,SAAA;UAON,OAAA,CAAA,EAAA,CAAA,CAAA,GAAA,SAAA;UAaH,KAAA,CAAA,EAAA,CAAA,CAAA,GAAA,SAAA;QAULG,CAAAA,GAAAA,SAAmB,EAAA,UAAA,sBAAA,CAAA;UAOV,GAAA,EAAA,MAAA;QAQTE,CAAAA,CAAAA,CAAAA,CAAAA,GAAc;UAOF,OAAA,EAAA,MAAA;QAKZE,CAAAA;QAOAC,EAAW,EAAA;UAOF,GAAA,EAAA,CAAA,CAAA,OA4CU,CA5CV,EAAA;YAKTE,KAAmB,CAAA,aAAA,GAAA,SAAA;YAMH,cAAA,CAAA,0CAAA,SAAA;YAMhBE,OAAoB,CAAA,EAAA,CAAA,CAAA,GAAA,SAAA;YAWpBC,KAAAA,CAAAA,EAAwB,CAAA,CAAA,GAAA,SAAA;UAgBxBE,CAAAA,GAAAA,SAAmB,EAAA,UAAA,sBAAA,CAAA;YASL,GAAA,EAAA;cASD,OAIVA,EAAAA,KAAAA;cAGM,UAAA,EAAA,MAAA;cAAMI,IAAAA,EAAAA,IAAAA;cAQXF,OAAAA,EAAAA,MAAAA;cAOCD,KAAAA,gBAAAA;cACDC,IAAAA,eAAAA;YAMAE,CAAAA,GAAAA;cAGAF,OAAAA,EAAAA,IAAAA;cAOCD,UAAAA,EAAAA,MAAAA;cACDC,IAAAA,EAAAA,SAAAA;cAAa,OAAA,EAAA,IAAA;;;;cCtMR,OAAA,EAAA,IAAA;cAKG,UAWfI,EAAAA,MAAS;cAOQ,IAAA,EACxBC;gBAI0B,IACpBC,EAAAA,MAAAA;gBAIkB,KAAA,EAAA,MAAA;gBAIM,SAAA,MAAA,GAAA,IAAA;gBAKH,SACrBG,MAAAA,GAAAA,IAAc;gBAGK,QAAA,EAAA,MAAA;gBAWE,IAAGG,EAAAA,MAAAA;gBAIC,QACzBA,EAAAA;kBAIsB,SAAA,MAAA,GAAA,IAAA;kBASE,SAWrBK,MAGIF,GAAAA,IAAAA;kBAImB,EAAA,EAAA,MAChCC;kBAIkC,QAC5BE,EAAAA,MAAAA;;;;kBCvFkC,SAAA,MAAA,GAAA,IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAtKD,OAAA,GAAU,kBAAkB;KAE5B,KAAA,GAAQ,MAAA,CAAO,KACzB,QAAQ,WAAW;KAGhB,MAAA;;WAEM,KAAK,MAAA,CAAO;;cAGV,SAAA;;;;;eAQS;;0BAGI,wBAAwB;qBAC7B,wBAAwB;4BACjB;kCACM;8DAC4B;;;;;;;;KA6G3B;aAab;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAMA;YAID;;;;mBAOF,YAAY,QAAQ;MACjC,QAAQ"}
1
+ {"version":3,"file":"index.d.cts","names":["AppType","router","EMediaEntityType","EMimeType","EWeightUnit","EDimensionUnit","ECountry","ERole","EFacebookPostStatus","EProvider","EProductStatus","EProductType","EProductInventoryStatus","ECartStatus","ECartType","ECouponDiscountType","ECouponScopeType","ECouponConditionType","ECouponConditionOperator","ECouponUsageStatus","TResponsePagination","TResponseError","TResponseMeta","TResponse","T","TPayloadJwt","TEmailTag","TEmailObject","TEmailListItem","Omit","TEmailListResult","TEmailIdResult","TEmailMutationResult","TEmailBatchResult","TAttachmentData","TAttachmentObject","TAttachmentListResult","TInboundAttachment","TReceivedEmailObject","Record","TReceivedEmailListItem","TReceivedEmailListResult"],"sources":["../../app/src/types.d.ts","../../app/src/modules/admin/email/email.types.d.ts","../src/utils.ts"],"sourcesContent":["import type { AppType } from './router';\n\nexport type AppType = typeof router;\n\nexport enum EMediaEntityType {\n PRODUCT = 'product',\n EXTRA_PRODUCT = 'extra_product',\n VARIANT = 'variant',\n CATEGORY = 'category',\n BRAND = 'brand',\n BLOG_POST = 'blog_post',\n SERIES = 'series',\n}\n\nexport enum EMimeType {\n IMAGE_WEBP = 'image/webp',\n IMAGE_JPEG = 'image/jpeg',\n IMAGE_JPG = 'image/jpg',\n IMAGE_PNG = 'image/png',\n IMAGE_GIF = 'image/gif',\n IMAGE_AVIF = 'image/avif',\n IMAGE_SVG = 'image/svg+xml',\n}\n\nexport enum EWeightUnit {\n KG = 'kg',\n G = 'g',\n LB = 'lb',\n OZ = 'oz',\n}\n\nexport enum EDimensionUnit {\n CM = 'cm',\n M = 'm',\n INCH = 'inch',\n FT = 'ft',\n}\n\nexport enum ECountry {\n VIETNAM = 'Vietnam',\n USA = 'USA',\n JAPAN = 'Japan',\n KOREA = 'Korea',\n CHINA = 'China',\n TAIWAN = 'Taiwan',\n THAILAND = 'Thailand',\n MALAYSIA = 'Malaysia',\n SINGAPORE = 'Singapore',\n INDONESIA = 'Indonesia',\n}\n\nexport enum ERole {\n SUPER_ADMIN = 'SUPER_ADMIN',\n ADMIN = 'ADMIN',\n MODERATOR = 'MODERATOR',\n STAFF = 'STAFF',\n EDITOR = 'EDITOR',\n VIEWER = 'VIEWER',\n USER = 'USER',\n}\n\nexport enum EFacebookPostStatus {\n DRAFT = 'draft',\n SCHEDULED = 'scheduled',\n PUBLISHED = 'published',\n FAILED = 'failed',\n}\n\nexport enum EProvider {\n BASIC = 'BASIC',\n FACEBOOK = 'FACEBOOK',\n GOOGLE = 'GOOGLE',\n GITHUB = 'GITHUB',\n TWITTER = 'TWITTER',\n}\n\nexport enum EProductStatus {\n DRAFT = 'draft',\n REVIEW = 'review',\n PUBLISHED = 'published',\n CANCELLED = 'cancelled',\n}\n\nexport enum EProductType {\n REGULAR = 'regular',\n GIFT = 'gift',\n}\n\nexport enum EProductInventoryStatus {\n IN_STOCK = 'in_stock',\n OUT_OF_STOCK = 'out_of_stock',\n ORDER = 'order',\n PREORDER = 'preorder',\n}\n\nexport enum ECartStatus {\n ACTIVE = 'active',\n COMPLETED = 'completed',\n ABANDONED = 'abandoned',\n EXPIRED = 'expired',\n}\n\nexport enum ECartType {\n IN_STOCK = 'in_stock',\n ORDER = 'order',\n}\n\nexport enum ECouponDiscountType {\n PERCENTAGE = 'PERCENTAGE',\n FIXED_AMOUNT = 'FIXED_AMOUNT',\n FREE_SHIPPING = 'FREE_SHIPPING',\n}\n\nexport enum ECouponScopeType {\n ORDER = 'ORDER',\n PRODUCT = 'PRODUCT',\n SHIPPING = 'SHIPPING',\n}\n\nexport enum ECouponConditionType {\n PRODUCT = 'PRODUCT',\n CATEGORY = 'CATEGORY',\n BRAND = 'BRAND',\n PRODUCT_ATTRIBUTE = 'PRODUCT_ATTRIBUTE',\n ORDER_AMOUNT = 'ORDER_AMOUNT',\n QUANTITY = 'QUANTITY',\n CUSTOMER_GROUP = 'CUSTOMER_GROUP',\n FIRST_ORDER = 'FIRST_ORDER',\n}\n\nexport enum ECouponConditionOperator {\n EQ = 'EQ',\n NEQ = 'NEQ',\n IN = 'IN',\n NOT_IN = 'NOT_IN',\n GT = 'GT',\n GTE = 'GTE',\n LT = 'LT',\n LTE = 'LTE',\n}\n\nexport enum ECouponUsageStatus {\n APPLIED = 'APPLIED',\n REFUNDED = 'REFUNDED',\n}\n\nexport type TResponsePagination = {\n page: number;\n limit: number;\n total: number;\n totalPages: number;\n hasNextPage: boolean;\n hasPreviousPage: boolean;\n};\n\nexport type TResponseError = {\n statusCode: number;\n message: string;\n reference?: string | null;\n fields?: {\n [key: string]: string;\n };\n};\n\nexport type TResponseMeta = {\n version: string;\n timestamp: string;\n path: string;\n pagination?: TResponsePagination;\n};\n\nexport type TResponse<T> = T extends string\n ?\n | {\n success: true;\n statusCode: number;\n data: null;\n message: string;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n }\n :\n | {\n success: true;\n statusCode: number;\n data: T;\n message: null;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n };\n\nexport type TPayloadJwt = {\n uuid: string;\n role: string;\n};\n\nexport type { AppType };\n","// App-local response types mirroring the Resend SDK shapes. The email module\n// proxies Resend, but its route responses must NOT reference Resend's vendor\n// types directly — those types live under `app/node_modules/resend` and cannot\n// be named portably when the SDK package generates its declaration files.\n// Returning these local types keeps `AppType` (and the generated SDK) portable.\n\nexport type TEmailTag = {\n name: string;\n value: string;\n};\n\nexport type TEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n tags?: TEmailTag[];\n topic_id?: string | null;\n last_event: string;\n scheduled_at: string | null;\n created_at: string;\n};\n\nexport type TEmailListItem = Omit<\n TEmailObject,\n 'html' | 'text' | 'tags' | 'object'\n>;\n\nexport type TEmailListResult = {\n data: TEmailListItem[];\n hasMore: boolean;\n};\n\nexport type TEmailIdResult = {\n id: string;\n};\n\nexport type TEmailMutationResult = {\n id: string;\n object: 'email';\n};\n\nexport type TEmailBatchResult = {\n data: TEmailIdResult[];\n};\n\nexport type TAttachmentData = {\n id: string;\n filename?: string;\n size: number;\n content_type: string;\n content_disposition: 'inline' | 'attachment';\n content_id?: string;\n download_url: string;\n expires_at: string;\n};\n\nexport type TAttachmentObject = TAttachmentData & {\n object: 'attachment';\n};\n\nexport type TAttachmentListResult = {\n data: TAttachmentData[];\n hasMore: boolean;\n};\n\nexport type TInboundAttachment = {\n id: string;\n filename: string | null;\n size: number;\n content_type: string;\n content_id: string | null;\n content_disposition: string | null;\n};\n\nexport type TReceivedEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n headers: Record<string, string> | null;\n message_id: string;\n raw?: { download_url: string; expires_at: string } | null;\n attachments: TInboundAttachment[];\n created_at: string;\n};\n\nexport type TReceivedEmailListItem = Omit<\n TReceivedEmailObject,\n 'html' | 'text' | 'headers' | 'raw' | 'object'\n>;\n\nexport type TReceivedEmailListResult = {\n data: TReceivedEmailListItem[];\n hasMore: boolean;\n};\n"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YACvB,QAAqB,CAAA,EAAA,MAAlB;YAEL,QAAA,CAAA,EAAA,MAAA;UACI,CAAA;QAAX,CAAA,CAAA,CAAA,CAAA,GAAA;UAAR,OAAA,EAAA,MAAA;QADyB,CAAA;MAAI,CAAA,CAAA,GAAA;QAIpB,GAAA,EAAA,CAAA,CAAA,OAiIc,CA/HT,EAAO;UAGD,KAAA,CAAA,aAAA,GAAA,SAAA;UAQA,cAAA,CAAA,0CAAA,SAAA;UAGI,OAAA,CAAA,EAAA,CAAA,CAAA,GAAA,SAAA;UAAwB,KAAA,CAAA,EAAA;YAC7B,IAAA,CAAA,EAAA,MAAA,GAAA,SAAA;YAAwB,KAAA,CAAA,EAAA,MAAA,GAAA,SAAA;YACjB,MAAA,CAAA,EAAA,MAAA,GAAA,SAAA;YACM,KAAA,CAAA,EAAA,MAAA,GAAA,SAAA;YAC4B,KAAA,CAAA,EAAA,MAAA,GAAA,SAAA;UA6G9C,CAAA,GAAA,SAAA;QAAS,CAAA,GAAA,SAAA,EAAA,UAAA,sBAAA,CAAA;UAAU,GAAA,EAAA;;;;;;;;;;YAab,IAAA,EAAA;cAMA,IAAA,EAAA;gBAID,IAAA,EAAA,MAAA;gBAKjB,QAAA,EAAA,MAAA;gBAEe,KAAA,EAAA,MAAA;gBAAoB,IAAA,EAAA,MAAA;gBAAR,QAAA,EAAA,OAAA,GAAA,IAAA;gBACjB,SAAA,MAAA,GAAA,IAAA;gBAAR,SAAA,MAAA,GAAA,IAAA;gBAAO,OAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAtKD,OAAA,GAAU,kBAAkB;KAE5B,KAAA,GAAQ,MAAA,CAAO,KACzB,QAAQ,WAAW;KAGhB,MAAA;;WAEM,KAAK,MAAA,CAAO;;cAGV,SAAA;;;;;eAQS;;0BAGI,wBAAwB;qBAC7B,wBAAwB;4BACjB;kCACM;8DAC4B;;;;;;;;KA6G3B;aAab;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAMA;YAID;;;;mBAOF,YAAY,QAAQ;MACjC,QAAQ"}
package/dist/index.d.mts CHANGED
@@ -3566,6 +3566,68 @@ declare const _createClient: () => {
3566
3566
  }>>) & {
3567
3567
  '~path': string;
3568
3568
  };
3569
+ lookup: {
3570
+ get: ((options?: {
3571
+ fetch?: RequestInit | undefined;
3572
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
3573
+ headers?: {} | undefined;
3574
+ query?: {
3575
+ page?: number | undefined;
3576
+ limit?: number | undefined;
3577
+ search?: string | undefined;
3578
+ } | undefined;
3579
+ } | undefined) => Promise<Treaty.TreatyResponse<{
3580
+ 200: {
3581
+ success: false;
3582
+ statusCode: number;
3583
+ data: null;
3584
+ message: string;
3585
+ error: TResponseError;
3586
+ meta: TResponseMeta;
3587
+ } | {
3588
+ success: true;
3589
+ statusCode: number;
3590
+ data: {
3591
+ data: {
3592
+ uuid: string;
3593
+ username: string;
3594
+ email: string;
3595
+ role: string;
3596
+ isActive: boolean | null;
3597
+ createdAt: Date | null;
3598
+ profile: {
3599
+ fullname: string;
3600
+ phoneNumber: string | null;
3601
+ } | null;
3602
+ }[];
3603
+ pagination: {
3604
+ page: number;
3605
+ limit: number;
3606
+ total: number;
3607
+ totalPages: number;
3608
+ hasNextPage: boolean;
3609
+ hasPreviousPage: boolean;
3610
+ };
3611
+ };
3612
+ message: null;
3613
+ error: null;
3614
+ meta: TResponseMeta;
3615
+ };
3616
+ 422: {
3617
+ type: "validation";
3618
+ on: string;
3619
+ summary?: string;
3620
+ message?: string;
3621
+ found?: unknown;
3622
+ property?: string;
3623
+ expected?: string;
3624
+ };
3625
+ }>>) & {
3626
+ '~path': string;
3627
+ };
3628
+ } & {
3629
+ '~path': string;
3630
+ };
3569
3631
  post: ((body: {
3570
3632
  email: string;
3571
3633
  password: string;
@@ -4872,6 +4934,359 @@ declare const _createClient: () => {
4872
4934
  } & {
4873
4935
  '~path': string;
4874
4936
  };
4937
+ dashboard: {
4938
+ overview: {
4939
+ get: ((options?: {
4940
+ fetch?: RequestInit | undefined;
4941
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
4942
+ headers?: {} | undefined;
4943
+ query?: {
4944
+ startDate?: string | undefined;
4945
+ endDate?: string | undefined;
4946
+ } | undefined;
4947
+ } | undefined) => Promise<Treaty.TreatyResponse<{
4948
+ 200: {
4949
+ success: false;
4950
+ statusCode: number;
4951
+ data: null;
4952
+ message: string;
4953
+ error: TResponseError;
4954
+ meta: TResponseMeta;
4955
+ } | {
4956
+ success: true;
4957
+ statusCode: number;
4958
+ data: {
4959
+ period: {
4960
+ startDate: string;
4961
+ endDate: string;
4962
+ };
4963
+ previousPeriod: {
4964
+ startDate: string;
4965
+ endDate: string;
4966
+ };
4967
+ revenue: {
4968
+ current: number;
4969
+ previous: number;
4970
+ changePercent: number | null;
4971
+ };
4972
+ orders: {
4973
+ current: number;
4974
+ previous: number;
4975
+ changePercent: number | null;
4976
+ };
4977
+ newCustomers: {
4978
+ current: number;
4979
+ previous: number;
4980
+ changePercent: number | null;
4981
+ };
4982
+ averageOrderValue: {
4983
+ current: number;
4984
+ previous: number;
4985
+ changePercent: number | null;
4986
+ };
4987
+ };
4988
+ message: null;
4989
+ error: null;
4990
+ meta: TResponseMeta;
4991
+ };
4992
+ 422: {
4993
+ type: "validation";
4994
+ on: string;
4995
+ summary?: string;
4996
+ message?: string;
4997
+ found?: unknown;
4998
+ property?: string;
4999
+ expected?: string;
5000
+ };
5001
+ }>>) & {
5002
+ '~path': string;
5003
+ };
5004
+ } & {
5005
+ '~path': string;
5006
+ };
5007
+ "revenue-trend": {
5008
+ get: ((options: {
5009
+ fetch?: RequestInit | undefined;
5010
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
5011
+ headers?: {} | undefined;
5012
+ query: {
5013
+ interval: "day" | "week" | "month";
5014
+ startDate?: string | undefined;
5015
+ endDate?: string | undefined;
5016
+ };
5017
+ }) => Promise<Treaty.TreatyResponse<{
5018
+ 200: {
5019
+ success: false;
5020
+ statusCode: number;
5021
+ data: null;
5022
+ message: string;
5023
+ error: TResponseError;
5024
+ meta: TResponseMeta;
5025
+ } | {
5026
+ success: true;
5027
+ statusCode: number;
5028
+ data: {
5029
+ interval: "day" | "week" | "month";
5030
+ series: {
5031
+ bucket: string;
5032
+ revenue: number;
5033
+ orderCount: number;
5034
+ }[];
5035
+ };
5036
+ message: null;
5037
+ error: null;
5038
+ meta: TResponseMeta;
5039
+ };
5040
+ 422: {
5041
+ type: "validation";
5042
+ on: string;
5043
+ summary?: string;
5044
+ message?: string;
5045
+ found?: unknown;
5046
+ property?: string;
5047
+ expected?: string;
5048
+ };
5049
+ }>>) & {
5050
+ '~path': string;
5051
+ };
5052
+ } & {
5053
+ '~path': string;
5054
+ };
5055
+ "top-products": {
5056
+ get: ((options: {
5057
+ fetch?: RequestInit | undefined;
5058
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
5059
+ headers?: {} | undefined;
5060
+ query: {
5061
+ limit: number;
5062
+ startDate?: string | undefined;
5063
+ endDate?: string | undefined;
5064
+ };
5065
+ }) => Promise<Treaty.TreatyResponse<{
5066
+ 200: {
5067
+ success: false;
5068
+ statusCode: number;
5069
+ data: null;
5070
+ message: string;
5071
+ error: TResponseError;
5072
+ meta: TResponseMeta;
5073
+ } | {
5074
+ success: true;
5075
+ statusCode: number;
5076
+ data: {
5077
+ productUuid: string | null;
5078
+ productName: string;
5079
+ unitsSold: number;
5080
+ revenue: number;
5081
+ }[];
5082
+ message: null;
5083
+ error: null;
5084
+ meta: TResponseMeta;
5085
+ };
5086
+ 422: {
5087
+ type: "validation";
5088
+ on: string;
5089
+ summary?: string;
5090
+ message?: string;
5091
+ found?: unknown;
5092
+ property?: string;
5093
+ expected?: string;
5094
+ };
5095
+ }>>) & {
5096
+ '~path': string;
5097
+ };
5098
+ } & {
5099
+ '~path': string;
5100
+ };
5101
+ "category-performance": {
5102
+ get: ((options: {
5103
+ fetch?: RequestInit | undefined;
5104
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
5105
+ headers?: {} | undefined;
5106
+ query: {
5107
+ limit: number;
5108
+ startDate?: string | undefined;
5109
+ endDate?: string | undefined;
5110
+ };
5111
+ }) => Promise<Treaty.TreatyResponse<{
5112
+ 200: {
5113
+ success: false;
5114
+ statusCode: number;
5115
+ data: null;
5116
+ message: string;
5117
+ error: TResponseError;
5118
+ meta: TResponseMeta;
5119
+ } | {
5120
+ success: true;
5121
+ statusCode: number;
5122
+ data: {
5123
+ categoryUuid: string | null;
5124
+ categoryName: string | null;
5125
+ revenue: number;
5126
+ unitsSold: number;
5127
+ estimatedMargin: number;
5128
+ }[];
5129
+ message: null;
5130
+ error: null;
5131
+ meta: TResponseMeta;
5132
+ };
5133
+ 422: {
5134
+ type: "validation";
5135
+ on: string;
5136
+ summary?: string;
5137
+ message?: string;
5138
+ found?: unknown;
5139
+ property?: string;
5140
+ expected?: string;
5141
+ };
5142
+ }>>) & {
5143
+ '~path': string;
5144
+ };
5145
+ } & {
5146
+ '~path': string;
5147
+ };
5148
+ "customer-growth": {
5149
+ get: ((options: {
5150
+ fetch?: RequestInit | undefined;
5151
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
5152
+ headers?: {} | undefined;
5153
+ query: {
5154
+ interval: "day" | "week" | "month";
5155
+ startDate?: string | undefined;
5156
+ endDate?: string | undefined;
5157
+ };
5158
+ }) => Promise<Treaty.TreatyResponse<{
5159
+ 200: {
5160
+ success: false;
5161
+ statusCode: number;
5162
+ data: null;
5163
+ message: string;
5164
+ error: TResponseError;
5165
+ meta: TResponseMeta;
5166
+ } | {
5167
+ success: true;
5168
+ statusCode: number;
5169
+ data: {
5170
+ interval: "day" | "week" | "month";
5171
+ series: {
5172
+ bucket: string;
5173
+ newSignups: number;
5174
+ cumulativeTotal: number;
5175
+ }[];
5176
+ };
5177
+ message: null;
5178
+ error: null;
5179
+ meta: TResponseMeta;
5180
+ };
5181
+ 422: {
5182
+ type: "validation";
5183
+ on: string;
5184
+ summary?: string;
5185
+ message?: string;
5186
+ found?: unknown;
5187
+ property?: string;
5188
+ expected?: string;
5189
+ };
5190
+ }>>) & {
5191
+ '~path': string;
5192
+ };
5193
+ } & {
5194
+ '~path': string;
5195
+ };
5196
+ "payment-methods": {
5197
+ get: ((options?: {
5198
+ fetch?: RequestInit | undefined;
5199
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
5200
+ headers?: {} | undefined;
5201
+ query?: {
5202
+ startDate?: string | undefined;
5203
+ endDate?: string | undefined;
5204
+ } | undefined;
5205
+ } | undefined) => Promise<Treaty.TreatyResponse<{
5206
+ 200: {
5207
+ success: false;
5208
+ statusCode: number;
5209
+ data: null;
5210
+ message: string;
5211
+ error: TResponseError;
5212
+ meta: TResponseMeta;
5213
+ } | {
5214
+ success: true;
5215
+ statusCode: number;
5216
+ data: {
5217
+ paymentMethod: string;
5218
+ transactionCount: number;
5219
+ totalAmount: number;
5220
+ }[];
5221
+ message: null;
5222
+ error: null;
5223
+ meta: TResponseMeta;
5224
+ };
5225
+ 422: {
5226
+ type: "validation";
5227
+ on: string;
5228
+ summary?: string;
5229
+ message?: string;
5230
+ found?: unknown;
5231
+ property?: string;
5232
+ expected?: string;
5233
+ };
5234
+ }>>) & {
5235
+ '~path': string;
5236
+ };
5237
+ } & {
5238
+ '~path': string;
5239
+ };
5240
+ "revenue-by-payment-type": {
5241
+ get: ((options?: {
5242
+ fetch?: RequestInit | undefined;
5243
+ throwHttpError?: _elysiajs_eden_dist_types_0YqzVuGd0.b | undefined;
5244
+ headers?: {} | undefined;
5245
+ query?: {
5246
+ startDate?: string | undefined;
5247
+ endDate?: string | undefined;
5248
+ } | undefined;
5249
+ } | undefined) => Promise<Treaty.TreatyResponse<{
5250
+ 200: {
5251
+ success: false;
5252
+ statusCode: number;
5253
+ data: null;
5254
+ message: string;
5255
+ error: TResponseError;
5256
+ meta: TResponseMeta;
5257
+ } | {
5258
+ success: true;
5259
+ statusCode: number;
5260
+ data: {
5261
+ total: number;
5262
+ byPaymentType: {
5263
+ paymentType: "OTHER" | "DEPOSIT" | "FULL_PAYMENT" | "PARTIAL_PAYMENT" | "FEE" | "ADJUSTMENT";
5264
+ transactionCount: number;
5265
+ totalAmount: number;
5266
+ }[];
5267
+ };
5268
+ message: null;
5269
+ error: null;
5270
+ meta: TResponseMeta;
5271
+ };
5272
+ 422: {
5273
+ type: "validation";
5274
+ on: string;
5275
+ summary?: string;
5276
+ message?: string;
5277
+ found?: unknown;
5278
+ property?: string;
5279
+ expected?: string;
5280
+ };
5281
+ }>>) & {
5282
+ '~path': string;
5283
+ };
5284
+ } & {
5285
+ '~path': string;
5286
+ };
5287
+ } & {
5288
+ '~path': string;
5289
+ };
4875
5290
  deposits: ((params: {
4876
5291
  depositId: string | number;
4877
5292
  }) => {
@@ -10417,10 +10832,12 @@ declare const _createClient: () => {
10417
10832
  headers?: {} | undefined;
10418
10833
  query?: {
10419
10834
  search?: string | undefined;
10835
+ customerEmail?: string | undefined;
10420
10836
  limit?: number | undefined;
10421
10837
  page?: number | undefined;
10422
10838
  isGuest?: boolean | undefined;
10423
10839
  customerUuid?: string | undefined;
10840
+ excludeUserUuid?: string | undefined;
10424
10841
  } | undefined;
10425
10842
  } | undefined) => Promise<Treaty.TreatyResponse<{
10426
10843
  200: {
@@ -17574,5 +17991,5 @@ declare class ClientApi {
17574
17991
  private _onUnauthorized?;
17575
17992
  }
17576
17993
  //#endregion
17577
- export { ClientApi, type ECartStatus, type ECartType, type ECountry, type EDimensionUnit, type EMediaEntityType, type EMimeType, type EProductInventoryStatus, type EProductStatus, type EProvider, type ERole, type EWeightUnit, type TResponse, type TResponseError, type TUser };
17994
+ export { ClientApi, type ECartStatus, type ECartType, type ECountry, type ECouponDiscountType, type ECouponScopeType, type EDimensionUnit, type EMediaEntityType, type EMimeType, type EProductInventoryStatus, type EProductStatus, type EProvider, type ERole, type EWeightUnit, type TResponse, type TResponseError, type TUser };
17578
17995
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":["AppType","router","EMediaEntityType","EMimeType","EWeightUnit","EDimensionUnit","ECountry","ERole","EFacebookPostStatus","EProvider","EProductStatus","EProductType","EProductInventoryStatus","ECartStatus","ECartType","ECouponDiscountType","ECouponScopeType","ECouponConditionType","ECouponConditionOperator","ECouponUsageStatus","TResponsePagination","TResponseError","TResponseMeta","TResponse","T","TPayloadJwt","TEmailTag","TEmailObject","TEmailListItem","Omit","TEmailListResult","TEmailIdResult","TEmailMutationResult","TEmailBatchResult","TAttachmentData","TAttachmentObject","TAttachmentListResult","TInboundAttachment","TReceivedEmailObject","Record","TReceivedEmailListItem","TReceivedEmailListResult"],"sources":["../../app/src/types.d.ts","../../app/src/modules/admin/email/email.types.d.ts","../src/utils.ts"],"sourcesContent":["import type { AppType } from './router';\n\nexport type AppType = typeof router;\n\nexport enum EMediaEntityType {\n PRODUCT = 'product',\n EXTRA_PRODUCT = 'extra_product',\n VARIANT = 'variant',\n CATEGORY = 'category',\n BRAND = 'brand',\n BLOG_POST = 'blog_post',\n SERIES = 'series',\n}\n\nexport enum EMimeType {\n IMAGE_WEBP = 'image/webp',\n IMAGE_JPEG = 'image/jpeg',\n IMAGE_JPG = 'image/jpg',\n IMAGE_PNG = 'image/png',\n IMAGE_GIF = 'image/gif',\n IMAGE_AVIF = 'image/avif',\n IMAGE_SVG = 'image/svg+xml',\n}\n\nexport enum EWeightUnit {\n KG = 'kg',\n G = 'g',\n LB = 'lb',\n OZ = 'oz',\n}\n\nexport enum EDimensionUnit {\n CM = 'cm',\n M = 'm',\n INCH = 'inch',\n FT = 'ft',\n}\n\nexport enum ECountry {\n VIETNAM = 'Vietnam',\n USA = 'USA',\n JAPAN = 'Japan',\n KOREA = 'Korea',\n CHINA = 'China',\n TAIWAN = 'Taiwan',\n THAILAND = 'Thailand',\n MALAYSIA = 'Malaysia',\n SINGAPORE = 'Singapore',\n INDONESIA = 'Indonesia',\n}\n\nexport enum ERole {\n SUPER_ADMIN = 'SUPER_ADMIN',\n ADMIN = 'ADMIN',\n MODERATOR = 'MODERATOR',\n STAFF = 'STAFF',\n EDITOR = 'EDITOR',\n VIEWER = 'VIEWER',\n USER = 'USER',\n}\n\nexport enum EFacebookPostStatus {\n DRAFT = 'draft',\n SCHEDULED = 'scheduled',\n PUBLISHED = 'published',\n FAILED = 'failed',\n}\n\nexport enum EProvider {\n BASIC = 'BASIC',\n FACEBOOK = 'FACEBOOK',\n GOOGLE = 'GOOGLE',\n GITHUB = 'GITHUB',\n TWITTER = 'TWITTER',\n}\n\nexport enum EProductStatus {\n DRAFT = 'draft',\n REVIEW = 'review',\n PUBLISHED = 'published',\n CANCELLED = 'cancelled',\n}\n\nexport enum EProductType {\n REGULAR = 'regular',\n GIFT = 'gift',\n}\n\nexport enum EProductInventoryStatus {\n IN_STOCK = 'in_stock',\n OUT_OF_STOCK = 'out_of_stock',\n ORDER = 'order',\n PREORDER = 'preorder',\n}\n\nexport enum ECartStatus {\n ACTIVE = 'active',\n COMPLETED = 'completed',\n ABANDONED = 'abandoned',\n EXPIRED = 'expired',\n}\n\nexport enum ECartType {\n IN_STOCK = 'in_stock',\n ORDER = 'order',\n}\n\nexport enum ECouponDiscountType {\n PERCENTAGE = 'PERCENTAGE',\n FIXED_AMOUNT = 'FIXED_AMOUNT',\n FREE_SHIPPING = 'FREE_SHIPPING',\n}\n\nexport enum ECouponScopeType {\n ORDER = 'ORDER',\n PRODUCT = 'PRODUCT',\n SHIPPING = 'SHIPPING',\n}\n\nexport enum ECouponConditionType {\n PRODUCT = 'PRODUCT',\n CATEGORY = 'CATEGORY',\n BRAND = 'BRAND',\n PRODUCT_ATTRIBUTE = 'PRODUCT_ATTRIBUTE',\n ORDER_AMOUNT = 'ORDER_AMOUNT',\n QUANTITY = 'QUANTITY',\n CUSTOMER_GROUP = 'CUSTOMER_GROUP',\n FIRST_ORDER = 'FIRST_ORDER',\n}\n\nexport enum ECouponConditionOperator {\n EQ = 'EQ',\n NEQ = 'NEQ',\n IN = 'IN',\n NOT_IN = 'NOT_IN',\n GT = 'GT',\n GTE = 'GTE',\n LT = 'LT',\n LTE = 'LTE',\n}\n\nexport enum ECouponUsageStatus {\n APPLIED = 'APPLIED',\n REFUNDED = 'REFUNDED',\n}\n\nexport type TResponsePagination = {\n page: number;\n limit: number;\n total: number;\n totalPages: number;\n hasNextPage: boolean;\n hasPreviousPage: boolean;\n};\n\nexport type TResponseError = {\n statusCode: number;\n message: string;\n reference?: string | null;\n fields?: {\n [key: string]: string;\n };\n};\n\nexport type TResponseMeta = {\n version: string;\n timestamp: string;\n path: string;\n pagination?: TResponsePagination;\n};\n\nexport type TResponse<T> = T extends string\n ?\n | {\n success: true;\n statusCode: number;\n data: null;\n message: string;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n }\n :\n | {\n success: true;\n statusCode: number;\n data: T;\n message: null;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n };\n\nexport type TPayloadJwt = {\n uuid: string;\n role: string;\n};\n\nexport type { AppType };\n","// App-local response types mirroring the Resend SDK shapes. The email module\n// proxies Resend, but its route responses must NOT reference Resend's vendor\n// types directly — those types live under `app/node_modules/resend` and cannot\n// be named portably when the SDK package generates its declaration files.\n// Returning these local types keeps `AppType` (and the generated SDK) portable.\n\nexport type TEmailTag = {\n name: string;\n value: string;\n};\n\nexport type TEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n tags?: TEmailTag[];\n topic_id?: string | null;\n last_event: string;\n scheduled_at: string | null;\n created_at: string;\n};\n\nexport type TEmailListItem = Omit<\n TEmailObject,\n 'html' | 'text' | 'tags' | 'object'\n>;\n\nexport type TEmailListResult = {\n data: TEmailListItem[];\n hasMore: boolean;\n};\n\nexport type TEmailIdResult = {\n id: string;\n};\n\nexport type TEmailMutationResult = {\n id: string;\n object: 'email';\n};\n\nexport type TEmailBatchResult = {\n data: TEmailIdResult[];\n};\n\nexport type TAttachmentData = {\n id: string;\n filename?: string;\n size: number;\n content_type: string;\n content_disposition: 'inline' | 'attachment';\n content_id?: string;\n download_url: string;\n expires_at: string;\n};\n\nexport type TAttachmentObject = TAttachmentData & {\n object: 'attachment';\n};\n\nexport type TAttachmentListResult = {\n data: TAttachmentData[];\n hasMore: boolean;\n};\n\nexport type TInboundAttachment = {\n id: string;\n filename: string | null;\n size: number;\n content_type: string;\n content_id: string | null;\n content_disposition: string | null;\n};\n\nexport type TReceivedEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n headers: Record<string, string> | null;\n message_id: string;\n raw?: { download_url: string; expires_at: string } | null;\n attachments: TInboundAttachment[];\n created_at: string;\n};\n\nexport type TReceivedEmailListItem = Omit<\n TReceivedEmailObject,\n 'html' | 'text' | 'headers' | 'raw' | 'object'\n>;\n\nexport type TReceivedEmailListResult = {\n data: TReceivedEmailListItem[];\n hasMore: boolean;\n};\n"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAtKD,OAAA,GAAU,kBAAkB;KAE5B,KAAA,GAAQ,MAAA,CAAO,KACzB,QAAQ,WAAW;KAGhB,MAAA;;WAEM,KAAK,MAAA,CAAO;;cAGV,SAAA;;;;;eAQS;;0BAGI,wBAAwB;qBAC7B,wBAAwB;4BACjB;kCACM;8DAC4B;;;;;;;;KA6G3B;aAab;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAMA;YAID;;;;mBAOF,YAAY,QAAQ;MACjC,QAAQ"}
1
+ {"version":3,"file":"index.d.mts","names":["AppType","router","EMediaEntityType","EMimeType","EWeightUnit","EDimensionUnit","ECountry","ERole","EFacebookPostStatus","EProvider","EProductStatus","EProductType","EProductInventoryStatus","ECartStatus","ECartType","ECouponDiscountType","ECouponScopeType","ECouponConditionType","ECouponConditionOperator","ECouponUsageStatus","TResponsePagination","TResponseError","TResponseMeta","TResponse","T","TPayloadJwt","TEmailTag","TEmailObject","TEmailListItem","Omit","TEmailListResult","TEmailIdResult","TEmailMutationResult","TEmailBatchResult","TAttachmentData","TAttachmentObject","TAttachmentListResult","TInboundAttachment","TReceivedEmailObject","Record","TReceivedEmailListItem","TReceivedEmailListResult"],"sources":["../../app/src/types.d.ts","../../app/src/modules/admin/email/email.types.d.ts","../src/utils.ts"],"sourcesContent":["import type { AppType } from './router';\n\nexport type AppType = typeof router;\n\nexport enum EMediaEntityType {\n PRODUCT = 'product',\n EXTRA_PRODUCT = 'extra_product',\n VARIANT = 'variant',\n CATEGORY = 'category',\n BRAND = 'brand',\n BLOG_POST = 'blog_post',\n SERIES = 'series',\n}\n\nexport enum EMimeType {\n IMAGE_WEBP = 'image/webp',\n IMAGE_JPEG = 'image/jpeg',\n IMAGE_JPG = 'image/jpg',\n IMAGE_PNG = 'image/png',\n IMAGE_GIF = 'image/gif',\n IMAGE_AVIF = 'image/avif',\n IMAGE_SVG = 'image/svg+xml',\n}\n\nexport enum EWeightUnit {\n KG = 'kg',\n G = 'g',\n LB = 'lb',\n OZ = 'oz',\n}\n\nexport enum EDimensionUnit {\n CM = 'cm',\n M = 'm',\n INCH = 'inch',\n FT = 'ft',\n}\n\nexport enum ECountry {\n VIETNAM = 'Vietnam',\n USA = 'USA',\n JAPAN = 'Japan',\n KOREA = 'Korea',\n CHINA = 'China',\n TAIWAN = 'Taiwan',\n THAILAND = 'Thailand',\n MALAYSIA = 'Malaysia',\n SINGAPORE = 'Singapore',\n INDONESIA = 'Indonesia',\n}\n\nexport enum ERole {\n SUPER_ADMIN = 'SUPER_ADMIN',\n ADMIN = 'ADMIN',\n MODERATOR = 'MODERATOR',\n STAFF = 'STAFF',\n EDITOR = 'EDITOR',\n VIEWER = 'VIEWER',\n USER = 'USER',\n}\n\nexport enum EFacebookPostStatus {\n DRAFT = 'draft',\n SCHEDULED = 'scheduled',\n PUBLISHED = 'published',\n FAILED = 'failed',\n}\n\nexport enum EProvider {\n BASIC = 'BASIC',\n FACEBOOK = 'FACEBOOK',\n GOOGLE = 'GOOGLE',\n GITHUB = 'GITHUB',\n TWITTER = 'TWITTER',\n}\n\nexport enum EProductStatus {\n DRAFT = 'draft',\n REVIEW = 'review',\n PUBLISHED = 'published',\n CANCELLED = 'cancelled',\n}\n\nexport enum EProductType {\n REGULAR = 'regular',\n GIFT = 'gift',\n}\n\nexport enum EProductInventoryStatus {\n IN_STOCK = 'in_stock',\n OUT_OF_STOCK = 'out_of_stock',\n ORDER = 'order',\n PREORDER = 'preorder',\n}\n\nexport enum ECartStatus {\n ACTIVE = 'active',\n COMPLETED = 'completed',\n ABANDONED = 'abandoned',\n EXPIRED = 'expired',\n}\n\nexport enum ECartType {\n IN_STOCK = 'in_stock',\n ORDER = 'order',\n}\n\nexport enum ECouponDiscountType {\n PERCENTAGE = 'PERCENTAGE',\n FIXED_AMOUNT = 'FIXED_AMOUNT',\n FREE_SHIPPING = 'FREE_SHIPPING',\n}\n\nexport enum ECouponScopeType {\n ORDER = 'ORDER',\n PRODUCT = 'PRODUCT',\n SHIPPING = 'SHIPPING',\n}\n\nexport enum ECouponConditionType {\n PRODUCT = 'PRODUCT',\n CATEGORY = 'CATEGORY',\n BRAND = 'BRAND',\n PRODUCT_ATTRIBUTE = 'PRODUCT_ATTRIBUTE',\n ORDER_AMOUNT = 'ORDER_AMOUNT',\n QUANTITY = 'QUANTITY',\n CUSTOMER_GROUP = 'CUSTOMER_GROUP',\n FIRST_ORDER = 'FIRST_ORDER',\n}\n\nexport enum ECouponConditionOperator {\n EQ = 'EQ',\n NEQ = 'NEQ',\n IN = 'IN',\n NOT_IN = 'NOT_IN',\n GT = 'GT',\n GTE = 'GTE',\n LT = 'LT',\n LTE = 'LTE',\n}\n\nexport enum ECouponUsageStatus {\n APPLIED = 'APPLIED',\n REFUNDED = 'REFUNDED',\n}\n\nexport type TResponsePagination = {\n page: number;\n limit: number;\n total: number;\n totalPages: number;\n hasNextPage: boolean;\n hasPreviousPage: boolean;\n};\n\nexport type TResponseError = {\n statusCode: number;\n message: string;\n reference?: string | null;\n fields?: {\n [key: string]: string;\n };\n};\n\nexport type TResponseMeta = {\n version: string;\n timestamp: string;\n path: string;\n pagination?: TResponsePagination;\n};\n\nexport type TResponse<T> = T extends string\n ?\n | {\n success: true;\n statusCode: number;\n data: null;\n message: string;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n }\n :\n | {\n success: true;\n statusCode: number;\n data: T;\n message: null;\n error: null;\n meta: TResponseMeta;\n }\n | {\n success: false;\n statusCode: number;\n data: null;\n message: string;\n error: TResponseError;\n meta: TResponseMeta;\n };\n\nexport type TPayloadJwt = {\n uuid: string;\n role: string;\n};\n\nexport type { AppType };\n","// App-local response types mirroring the Resend SDK shapes. The email module\n// proxies Resend, but its route responses must NOT reference Resend's vendor\n// types directly — those types live under `app/node_modules/resend` and cannot\n// be named portably when the SDK package generates its declaration files.\n// Returning these local types keeps `AppType` (and the generated SDK) portable.\n\nexport type TEmailTag = {\n name: string;\n value: string;\n};\n\nexport type TEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n tags?: TEmailTag[];\n topic_id?: string | null;\n last_event: string;\n scheduled_at: string | null;\n created_at: string;\n};\n\nexport type TEmailListItem = Omit<\n TEmailObject,\n 'html' | 'text' | 'tags' | 'object'\n>;\n\nexport type TEmailListResult = {\n data: TEmailListItem[];\n hasMore: boolean;\n};\n\nexport type TEmailIdResult = {\n id: string;\n};\n\nexport type TEmailMutationResult = {\n id: string;\n object: 'email';\n};\n\nexport type TEmailBatchResult = {\n data: TEmailIdResult[];\n};\n\nexport type TAttachmentData = {\n id: string;\n filename?: string;\n size: number;\n content_type: string;\n content_disposition: 'inline' | 'attachment';\n content_id?: string;\n download_url: string;\n expires_at: string;\n};\n\nexport type TAttachmentObject = TAttachmentData & {\n object: 'attachment';\n};\n\nexport type TAttachmentListResult = {\n data: TAttachmentData[];\n hasMore: boolean;\n};\n\nexport type TInboundAttachment = {\n id: string;\n filename: string | null;\n size: number;\n content_type: string;\n content_id: string | null;\n content_disposition: string | null;\n};\n\nexport type TReceivedEmailObject = {\n id: string;\n object: 'email';\n from: string;\n to: string[];\n subject: string;\n html: string | null;\n text: string | null;\n bcc: string[] | null;\n cc: string[] | null;\n reply_to: string[] | null;\n headers: Record<string, string> | null;\n message_id: string;\n raw?: { download_url: string; expires_at: string } | null;\n attachments: TInboundAttachment[];\n created_at: string;\n};\n\nexport type TReceivedEmailListItem = Omit<\n TReceivedEmailObject,\n 'html' | 'text' | 'headers' | 'raw' | 'object'\n>;\n\nexport type TReceivedEmailListResult = {\n data: TReceivedEmailListItem[];\n hasMore: boolean;\n};\n"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAtKD,OAAA,GAAU,kBAAkB;KAE5B,KAAA,GAAQ,MAAA,CAAO,KACzB,QAAQ,WAAW;KAGhB,MAAA;;WAEM,KAAK,MAAA,CAAO;;cAGV,SAAA;;;;;eAQS;;0BAGI,wBAAwB;qBAC7B,wBAAwB;4BACjB;kCACM;8DAC4B;;;;;;;;KA6G3B;aAab;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAMA;YAID;;;;mBAOF,YAAY,QAAQ;MACjC,QAAQ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@customafk/lunas-api-sdk",
3
- "version": "0.0.82",
3
+ "version": "0.0.84",
4
4
  "main": "./dist/index.cjs",
5
5
  "scripts": {
6
6
  "build": "tsdown"