@ramiidv/arca-agro 0.2.0 → 0.3.0

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 (61) hide show
  1. package/README.md +211 -179
  2. package/dist/arca-agro.d.ts +25 -140
  3. package/dist/arca-agro.d.ts.map +1 -1
  4. package/dist/arca-agro.js +69 -264
  5. package/dist/arca-agro.js.map +1 -1
  6. package/dist/constants.d.ts +34 -8
  7. package/dist/constants.d.ts.map +1 -1
  8. package/dist/constants.js +34 -11
  9. package/dist/constants.js.map +1 -1
  10. package/dist/context.d.ts +13 -0
  11. package/dist/context.d.ts.map +1 -0
  12. package/dist/context.js +2 -0
  13. package/dist/context.js.map +1 -0
  14. package/dist/cpe-client.d.ts +95 -51
  15. package/dist/cpe-client.d.ts.map +1 -1
  16. package/dist/cpe-client.js +236 -228
  17. package/dist/cpe-client.js.map +1 -1
  18. package/dist/cpe-schemas.d.ts +76 -0
  19. package/dist/cpe-schemas.d.ts.map +1 -0
  20. package/dist/cpe-schemas.js +512 -0
  21. package/dist/cpe-schemas.js.map +1 -0
  22. package/dist/cpe-types.d.ts +599 -0
  23. package/dist/cpe-types.d.ts.map +1 -0
  24. package/dist/cpe-types.js +2 -0
  25. package/dist/cpe-types.js.map +1 -0
  26. package/dist/errors.d.ts +38 -0
  27. package/dist/errors.d.ts.map +1 -0
  28. package/dist/errors.js +53 -0
  29. package/dist/errors.js.map +1 -0
  30. package/dist/index.d.ts +10 -10
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +8 -13
  33. package/dist/index.js.map +1 -1
  34. package/dist/lpg-client.d.ts +64 -43
  35. package/dist/lpg-client.d.ts.map +1 -1
  36. package/dist/lpg-client.js +215 -175
  37. package/dist/lpg-client.js.map +1 -1
  38. package/dist/lpg-schemas.d.ts +50 -0
  39. package/dist/lpg-schemas.d.ts.map +1 -0
  40. package/dist/lpg-schemas.js +478 -0
  41. package/dist/lpg-schemas.js.map +1 -0
  42. package/dist/lpg-types.d.ts +470 -0
  43. package/dist/lpg-types.d.ts.map +1 -0
  44. package/dist/lpg-types.js +2 -0
  45. package/dist/lpg-types.js.map +1 -0
  46. package/dist/schema.d.ts +90 -0
  47. package/dist/schema.d.ts.map +1 -0
  48. package/dist/schema.js +301 -0
  49. package/dist/schema.js.map +1 -0
  50. package/dist/types.d.ts +33 -455
  51. package/dist/types.d.ts.map +1 -1
  52. package/dist/validation.d.ts +22 -43
  53. package/dist/validation.d.ts.map +1 -1
  54. package/dist/validation.js +31 -134
  55. package/dist/validation.js.map +1 -1
  56. package/llms.txt +78 -159
  57. package/package.json +6 -7
  58. package/dist/ctg-client.d.ts +0 -56
  59. package/dist/ctg-client.d.ts.map +0 -1
  60. package/dist/ctg-client.js +0 -214
  61. package/dist/ctg-client.js.map +0 -1
@@ -0,0 +1,478 @@
1
+ /**
2
+ * Schemas de WSLPG, transcriptos del XSD embebido en el WSDL oficial
3
+ * (https://fwshomo.afip.gov.ar/wslpg/LpgService?wsdl). El orden de las claves
4
+ * es el orden de la `xsd:sequence`.
5
+ *
6
+ * @internal
7
+ */
8
+ import { base64, cuit, date, dec, id, int, list, must, obj, opt, str, wrapped } from './schema.js';
9
+ // ---------------------------------------------------------------------------
10
+ // Tipos simples (XSD)
11
+ // ---------------------------------------------------------------------------
12
+ const ptoEmision = () => int(1, 9999); // LpgPtoEmision
13
+ const nroOrden = () => int(0); // long
14
+ const ib = () => int(0, 999999999999999); // LpgIbType
15
+ const actividad = () => int(0, 999999, true); // LpgActividadType
16
+ const codGrano = () => int(0, 999, true); // LpgCodigoGranoType
17
+ const pesoNeto = () => int(0, 99999999, true); // LpgPesoNetoType
18
+ const codLocalidad = () => int(0, 999999, true); // LpgCodLocProcedenciaType
19
+ const codProvincia = () => int(0, 99); // LpgCodProvProcedenciaType
20
+ const campania = () => int(203, 9999); // LpgCampaniaType
21
+ const siNo = () => str({ values: ['S', 'N'] }); // LpgSiNoType
22
+ const alicuota = () => dec(4, 0, 100); // LpgAlicuotaType
23
+ const importe17_2 = () => dec(2, 0, 99999999999999999.99); // LpgImporte_17_2_Type
24
+ const gradoCodigo = () => str({ maxLen: 2 }); // LpgGradoCodigoType
25
+ const gradoValor = () => dec(8, 0, 1.99999999, true); // LpgGradoValorType
26
+ const factor = () => dec(8, 0, 999.99999999, true); // LpgFactorEntType
27
+ const precioRefTn = () => dec(3, 0, 999999999.999); // LpgPrecioRefTnType
28
+ const precioFleteTn = () => dec(2, 0, 9999999.99); // LpgPrecioFleteTnType
29
+ const datosAdicionales = () => str({ minLen: 0, maxLen: 400 }); // LpgDatosAdicionalesType
30
+ const numeroContrato = () => int(0, 999999999999999, true); // LpgNumeroContratoType
31
+ const importe12_2 = () => dec(2, 0, 999999999999.98); // LpgImporte12_2Type (maxExclusive 999999999999.99)
32
+ const conceptoImporte = () => str({ minLen: 0, maxLen: 200 }); // LpgConceptoImporteType
33
+ const zImporte8_2 = () => dec(2, 0, 99999999.99); // NumeroZ_8_2_Type
34
+ const porcentaje = () => dec(2, 0, 100); // LpgPorcentajeType
35
+ // ---------------------------------------------------------------------------
36
+ // Requests
37
+ // ---------------------------------------------------------------------------
38
+ /** LpgCodigoDescripcionType */
39
+ const CODIGO_DESCRIPCION = { codigo: str(), descripcion: str() };
40
+ /** LpgCertType */
41
+ const CERTIFICADO = {
42
+ tipoCertificadoDeposito: str({ maxLen: 3 }),
43
+ nroCertificadoDeposito: int(100000000, 999999999999, true),
44
+ pesoNeto: pesoNeto(),
45
+ pesoNetoTotalCertificado: opt(pesoNeto()),
46
+ codLocalidadProcedencia: codLocalidad(),
47
+ codProvProcedencia: codProvincia(),
48
+ campania: campania(),
49
+ fechaCierre: date(),
50
+ };
51
+ /** LpgLiquidacionBaseType */
52
+ export const LIQUIDACION_BASE = {
53
+ ptoEmision: ptoEmision(),
54
+ nroOrden: nroOrden(),
55
+ numeroContrato: opt(numeroContrato()),
56
+ cuitComprador: cuit(),
57
+ nroActComprador: actividad(),
58
+ nroIngBrutoComprador: ib(),
59
+ codTipoOperacion: str({ minLen: 0, maxLen: 2 }),
60
+ esLiquidacionPropia: opt(siNo()),
61
+ esCanje: opt(str({ values: ['P', 'T', 'N'] })),
62
+ codPuerto: int(0, 9999, true),
63
+ desPuertoLocalidad: opt(str({ maxLen: 240 })),
64
+ codGrano: codGrano(),
65
+ pesoNetoSinCertificado: opt(pesoNeto()),
66
+ codLocalidadProcedenciaSinCertificado: opt(codLocalidad()),
67
+ codProvProcedenciaSinCertificado: opt(codProvincia()),
68
+ cuitVendedor: cuit(),
69
+ nroIngBrutoVendedor: ib(),
70
+ actuaCorredor: opt(siNo()),
71
+ liquidaCorredor: siNo(),
72
+ cuitCorredor: opt(cuit()),
73
+ comisionCorredor: opt(dec(2, 0, 99.99)),
74
+ nroIngBrutoCorredor: opt(ib()),
75
+ fechaPrecioOperacion: date(),
76
+ precioRefTn: precioRefTn(),
77
+ codGradoRef: opt(gradoCodigo()),
78
+ codGradoEnt: opt(gradoCodigo()),
79
+ valGradoEnt: opt(gradoValor()),
80
+ factorEnt: opt(factor()),
81
+ precioFleteTn: precioFleteTn(),
82
+ contProteico: opt(dec(3, 0, 999.999)),
83
+ alicIvaOperacion: opt(alicuota()),
84
+ campaniaPPal: campania(),
85
+ codLocalidadProcedencia: codLocalidad(),
86
+ codProvProcedencia: codProvincia(),
87
+ datosAdicionales: opt(datosAdicionales()),
88
+ certificados: opt(wrapped('certificado', obj(CERTIFICADO))),
89
+ opcionales: opt(wrapped('opcional', obj(CODIGO_DESCRIPCION))),
90
+ };
91
+ /** LpgDeduccionType */
92
+ const DEDUCCION = {
93
+ codigoConcepto: str({ maxLen: 2 }),
94
+ detalleAclaratorio: opt(str({ minLen: 0, maxLen: 50 })),
95
+ diasAlmacenaje: opt(int(0, 9999)),
96
+ precioPKGdiario: opt(dec(8, 0, 999999.99999999)),
97
+ comisionGastosAdm: opt(dec(2, 0, 99.99)),
98
+ baseCalculo: opt(dec(8, 0)),
99
+ alicuotaIva: alicuota(),
100
+ };
101
+ /** LpgRetencionType */
102
+ const RETENCION = {
103
+ codigoConcepto: str({ maxLen: 2 }),
104
+ detalleAclaratorio: opt(str({ minLen: 0, maxLen: 50 })),
105
+ baseCalculo: opt(dec(11, 0)),
106
+ alicuota: alicuota(),
107
+ nroCertificadoRetencion: opt(int(0, 99999999999999)),
108
+ fechaCertificadoRetencion: opt(date()),
109
+ importeCertificadoRetencion: opt(importe17_2()),
110
+ };
111
+ /** LpgPercepcionType */
112
+ const PERCEPCION = {
113
+ descripcion: str({ minLen: 0, maxLen: 50 }),
114
+ importeFinal: importe17_2(),
115
+ };
116
+ /** LpgLiqReqType (sin `auth`) */
117
+ export const LIQUIDACION_AUTORIZAR = {
118
+ liquidacion: obj(LIQUIDACION_BASE),
119
+ deducciones: opt(wrapped('deduccion', obj(DEDUCCION))),
120
+ retenciones: opt(wrapped('retencion', obj(RETENCION))),
121
+ percepciones: opt(wrapped('percepcion', obj(PERCEPCION))),
122
+ };
123
+ /** LpgAjusteCreditoType / LpgAjusteDebitoType */
124
+ const AJUSTE_CREDITO_DEBITO = {
125
+ certificados: opt(wrapped('certificado', obj({ coe: id(), pesoAjustado: pesoNeto() }))),
126
+ diferenciaPesoNeto: int(0, 99999998),
127
+ diferenciaPrecioOperacion: precioRefTn(),
128
+ codGrado: opt(gradoCodigo()),
129
+ valGrado: opt(gradoValor()),
130
+ factor: opt(factor()),
131
+ diferenciaPrecioFleteTn: precioFleteTn(),
132
+ datosAdicionales: opt(datosAdicionales()),
133
+ opcionales: opt(wrapped('opcional', obj(CODIGO_DESCRIPCION))),
134
+ conceptoImporteIva0: opt(conceptoImporte()),
135
+ importeAjustarIva0: opt(importe12_2()),
136
+ conceptoImporteIva105: opt(conceptoImporte()),
137
+ importeAjustarIva105: opt(importe12_2()),
138
+ conceptoImporteIva21: opt(conceptoImporte()),
139
+ importeAjustarIva21: opt(importe12_2()),
140
+ deducciones: opt(wrapped('deduccion', obj(DEDUCCION))),
141
+ retenciones: opt(wrapped('retencion', obj(RETENCION))),
142
+ };
143
+ /** LpgAjusteUnificadoReqType (sin `auth`) */
144
+ export const AJUSTE_UNIFICADO = {
145
+ ajusteBase: obj({
146
+ ptoEmision: ptoEmision(),
147
+ nroOrden: nroOrden(),
148
+ coeAjustado: id(),
149
+ certificados: opt(wrapped('certificado', obj(CERTIFICADO))),
150
+ codLocalidad: codLocalidad(),
151
+ codProv: codProvincia(),
152
+ fusion: opt(obj({ nroIngBrutos: ib(), nroActividad: actividad() })),
153
+ }),
154
+ ajusteCredito: opt(obj(AJUSTE_CREDITO_DEBITO)),
155
+ ajusteDebito: opt(obj(AJUSTE_CREDITO_DEBITO)),
156
+ };
157
+ /** LpgLiqConsXCoeReqType (sin `auth`): también lo usan cgSolicitarAnulacion y cgConfirmarAnulacion */
158
+ export const CONSULTA_X_COE = { coe: id(), pdf: opt(siNo()) };
159
+ /** LpgLiqConsXNroOrdenReqType (sin `auth`) */
160
+ export const CONSULTA_X_NRO_ORDEN = { ptoEmision: ptoEmision(), nroOrden: nroOrden() };
161
+ /** LpgLiqUltNroOrdenReqType (sin `auth`) */
162
+ export const ULT_NRO_ORDEN = { ptoEmision: ptoEmision() };
163
+ /** LpgAnulacionReqType (sin `auth`) */
164
+ export const ANULACION = { coe: id() };
165
+ /** LpgLocalidadReqType: `codProvincia` es `xs:string` */
166
+ export const LOCALIDADES = { codProvincia: str() };
167
+ /** LpgTipoOperacionReqType */
168
+ export const TIPO_OPERACION = { nroActLiquida: int(0) };
169
+ /** LpgGradoEntReqType */
170
+ export const GRADO_ENTREGADO = { codGrano: codGrano() };
171
+ // --- Certificación de granos (cgAutorizar) ---------------------------------
172
+ const MERMAS = {
173
+ porcentajeSecadoHumedad: porcentaje(),
174
+ importeSecado: zImporte8_2(),
175
+ pesoNetoMermaSecado: zImporte8_2(),
176
+ tarifaSecado: zImporte8_2(),
177
+ importeZarandeo: zImporte8_2(),
178
+ pesoNetoMermaZarandeo: zImporte8_2(),
179
+ tarifaZarandeo: zImporte8_2(),
180
+ };
181
+ /** CgAutorizarReqType (sin `auth`) */
182
+ export const CG_AUTORIZAR = {
183
+ cabecera: obj({
184
+ tipoCertificado: str({ values: ['P', 'R', 'T', 'E'] }),
185
+ ptoEmision: ptoEmision(),
186
+ nroOrden: nroOrden(),
187
+ nroIngBrutoDepositario: ib(),
188
+ titularGrano: str({ values: ['P', 'T'] }),
189
+ cuitDepositante: opt(cuit()),
190
+ nroIngBrutoDepositante: opt(ib()),
191
+ codGrano: codGrano(),
192
+ campania: campania(),
193
+ cuitCorredor: opt(cuit()),
194
+ datosAdicionales: opt(datosAdicionales()),
195
+ }),
196
+ primaria: opt(obj({
197
+ nroActDepositario: actividad(),
198
+ ctg: opt(list(obj({
199
+ nroCTG: id(),
200
+ nroCartaDePorte: str(),
201
+ pesoNetoConfirmadoDefinitivo: zImporte8_2(),
202
+ ...MERMAS,
203
+ }), 0)),
204
+ cartaPorteFerroviaria: opt(list(obj({
205
+ nroCartaPorte: int(0, 999999999, true),
206
+ pesoNetoConfirmadoDefinitivo: zImporte8_2(),
207
+ ...MERMAS,
208
+ }), 0)),
209
+ descripcionTipoGrano: str({ minLen: 0, maxLen: 20 }),
210
+ montoAlmacenaje: zImporte8_2(),
211
+ montoAcarreo: zImporte8_2(),
212
+ montoGastosGenerales: zImporte8_2(),
213
+ montoZarandeo: zImporte8_2(),
214
+ porcentajeSecadoDe: porcentaje(),
215
+ porcentajeSecadoA: porcentaje(),
216
+ montoSecado: zImporte8_2(),
217
+ montoPorCadaPuntoExceso: zImporte8_2(),
218
+ montoOtros: zImporte8_2(),
219
+ calidad: opt(obj({
220
+ analisisMuestra: int(0, 9999999999, true),
221
+ nroBoletin: int(0, 9999999999, true),
222
+ codGrado: opt(gradoCodigo()),
223
+ valorGrado: opt(dec(2, 0, 1.99, true)),
224
+ valorContProteico: dec(2, 0, 999.99),
225
+ valorFactor: opt(factor()),
226
+ detalleMuestraAnalisis: opt(list(obj({
227
+ descripcionRubro: str({ minLen: 0, maxLen: 400 }),
228
+ tipoRubro: str({ values: ['B', 'R'] }),
229
+ porcentaje: porcentaje(),
230
+ valor: dec(2, 0, 999.99),
231
+ }), 0)),
232
+ })),
233
+ pesoNetoMermaVolatil: zImporte8_2(),
234
+ serviciosFormaDePago: opt(str({ minLen: 0, maxLen: 20 })),
235
+ serviciosOtros: opt(zImporte8_2()),
236
+ serviciosConceptosNoGravados: opt(zImporte8_2()),
237
+ serviciosPercepcionesIVA: opt(zImporte8_2()),
238
+ serviciosOtrasPercepciones: opt(zImporte8_2()),
239
+ })),
240
+ retiroTransferencia: opt(obj({
241
+ certificadoDeposito: obj({ coeCertificadoDeposito: id(), pesoNeto: pesoNeto() }),
242
+ nroActDepositario: actividad(),
243
+ cuitReceptor: opt(cuit()),
244
+ nroCartaPorteAUtilizar: opt(str()),
245
+ nroCTG: opt(id()),
246
+ descripcionCausaJudicial: opt(str({ minLen: 0, maxLen: 400 })),
247
+ })),
248
+ preexistente: opt(obj({
249
+ nroPlanta: int(0, 999999, true),
250
+ tipoCertificadoDepositoPreexistente: int(0, 9, true),
251
+ nroCertificadoDepositoPreexistente: int(0, 999999999999, true),
252
+ cacCertificadoDepositoPreexistente: int(0, 99999999999999, true),
253
+ fechaEmisionCertificadoDepositoPreexistente: date(),
254
+ pesoNeto: dec(3, 0, 99999999.999, true),
255
+ })),
256
+ preexistenteFusion: opt(obj({
257
+ nroPlanta: int(0, 999999, true),
258
+ nroCertificadoDepositoPreexistente: int(0, 999999999999, true),
259
+ fechaEmisionCertificadoDepositoPreexistente: date(),
260
+ pesoNeto: dec(3, 0, 99999999.999),
261
+ })),
262
+ };
263
+ // ---------------------------------------------------------------------------
264
+ // Respuestas
265
+ // ---------------------------------------------------------------------------
266
+ /** LpgCodigoDescripcionType */
267
+ export const R_CODIGO_DESCRIPCION = { codigo: must(str()), descripcion: must(str()) };
268
+ /** `eventos.evento[]` (LpgArrEventoType) */
269
+ export const R_EVENTOS = { eventos: wrapped('evento', obj(R_CODIGO_DESCRIPCION), 0) };
270
+ const R_DEDUCCION = {
271
+ codigoConcepto: str(),
272
+ detalleAclaratorio: str(),
273
+ diasAlmacenaje: int(),
274
+ precioPKGdiario: dec(8),
275
+ comisionGastosAdm: dec(2),
276
+ baseCalculo: dec(8),
277
+ alicuotaIva: dec(4),
278
+ };
279
+ const R_RETENCION = {
280
+ codigoConcepto: str(),
281
+ detalleAclaratorio: str(),
282
+ baseCalculo: dec(11),
283
+ alicuota: dec(4),
284
+ nroCertificadoRetencion: int(),
285
+ fechaCertificadoRetencion: date(),
286
+ importeCertificadoRetencion: dec(2),
287
+ };
288
+ const R_DEDUCCIONES = wrapped('deduccionReturn', obj({ deduccion: opt(obj(R_DEDUCCION)), importeIva: dec(2), importeDeduccion: dec(2) }), 0);
289
+ const R_RETENCIONES = wrapped('retencionReturn', obj({ retencion: opt(obj(R_RETENCION)), importeRetencion: dec(2) }), 0);
290
+ /** LpgLiquidacionRespType */
291
+ export const R_LIQUIDACION_AUTORIZADA = {
292
+ ptoEmision: int(),
293
+ nroOrden: int(),
294
+ codTipoOperacion: str(),
295
+ codTipoAjuste: str(),
296
+ nroOpComercial: int(),
297
+ fechaLiquidacion: date(),
298
+ precioOperacion: dec(3),
299
+ subTotal: dec(2),
300
+ importeIva: dec(2),
301
+ operacionConIva: dec(2),
302
+ totalPesoNeto: int(),
303
+ percepciones: wrapped('percepcion', obj({ descripcion: str(), baseCalculo: dec(2), alicuota: dec(4), importeFinal: dec(2) }), 0),
304
+ totalPercepcion: dec(2),
305
+ deducciones: R_DEDUCCIONES,
306
+ totalDeduccion: dec(2),
307
+ retenciones: R_RETENCIONES,
308
+ totalRetencion: dec(2),
309
+ totalRetencionAfip: dec(2),
310
+ totalOtrasRetenciones: dec(2),
311
+ totalNetoAPagar: dec(2),
312
+ totalIvaRg4310_18: dec(2),
313
+ totalPagoSegunCondicion: dec(2),
314
+ coe: id(),
315
+ coeAjustado: id(),
316
+ numeroContrato: int(),
317
+ estado: str(),
318
+ };
319
+ const R_CERTIFICADO = {
320
+ tipoCertificadoDeposito: str(),
321
+ nroCertificadoDeposito: int(),
322
+ pesoNeto: int(),
323
+ pesoNetoTotalCertificado: int(),
324
+ codLocalidadProcedencia: int(),
325
+ codProvProcedencia: int(),
326
+ campania: int(),
327
+ fechaCierre: date(),
328
+ };
329
+ /** LpgLiquidacionBaseType (respuesta de las consultas) */
330
+ export const R_LIQUIDACION_BASE = {
331
+ ptoEmision: int(),
332
+ nroOrden: int(),
333
+ numeroContrato: int(),
334
+ cuitComprador: cuit(),
335
+ nroActComprador: int(),
336
+ nroIngBrutoComprador: int(),
337
+ codTipoOperacion: str(),
338
+ esLiquidacionPropia: str(),
339
+ esCanje: str(),
340
+ codPuerto: int(),
341
+ desPuertoLocalidad: str(),
342
+ codGrano: int(),
343
+ pesoNetoSinCertificado: int(),
344
+ codLocalidadProcedenciaSinCertificado: int(),
345
+ codProvProcedenciaSinCertificado: int(),
346
+ cuitVendedor: cuit(),
347
+ nroIngBrutoVendedor: int(),
348
+ actuaCorredor: str(),
349
+ liquidaCorredor: str(),
350
+ cuitCorredor: cuit(),
351
+ comisionCorredor: dec(2),
352
+ nroIngBrutoCorredor: int(),
353
+ fechaPrecioOperacion: date(),
354
+ precioRefTn: dec(3),
355
+ codGradoRef: str(),
356
+ codGradoEnt: str(),
357
+ valGradoEnt: dec(8),
358
+ factorEnt: dec(8),
359
+ precioFleteTn: dec(2),
360
+ contProteico: dec(3),
361
+ alicIvaOperacion: dec(4),
362
+ campaniaPPal: int(),
363
+ codLocalidadProcedencia: int(),
364
+ codProvProcedencia: int(),
365
+ datosAdicionales: str(),
366
+ certificados: wrapped('certificado', obj(R_CERTIFICADO), 0),
367
+ opcionales: wrapped('opcional', obj(R_CODIGO_DESCRIPCION), 0),
368
+ };
369
+ /** LpgLiqReturnType */
370
+ export const R_LIQ_RETURN = {
371
+ autorizacion: opt(obj(R_LIQUIDACION_AUTORIZADA)),
372
+ ...R_EVENTOS,
373
+ };
374
+ /** LpgLiqConsReturnType */
375
+ export const R_LIQ_CONS_RETURN = {
376
+ liquidacion: opt(obj(R_LIQUIDACION_BASE)),
377
+ autorizacion: opt(obj(R_LIQUIDACION_AUTORIZADA)),
378
+ pdf: opt(base64()),
379
+ ...R_EVENTOS,
380
+ };
381
+ /** LpgAnulacionReturnType */
382
+ export const R_ANULACION_RETURN = {
383
+ coe: id(),
384
+ resultado: must(str()),
385
+ pdf: opt(base64()),
386
+ ...R_EVENTOS,
387
+ };
388
+ /** LpgLiqUltNroOrdenReturnType */
389
+ export const R_ULT_NRO_ORDEN = { nroOrden: must(int()), ...R_EVENTOS };
390
+ const R_AJUSTE_CRED_DEB = {
391
+ nroOpComercial: int(),
392
+ fechaLiquidacion: date(),
393
+ precioOperacion: dec(3),
394
+ subTotal: dec(2),
395
+ importeIva: dec(2),
396
+ operacionConIva: dec(2),
397
+ totalPesoNeto: int(),
398
+ importes: wrapped('importeReturn', obj({ importe: dec(2), concepto: str(), alicuota: dec(4), ivaCalculado: dec(2) }), 0),
399
+ deducciones: R_DEDUCCIONES,
400
+ totalDeduccion: dec(2),
401
+ retenciones: R_RETENCIONES,
402
+ totalRetencion: dec(2),
403
+ totalRetencionAfip: dec(2),
404
+ totalOtrasRetenciones: dec(2),
405
+ totalNetoAPagar: dec(2),
406
+ totalIvaRg4310_18: dec(2),
407
+ totalPagoSegunCondicion: dec(2),
408
+ };
409
+ /** LpgAjusteUnificadoReturnType */
410
+ export const R_AJUSTE_UNIFICADO_RETURN = {
411
+ ajusteUnificado: opt(obj({
412
+ ptoEmision: int(),
413
+ nroOrden: int(),
414
+ nroContrato: int(),
415
+ coeAjustado: id(),
416
+ codTipoOperacion: str(),
417
+ ajusteCredito: opt(obj(R_AJUSTE_CRED_DEB)),
418
+ ajusteDebito: opt(obj(R_AJUSTE_CRED_DEB)),
419
+ totalesUnificados: opt(obj({
420
+ subTotalDebCred: dec(2),
421
+ totalBaseDeducciones: dec(2),
422
+ subTotalGeneral: dec(2),
423
+ ivaDeducciones: dec(2),
424
+ iva105: dec(2),
425
+ iva21: dec(2),
426
+ retencionesGanancias: dec(2),
427
+ retencionesIVA: dec(2),
428
+ importeOtrasRetenciones: dec(2),
429
+ importeNeto: dec(2),
430
+ ivaRG4310_18: dec(2),
431
+ pagoSCondicion: dec(2),
432
+ })),
433
+ coe: id(),
434
+ estado: str(),
435
+ })),
436
+ ...R_EVENTOS,
437
+ };
438
+ /** LpgGradoEntType */
439
+ export const R_GRADO_ENTREGADO = {
440
+ codigoDescripcion: must(obj(R_CODIGO_DESCRIPCION)),
441
+ valor: must(dec(8)),
442
+ };
443
+ /** CgAutorizarReturnType */
444
+ export const R_CG_AUTORIZAR_RETURN = {
445
+ autorizacion: opt(obj({
446
+ ptoEmision: int(),
447
+ nroOrden: int(),
448
+ coe: id(),
449
+ estado: str(),
450
+ fechaCertificacion: date(),
451
+ pesosResumen: opt(obj({
452
+ pesoBrutoCertificado: dec(2),
453
+ pesoMermaVolatil: dec(2),
454
+ pesoMermaSecado: dec(2),
455
+ pesoMermaZarandeo: dec(2),
456
+ pesoNetoCertificado: dec(2),
457
+ })),
458
+ serviciosResumen: opt(obj({
459
+ servicioSecado: dec(2),
460
+ servicioZarandeo: dec(2),
461
+ servicioOtros: dec(2),
462
+ servicioGastosGenerales: dec(2),
463
+ importeIVA: dec(2),
464
+ servicioTotal: dec(2),
465
+ })),
466
+ planta: opt(obj({ nroPlanta: int(), cuitTitularPlanta: cuit(), razonSocialTitularPlanta: str() })),
467
+ })),
468
+ ...R_EVENTOS,
469
+ };
470
+ /** CgSolicitarAnulacionReturnType */
471
+ export const R_CG_ANULACION_RETURN = {
472
+ ...R_EVENTOS,
473
+ estadoCertificado: must(str()),
474
+ pdf: opt(base64()),
475
+ };
476
+ /** returnDummyRespType */
477
+ export const R_DUMMY = { appserver: must(str()), authserver: must(str()), dbserver: must(str()) };
478
+ //# sourceMappingURL=lpg-schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lpg-schemas.js","sourceRoot":"","sources":["../src/lpg-schemas.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGnG,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,gBAAgB;AACvD,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;AACtC,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,YAAY;AACtD,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAmB;AACjE,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,qBAAqB;AAC/D,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,kBAAkB;AACjE,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,2BAA2B;AAC5E,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,4BAA4B;AACnE,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,kBAAkB;AACzD,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc;AAC9D,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,kBAAkB;AACzD,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,uBAAuB;AAClF,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,qBAAqB;AACnE,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,oBAAoB;AAC1E,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAmB;AACvE,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,qBAAqB;AACzE,MAAM,aAAa,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,uBAAuB;AAC1E,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,0BAA0B;AAC1F,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC,CAAC,wBAAwB;AACpF,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,oDAAoD;AAC1G,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,yBAAyB;AACxF,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,mBAAmB;AACrE,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,oBAAoB;AAE7D,8EAA8E;AAC9E,WAAW;AACX,8EAA8E;AAE9E,+BAA+B;AAC/B,MAAM,kBAAkB,GAAW,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,CAAC;AAEzE,kBAAkB;AAClB,MAAM,WAAW,GAAW;IAC1B,uBAAuB,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IAC3C,sBAAsB,EAAE,GAAG,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC;IAC1D,QAAQ,EAAE,QAAQ,EAAE;IACpB,wBAAwB,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;IACzC,uBAAuB,EAAE,YAAY,EAAE;IACvC,kBAAkB,EAAE,YAAY,EAAE;IAClC,QAAQ,EAAE,QAAQ,EAAE;IACpB,WAAW,EAAE,IAAI,EAAE;CACpB,CAAC;AAEF,6BAA6B;AAC7B,MAAM,CAAC,MAAM,gBAAgB,GAAW;IACtC,UAAU,EAAE,UAAU,EAAE;IACxB,QAAQ,EAAE,QAAQ,EAAE;IACpB,cAAc,EAAE,GAAG,CAAC,cAAc,EAAE,CAAC;IACrC,aAAa,EAAE,IAAI,EAAE;IACrB,eAAe,EAAE,SAAS,EAAE;IAC5B,oBAAoB,EAAE,EAAE,EAAE;IAC1B,gBAAgB,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IAC/C,mBAAmB,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;IAChC,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9C,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;IAC7B,kBAAkB,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7C,QAAQ,EAAE,QAAQ,EAAE;IACpB,sBAAsB,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;IACvC,qCAAqC,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC;IAC1D,gCAAgC,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC;IACrD,YAAY,EAAE,IAAI,EAAE;IACpB,mBAAmB,EAAE,EAAE,EAAE;IACzB,aAAa,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;IAC1B,eAAe,EAAE,IAAI,EAAE;IACvB,YAAY,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;IACzB,gBAAgB,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;IACvC,mBAAmB,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;IAC9B,oBAAoB,EAAE,IAAI,EAAE;IAC5B,WAAW,EAAE,WAAW,EAAE;IAC1B,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;IAC/B,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;IAC/B,WAAW,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC;IAC9B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;IACxB,aAAa,EAAE,aAAa,EAAE;IAC9B,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IACrC,gBAAgB,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;IACjC,YAAY,EAAE,QAAQ,EAAE;IACxB,uBAAuB,EAAE,YAAY,EAAE;IACvC,kBAAkB,EAAE,YAAY,EAAE;IAClC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACzC,YAAY,EAAE,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;IAC3D,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC;CAC9D,CAAC;AAEF,uBAAuB;AACvB,MAAM,SAAS,GAAW;IACxB,cAAc,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IAClC,kBAAkB,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;IACvD,cAAc,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACjC,eAAe,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,CAAC;IAChD,iBAAiB,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;IACxC,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,WAAW,EAAE,QAAQ,EAAE;CACxB,CAAC;AAEF,uBAAuB;AACvB,MAAM,SAAS,GAAW;IACxB,cAAc,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IAClC,kBAAkB,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;IACvD,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC5B,QAAQ,EAAE,QAAQ,EAAE;IACpB,uBAAuB,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;IACpD,yBAAyB,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;IACtC,2BAA2B,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;CAChD,CAAC;AAEF,wBAAwB;AACxB,MAAM,UAAU,GAAW;IACzB,WAAW,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC3C,YAAY,EAAE,WAAW,EAAE;CAC5B,CAAC;AAEF,iCAAiC;AACjC,MAAM,CAAC,MAAM,qBAAqB,GAAW;IAC3C,WAAW,EAAE,GAAG,CAAC,gBAAgB,CAAC;IAClC,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IACtD,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IACtD,YAAY,EAAE,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;CAC1D,CAAC;AAEF,iDAAiD;AACjD,MAAM,qBAAqB,GAAW;IACpC,YAAY,EAAE,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;IACvF,kBAAkB,EAAE,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC;IACpC,yBAAyB,EAAE,WAAW,EAAE;IACxC,QAAQ,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;IAC5B,QAAQ,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC;IAC3B,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;IACrB,uBAAuB,EAAE,aAAa,EAAE;IACxC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACzC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC7D,mBAAmB,EAAE,GAAG,CAAC,eAAe,EAAE,CAAC;IAC3C,kBAAkB,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;IACtC,qBAAqB,EAAE,GAAG,CAAC,eAAe,EAAE,CAAC;IAC7C,oBAAoB,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;IACxC,oBAAoB,EAAE,GAAG,CAAC,eAAe,EAAE,CAAC;IAC5C,mBAAmB,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;IACvC,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IACtD,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;CACvD,CAAC;AAEF,6CAA6C;AAC7C,MAAM,CAAC,MAAM,gBAAgB,GAAW;IACtC,UAAU,EAAE,GAAG,CAAC;QACd,UAAU,EAAE,UAAU,EAAE;QACxB,QAAQ,EAAE,QAAQ,EAAE;QACpB,WAAW,EAAE,EAAE,EAAE;QACjB,YAAY,EAAE,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC3D,YAAY,EAAE,YAAY,EAAE;QAC5B,OAAO,EAAE,YAAY,EAAE;QACvB,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;KACpE,CAAC;IACF,aAAa,EAAE,GAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAC9C,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;CAC9C,CAAC;AAEF,sGAAsG;AACtG,MAAM,CAAC,MAAM,cAAc,GAAW,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;AAEtE,8CAA8C;AAC9C,MAAM,CAAC,MAAM,oBAAoB,GAAW,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC;AAE/F,4CAA4C;AAC5C,MAAM,CAAC,MAAM,aAAa,GAAW,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,CAAC;AAElE,uCAAuC;AACvC,MAAM,CAAC,MAAM,SAAS,GAAW,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;AAE/C,yDAAyD;AACzD,MAAM,CAAC,MAAM,WAAW,GAAW,EAAE,YAAY,EAAE,GAAG,EAAE,EAAE,CAAC;AAE3D,8BAA8B;AAC9B,MAAM,CAAC,MAAM,cAAc,GAAW,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;AAEhE,yBAAyB;AACzB,MAAM,CAAC,MAAM,eAAe,GAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC;AAEhE,8EAA8E;AAE9E,MAAM,MAAM,GAAW;IACrB,uBAAuB,EAAE,UAAU,EAAE;IACrC,aAAa,EAAE,WAAW,EAAE;IAC5B,mBAAmB,EAAE,WAAW,EAAE;IAClC,YAAY,EAAE,WAAW,EAAE;IAC3B,eAAe,EAAE,WAAW,EAAE;IAC9B,qBAAqB,EAAE,WAAW,EAAE;IACpC,cAAc,EAAE,WAAW,EAAE;CAC9B,CAAC;AAEF,sCAAsC;AACtC,MAAM,CAAC,MAAM,YAAY,GAAW;IAClC,QAAQ,EAAE,GAAG,CAAC;QACZ,eAAe,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;QACtD,UAAU,EAAE,UAAU,EAAE;QACxB,QAAQ,EAAE,QAAQ,EAAE;QACpB,sBAAsB,EAAE,EAAE,EAAE;QAC5B,YAAY,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;QACzC,eAAe,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;QAC5B,sBAAsB,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;QACjC,QAAQ,EAAE,QAAQ,EAAE;QACpB,QAAQ,EAAE,QAAQ,EAAE;QACpB,YAAY,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;QACzB,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,EAAE,CAAC;KAC1C,CAAC;IACF,QAAQ,EAAE,GAAG,CACX,GAAG,CAAC;QACF,iBAAiB,EAAE,SAAS,EAAE;QAC9B,GAAG,EAAE,GAAG,CACN,IAAI,CACF,GAAG,CAAC;YACF,MAAM,EAAE,EAAE,EAAE;YACZ,eAAe,EAAE,GAAG,EAAE;YACtB,4BAA4B,EAAE,WAAW,EAAE;YAC3C,GAAG,MAAM;SACV,CAAC,EACF,CAAC,CACF,CACF;QACD,qBAAqB,EAAE,GAAG,CACxB,IAAI,CACF,GAAG,CAAC;YACF,aAAa,EAAE,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC;YACtC,4BAA4B,EAAE,WAAW,EAAE;YAC3C,GAAG,MAAM;SACV,CAAC,EACF,CAAC,CACF,CACF;QACD,oBAAoB,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QACpD,eAAe,EAAE,WAAW,EAAE;QAC9B,YAAY,EAAE,WAAW,EAAE;QAC3B,oBAAoB,EAAE,WAAW,EAAE;QACnC,aAAa,EAAE,WAAW,EAAE;QAC5B,kBAAkB,EAAE,UAAU,EAAE;QAChC,iBAAiB,EAAE,UAAU,EAAE;QAC/B,WAAW,EAAE,WAAW,EAAE;QAC1B,uBAAuB,EAAE,WAAW,EAAE;QACtC,UAAU,EAAE,WAAW,EAAE;QACzB,OAAO,EAAE,GAAG,CACV,GAAG,CAAC;YACF,eAAe,EAAE,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC;YACzC,UAAU,EAAE,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC;YACpC,QAAQ,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;YAC5B,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACtC,iBAAiB,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;YACpC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;YAC1B,sBAAsB,EAAE,GAAG,CACzB,IAAI,CACF,GAAG,CAAC;gBACF,gBAAgB,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;gBACjD,SAAS,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;gBACtC,UAAU,EAAE,UAAU,EAAE;gBACxB,KAAK,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC;aACzB,CAAC,EACF,CAAC,CACF,CACF;SACF,CAAC,CACH;QACD,oBAAoB,EAAE,WAAW,EAAE;QACnC,oBAAoB,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QACzD,cAAc,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;QAClC,4BAA4B,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;QAChD,wBAAwB,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;QAC5C,0BAA0B,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC;KAC/C,CAAC,CACH;IACD,mBAAmB,EAAE,GAAG,CACtB,GAAG,CAAC;QACF,mBAAmB,EAAE,GAAG,CAAC,EAAE,sBAAsB,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC;QAChF,iBAAiB,EAAE,SAAS,EAAE;QAC9B,YAAY,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;QACzB,sBAAsB,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;QAClC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;QACjB,wBAAwB,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;KAC/D,CAAC,CACH;IACD,YAAY,EAAE,GAAG,CACf,GAAG,CAAC;QACF,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC;QAC/B,mCAAmC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC;QACpD,kCAAkC,EAAE,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC;QAC9D,kCAAkC,EAAE,GAAG,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC;QAChE,2CAA2C,EAAE,IAAI,EAAE;QACnD,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC;KACxC,CAAC,CACH;IACD,kBAAkB,EAAE,GAAG,CACrB,GAAG,CAAC;QACF,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC;QAC/B,kCAAkC,EAAE,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC;QAC9D,2CAA2C,EAAE,IAAI,EAAE;QACnD,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC;KAClC,CAAC,CACH;CACF,CAAC;AAEF,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E,+BAA+B;AAC/B,MAAM,CAAC,MAAM,oBAAoB,GAAW,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;AAE9F,4CAA4C;AAC5C,MAAM,CAAC,MAAM,SAAS,GAAW,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AAE9F,MAAM,WAAW,GAAW;IAC1B,cAAc,EAAE,GAAG,EAAE;IACrB,kBAAkB,EAAE,GAAG,EAAE;IACzB,cAAc,EAAE,GAAG,EAAE;IACrB,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;IACvB,iBAAiB,EAAE,GAAG,CAAC,CAAC,CAAC;IACzB,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IACnB,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,GAAW;IAC1B,cAAc,EAAE,GAAG,EAAE;IACrB,kBAAkB,EAAE,GAAG,EAAE;IACzB,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC;IACpB,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;IAChB,uBAAuB,EAAE,GAAG,EAAE;IAC9B,yBAAyB,EAAE,IAAI,EAAE;IACjC,2BAA2B,EAAE,GAAG,CAAC,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,aAAa,GAAG,OAAO,CAC3B,iBAAiB,EACjB,GAAG,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EACvF,CAAC,CACF,CAAC;AACF,MAAM,aAAa,GAAG,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE,gBAAgB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAEzH,6BAA6B;AAC7B,MAAM,CAAC,MAAM,wBAAwB,GAAW;IAC9C,UAAU,EAAE,GAAG,EAAE;IACjB,QAAQ,EAAE,GAAG,EAAE;IACf,gBAAgB,EAAE,GAAG,EAAE;IACvB,aAAa,EAAE,GAAG,EAAE;IACpB,cAAc,EAAE,GAAG,EAAE;IACrB,gBAAgB,EAAE,IAAI,EAAE;IACxB,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;IACvB,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;IAClB,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;IACvB,aAAa,EAAE,GAAG,EAAE;IACpB,YAAY,EAAE,OAAO,CACnB,YAAY,EACZ,GAAG,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EACxF,CAAC,CACF;IACD,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;IACvB,WAAW,EAAE,aAAa;IAC1B,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;IACtB,WAAW,EAAE,aAAa;IAC1B,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;IACtB,kBAAkB,EAAE,GAAG,CAAC,CAAC,CAAC;IAC1B,qBAAqB,EAAE,GAAG,CAAC,CAAC,CAAC;IAC7B,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;IACvB,iBAAiB,EAAE,GAAG,CAAC,CAAC,CAAC;IACzB,uBAAuB,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/B,GAAG,EAAE,EAAE,EAAE;IACT,WAAW,EAAE,EAAE,EAAE;IACjB,cAAc,EAAE,GAAG,EAAE;IACrB,MAAM,EAAE,GAAG,EAAE;CACd,CAAC;AAEF,MAAM,aAAa,GAAW;IAC5B,uBAAuB,EAAE,GAAG,EAAE;IAC9B,sBAAsB,EAAE,GAAG,EAAE;IAC7B,QAAQ,EAAE,GAAG,EAAE;IACf,wBAAwB,EAAE,GAAG,EAAE;IAC/B,uBAAuB,EAAE,GAAG,EAAE;IAC9B,kBAAkB,EAAE,GAAG,EAAE;IACzB,QAAQ,EAAE,GAAG,EAAE;IACf,WAAW,EAAE,IAAI,EAAE;CACpB,CAAC;AAEF,0DAA0D;AAC1D,MAAM,CAAC,MAAM,kBAAkB,GAAW;IACxC,UAAU,EAAE,GAAG,EAAE;IACjB,QAAQ,EAAE,GAAG,EAAE;IACf,cAAc,EAAE,GAAG,EAAE;IACrB,aAAa,EAAE,IAAI,EAAE;IACrB,eAAe,EAAE,GAAG,EAAE;IACtB,oBAAoB,EAAE,GAAG,EAAE;IAC3B,gBAAgB,EAAE,GAAG,EAAE;IACvB,mBAAmB,EAAE,GAAG,EAAE;IAC1B,OAAO,EAAE,GAAG,EAAE;IACd,SAAS,EAAE,GAAG,EAAE;IAChB,kBAAkB,EAAE,GAAG,EAAE;IACzB,QAAQ,EAAE,GAAG,EAAE;IACf,sBAAsB,EAAE,GAAG,EAAE;IAC7B,qCAAqC,EAAE,GAAG,EAAE;IAC5C,gCAAgC,EAAE,GAAG,EAAE;IACvC,YAAY,EAAE,IAAI,EAAE;IACpB,mBAAmB,EAAE,GAAG,EAAE;IAC1B,aAAa,EAAE,GAAG,EAAE;IACpB,eAAe,EAAE,GAAG,EAAE;IACtB,YAAY,EAAE,IAAI,EAAE;IACpB,gBAAgB,EAAE,GAAG,CAAC,CAAC,CAAC;IACxB,mBAAmB,EAAE,GAAG,EAAE;IAC1B,oBAAoB,EAAE,IAAI,EAAE;IAC5B,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IACnB,WAAW,EAAE,GAAG,EAAE;IAClB,WAAW,EAAE,GAAG,EAAE;IAClB,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IACnB,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;IACjB,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC;IACrB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC;IACpB,gBAAgB,EAAE,GAAG,CAAC,CAAC,CAAC;IACxB,YAAY,EAAE,GAAG,EAAE;IACnB,uBAAuB,EAAE,GAAG,EAAE;IAC9B,kBAAkB,EAAE,GAAG,EAAE;IACzB,gBAAgB,EAAE,GAAG,EAAE;IACvB,YAAY,EAAE,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAC3D,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;CAC9D,CAAC;AAEF,uBAAuB;AACvB,MAAM,CAAC,MAAM,YAAY,GAAW;IAClC,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IAChD,GAAG,SAAS;CACb,CAAC;AAEF,2BAA2B;AAC3B,MAAM,CAAC,MAAM,iBAAiB,GAAW;IACvC,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACzC,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IAChD,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;IAClB,GAAG,SAAS;CACb,CAAC;AAEF,6BAA6B;AAC7B,MAAM,CAAC,MAAM,kBAAkB,GAAW;IACxC,GAAG,EAAE,EAAE,EAAE;IACT,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACtB,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;IAClB,GAAG,SAAS;CACb,CAAC;AAEF,kCAAkC;AAClC,MAAM,CAAC,MAAM,eAAe,GAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,SAAS,EAAE,CAAC;AAE/E,MAAM,iBAAiB,GAAW;IAChC,cAAc,EAAE,GAAG,EAAE;IACrB,gBAAgB,EAAE,IAAI,EAAE;IACxB,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;IACvB,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;IAChB,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;IAClB,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;IACvB,aAAa,EAAE,GAAG,EAAE;IACpB,QAAQ,EAAE,OAAO,CACf,eAAe,EACf,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EACjF,CAAC,CACF;IACD,WAAW,EAAE,aAAa;IAC1B,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;IACtB,WAAW,EAAE,aAAa;IAC1B,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;IACtB,kBAAkB,EAAE,GAAG,CAAC,CAAC,CAAC;IAC1B,qBAAqB,EAAE,GAAG,CAAC,CAAC,CAAC;IAC7B,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;IACvB,iBAAiB,EAAE,GAAG,CAAC,CAAC,CAAC;IACzB,uBAAuB,EAAE,GAAG,CAAC,CAAC,CAAC;CAChC,CAAC;AAEF,mCAAmC;AACnC,MAAM,CAAC,MAAM,yBAAyB,GAAW;IAC/C,eAAe,EAAE,GAAG,CAClB,GAAG,CAAC;QACF,UAAU,EAAE,GAAG,EAAE;QACjB,QAAQ,EAAE,GAAG,EAAE;QACf,WAAW,EAAE,GAAG,EAAE;QAClB,WAAW,EAAE,EAAE,EAAE;QACjB,gBAAgB,EAAE,GAAG,EAAE;QACvB,aAAa,EAAE,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC1C,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QACzC,iBAAiB,EAAE,GAAG,CACpB,GAAG,CAAC;YACF,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;YACvB,oBAAoB,EAAE,GAAG,CAAC,CAAC,CAAC;YAC5B,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;YACvB,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;YACtB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;YACd,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;YACb,oBAAoB,EAAE,GAAG,CAAC,CAAC,CAAC;YAC5B,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;YACtB,uBAAuB,EAAE,GAAG,CAAC,CAAC,CAAC;YAC/B,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;YACnB,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC;YACpB,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;SACvB,CAAC,CACH;QACD,GAAG,EAAE,EAAE,EAAE;QACT,MAAM,EAAE,GAAG,EAAE;KACd,CAAC,CACH;IACD,GAAG,SAAS;CACb,CAAC;AAEF,sBAAsB;AACtB,MAAM,CAAC,MAAM,iBAAiB,GAAW;IACvC,iBAAiB,EAAE,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAClD,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACpB,CAAC;AAEF,4BAA4B;AAC5B,MAAM,CAAC,MAAM,qBAAqB,GAAW;IAC3C,YAAY,EAAE,GAAG,CACf,GAAG,CAAC;QACF,UAAU,EAAE,GAAG,EAAE;QACjB,QAAQ,EAAE,GAAG,EAAE;QACf,GAAG,EAAE,EAAE,EAAE;QACT,MAAM,EAAE,GAAG,EAAE;QACb,kBAAkB,EAAE,IAAI,EAAE;QAC1B,YAAY,EAAE,GAAG,CACf,GAAG,CAAC;YACF,oBAAoB,EAAE,GAAG,CAAC,CAAC,CAAC;YAC5B,gBAAgB,EAAE,GAAG,CAAC,CAAC,CAAC;YACxB,eAAe,EAAE,GAAG,CAAC,CAAC,CAAC;YACvB,iBAAiB,EAAE,GAAG,CAAC,CAAC,CAAC;YACzB,mBAAmB,EAAE,GAAG,CAAC,CAAC,CAAC;SAC5B,CAAC,CACH;QACD,gBAAgB,EAAE,GAAG,CACnB,GAAG,CAAC;YACF,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;YACtB,gBAAgB,EAAE,GAAG,CAAC,CAAC,CAAC;YACxB,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC;YACrB,uBAAuB,EAAE,GAAG,CAAC,CAAC,CAAC;YAC/B,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;YAClB,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC;SACtB,CAAC,CACH;QACD,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,wBAAwB,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;KACnG,CAAC,CACH;IACD,GAAG,SAAS;CACb,CAAC;AAEF,qCAAqC;AACrC,MAAM,CAAC,MAAM,qBAAqB,GAAW;IAC3C,GAAG,SAAS;IACZ,iBAAiB,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IAC9B,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;CACnB,CAAC;AAEF,0BAA0B;AAC1B,MAAM,CAAC,MAAM,OAAO,GAAW,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC"}