@remnawave/backend-contract 2.0.0-alpha.10 → 2.0.0-alpha.12

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.
Files changed (51) hide show
  1. package/build/backend/commands/infra-billing/create-bill-record.command.d.ts +125 -0
  2. package/build/backend/commands/infra-billing/create-bill-record.command.d.ts.map +1 -0
  3. package/build/backend/commands/infra-billing/create-bill-record.command.js +31 -0
  4. package/build/backend/commands/infra-billing/delete-bill-record-by-uuid.command.d.ts +119 -0
  5. package/build/backend/commands/infra-billing/delete-bill-record-by-uuid.command.d.ts.map +1 -0
  6. package/build/backend/commands/infra-billing/delete-bill-record-by-uuid.command.js +22 -0
  7. package/build/backend/commands/infra-billing/get-bill-records.command.d.ts +122 -0
  8. package/build/backend/commands/infra-billing/get-bill-records.command.d.ts.map +1 -0
  9. package/build/backend/commands/infra-billing/get-bill-records.command.js +31 -0
  10. package/build/backend/commands/infra-billing/index.d.ts +3 -0
  11. package/build/backend/commands/infra-billing/index.d.ts.map +1 -1
  12. package/build/backend/commands/infra-billing/index.js +3 -0
  13. package/build/backend/commands/nodes/actions/disable.command.d.ts +36 -113
  14. package/build/backend/commands/nodes/actions/disable.command.d.ts.map +1 -1
  15. package/build/backend/commands/nodes/actions/enable.command.d.ts +36 -113
  16. package/build/backend/commands/nodes/actions/enable.command.d.ts.map +1 -1
  17. package/build/backend/commands/nodes/actions/reorder.command.d.ts +36 -154
  18. package/build/backend/commands/nodes/actions/reorder.command.d.ts.map +1 -1
  19. package/build/backend/commands/nodes/create.command.d.ts +38 -115
  20. package/build/backend/commands/nodes/create.command.d.ts.map +1 -1
  21. package/build/backend/commands/nodes/get-all.command.d.ts +36 -113
  22. package/build/backend/commands/nodes/get-all.command.d.ts.map +1 -1
  23. package/build/backend/commands/nodes/get-one.command.d.ts +36 -113
  24. package/build/backend/commands/nodes/get-one.command.d.ts.map +1 -1
  25. package/build/backend/commands/nodes/update.command.d.ts +38 -156
  26. package/build/backend/commands/nodes/update.command.d.ts.map +1 -1
  27. package/build/backend/constants/errors/errors.d.ts +15 -0
  28. package/build/backend/constants/errors/errors.d.ts.map +1 -1
  29. package/build/backend/constants/errors/errors.js +15 -0
  30. package/build/backend/models/index.d.ts +1 -0
  31. package/build/backend/models/index.d.ts.map +1 -1
  32. package/build/backend/models/index.js +1 -0
  33. package/build/backend/models/infra-billing-history-record.schema.d.ts +44 -0
  34. package/build/backend/models/infra-billing-history-record.schema.d.ts.map +1 -0
  35. package/build/backend/models/infra-billing-history-record.schema.js +19 -0
  36. package/build/backend/models/infra-provider.schema.d.ts +22 -0
  37. package/build/backend/models/infra-provider.schema.d.ts.map +1 -1
  38. package/build/backend/models/infra-provider.schema.js +15 -1
  39. package/build/backend/models/nodes.schema.d.ts +18 -77
  40. package/build/backend/models/nodes.schema.d.ts.map +1 -1
  41. package/build/backend/models/nodes.schema.js +1 -1
  42. package/build/frontend/commands/infra-billing/create-bill-record.command.js +31 -0
  43. package/build/frontend/commands/infra-billing/delete-bill-record-by-uuid.command.js +22 -0
  44. package/build/frontend/commands/infra-billing/get-bill-records.command.js +31 -0
  45. package/build/frontend/commands/infra-billing/index.js +3 -0
  46. package/build/frontend/constants/errors/errors.js +15 -0
  47. package/build/frontend/models/index.js +1 -0
  48. package/build/frontend/models/infra-billing-history-record.schema.js +19 -0
  49. package/build/frontend/models/infra-provider.schema.js +15 -1
  50. package/build/frontend/models/nodes.schema.js +1 -1
  51. package/package.json +1 -1
@@ -69,29 +69,6 @@ export declare namespace GetAllNodesCommand {
69
69
  loginUrl: z.ZodNullable<z.ZodString>;
70
70
  createdAt: z.ZodEffects<z.ZodString, Date, string>;
71
71
  updatedAt: z.ZodEffects<z.ZodString, Date, string>;
72
- billingHistory: z.ZodObject<{
73
- totalAmount: z.ZodNumber;
74
- totalBills: z.ZodNumber;
75
- }, "strip", z.ZodTypeAny, {
76
- totalAmount: number;
77
- totalBills: number;
78
- }, {
79
- totalAmount: number;
80
- totalBills: number;
81
- }>;
82
- billingNodes: z.ZodArray<z.ZodObject<{
83
- nodeUuid: z.ZodString;
84
- name: z.ZodString;
85
- countryCode: z.ZodString;
86
- }, "strip", z.ZodTypeAny, {
87
- name: string;
88
- countryCode: string;
89
- nodeUuid: string;
90
- }, {
91
- name: string;
92
- countryCode: string;
93
- nodeUuid: string;
94
- }>, "many">;
95
72
  }, "strip", z.ZodTypeAny, {
96
73
  uuid: string;
97
74
  createdAt: Date;
@@ -99,15 +76,6 @@ export declare namespace GetAllNodesCommand {
99
76
  name: string;
100
77
  faviconLink: string | null;
101
78
  loginUrl: string | null;
102
- billingHistory: {
103
- totalAmount: number;
104
- totalBills: number;
105
- };
106
- billingNodes: {
107
- name: string;
108
- countryCode: string;
109
- nodeUuid: string;
110
- }[];
111
79
  }, {
112
80
  uuid: string;
113
81
  createdAt: string;
@@ -115,15 +83,6 @@ export declare namespace GetAllNodesCommand {
115
83
  name: string;
116
84
  faviconLink: string | null;
117
85
  loginUrl: string | null;
118
- billingHistory: {
119
- totalAmount: number;
120
- totalBills: number;
121
- };
122
- billingNodes: {
123
- name: string;
124
- countryCode: string;
125
- nodeUuid: string;
126
- }[];
127
86
  }>>;
128
87
  }, "strip", z.ZodTypeAny, {
129
88
  uuid: string;
@@ -136,6 +95,15 @@ export declare namespace GetAllNodesCommand {
136
95
  viewPosition: number;
137
96
  address: string;
138
97
  isDisabled: boolean;
98
+ providerUuid: string | null;
99
+ provider: {
100
+ uuid: string;
101
+ createdAt: Date;
102
+ updatedAt: Date;
103
+ name: string;
104
+ faviconLink: string | null;
105
+ loginUrl: string | null;
106
+ } | null;
139
107
  isConnected: boolean;
140
108
  isConnecting: boolean;
141
109
  isNodeOnline: boolean;
@@ -164,24 +132,6 @@ export declare namespace GetAllNodesCommand {
164
132
  port: number | null;
165
133
  rawInbound?: unknown;
166
134
  }[] | null;
167
- providerUuid: string | null;
168
- provider: {
169
- uuid: string;
170
- createdAt: Date;
171
- updatedAt: Date;
172
- name: string;
173
- faviconLink: string | null;
174
- loginUrl: string | null;
175
- billingHistory: {
176
- totalAmount: number;
177
- totalBills: number;
178
- };
179
- billingNodes: {
180
- name: string;
181
- countryCode: string;
182
- nodeUuid: string;
183
- }[];
184
- } | null;
185
135
  }, {
186
136
  uuid: string;
187
137
  createdAt: string;
@@ -193,6 +143,15 @@ export declare namespace GetAllNodesCommand {
193
143
  viewPosition: number;
194
144
  address: string;
195
145
  isDisabled: boolean;
146
+ providerUuid: string | null;
147
+ provider: {
148
+ uuid: string;
149
+ createdAt: string;
150
+ updatedAt: string;
151
+ name: string;
152
+ faviconLink: string | null;
153
+ loginUrl: string | null;
154
+ } | null;
196
155
  isConnected: boolean;
197
156
  isConnecting: boolean;
198
157
  isNodeOnline: boolean;
@@ -221,24 +180,6 @@ export declare namespace GetAllNodesCommand {
221
180
  port: number | null;
222
181
  rawInbound?: unknown;
223
182
  }[] | null;
224
- providerUuid: string | null;
225
- provider: {
226
- uuid: string;
227
- createdAt: string;
228
- updatedAt: string;
229
- name: string;
230
- faviconLink: string | null;
231
- loginUrl: string | null;
232
- billingHistory: {
233
- totalAmount: number;
234
- totalBills: number;
235
- };
236
- billingNodes: {
237
- name: string;
238
- countryCode: string;
239
- nodeUuid: string;
240
- }[];
241
- } | null;
242
183
  }>, "many">;
243
184
  }, "strip", z.ZodTypeAny, {
244
185
  response: {
@@ -252,6 +193,15 @@ export declare namespace GetAllNodesCommand {
252
193
  viewPosition: number;
253
194
  address: string;
254
195
  isDisabled: boolean;
196
+ providerUuid: string | null;
197
+ provider: {
198
+ uuid: string;
199
+ createdAt: Date;
200
+ updatedAt: Date;
201
+ name: string;
202
+ faviconLink: string | null;
203
+ loginUrl: string | null;
204
+ } | null;
255
205
  isConnected: boolean;
256
206
  isConnecting: boolean;
257
207
  isNodeOnline: boolean;
@@ -280,24 +230,6 @@ export declare namespace GetAllNodesCommand {
280
230
  port: number | null;
281
231
  rawInbound?: unknown;
282
232
  }[] | null;
283
- providerUuid: string | null;
284
- provider: {
285
- uuid: string;
286
- createdAt: Date;
287
- updatedAt: Date;
288
- name: string;
289
- faviconLink: string | null;
290
- loginUrl: string | null;
291
- billingHistory: {
292
- totalAmount: number;
293
- totalBills: number;
294
- };
295
- billingNodes: {
296
- name: string;
297
- countryCode: string;
298
- nodeUuid: string;
299
- }[];
300
- } | null;
301
233
  }[];
302
234
  }, {
303
235
  response: {
@@ -311,6 +243,15 @@ export declare namespace GetAllNodesCommand {
311
243
  viewPosition: number;
312
244
  address: string;
313
245
  isDisabled: boolean;
246
+ providerUuid: string | null;
247
+ provider: {
248
+ uuid: string;
249
+ createdAt: string;
250
+ updatedAt: string;
251
+ name: string;
252
+ faviconLink: string | null;
253
+ loginUrl: string | null;
254
+ } | null;
314
255
  isConnected: boolean;
315
256
  isConnecting: boolean;
316
257
  isNodeOnline: boolean;
@@ -339,24 +280,6 @@ export declare namespace GetAllNodesCommand {
339
280
  port: number | null;
340
281
  rawInbound?: unknown;
341
282
  }[] | null;
342
- providerUuid: string | null;
343
- provider: {
344
- uuid: string;
345
- createdAt: string;
346
- updatedAt: string;
347
- name: string;
348
- faviconLink: string | null;
349
- loginUrl: string | null;
350
- billingHistory: {
351
- totalAmount: number;
352
- totalBills: number;
353
- };
354
- billingNodes: {
355
- name: string;
356
- countryCode: string;
357
- nodeUuid: string;
358
- }[];
359
- } | null;
360
283
  }[];
361
284
  }>;
362
285
  type Response = z.infer<typeof ResponseSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"get-all.command.d.ts","sourceRoot":"","sources":["../../../../commands/nodes/get-all.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,yBAAiB,kBAAkB,CAAC;IACzB,MAAM,GAAG,eAAqB,CAAC;IAC/B,MAAM,OAAO,eAAM,CAAC;IAEpB,MAAM,eAAe,2CAA+D,CAAC;IAErF,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEzB,CAAC;IAEH,KAAY,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;CACzD"}
1
+ {"version":3,"file":"get-all.command.d.ts","sourceRoot":"","sources":["../../../../commands/nodes/get-all.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,yBAAiB,kBAAkB,CAAC;IACzB,MAAM,GAAG,eAAqB,CAAC;IAC/B,MAAM,OAAO,eAAM,CAAC;IAEpB,MAAM,eAAe,2CAA+D,CAAC;IAErF,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEzB,CAAC;IAEH,KAAY,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;CACzD"}
@@ -77,29 +77,6 @@ export declare namespace GetOneNodeCommand {
77
77
  loginUrl: z.ZodNullable<z.ZodString>;
78
78
  createdAt: z.ZodEffects<z.ZodString, Date, string>;
79
79
  updatedAt: z.ZodEffects<z.ZodString, Date, string>;
80
- billingHistory: z.ZodObject<{
81
- totalAmount: z.ZodNumber;
82
- totalBills: z.ZodNumber;
83
- }, "strip", z.ZodTypeAny, {
84
- totalAmount: number;
85
- totalBills: number;
86
- }, {
87
- totalAmount: number;
88
- totalBills: number;
89
- }>;
90
- billingNodes: z.ZodArray<z.ZodObject<{
91
- nodeUuid: z.ZodString;
92
- name: z.ZodString;
93
- countryCode: z.ZodString;
94
- }, "strip", z.ZodTypeAny, {
95
- name: string;
96
- countryCode: string;
97
- nodeUuid: string;
98
- }, {
99
- name: string;
100
- countryCode: string;
101
- nodeUuid: string;
102
- }>, "many">;
103
80
  }, "strip", z.ZodTypeAny, {
104
81
  uuid: string;
105
82
  createdAt: Date;
@@ -107,15 +84,6 @@ export declare namespace GetOneNodeCommand {
107
84
  name: string;
108
85
  faviconLink: string | null;
109
86
  loginUrl: string | null;
110
- billingHistory: {
111
- totalAmount: number;
112
- totalBills: number;
113
- };
114
- billingNodes: {
115
- name: string;
116
- countryCode: string;
117
- nodeUuid: string;
118
- }[];
119
87
  }, {
120
88
  uuid: string;
121
89
  createdAt: string;
@@ -123,15 +91,6 @@ export declare namespace GetOneNodeCommand {
123
91
  name: string;
124
92
  faviconLink: string | null;
125
93
  loginUrl: string | null;
126
- billingHistory: {
127
- totalAmount: number;
128
- totalBills: number;
129
- };
130
- billingNodes: {
131
- name: string;
132
- countryCode: string;
133
- nodeUuid: string;
134
- }[];
135
94
  }>>;
136
95
  }, "strip", z.ZodTypeAny, {
137
96
  uuid: string;
@@ -144,6 +103,15 @@ export declare namespace GetOneNodeCommand {
144
103
  viewPosition: number;
145
104
  address: string;
146
105
  isDisabled: boolean;
106
+ providerUuid: string | null;
107
+ provider: {
108
+ uuid: string;
109
+ createdAt: Date;
110
+ updatedAt: Date;
111
+ name: string;
112
+ faviconLink: string | null;
113
+ loginUrl: string | null;
114
+ } | null;
147
115
  isConnected: boolean;
148
116
  isConnecting: boolean;
149
117
  isNodeOnline: boolean;
@@ -172,24 +140,6 @@ export declare namespace GetOneNodeCommand {
172
140
  port: number | null;
173
141
  rawInbound?: unknown;
174
142
  }[] | null;
175
- providerUuid: string | null;
176
- provider: {
177
- uuid: string;
178
- createdAt: Date;
179
- updatedAt: Date;
180
- name: string;
181
- faviconLink: string | null;
182
- loginUrl: string | null;
183
- billingHistory: {
184
- totalAmount: number;
185
- totalBills: number;
186
- };
187
- billingNodes: {
188
- name: string;
189
- countryCode: string;
190
- nodeUuid: string;
191
- }[];
192
- } | null;
193
143
  }, {
194
144
  uuid: string;
195
145
  createdAt: string;
@@ -201,6 +151,15 @@ export declare namespace GetOneNodeCommand {
201
151
  viewPosition: number;
202
152
  address: string;
203
153
  isDisabled: boolean;
154
+ providerUuid: string | null;
155
+ provider: {
156
+ uuid: string;
157
+ createdAt: string;
158
+ updatedAt: string;
159
+ name: string;
160
+ faviconLink: string | null;
161
+ loginUrl: string | null;
162
+ } | null;
204
163
  isConnected: boolean;
205
164
  isConnecting: boolean;
206
165
  isNodeOnline: boolean;
@@ -229,24 +188,6 @@ export declare namespace GetOneNodeCommand {
229
188
  port: number | null;
230
189
  rawInbound?: unknown;
231
190
  }[] | null;
232
- providerUuid: string | null;
233
- provider: {
234
- uuid: string;
235
- createdAt: string;
236
- updatedAt: string;
237
- name: string;
238
- faviconLink: string | null;
239
- loginUrl: string | null;
240
- billingHistory: {
241
- totalAmount: number;
242
- totalBills: number;
243
- };
244
- billingNodes: {
245
- name: string;
246
- countryCode: string;
247
- nodeUuid: string;
248
- }[];
249
- } | null;
250
191
  }>;
251
192
  }, "strip", z.ZodTypeAny, {
252
193
  response: {
@@ -260,6 +201,15 @@ export declare namespace GetOneNodeCommand {
260
201
  viewPosition: number;
261
202
  address: string;
262
203
  isDisabled: boolean;
204
+ providerUuid: string | null;
205
+ provider: {
206
+ uuid: string;
207
+ createdAt: Date;
208
+ updatedAt: Date;
209
+ name: string;
210
+ faviconLink: string | null;
211
+ loginUrl: string | null;
212
+ } | null;
263
213
  isConnected: boolean;
264
214
  isConnecting: boolean;
265
215
  isNodeOnline: boolean;
@@ -288,24 +238,6 @@ export declare namespace GetOneNodeCommand {
288
238
  port: number | null;
289
239
  rawInbound?: unknown;
290
240
  }[] | null;
291
- providerUuid: string | null;
292
- provider: {
293
- uuid: string;
294
- createdAt: Date;
295
- updatedAt: Date;
296
- name: string;
297
- faviconLink: string | null;
298
- loginUrl: string | null;
299
- billingHistory: {
300
- totalAmount: number;
301
- totalBills: number;
302
- };
303
- billingNodes: {
304
- name: string;
305
- countryCode: string;
306
- nodeUuid: string;
307
- }[];
308
- } | null;
309
241
  };
310
242
  }, {
311
243
  response: {
@@ -319,6 +251,15 @@ export declare namespace GetOneNodeCommand {
319
251
  viewPosition: number;
320
252
  address: string;
321
253
  isDisabled: boolean;
254
+ providerUuid: string | null;
255
+ provider: {
256
+ uuid: string;
257
+ createdAt: string;
258
+ updatedAt: string;
259
+ name: string;
260
+ faviconLink: string | null;
261
+ loginUrl: string | null;
262
+ } | null;
322
263
  isConnected: boolean;
323
264
  isConnecting: boolean;
324
265
  isNodeOnline: boolean;
@@ -347,24 +288,6 @@ export declare namespace GetOneNodeCommand {
347
288
  port: number | null;
348
289
  rawInbound?: unknown;
349
290
  }[] | null;
350
- providerUuid: string | null;
351
- provider: {
352
- uuid: string;
353
- createdAt: string;
354
- updatedAt: string;
355
- name: string;
356
- faviconLink: string | null;
357
- loginUrl: string | null;
358
- billingHistory: {
359
- totalAmount: number;
360
- totalBills: number;
361
- };
362
- billingNodes: {
363
- name: string;
364
- countryCode: string;
365
- nodeUuid: string;
366
- }[];
367
- } | null;
368
291
  };
369
292
  }>;
370
293
  type Response = z.infer<typeof ResponseSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"get-one.command.d.ts","sourceRoot":"","sources":["../../../../commands/nodes/get-one.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,yBAAiB,iBAAiB,CAAC;IACxB,MAAM,GAAG,0BAA6B,CAAC;IACvC,MAAM,OAAO,QAAe,CAAC;IAE7B,MAAM,eAAe,2CAI3B,CAAC;IAEK,MAAM,aAAa;;;;;;MAExB,CAAC;IAEH,KAAY,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;IAE7C,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEzB,CAAC;IAEH,KAAY,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;CACzD"}
1
+ {"version":3,"file":"get-one.command.d.ts","sourceRoot":"","sources":["../../../../commands/nodes/get-one.command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,yBAAiB,iBAAiB,CAAC;IACxB,MAAM,GAAG,0BAA6B,CAAC;IACvC,MAAM,OAAO,QAAe,CAAC;IAE7B,MAAM,eAAe,2CAI3B,CAAC;IAEK,MAAM,aAAa;;;;;;MAExB,CAAC;IAEH,KAAY,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;IAE7C,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEzB,CAAC;IAEH,KAAY,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;CACzD"}