@tiangong-lca/tidas-sdk 0.4.0 → 0.4.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.
@@ -9,8 +9,8 @@
9
9
  "schemaRoot": "assets/tidas",
10
10
  "schemaSets": {
11
11
  "en": {
12
- "contentAggregateSha256": "dff07770f226fc7e78618c762b8d8bd7bef76a9086a6a19daccf3b52890ae6e9",
13
- "contractAggregateSha256": "670e0d5337960e9373ab15701ae76ff425fa599f384914c19dc4c4317fcc26a0",
12
+ "contentAggregateSha256": "a15ce34e7b59b2833e41f5a1f080065d2850fabedb5b582bcc48078a7f4d22e1",
13
+ "contractAggregateSha256": "a3740f3d4fb6eb6aed1a0b1b9357b631113f38d14fbf9177ba123875c1eaf8c1",
14
14
  "fileCount": 18,
15
15
  "files": {
16
16
  "tidas_contacts.json": {
@@ -62,8 +62,8 @@
62
62
  "contractSha256": "1ee3cb139f7ff54b08b4f3d0ab98bf92f35b4566f59bc24043711d454208918e"
63
63
  },
64
64
  "tidas_processes.json": {
65
- "contentSha256": "8297261f5ce1e3bbc9287febeebae256c11f011a3c878fdfe4d8d33fcdad69c6",
66
- "contractSha256": "138950e51817bfda9314fdbd73a803c8573b8d41376d869cdc1aa2f98a776b9d"
65
+ "contentSha256": "5fc2870b2b50c652d9f43c88f2297aeab55f0cf4177fe924007d2bedacd846ab",
66
+ "contractSha256": "7962c0ab0a9771846246e35260f30357f0100dbc1255b70457721b76e05f5a00"
67
67
  },
68
68
  "tidas_processes_category.json": {
69
69
  "contentSha256": "cea1b97b46fd9faa2f7f4d7b911ff19f24a1655ff98b488ebaf5cc9ee6fdec64",
@@ -89,8 +89,8 @@
89
89
  "path": "schemas"
90
90
  },
91
91
  "zh": {
92
- "contentAggregateSha256": "caa32cfb5173a279c739a096d2c007e0a1b511850e07ac4558dbc004b44b6a5d",
93
- "contractAggregateSha256": "670e0d5337960e9373ab15701ae76ff425fa599f384914c19dc4c4317fcc26a0",
92
+ "contentAggregateSha256": "9a1ca9eb6a536eb88c7891548d39c7e0e948ea12f0123723de9d7d0f21d22357",
93
+ "contractAggregateSha256": "a3740f3d4fb6eb6aed1a0b1b9357b631113f38d14fbf9177ba123875c1eaf8c1",
94
94
  "fileCount": 18,
95
95
  "files": {
96
96
  "tidas_contacts.json": {
@@ -142,8 +142,8 @@
142
142
  "contractSha256": "1ee3cb139f7ff54b08b4f3d0ab98bf92f35b4566f59bc24043711d454208918e"
143
143
  },
144
144
  "tidas_processes.json": {
145
- "contentSha256": "76b60720074bedab46830fd5c8a98325aceca0cc327c50501ec080d50c0f9c32",
146
- "contractSha256": "138950e51817bfda9314fdbd73a803c8573b8d41376d869cdc1aa2f98a776b9d"
145
+ "contentSha256": "e7f6afe98d42c6594ab117c3451c1d045d4648d082e9cd7e7318a78b05a507ab",
146
+ "contractSha256": "7962c0ab0a9771846246e35260f30357f0100dbc1255b70457721b76e05f5a00"
147
147
  },
148
148
  "tidas_processes_category.json": {
149
149
  "contentSha256": "05107a1aab2869a38ffafc05461778a272117a6a1f2805b3c37a9354e7158bdd",
@@ -170,7 +170,7 @@
170
170
  }
171
171
  },
172
172
  "translationPairs": {
173
- "contractAggregateSha256": "670e0d5337960e9373ab15701ae76ff425fa599f384914c19dc4c4317fcc26a0",
173
+ "contractAggregateSha256": "a3740f3d4fb6eb6aed1a0b1b9357b631113f38d14fbf9177ba123875c1eaf8c1",
174
174
  "fileCount": 18,
175
175
  "files": {
176
176
  "tidas_contacts.json": {
@@ -234,9 +234,9 @@
234
234
  "zhContentSha256": "e20c3f168481bca8197b58a97a3bd4e12aa8a3f66553ff54f7dea7a40b044141"
235
235
  },
236
236
  "tidas_processes.json": {
237
- "contractSha256": "138950e51817bfda9314fdbd73a803c8573b8d41376d869cdc1aa2f98a776b9d",
238
- "enContentSha256": "8297261f5ce1e3bbc9287febeebae256c11f011a3c878fdfe4d8d33fcdad69c6",
239
- "zhContentSha256": "76b60720074bedab46830fd5c8a98325aceca0cc327c50501ec080d50c0f9c32"
237
+ "contractSha256": "7962c0ab0a9771846246e35260f30357f0100dbc1255b70457721b76e05f5a00",
238
+ "enContentSha256": "5fc2870b2b50c652d9f43c88f2297aeab55f0cf4177fe924007d2bedacd846ab",
239
+ "zhContentSha256": "e7f6afe98d42c6594ab117c3451c1d045d4648d082e9cd7e7318a78b05a507ab"
240
240
  },
241
241
  "tidas_processes_category.json": {
242
242
  "contractSha256": "fbbf0d8006ff5ae55b4213be01a1c4cad7cefe6de63d21ff63c170adda275ecc",
@@ -628,8 +628,47 @@
628
628
  }
629
629
  },
630
630
  "required": [
631
- "@type",
632
- "referenceToReferenceFlow"
631
+ "@type"
632
+ ],
633
+ "allOf": [
634
+ {
635
+ "if": {
636
+ "properties": {
637
+ "@type": {
638
+ "const": "Reference flow(s)"
639
+ }
640
+ },
641
+ "required": [
642
+ "@type"
643
+ ]
644
+ },
645
+ "then": {
646
+ "required": [
647
+ "referenceToReferenceFlow"
648
+ ]
649
+ }
650
+ },
651
+ {
652
+ "if": {
653
+ "properties": {
654
+ "@type": {
655
+ "enum": [
656
+ "Functional unit",
657
+ "Other parameter",
658
+ "Production period"
659
+ ]
660
+ }
661
+ },
662
+ "required": [
663
+ "@type"
664
+ ]
665
+ },
666
+ "then": {
667
+ "required": [
668
+ "functionalUnitOrOther"
669
+ ]
670
+ }
671
+ }
633
672
  ]
634
673
  },
635
674
  "time": {
@@ -888,10 +927,7 @@
888
927
  "common:other": {
889
928
  "$ref": "tidas_data_types.json#/$defs/CommonOther"
890
929
  }
891
- },
892
- "required": [
893
- "typeOfDataSet"
894
- ]
930
+ }
895
931
  },
896
932
  "dataSourcesTreatmentAndRepresentativeness": {
897
933
  "type": "object",
@@ -628,8 +628,47 @@
628
628
  }
629
629
  },
630
630
  "required": [
631
- "@type",
632
- "referenceToReferenceFlow"
631
+ "@type"
632
+ ],
633
+ "allOf": [
634
+ {
635
+ "if": {
636
+ "properties": {
637
+ "@type": {
638
+ "const": "Reference flow(s)"
639
+ }
640
+ },
641
+ "required": [
642
+ "@type"
643
+ ]
644
+ },
645
+ "then": {
646
+ "required": [
647
+ "referenceToReferenceFlow"
648
+ ]
649
+ }
650
+ },
651
+ {
652
+ "if": {
653
+ "properties": {
654
+ "@type": {
655
+ "enum": [
656
+ "Functional unit",
657
+ "Other parameter",
658
+ "Production period"
659
+ ]
660
+ }
661
+ },
662
+ "required": [
663
+ "@type"
664
+ ]
665
+ },
666
+ "then": {
667
+ "required": [
668
+ "functionalUnitOrOther"
669
+ ]
670
+ }
671
+ }
633
672
  ]
634
673
  },
635
674
  "time": {
@@ -888,10 +927,7 @@
888
927
  "common:other": {
889
928
  "$ref": "tidas_data_types.json#/$defs/CommonOther"
890
929
  }
891
- },
892
- "required": [
893
- "typeOfDataSet"
894
- ]
930
+ }
895
931
  },
896
932
  "dataSourcesTreatmentAndRepresentativeness": {
897
933
  "type": "object",
@@ -6181,7 +6181,7 @@ export declare const ProcessesSchema: z.ZodObject<{
6181
6181
  }, z.core.$strip>;
6182
6182
  quantitativeReference: z.ZodObject<{
6183
6183
  '@type': z.ZodIntersection<z.ZodUnion<readonly [z.ZodLiteral<"Reference flow(s)">, z.ZodLiteral<"Functional unit">, z.ZodLiteral<"Other parameter">, z.ZodLiteral<"Production period">]>, z.ZodString>;
6184
- referenceToReferenceFlow: z.ZodString;
6184
+ referenceToReferenceFlow: z.ZodOptional<z.ZodString>;
6185
6185
  functionalUnitOrOther: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
6186
6186
  '@xml:lang': z.ZodEnum<{
6187
6187
  aa: "aa";
@@ -11567,7 +11567,7 @@ export declare const ProcessesSchema: z.ZodObject<{
11567
11567
  }, z.core.$strip>;
11568
11568
  modellingAndValidation: z.ZodObject<{
11569
11569
  LCIMethodAndAllocation: z.ZodObject<{
11570
- typeOfDataSet: z.ZodIntersection<z.ZodUnion<readonly [z.ZodLiteral<"Unit process, single operation">, z.ZodLiteral<"Unit process, black box">, z.ZodLiteral<"LCI result">, z.ZodLiteral<"Partly terminated system">, z.ZodLiteral<"Avoided product system">]>, z.ZodString>;
11570
+ typeOfDataSet: z.ZodOptional<z.ZodIntersection<z.ZodUnion<readonly [z.ZodLiteral<"Unit process, single operation">, z.ZodLiteral<"Unit process, black box">, z.ZodLiteral<"LCI result">, z.ZodLiteral<"Partly terminated system">, z.ZodLiteral<"Avoided product system">]>, z.ZodString>>;
11571
11571
  LCIMethodPrinciple: z.ZodOptional<z.ZodIntersection<z.ZodUnion<readonly [z.ZodLiteral<"Attributional">, z.ZodLiteral<"Consequential">, z.ZodLiteral<"Consequential with attributional components">, z.ZodLiteral<"Not applicable">, z.ZodLiteral<"Other">]>, z.ZodString>>;
11572
11572
  deviationsFromLCIMethodPrinciple: z.ZodOptional<z.ZodUnion<readonly [z.ZodArray<z.ZodObject<{
11573
11573
  '@xml:lang': z.ZodEnum<{
@@ -1 +1 @@
1
- {"version":3,"file":"tidas_processes.schema.d.ts","sourceRoot":"","sources":["../../src/schemas/tidas_processes.schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA+BxB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0N/B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA+pB1B,CAAC"}
1
+ {"version":3,"file":"tidas_processes.schema.d.ts","sourceRoot":"","sources":["../../src/schemas/tidas_processes.schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA+BxB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0N/B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAirB1B,CAAC"}
@@ -244,17 +244,23 @@ exports.ProcessesSchema = zod_1.z.object({
244
244
  referenceToExternalDocumentation: tidas_data_types_schema_1.GlobalReferenceTypeSchema.optional(),
245
245
  'common:other': tidas_data_types_schema_1.CommonOtherSchema.optional(),
246
246
  }),
247
- quantitativeReference: zod_1.z.object({
247
+ quantitativeReference: (0, json_schema_1.withJsonSchemaConditional)((0, json_schema_1.withJsonSchemaConditional)(zod_1.z.object({
248
248
  '@type': zod_1.z.intersection(zod_1.z.union([
249
249
  zod_1.z.literal('Reference flow(s)'),
250
250
  zod_1.z.literal('Functional unit'),
251
251
  zod_1.z.literal('Other parameter'),
252
252
  zod_1.z.literal('Production period'),
253
253
  ]), zod_1.z.string()),
254
- referenceToReferenceFlow: tidas_data_types_schema_1.Int6Schema,
254
+ referenceToReferenceFlow: tidas_data_types_schema_1.Int6Schema.optional(),
255
255
  functionalUnitOrOther: tidas_data_types_schema_1.StringMultiLangSchema.optional(),
256
256
  'common:other': tidas_data_types_schema_1.CommonOtherSchema.optional(),
257
- }),
257
+ }), zod_1.z.object({ '@type': zod_1.z.literal('Reference flow(s)') }), zod_1.z.object({ referenceToReferenceFlow: zod_1.z.unknown() }), undefined), zod_1.z.object({
258
+ '@type': zod_1.z.union([
259
+ zod_1.z.literal('Functional unit'),
260
+ zod_1.z.literal('Other parameter'),
261
+ zod_1.z.literal('Production period'),
262
+ ]),
263
+ }), zod_1.z.object({ functionalUnitOrOther: zod_1.z.unknown() }), undefined),
258
264
  time: zod_1.z.object({
259
265
  'common:referenceYear': tidas_data_types_schema_1.YearSchema,
260
266
  'common:dataSetValidUntil': tidas_data_types_schema_1.YearSchema.optional(),
@@ -319,13 +325,15 @@ exports.ProcessesSchema = zod_1.z.object({
319
325
  }),
320
326
  modellingAndValidation: zod_1.z.object({
321
327
  LCIMethodAndAllocation: zod_1.z.object({
322
- typeOfDataSet: zod_1.z.intersection(zod_1.z.union([
328
+ typeOfDataSet: zod_1.z
329
+ .intersection(zod_1.z.union([
323
330
  zod_1.z.literal('Unit process, single operation'),
324
331
  zod_1.z.literal('Unit process, black box'),
325
332
  zod_1.z.literal('LCI result'),
326
333
  zod_1.z.literal('Partly terminated system'),
327
334
  zod_1.z.literal('Avoided product system'),
328
- ]), zod_1.z.string()),
335
+ ]), zod_1.z.string())
336
+ .optional(),
329
337
  LCIMethodPrinciple: zod_1.z
330
338
  .intersection(zod_1.z.union([
331
339
  zod_1.z.literal('Attributional'),
@@ -1 +1 @@
1
- {"version":3,"file":"tidas_processes.schema.js","sourceRoot":"","sources":["../../src/schemas/tidas_processes.schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tidas_processes.schema.js","sourceRoot":"","sources":["../../src/schemas/tidas_processes.schema.ts"],"names":[],"mappings":"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"}
@@ -122,7 +122,7 @@ export interface Processes {
122
122
  };
123
123
  quantitativeReference: {
124
124
  '@type': 'Reference flow(s)' | 'Functional unit' | 'Other parameter' | 'Production period';
125
- referenceToReferenceFlow: Int6;
125
+ referenceToReferenceFlow?: Int6;
126
126
  functionalUnitOrOther?: StringMultiLang;
127
127
  'common:other'?: CommonOther;
128
128
  };
@@ -174,7 +174,7 @@ export interface Processes {
174
174
  };
175
175
  modellingAndValidation: {
176
176
  LCIMethodAndAllocation: {
177
- typeOfDataSet: 'Unit process, single operation' | 'Unit process, black box' | 'LCI result' | 'Partly terminated system' | 'Avoided product system';
177
+ typeOfDataSet?: 'Unit process, single operation' | 'Unit process, black box' | 'LCI result' | 'Partly terminated system' | 'Avoided product system';
178
178
  LCIMethodPrinciple?: 'Attributional' | 'Consequential' | 'Consequential with attributional components' | 'Not applicable' | 'Other';
179
179
  deviationsFromLCIMethodPrinciple?: FTMultiLang;
180
180
  LCIMethodApproaches?: 'Allocation - market value' | 'Allocation - gross calorific value' | 'Allocation - net calorific value' | 'Allocation - exergetic content' | 'Allocation - element content' | 'Allocation - mass' | 'Allocation - volume' | 'Allocation - ability to bear' | 'Allocation - marginal causality' | 'Allocation - physical causality' | 'Allocation - 100% to main function' | 'Allocation - other explicit assignment' | 'Allocation - equal distribution' | 'Substitution - BAT' | 'Substitution - average, market price correction' | 'Substitution - average, technical properties correction' | 'Allocation - recycled content' | 'Substitution - recycling potential' | 'Substitution - average, no correction' | 'Substitution - specific' | 'Consequential effects - other' | 'Not applicable' | 'Other';