@deepintel-ltd/farmpro-contracts 1.12.0 → 1.15.1

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.
@@ -1853,6 +1853,8 @@ export declare const financeRouter: {
1853
1853
  fieldName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1854
1854
  cropId: z.ZodNullable<z.ZodString>;
1855
1855
  cropName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1856
+ createdById: z.ZodNullable<z.ZodString>;
1857
+ createdByName: z.ZodNullable<z.ZodString>;
1856
1858
  } & {
1857
1859
  createdAt: z.ZodString;
1858
1860
  updatedAt: z.ZodString;
@@ -1866,6 +1868,8 @@ export declare const financeRouter: {
1866
1868
  cropId: string | null;
1867
1869
  amount: number;
1868
1870
  allocationType: "crop" | "field" | "general";
1871
+ createdById: string | null;
1872
+ createdByName: string | null;
1869
1873
  fieldName?: string | null | undefined;
1870
1874
  cropName?: string | null | undefined;
1871
1875
  }, {
@@ -1878,6 +1882,8 @@ export declare const financeRouter: {
1878
1882
  cropId: string | null;
1879
1883
  amount: number;
1880
1884
  allocationType: "crop" | "field" | "general";
1885
+ createdById: string | null;
1886
+ createdByName: string | null;
1881
1887
  fieldName?: string | null | undefined;
1882
1888
  cropName?: string | null | undefined;
1883
1889
  }>;
@@ -1897,6 +1903,8 @@ export declare const financeRouter: {
1897
1903
  cropId: string | null;
1898
1904
  amount: number;
1899
1905
  allocationType: "crop" | "field" | "general";
1906
+ createdById: string | null;
1907
+ createdByName: string | null;
1900
1908
  fieldName?: string | null | undefined;
1901
1909
  cropName?: string | null | undefined;
1902
1910
  };
@@ -1916,6 +1924,8 @@ export declare const financeRouter: {
1916
1924
  cropId: string | null;
1917
1925
  amount: number;
1918
1926
  allocationType: "crop" | "field" | "general";
1927
+ createdById: string | null;
1928
+ createdByName: string | null;
1919
1929
  fieldName?: string | null | undefined;
1920
1930
  cropName?: string | null | undefined;
1921
1931
  };
@@ -1961,6 +1971,8 @@ export declare const financeRouter: {
1961
1971
  cropId: string | null;
1962
1972
  amount: number;
1963
1973
  allocationType: "crop" | "field" | "general";
1974
+ createdById: string | null;
1975
+ createdByName: string | null;
1964
1976
  fieldName?: string | null | undefined;
1965
1977
  cropName?: string | null | undefined;
1966
1978
  };
@@ -1992,6 +2004,8 @@ export declare const financeRouter: {
1992
2004
  cropId: string | null;
1993
2005
  amount: number;
1994
2006
  allocationType: "crop" | "field" | "general";
2007
+ createdById: string | null;
2008
+ createdByName: string | null;
1995
2009
  fieldName?: string | null | undefined;
1996
2010
  cropName?: string | null | undefined;
1997
2011
  };
@@ -2313,6 +2327,8 @@ export declare const financeRouter: {
2313
2327
  fieldName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2314
2328
  cropId: z.ZodNullable<z.ZodString>;
2315
2329
  cropName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2330
+ createdById: z.ZodNullable<z.ZodString>;
2331
+ createdByName: z.ZodNullable<z.ZodString>;
2316
2332
  } & {
2317
2333
  createdAt: z.ZodString;
2318
2334
  updatedAt: z.ZodString;
@@ -2326,6 +2342,8 @@ export declare const financeRouter: {
2326
2342
  cropId: string | null;
2327
2343
  amount: number;
2328
2344
  allocationType: "crop" | "field" | "general";
2345
+ createdById: string | null;
2346
+ createdByName: string | null;
2329
2347
  fieldName?: string | null | undefined;
2330
2348
  cropName?: string | null | undefined;
2331
2349
  }, {
@@ -2338,6 +2356,8 @@ export declare const financeRouter: {
2338
2356
  cropId: string | null;
2339
2357
  amount: number;
2340
2358
  allocationType: "crop" | "field" | "general";
2359
+ createdById: string | null;
2360
+ createdByName: string | null;
2341
2361
  fieldName?: string | null | undefined;
2342
2362
  cropName?: string | null | undefined;
2343
2363
  }>;
@@ -2357,6 +2377,8 @@ export declare const financeRouter: {
2357
2377
  cropId: string | null;
2358
2378
  amount: number;
2359
2379
  allocationType: "crop" | "field" | "general";
2380
+ createdById: string | null;
2381
+ createdByName: string | null;
2360
2382
  fieldName?: string | null | undefined;
2361
2383
  cropName?: string | null | undefined;
2362
2384
  };
@@ -2376,6 +2398,8 @@ export declare const financeRouter: {
2376
2398
  cropId: string | null;
2377
2399
  amount: number;
2378
2400
  allocationType: "crop" | "field" | "general";
2401
+ createdById: string | null;
2402
+ createdByName: string | null;
2379
2403
  fieldName?: string | null | undefined;
2380
2404
  cropName?: string | null | undefined;
2381
2405
  };
@@ -2421,6 +2445,8 @@ export declare const financeRouter: {
2421
2445
  cropId: string | null;
2422
2446
  amount: number;
2423
2447
  allocationType: "crop" | "field" | "general";
2448
+ createdById: string | null;
2449
+ createdByName: string | null;
2424
2450
  fieldName?: string | null | undefined;
2425
2451
  cropName?: string | null | undefined;
2426
2452
  };
@@ -2452,6 +2478,8 @@ export declare const financeRouter: {
2452
2478
  cropId: string | null;
2453
2479
  amount: number;
2454
2480
  allocationType: "crop" | "field" | "general";
2481
+ createdById: string | null;
2482
+ createdByName: string | null;
2455
2483
  fieldName?: string | null | undefined;
2456
2484
  cropName?: string | null | undefined;
2457
2485
  };
@@ -2869,6 +2897,8 @@ export declare const financeRouter: {
2869
2897
  fieldName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2870
2898
  cropId: z.ZodNullable<z.ZodString>;
2871
2899
  cropName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2900
+ createdById: z.ZodNullable<z.ZodString>;
2901
+ createdByName: z.ZodNullable<z.ZodString>;
2872
2902
  } & {
2873
2903
  createdAt: z.ZodString;
2874
2904
  updatedAt: z.ZodString;
@@ -2882,6 +2912,8 @@ export declare const financeRouter: {
2882
2912
  cropId: string | null;
2883
2913
  amount: number;
2884
2914
  allocationType: "crop" | "field" | "general";
2915
+ createdById: string | null;
2916
+ createdByName: string | null;
2885
2917
  fieldName?: string | null | undefined;
2886
2918
  cropName?: string | null | undefined;
2887
2919
  }, {
@@ -2894,6 +2926,8 @@ export declare const financeRouter: {
2894
2926
  cropId: string | null;
2895
2927
  amount: number;
2896
2928
  allocationType: "crop" | "field" | "general";
2929
+ createdById: string | null;
2930
+ createdByName: string | null;
2897
2931
  fieldName?: string | null | undefined;
2898
2932
  cropName?: string | null | undefined;
2899
2933
  }>;
@@ -2944,6 +2978,8 @@ export declare const financeRouter: {
2944
2978
  cropId: string | null;
2945
2979
  amount: number;
2946
2980
  allocationType: "crop" | "field" | "general";
2981
+ createdById: string | null;
2982
+ createdByName: string | null;
2947
2983
  fieldName?: string | null | undefined;
2948
2984
  cropName?: string | null | undefined;
2949
2985
  };
@@ -2969,6 +3005,8 @@ export declare const financeRouter: {
2969
3005
  cropId: string | null;
2970
3006
  amount: number;
2971
3007
  allocationType: "crop" | "field" | "general";
3008
+ createdById: string | null;
3009
+ createdByName: string | null;
2972
3010
  fieldName?: string | null | undefined;
2973
3011
  cropName?: string | null | undefined;
2974
3012
  };
@@ -3020,6 +3058,8 @@ export declare const financeRouter: {
3020
3058
  cropId: string | null;
3021
3059
  amount: number;
3022
3060
  allocationType: "crop" | "field" | "general";
3061
+ createdById: string | null;
3062
+ createdByName: string | null;
3023
3063
  fieldName?: string | null | undefined;
3024
3064
  cropName?: string | null | undefined;
3025
3065
  };
@@ -3057,6 +3097,8 @@ export declare const financeRouter: {
3057
3097
  cropId: string | null;
3058
3098
  amount: number;
3059
3099
  allocationType: "crop" | "field" | "general";
3100
+ createdById: string | null;
3101
+ createdByName: string | null;
3060
3102
  fieldName?: string | null | undefined;
3061
3103
  cropName?: string | null | undefined;
3062
3104
  };
@@ -3376,6 +3418,8 @@ export declare const financeRouter: {
3376
3418
  fieldName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3377
3419
  cropId: z.ZodNullable<z.ZodString>;
3378
3420
  cropName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3421
+ createdById: z.ZodNullable<z.ZodString>;
3422
+ createdByName: z.ZodNullable<z.ZodString>;
3379
3423
  } & {
3380
3424
  createdAt: z.ZodString;
3381
3425
  updatedAt: z.ZodString;
@@ -3389,6 +3433,8 @@ export declare const financeRouter: {
3389
3433
  cropId: string | null;
3390
3434
  amount: number;
3391
3435
  allocationType: "crop" | "field" | "general";
3436
+ createdById: string | null;
3437
+ createdByName: string | null;
3392
3438
  fieldName?: string | null | undefined;
3393
3439
  cropName?: string | null | undefined;
3394
3440
  }, {
@@ -3401,6 +3447,8 @@ export declare const financeRouter: {
3401
3447
  cropId: string | null;
3402
3448
  amount: number;
3403
3449
  allocationType: "crop" | "field" | "general";
3450
+ createdById: string | null;
3451
+ createdByName: string | null;
3404
3452
  fieldName?: string | null | undefined;
3405
3453
  cropName?: string | null | undefined;
3406
3454
  }>;
@@ -3420,6 +3468,8 @@ export declare const financeRouter: {
3420
3468
  cropId: string | null;
3421
3469
  amount: number;
3422
3470
  allocationType: "crop" | "field" | "general";
3471
+ createdById: string | null;
3472
+ createdByName: string | null;
3423
3473
  fieldName?: string | null | undefined;
3424
3474
  cropName?: string | null | undefined;
3425
3475
  };
@@ -3439,6 +3489,8 @@ export declare const financeRouter: {
3439
3489
  cropId: string | null;
3440
3490
  amount: number;
3441
3491
  allocationType: "crop" | "field" | "general";
3492
+ createdById: string | null;
3493
+ createdByName: string | null;
3442
3494
  fieldName?: string | null | undefined;
3443
3495
  cropName?: string | null | undefined;
3444
3496
  };
@@ -3484,6 +3536,8 @@ export declare const financeRouter: {
3484
3536
  cropId: string | null;
3485
3537
  amount: number;
3486
3538
  allocationType: "crop" | "field" | "general";
3539
+ createdById: string | null;
3540
+ createdByName: string | null;
3487
3541
  fieldName?: string | null | undefined;
3488
3542
  cropName?: string | null | undefined;
3489
3543
  };
@@ -3515,6 +3569,8 @@ export declare const financeRouter: {
3515
3569
  cropId: string | null;
3516
3570
  amount: number;
3517
3571
  allocationType: "crop" | "field" | "general";
3572
+ createdById: string | null;
3573
+ createdByName: string | null;
3518
3574
  fieldName?: string | null | undefined;
3519
3575
  cropName?: string | null | undefined;
3520
3576
  };
@@ -4170,6 +4226,8 @@ export declare const financeRouter: {
4170
4226
  fieldId: z.ZodNullable<z.ZodString>;
4171
4227
  fieldName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
4172
4228
  harvestId: z.ZodNullable<z.ZodString>;
4229
+ createdById: z.ZodNullable<z.ZodString>;
4230
+ createdByName: z.ZodNullable<z.ZodString>;
4173
4231
  } & {
4174
4232
  createdAt: z.ZodString;
4175
4233
  updatedAt: z.ZodString;
@@ -4181,6 +4239,8 @@ export declare const financeRouter: {
4181
4239
  fieldId: string | null;
4182
4240
  unit: string;
4183
4241
  quantity: number;
4242
+ createdById: string | null;
4243
+ createdByName: string | null;
4184
4244
  pricePerUnit: number;
4185
4245
  totalAmount: number;
4186
4246
  buyer: string | null;
@@ -4194,6 +4254,8 @@ export declare const financeRouter: {
4194
4254
  fieldId: string | null;
4195
4255
  unit: string;
4196
4256
  quantity: number;
4257
+ createdById: string | null;
4258
+ createdByName: string | null;
4197
4259
  pricePerUnit: number;
4198
4260
  totalAmount: number;
4199
4261
  buyer: string | null;
@@ -4214,6 +4276,8 @@ export declare const financeRouter: {
4214
4276
  fieldId: string | null;
4215
4277
  unit: string;
4216
4278
  quantity: number;
4279
+ createdById: string | null;
4280
+ createdByName: string | null;
4217
4281
  pricePerUnit: number;
4218
4282
  totalAmount: number;
4219
4283
  buyer: string | null;
@@ -4234,6 +4298,8 @@ export declare const financeRouter: {
4234
4298
  fieldId: string | null;
4235
4299
  unit: string;
4236
4300
  quantity: number;
4301
+ createdById: string | null;
4302
+ createdByName: string | null;
4237
4303
  pricePerUnit: number;
4238
4304
  totalAmount: number;
4239
4305
  buyer: string | null;
@@ -4280,6 +4346,8 @@ export declare const financeRouter: {
4280
4346
  fieldId: string | null;
4281
4347
  unit: string;
4282
4348
  quantity: number;
4349
+ createdById: string | null;
4350
+ createdByName: string | null;
4283
4351
  pricePerUnit: number;
4284
4352
  totalAmount: number;
4285
4353
  buyer: string | null;
@@ -4312,6 +4380,8 @@ export declare const financeRouter: {
4312
4380
  fieldId: string | null;
4313
4381
  unit: string;
4314
4382
  quantity: number;
4383
+ createdById: string | null;
4384
+ createdByName: string | null;
4315
4385
  pricePerUnit: number;
4316
4386
  totalAmount: number;
4317
4387
  buyer: string | null;
@@ -4635,6 +4705,8 @@ export declare const financeRouter: {
4635
4705
  fieldId: z.ZodNullable<z.ZodString>;
4636
4706
  fieldName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
4637
4707
  harvestId: z.ZodNullable<z.ZodString>;
4708
+ createdById: z.ZodNullable<z.ZodString>;
4709
+ createdByName: z.ZodNullable<z.ZodString>;
4638
4710
  } & {
4639
4711
  createdAt: z.ZodString;
4640
4712
  updatedAt: z.ZodString;
@@ -4646,6 +4718,8 @@ export declare const financeRouter: {
4646
4718
  fieldId: string | null;
4647
4719
  unit: string;
4648
4720
  quantity: number;
4721
+ createdById: string | null;
4722
+ createdByName: string | null;
4649
4723
  pricePerUnit: number;
4650
4724
  totalAmount: number;
4651
4725
  buyer: string | null;
@@ -4659,6 +4733,8 @@ export declare const financeRouter: {
4659
4733
  fieldId: string | null;
4660
4734
  unit: string;
4661
4735
  quantity: number;
4736
+ createdById: string | null;
4737
+ createdByName: string | null;
4662
4738
  pricePerUnit: number;
4663
4739
  totalAmount: number;
4664
4740
  buyer: string | null;
@@ -4679,6 +4755,8 @@ export declare const financeRouter: {
4679
4755
  fieldId: string | null;
4680
4756
  unit: string;
4681
4757
  quantity: number;
4758
+ createdById: string | null;
4759
+ createdByName: string | null;
4682
4760
  pricePerUnit: number;
4683
4761
  totalAmount: number;
4684
4762
  buyer: string | null;
@@ -4699,6 +4777,8 @@ export declare const financeRouter: {
4699
4777
  fieldId: string | null;
4700
4778
  unit: string;
4701
4779
  quantity: number;
4780
+ createdById: string | null;
4781
+ createdByName: string | null;
4702
4782
  pricePerUnit: number;
4703
4783
  totalAmount: number;
4704
4784
  buyer: string | null;
@@ -4745,6 +4825,8 @@ export declare const financeRouter: {
4745
4825
  fieldId: string | null;
4746
4826
  unit: string;
4747
4827
  quantity: number;
4828
+ createdById: string | null;
4829
+ createdByName: string | null;
4748
4830
  pricePerUnit: number;
4749
4831
  totalAmount: number;
4750
4832
  buyer: string | null;
@@ -4777,6 +4859,8 @@ export declare const financeRouter: {
4777
4859
  fieldId: string | null;
4778
4860
  unit: string;
4779
4861
  quantity: number;
4862
+ createdById: string | null;
4863
+ createdByName: string | null;
4780
4864
  pricePerUnit: number;
4781
4865
  totalAmount: number;
4782
4866
  buyer: string | null;
@@ -5198,6 +5282,8 @@ export declare const financeRouter: {
5198
5282
  fieldId: z.ZodNullable<z.ZodString>;
5199
5283
  fieldName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
5200
5284
  harvestId: z.ZodNullable<z.ZodString>;
5285
+ createdById: z.ZodNullable<z.ZodString>;
5286
+ createdByName: z.ZodNullable<z.ZodString>;
5201
5287
  } & {
5202
5288
  createdAt: z.ZodString;
5203
5289
  updatedAt: z.ZodString;
@@ -5209,6 +5295,8 @@ export declare const financeRouter: {
5209
5295
  fieldId: string | null;
5210
5296
  unit: string;
5211
5297
  quantity: number;
5298
+ createdById: string | null;
5299
+ createdByName: string | null;
5212
5300
  pricePerUnit: number;
5213
5301
  totalAmount: number;
5214
5302
  buyer: string | null;
@@ -5222,6 +5310,8 @@ export declare const financeRouter: {
5222
5310
  fieldId: string | null;
5223
5311
  unit: string;
5224
5312
  quantity: number;
5313
+ createdById: string | null;
5314
+ createdByName: string | null;
5225
5315
  pricePerUnit: number;
5226
5316
  totalAmount: number;
5227
5317
  buyer: string | null;
@@ -5300,6 +5390,8 @@ export declare const financeRouter: {
5300
5390
  fieldId: string | null;
5301
5391
  unit: string;
5302
5392
  quantity: number;
5393
+ createdById: string | null;
5394
+ createdByName: string | null;
5303
5395
  pricePerUnit: number;
5304
5396
  totalAmount: number;
5305
5397
  buyer: string | null;
@@ -5331,6 +5423,8 @@ export declare const financeRouter: {
5331
5423
  fieldId: string | null;
5332
5424
  unit: string;
5333
5425
  quantity: number;
5426
+ createdById: string | null;
5427
+ createdByName: string | null;
5334
5428
  pricePerUnit: number;
5335
5429
  totalAmount: number;
5336
5430
  buyer: string | null;
@@ -5388,6 +5482,8 @@ export declare const financeRouter: {
5388
5482
  fieldId: string | null;
5389
5483
  unit: string;
5390
5484
  quantity: number;
5485
+ createdById: string | null;
5486
+ createdByName: string | null;
5391
5487
  pricePerUnit: number;
5392
5488
  totalAmount: number;
5393
5489
  buyer: string | null;
@@ -5431,6 +5527,8 @@ export declare const financeRouter: {
5431
5527
  fieldId: string | null;
5432
5528
  unit: string;
5433
5529
  quantity: number;
5530
+ createdById: string | null;
5531
+ createdByName: string | null;
5434
5532
  pricePerUnit: number;
5435
5533
  totalAmount: number;
5436
5534
  buyer: string | null;
@@ -5773,6 +5871,8 @@ export declare const financeRouter: {
5773
5871
  fieldId: z.ZodNullable<z.ZodString>;
5774
5872
  fieldName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
5775
5873
  harvestId: z.ZodNullable<z.ZodString>;
5874
+ createdById: z.ZodNullable<z.ZodString>;
5875
+ createdByName: z.ZodNullable<z.ZodString>;
5776
5876
  } & {
5777
5877
  createdAt: z.ZodString;
5778
5878
  updatedAt: z.ZodString;
@@ -5784,6 +5884,8 @@ export declare const financeRouter: {
5784
5884
  fieldId: string | null;
5785
5885
  unit: string;
5786
5886
  quantity: number;
5887
+ createdById: string | null;
5888
+ createdByName: string | null;
5787
5889
  pricePerUnit: number;
5788
5890
  totalAmount: number;
5789
5891
  buyer: string | null;
@@ -5797,6 +5899,8 @@ export declare const financeRouter: {
5797
5899
  fieldId: string | null;
5798
5900
  unit: string;
5799
5901
  quantity: number;
5902
+ createdById: string | null;
5903
+ createdByName: string | null;
5800
5904
  pricePerUnit: number;
5801
5905
  totalAmount: number;
5802
5906
  buyer: string | null;
@@ -5817,6 +5921,8 @@ export declare const financeRouter: {
5817
5921
  fieldId: string | null;
5818
5922
  unit: string;
5819
5923
  quantity: number;
5924
+ createdById: string | null;
5925
+ createdByName: string | null;
5820
5926
  pricePerUnit: number;
5821
5927
  totalAmount: number;
5822
5928
  buyer: string | null;
@@ -5837,6 +5943,8 @@ export declare const financeRouter: {
5837
5943
  fieldId: string | null;
5838
5944
  unit: string;
5839
5945
  quantity: number;
5946
+ createdById: string | null;
5947
+ createdByName: string | null;
5840
5948
  pricePerUnit: number;
5841
5949
  totalAmount: number;
5842
5950
  buyer: string | null;
@@ -5883,6 +5991,8 @@ export declare const financeRouter: {
5883
5991
  fieldId: string | null;
5884
5992
  unit: string;
5885
5993
  quantity: number;
5994
+ createdById: string | null;
5995
+ createdByName: string | null;
5886
5996
  pricePerUnit: number;
5887
5997
  totalAmount: number;
5888
5998
  buyer: string | null;
@@ -5915,6 +6025,8 @@ export declare const financeRouter: {
5915
6025
  fieldId: string | null;
5916
6026
  unit: string;
5917
6027
  quantity: number;
6028
+ createdById: string | null;
6029
+ createdByName: string | null;
5918
6030
  pricePerUnit: number;
5919
6031
  totalAmount: number;
5920
6032
  buyer: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"finance.routes.d.ts","sourceRoot":"","sources":["../../src/routes/finance.routes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAuCxB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA2RpB,sEAAsE;;YAEtE;;;eAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgMP,CAAC"}
1
+ {"version":3,"file":"finance.routes.d.ts","sourceRoot":"","sources":["../../src/routes/finance.routes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAuCxB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA2RpB,sEAAsE;;YAEtE;;;eAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgMP,CAAC"}