@luzmo/dashboard-contents-types 1.0.32 → 1.0.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (559) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/assets/json-schemas/ai-summary-options.schema.json.cjs +1 -1
  3. package/assets/json-schemas/ai-summary-options.schema.json.d.ts +1 -1
  4. package/assets/json-schemas/ai-summary-options.schema.json.js +1 -1
  5. package/assets/json-schemas/ai-summary.schema.json.cjs +1 -1
  6. package/assets/json-schemas/ai-summary.schema.json.d.ts +2 -2
  7. package/assets/json-schemas/ai-summary.schema.json.js +1 -1
  8. package/assets/json-schemas/area-chart-options.schema.json.cjs +1 -1
  9. package/assets/json-schemas/area-chart-options.schema.json.d.ts +21 -1
  10. package/assets/json-schemas/area-chart-options.schema.json.js +1 -1
  11. package/assets/json-schemas/area-chart-slots.schema.json.cjs +1 -1
  12. package/assets/json-schemas/area-chart-slots.schema.json.d.ts +28 -22
  13. package/assets/json-schemas/area-chart-slots.schema.json.js +1 -1
  14. package/assets/json-schemas/area-chart.schema.json.cjs +1 -1
  15. package/assets/json-schemas/area-chart.schema.json.d.ts +3 -3
  16. package/assets/json-schemas/area-chart.schema.json.js +1 -1
  17. package/assets/json-schemas/bar-chart-options.schema.json.cjs +1 -1
  18. package/assets/json-schemas/bar-chart-options.schema.json.d.ts +21 -1
  19. package/assets/json-schemas/bar-chart-options.schema.json.js +1 -1
  20. package/assets/json-schemas/bar-chart-slots.schema.json.cjs +1 -1
  21. package/assets/json-schemas/bar-chart-slots.schema.json.d.ts +28 -22
  22. package/assets/json-schemas/bar-chart-slots.schema.json.js +1 -1
  23. package/assets/json-schemas/bar-chart.schema.json.cjs +1 -1
  24. package/assets/json-schemas/bar-chart.schema.json.d.ts +3 -3
  25. package/assets/json-schemas/bar-chart.schema.json.js +1 -1
  26. package/assets/json-schemas/box-plot-options.schema.json.cjs +1 -1
  27. package/assets/json-schemas/box-plot-options.schema.json.d.ts +7 -1
  28. package/assets/json-schemas/box-plot-options.schema.json.js +1 -1
  29. package/assets/json-schemas/box-plot-slots.schema.json.cjs +1 -1
  30. package/assets/json-schemas/box-plot-slots.schema.json.d.ts +22 -16
  31. package/assets/json-schemas/box-plot-slots.schema.json.js +1 -1
  32. package/assets/json-schemas/box-plot.schema.json.cjs +1 -1
  33. package/assets/json-schemas/box-plot.schema.json.d.ts +3 -3
  34. package/assets/json-schemas/box-plot.schema.json.js +1 -1
  35. package/assets/json-schemas/bubble-chart-options.schema.json.cjs +1 -1
  36. package/assets/json-schemas/bubble-chart-options.schema.json.d.ts +21 -1
  37. package/assets/json-schemas/bubble-chart-options.schema.json.js +1 -1
  38. package/assets/json-schemas/bubble-chart-slots.schema.json.cjs +1 -1
  39. package/assets/json-schemas/bubble-chart-slots.schema.json.d.ts +28 -22
  40. package/assets/json-schemas/bubble-chart-slots.schema.json.js +1 -1
  41. package/assets/json-schemas/bubble-chart.schema.json.cjs +1 -1
  42. package/assets/json-schemas/bubble-chart.schema.json.d.ts +3 -3
  43. package/assets/json-schemas/bubble-chart.schema.json.js +1 -1
  44. package/assets/json-schemas/bullet-chart-options.schema.json.cjs +1 -1
  45. package/assets/json-schemas/bullet-chart-options.schema.json.d.ts +7 -1
  46. package/assets/json-schemas/bullet-chart-options.schema.json.js +1 -1
  47. package/assets/json-schemas/bullet-chart-slots.schema.json.cjs +1 -1
  48. package/assets/json-schemas/bullet-chart-slots.schema.json.d.ts +28 -22
  49. package/assets/json-schemas/bullet-chart-slots.schema.json.js +1 -1
  50. package/assets/json-schemas/bullet-chart.schema.json.cjs +1 -1
  51. package/assets/json-schemas/bullet-chart.schema.json.d.ts +3 -3
  52. package/assets/json-schemas/bullet-chart.schema.json.js +1 -1
  53. package/assets/json-schemas/choropleth-map-options.schema.json.cjs +1 -1
  54. package/assets/json-schemas/choropleth-map-options.schema.json.d.ts +16 -1
  55. package/assets/json-schemas/choropleth-map-options.schema.json.js +4 -4
  56. package/assets/json-schemas/choropleth-map-slots.schema.json.cjs +1 -1
  57. package/assets/json-schemas/choropleth-map-slots.schema.json.d.ts +25 -19
  58. package/assets/json-schemas/choropleth-map-slots.schema.json.js +5 -5
  59. package/assets/json-schemas/choropleth-map.schema.json.cjs +1 -1
  60. package/assets/json-schemas/choropleth-map.schema.json.d.ts +3 -3
  61. package/assets/json-schemas/choropleth-map.schema.json.js +1 -1
  62. package/assets/json-schemas/circle-pack-chart-options.schema.json.cjs +1 -1
  63. package/assets/json-schemas/circle-pack-chart-options.schema.json.d.ts +7 -1
  64. package/assets/json-schemas/circle-pack-chart-options.schema.json.js +1 -1
  65. package/assets/json-schemas/circle-pack-chart-slots.schema.json.cjs +1 -1
  66. package/assets/json-schemas/circle-pack-chart-slots.schema.json.d.ts +24 -18
  67. package/assets/json-schemas/circle-pack-chart-slots.schema.json.js +5 -5
  68. package/assets/json-schemas/circle-pack-chart.schema.json.cjs +1 -1
  69. package/assets/json-schemas/circle-pack-chart.schema.json.d.ts +3 -3
  70. package/assets/json-schemas/circle-pack-chart.schema.json.js +1 -1
  71. package/assets/json-schemas/circular-gauge-options.schema.json.cjs +1 -1
  72. package/assets/json-schemas/circular-gauge-options.schema.json.d.ts +7 -1
  73. package/assets/json-schemas/circular-gauge-options.schema.json.js +1 -1
  74. package/assets/json-schemas/circular-gauge-slots.schema.json.cjs +1 -1
  75. package/assets/json-schemas/circular-gauge-slots.schema.json.d.ts +24 -18
  76. package/assets/json-schemas/circular-gauge-slots.schema.json.js +1 -1
  77. package/assets/json-schemas/circular-gauge.schema.json.cjs +1 -1
  78. package/assets/json-schemas/circular-gauge.schema.json.d.ts +3 -3
  79. package/assets/json-schemas/circular-gauge.schema.json.js +1 -1
  80. package/assets/json-schemas/column-chart-options.schema.json.cjs +1 -1
  81. package/assets/json-schemas/column-chart-options.schema.json.d.ts +21 -1
  82. package/assets/json-schemas/column-chart-options.schema.json.js +1 -1
  83. package/assets/json-schemas/column-chart-slots.schema.json.cjs +1 -1
  84. package/assets/json-schemas/column-chart-slots.schema.json.d.ts +28 -22
  85. package/assets/json-schemas/column-chart-slots.schema.json.js +1 -1
  86. package/assets/json-schemas/column-chart.schema.json.cjs +1 -1
  87. package/assets/json-schemas/column-chart.schema.json.d.ts +3 -3
  88. package/assets/json-schemas/column-chart.schema.json.js +1 -1
  89. package/assets/json-schemas/combination-chart-options.schema.json.cjs +1 -1
  90. package/assets/json-schemas/combination-chart-options.schema.json.d.ts +21 -1
  91. package/assets/json-schemas/combination-chart-options.schema.json.js +1 -1
  92. package/assets/json-schemas/combination-chart-slots.schema.json.cjs +1 -1
  93. package/assets/json-schemas/combination-chart-slots.schema.json.d.ts +24 -18
  94. package/assets/json-schemas/combination-chart-slots.schema.json.js +1 -1
  95. package/assets/json-schemas/combination-chart.schema.json.cjs +1 -1
  96. package/assets/json-schemas/combination-chart.schema.json.d.ts +3 -3
  97. package/assets/json-schemas/combination-chart.schema.json.js +1 -1
  98. package/assets/json-schemas/conditional-number-options.schema.json.cjs +1 -1
  99. package/assets/json-schemas/conditional-number-options.schema.json.d.ts +7 -1
  100. package/assets/json-schemas/conditional-number-options.schema.json.js +1 -1
  101. package/assets/json-schemas/conditional-number-slots.schema.json.cjs +1 -1
  102. package/assets/json-schemas/conditional-number-slots.schema.json.d.ts +24 -18
  103. package/assets/json-schemas/conditional-number-slots.schema.json.js +1 -1
  104. package/assets/json-schemas/conditional-number.schema.json.cjs +1 -1
  105. package/assets/json-schemas/conditional-number.schema.json.d.ts +3 -3
  106. package/assets/json-schemas/conditional-number.schema.json.js +1 -1
  107. package/assets/json-schemas/date-comparison-filter-options.schema.json.cjs +1 -1
  108. package/assets/json-schemas/date-comparison-filter-options.schema.json.d.ts +7 -1
  109. package/assets/json-schemas/date-comparison-filter-options.schema.json.js +1 -1
  110. package/assets/json-schemas/date-comparison-filter-slots.schema.json.cjs +4 -4
  111. package/assets/json-schemas/date-comparison-filter-slots.schema.json.d.ts +15 -9
  112. package/assets/json-schemas/date-comparison-filter-slots.schema.json.js +4 -4
  113. package/assets/json-schemas/date-comparison-filter.schema.json.cjs +1 -1
  114. package/assets/json-schemas/date-comparison-filter.schema.json.d.ts +3 -3
  115. package/assets/json-schemas/date-comparison-filter.schema.json.js +1 -1
  116. package/assets/json-schemas/date-filter-options.schema.json.cjs +1 -1
  117. package/assets/json-schemas/date-filter-options.schema.json.d.ts +7 -1
  118. package/assets/json-schemas/date-filter-options.schema.json.js +1 -1
  119. package/assets/json-schemas/date-filter-slots.schema.json.cjs +4 -4
  120. package/assets/json-schemas/date-filter-slots.schema.json.d.ts +15 -9
  121. package/assets/json-schemas/date-filter-slots.schema.json.js +4 -4
  122. package/assets/json-schemas/date-filter.schema.json.cjs +1 -1
  123. package/assets/json-schemas/date-filter.schema.json.d.ts +3 -3
  124. package/assets/json-schemas/date-filter.schema.json.js +1 -1
  125. package/assets/json-schemas/donut-chart-options.schema.json.cjs +1 -1
  126. package/assets/json-schemas/donut-chart-options.schema.json.d.ts +21 -1
  127. package/assets/json-schemas/donut-chart-options.schema.json.js +1 -1
  128. package/assets/json-schemas/donut-chart-slots.schema.json.cjs +1 -1
  129. package/assets/json-schemas/donut-chart-slots.schema.json.d.ts +24 -18
  130. package/assets/json-schemas/donut-chart-slots.schema.json.js +1 -1
  131. package/assets/json-schemas/donut-chart.schema.json.cjs +1 -1
  132. package/assets/json-schemas/donut-chart.schema.json.d.ts +3 -3
  133. package/assets/json-schemas/donut-chart.schema.json.js +1 -1
  134. package/assets/json-schemas/dropdown-filter-options.schema.json.cjs +1 -1
  135. package/assets/json-schemas/dropdown-filter-options.schema.json.d.ts +7 -1
  136. package/assets/json-schemas/dropdown-filter-options.schema.json.js +1 -1
  137. package/assets/json-schemas/dropdown-filter-slots.schema.json.cjs +1 -1
  138. package/assets/json-schemas/dropdown-filter-slots.schema.json.d.ts +20 -14
  139. package/assets/json-schemas/dropdown-filter-slots.schema.json.js +1 -1
  140. package/assets/json-schemas/dropdown-filter.schema.json.cjs +1 -1
  141. package/assets/json-schemas/dropdown-filter.schema.json.d.ts +3 -3
  142. package/assets/json-schemas/dropdown-filter.schema.json.js +1 -1
  143. package/assets/json-schemas/evolution-number-options.schema.json.cjs +1 -1
  144. package/assets/json-schemas/evolution-number-options.schema.json.d.ts +7 -1
  145. package/assets/json-schemas/evolution-number-options.schema.json.js +1 -1
  146. package/assets/json-schemas/evolution-number-slots.schema.json.cjs +1 -1
  147. package/assets/json-schemas/evolution-number-slots.schema.json.d.ts +22 -16
  148. package/assets/json-schemas/evolution-number-slots.schema.json.js +1 -1
  149. package/assets/json-schemas/evolution-number.schema.json.cjs +1 -1
  150. package/assets/json-schemas/evolution-number.schema.json.d.ts +3 -3
  151. package/assets/json-schemas/evolution-number.schema.json.js +1 -1
  152. package/assets/json-schemas/funnel-chart-options.schema.json.cjs +1 -1
  153. package/assets/json-schemas/funnel-chart-options.schema.json.d.ts +21 -1
  154. package/assets/json-schemas/funnel-chart-options.schema.json.js +1 -1
  155. package/assets/json-schemas/funnel-chart-slots.schema.json.cjs +1 -1
  156. package/assets/json-schemas/funnel-chart-slots.schema.json.d.ts +23 -17
  157. package/assets/json-schemas/funnel-chart-slots.schema.json.js +1 -1
  158. package/assets/json-schemas/funnel-chart.schema.json.cjs +1 -1
  159. package/assets/json-schemas/funnel-chart.schema.json.d.ts +3 -3
  160. package/assets/json-schemas/funnel-chart.schema.json.js +1 -1
  161. package/assets/json-schemas/heat-map-options.schema.json.cjs +1 -1
  162. package/assets/json-schemas/heat-map-options.schema.json.d.ts +7 -1
  163. package/assets/json-schemas/heat-map-options.schema.json.js +1 -1
  164. package/assets/json-schemas/heat-map-slots.schema.json.cjs +1 -1
  165. package/assets/json-schemas/heat-map-slots.schema.json.d.ts +22 -16
  166. package/assets/json-schemas/heat-map-slots.schema.json.js +5 -5
  167. package/assets/json-schemas/heat-map.schema.json.cjs +1 -1
  168. package/assets/json-schemas/heat-map.schema.json.d.ts +3 -3
  169. package/assets/json-schemas/heat-map.schema.json.js +1 -1
  170. package/assets/json-schemas/heat-table-options.schema.json.cjs +1 -1
  171. package/assets/json-schemas/heat-table-options.schema.json.d.ts +7 -1
  172. package/assets/json-schemas/heat-table-options.schema.json.js +1 -1
  173. package/assets/json-schemas/heat-table-slots.schema.json.cjs +1 -1
  174. package/assets/json-schemas/heat-table-slots.schema.json.d.ts +28 -22
  175. package/assets/json-schemas/heat-table-slots.schema.json.js +1 -1
  176. package/assets/json-schemas/heat-table.schema.json.cjs +1 -1
  177. package/assets/json-schemas/heat-table.schema.json.d.ts +3 -3
  178. package/assets/json-schemas/heat-table.schema.json.js +1 -1
  179. package/assets/json-schemas/hexbin-map-options.schema.json.cjs +1 -1
  180. package/assets/json-schemas/hexbin-map-options.schema.json.d.ts +16 -1
  181. package/assets/json-schemas/hexbin-map-options.schema.json.js +1 -1
  182. package/assets/json-schemas/hexbin-map-slots.schema.json.cjs +1 -1
  183. package/assets/json-schemas/hexbin-map-slots.schema.json.d.ts +22 -16
  184. package/assets/json-schemas/hexbin-map-slots.schema.json.js +1 -1
  185. package/assets/json-schemas/hexbin-map.schema.json.cjs +1 -1
  186. package/assets/json-schemas/hexbin-map.schema.json.d.ts +3 -3
  187. package/assets/json-schemas/hexbin-map.schema.json.js +1 -1
  188. package/assets/json-schemas/image-options.schema.json.cjs +1 -1
  189. package/assets/json-schemas/image-options.schema.json.d.ts +1 -1
  190. package/assets/json-schemas/image-options.schema.json.js +1 -1
  191. package/assets/json-schemas/image.schema.json.cjs +1 -1
  192. package/assets/json-schemas/image.schema.json.d.ts +2 -2
  193. package/assets/json-schemas/image.schema.json.js +1 -1
  194. package/assets/json-schemas/line-chart-options.schema.json.cjs +1 -1
  195. package/assets/json-schemas/line-chart-options.schema.json.d.ts +21 -1
  196. package/assets/json-schemas/line-chart-options.schema.json.js +1 -1
  197. package/assets/json-schemas/line-chart-slots.schema.json.cjs +1 -1
  198. package/assets/json-schemas/line-chart-slots.schema.json.d.ts +28 -22
  199. package/assets/json-schemas/line-chart-slots.schema.json.js +1 -1
  200. package/assets/json-schemas/line-chart.schema.json.cjs +1 -1
  201. package/assets/json-schemas/line-chart.schema.json.d.ts +3 -3
  202. package/assets/json-schemas/line-chart.schema.json.js +1 -1
  203. package/assets/json-schemas/marker-map-options.schema.json.cjs +1 -1
  204. package/assets/json-schemas/marker-map-options.schema.json.d.ts +7 -1
  205. package/assets/json-schemas/marker-map-options.schema.json.js +1 -1
  206. package/assets/json-schemas/marker-map-slots.schema.json.cjs +1 -1
  207. package/assets/json-schemas/marker-map-slots.schema.json.d.ts +22 -16
  208. package/assets/json-schemas/marker-map-slots.schema.json.js +5 -5
  209. package/assets/json-schemas/marker-map.schema.json.cjs +1 -1
  210. package/assets/json-schemas/marker-map.schema.json.d.ts +3 -3
  211. package/assets/json-schemas/marker-map.schema.json.js +1 -1
  212. package/assets/json-schemas/ohlc-chart-options.schema.json.cjs +1 -1
  213. package/assets/json-schemas/ohlc-chart-options.schema.json.d.ts +7 -1
  214. package/assets/json-schemas/ohlc-chart-options.schema.json.js +1 -1
  215. package/assets/json-schemas/ohlc-chart-slots.schema.json.cjs +1 -1
  216. package/assets/json-schemas/ohlc-chart-slots.schema.json.d.ts +36 -30
  217. package/assets/json-schemas/ohlc-chart-slots.schema.json.js +1 -1
  218. package/assets/json-schemas/ohlc-chart.schema.json.cjs +1 -1
  219. package/assets/json-schemas/ohlc-chart.schema.json.d.ts +3 -3
  220. package/assets/json-schemas/ohlc-chart.schema.json.js +1 -1
  221. package/assets/json-schemas/options.schema.json.cjs +1 -1
  222. package/assets/json-schemas/options.schema.json.d.ts +46 -46
  223. package/assets/json-schemas/options.schema.json.js +1 -1
  224. package/assets/json-schemas/parallel-coordinates-plot-options.schema.json.cjs +1 -1
  225. package/assets/json-schemas/parallel-coordinates-plot-options.schema.json.d.ts +7 -1
  226. package/assets/json-schemas/parallel-coordinates-plot-options.schema.json.js +1 -1
  227. package/assets/json-schemas/parallel-coordinates-plot-slots.schema.json.cjs +1 -1
  228. package/assets/json-schemas/parallel-coordinates-plot-slots.schema.json.d.ts +23 -17
  229. package/assets/json-schemas/parallel-coordinates-plot-slots.schema.json.js +1 -1
  230. package/assets/json-schemas/parallel-coordinates-plot.schema.json.cjs +1 -1
  231. package/assets/json-schemas/parallel-coordinates-plot.schema.json.d.ts +3 -3
  232. package/assets/json-schemas/parallel-coordinates-plot.schema.json.js +1 -1
  233. package/assets/json-schemas/pivot-table-options.schema.json.cjs +1 -1
  234. package/assets/json-schemas/pivot-table-options.schema.json.d.ts +7 -1
  235. package/assets/json-schemas/pivot-table-options.schema.json.js +1 -1
  236. package/assets/json-schemas/pivot-table-slots.schema.json.cjs +1 -1
  237. package/assets/json-schemas/pivot-table-slots.schema.json.d.ts +28 -22
  238. package/assets/json-schemas/pivot-table-slots.schema.json.js +1 -1
  239. package/assets/json-schemas/pivot-table.schema.json.cjs +1 -1
  240. package/assets/json-schemas/pivot-table.schema.json.d.ts +3 -3
  241. package/assets/json-schemas/pivot-table.schema.json.js +1 -1
  242. package/assets/json-schemas/pyramid-chart-options.schema.json.cjs +1 -1
  243. package/assets/json-schemas/pyramid-chart-options.schema.json.d.ts +21 -1
  244. package/assets/json-schemas/pyramid-chart-options.schema.json.js +4 -4
  245. package/assets/json-schemas/pyramid-chart-slots.schema.json.cjs +1 -1
  246. package/assets/json-schemas/pyramid-chart-slots.schema.json.d.ts +28 -22
  247. package/assets/json-schemas/pyramid-chart-slots.schema.json.js +1 -1
  248. package/assets/json-schemas/pyramid-chart.schema.json.cjs +1 -1
  249. package/assets/json-schemas/pyramid-chart.schema.json.d.ts +3 -3
  250. package/assets/json-schemas/pyramid-chart.schema.json.js +1 -1
  251. package/assets/json-schemas/radar-chart-options.schema.json.cjs +1 -1
  252. package/assets/json-schemas/radar-chart-options.schema.json.d.ts +21 -1
  253. package/assets/json-schemas/radar-chart-options.schema.json.js +1 -1
  254. package/assets/json-schemas/radar-chart-slots.schema.json.cjs +1 -1
  255. package/assets/json-schemas/radar-chart-slots.schema.json.d.ts +28 -22
  256. package/assets/json-schemas/radar-chart-slots.schema.json.js +1 -1
  257. package/assets/json-schemas/radar-chart.schema.json.cjs +1 -1
  258. package/assets/json-schemas/radar-chart.schema.json.d.ts +3 -3
  259. package/assets/json-schemas/radar-chart.schema.json.js +1 -1
  260. package/assets/json-schemas/regular-table-options.schema.json.cjs +1 -1
  261. package/assets/json-schemas/regular-table-options.schema.json.d.ts +7 -1
  262. package/assets/json-schemas/regular-table-options.schema.json.js +1 -1
  263. package/assets/json-schemas/regular-table-slots.schema.json.cjs +1 -1
  264. package/assets/json-schemas/regular-table-slots.schema.json.d.ts +20 -14
  265. package/assets/json-schemas/regular-table-slots.schema.json.js +1 -1
  266. package/assets/json-schemas/regular-table.schema.json.cjs +1 -1
  267. package/assets/json-schemas/regular-table.schema.json.d.ts +3 -3
  268. package/assets/json-schemas/regular-table.schema.json.js +1 -1
  269. package/assets/json-schemas/route-map-options.schema.json.cjs +1 -1
  270. package/assets/json-schemas/route-map-options.schema.json.d.ts +7 -1
  271. package/assets/json-schemas/route-map-options.schema.json.js +1 -1
  272. package/assets/json-schemas/route-map-slots.schema.json.cjs +1 -1
  273. package/assets/json-schemas/route-map-slots.schema.json.d.ts +29 -23
  274. package/assets/json-schemas/route-map-slots.schema.json.js +1 -1
  275. package/assets/json-schemas/route-map.schema.json.cjs +1 -1
  276. package/assets/json-schemas/route-map.schema.json.d.ts +3 -3
  277. package/assets/json-schemas/route-map.schema.json.js +1 -1
  278. package/assets/json-schemas/sankey-diagram-options.schema.json.cjs +1 -1
  279. package/assets/json-schemas/sankey-diagram-options.schema.json.d.ts +7 -1
  280. package/assets/json-schemas/sankey-diagram-options.schema.json.js +1 -1
  281. package/assets/json-schemas/sankey-diagram-slots.schema.json.cjs +1 -1
  282. package/assets/json-schemas/sankey-diagram-slots.schema.json.d.ts +32 -26
  283. package/assets/json-schemas/sankey-diagram-slots.schema.json.js +1 -1
  284. package/assets/json-schemas/sankey-diagram.schema.json.cjs +1 -1
  285. package/assets/json-schemas/sankey-diagram.schema.json.d.ts +3 -3
  286. package/assets/json-schemas/sankey-diagram.schema.json.js +1 -1
  287. package/assets/json-schemas/scatter-plot-options.schema.json.cjs +1 -1
  288. package/assets/json-schemas/scatter-plot-options.schema.json.d.ts +21 -1
  289. package/assets/json-schemas/scatter-plot-options.schema.json.js +1 -1
  290. package/assets/json-schemas/scatter-plot-slots.schema.json.cjs +1 -1
  291. package/assets/json-schemas/scatter-plot-slots.schema.json.d.ts +36 -30
  292. package/assets/json-schemas/scatter-plot-slots.schema.json.js +1 -1
  293. package/assets/json-schemas/scatter-plot.schema.json.cjs +1 -1
  294. package/assets/json-schemas/scatter-plot.schema.json.d.ts +3 -3
  295. package/assets/json-schemas/scatter-plot.schema.json.js +1 -1
  296. package/assets/json-schemas/search-filter-options.schema.json.cjs +1 -1
  297. package/assets/json-schemas/search-filter-options.schema.json.d.ts +7 -1
  298. package/assets/json-schemas/search-filter-options.schema.json.js +1 -1
  299. package/assets/json-schemas/search-filter-slots.schema.json.cjs +1 -1
  300. package/assets/json-schemas/search-filter-slots.schema.json.d.ts +20 -14
  301. package/assets/json-schemas/search-filter-slots.schema.json.js +1 -1
  302. package/assets/json-schemas/search-filter.schema.json.cjs +1 -1
  303. package/assets/json-schemas/search-filter.schema.json.d.ts +3 -3
  304. package/assets/json-schemas/search-filter.schema.json.js +1 -1
  305. package/assets/json-schemas/slicer-filter-options.schema.json.cjs +1 -1
  306. package/assets/json-schemas/slicer-filter-options.schema.json.d.ts +7 -1
  307. package/assets/json-schemas/slicer-filter-options.schema.json.js +1 -1
  308. package/assets/json-schemas/slicer-filter-slots.schema.json.cjs +1 -1
  309. package/assets/json-schemas/slicer-filter-slots.schema.json.d.ts +24 -18
  310. package/assets/json-schemas/slicer-filter-slots.schema.json.js +1 -1
  311. package/assets/json-schemas/slicer-filter.schema.json.cjs +1 -1
  312. package/assets/json-schemas/slicer-filter.schema.json.d.ts +3 -3
  313. package/assets/json-schemas/slicer-filter.schema.json.js +1 -1
  314. package/assets/json-schemas/slider-filter-options.schema.json.cjs +1 -1
  315. package/assets/json-schemas/slider-filter-options.schema.json.d.ts +7 -1
  316. package/assets/json-schemas/slider-filter-options.schema.json.js +1 -1
  317. package/assets/json-schemas/slider-filter-slots.schema.json.cjs +1 -1
  318. package/assets/json-schemas/slider-filter-slots.schema.json.d.ts +18 -12
  319. package/assets/json-schemas/slider-filter-slots.schema.json.js +1 -1
  320. package/assets/json-schemas/slider-filter.schema.json.cjs +1 -1
  321. package/assets/json-schemas/slider-filter.schema.json.d.ts +3 -3
  322. package/assets/json-schemas/slider-filter.schema.json.js +1 -1
  323. package/assets/json-schemas/slots.schema.json.cjs +1 -1
  324. package/assets/json-schemas/slots.schema.json.d.ts +42 -42
  325. package/assets/json-schemas/slots.schema.json.js +1 -1
  326. package/assets/json-schemas/speedometer-chart-options.schema.json.cjs +1 -1
  327. package/assets/json-schemas/speedometer-chart-options.schema.json.d.ts +7 -1
  328. package/assets/json-schemas/speedometer-chart-options.schema.json.js +1 -1
  329. package/assets/json-schemas/speedometer-chart-slots.schema.json.cjs +1 -1
  330. package/assets/json-schemas/speedometer-chart-slots.schema.json.d.ts +28 -22
  331. package/assets/json-schemas/speedometer-chart-slots.schema.json.js +1 -1
  332. package/assets/json-schemas/speedometer-chart.schema.json.cjs +1 -1
  333. package/assets/json-schemas/speedometer-chart.schema.json.d.ts +3 -3
  334. package/assets/json-schemas/speedometer-chart.schema.json.js +1 -1
  335. package/assets/json-schemas/spike-map-options.schema.json.cjs +1 -1
  336. package/assets/json-schemas/spike-map-options.schema.json.d.ts +16 -1
  337. package/assets/json-schemas/spike-map-options.schema.json.js +1 -1
  338. package/assets/json-schemas/spike-map-slots.schema.json.cjs +1 -1
  339. package/assets/json-schemas/spike-map-slots.schema.json.d.ts +26 -20
  340. package/assets/json-schemas/spike-map-slots.schema.json.js +1 -1
  341. package/assets/json-schemas/spike-map.schema.json.cjs +1 -1
  342. package/assets/json-schemas/spike-map.schema.json.d.ts +3 -3
  343. package/assets/json-schemas/spike-map.schema.json.js +1 -1
  344. package/assets/json-schemas/strip-plot-options.schema.json.cjs +1 -1
  345. package/assets/json-schemas/strip-plot-options.schema.json.d.ts +7 -1
  346. package/assets/json-schemas/strip-plot-options.schema.json.js +1 -1
  347. package/assets/json-schemas/strip-plot-slots.schema.json.cjs +1 -1
  348. package/assets/json-schemas/strip-plot-slots.schema.json.d.ts +24 -18
  349. package/assets/json-schemas/strip-plot-slots.schema.json.js +1 -1
  350. package/assets/json-schemas/strip-plot.schema.json.cjs +1 -1
  351. package/assets/json-schemas/strip-plot.schema.json.d.ts +3 -3
  352. package/assets/json-schemas/strip-plot.schema.json.js +1 -1
  353. package/assets/json-schemas/sunburst-chart-options.schema.json.cjs +1 -1
  354. package/assets/json-schemas/sunburst-chart-options.schema.json.d.ts +21 -1
  355. package/assets/json-schemas/sunburst-chart-options.schema.json.js +4 -4
  356. package/assets/json-schemas/sunburst-chart-slots.schema.json.cjs +1 -1
  357. package/assets/json-schemas/sunburst-chart-slots.schema.json.d.ts +24 -18
  358. package/assets/json-schemas/sunburst-chart-slots.schema.json.js +1 -1
  359. package/assets/json-schemas/sunburst-chart.schema.json.cjs +1 -1
  360. package/assets/json-schemas/sunburst-chart.schema.json.d.ts +3 -3
  361. package/assets/json-schemas/sunburst-chart.schema.json.js +1 -1
  362. package/assets/json-schemas/symbol-map-options.schema.json.cjs +1 -1
  363. package/assets/json-schemas/symbol-map-options.schema.json.d.ts +21 -1
  364. package/assets/json-schemas/symbol-map-options.schema.json.js +1 -1
  365. package/assets/json-schemas/symbol-map-slots.schema.json.cjs +1 -1
  366. package/assets/json-schemas/symbol-map-slots.schema.json.d.ts +25 -19
  367. package/assets/json-schemas/symbol-map-slots.schema.json.js +1 -1
  368. package/assets/json-schemas/symbol-map.schema.json.cjs +1 -1
  369. package/assets/json-schemas/symbol-map.schema.json.d.ts +3 -3
  370. package/assets/json-schemas/symbol-map.schema.json.js +1 -1
  371. package/assets/json-schemas/text-options.schema.json.cjs +1 -1
  372. package/assets/json-schemas/text-options.schema.json.d.ts +1 -1
  373. package/assets/json-schemas/text-options.schema.json.js +1 -1
  374. package/assets/json-schemas/text.schema.json.cjs +1 -1
  375. package/assets/json-schemas/text.schema.json.d.ts +2 -2
  376. package/assets/json-schemas/text.schema.json.js +1 -1
  377. package/assets/json-schemas/treemap-chart-options.schema.json.cjs +1 -1
  378. package/assets/json-schemas/treemap-chart-options.schema.json.d.ts +21 -1
  379. package/assets/json-schemas/treemap-chart-options.schema.json.js +1 -1
  380. package/assets/json-schemas/treemap-chart-slots.schema.json.cjs +1 -1
  381. package/assets/json-schemas/treemap-chart-slots.schema.json.d.ts +33 -27
  382. package/assets/json-schemas/treemap-chart-slots.schema.json.js +1 -1
  383. package/assets/json-schemas/treemap-chart.schema.json.cjs +1 -1
  384. package/assets/json-schemas/treemap-chart.schema.json.d.ts +3 -3
  385. package/assets/json-schemas/treemap-chart.schema.json.js +1 -1
  386. package/assets/json-schemas/video-options.schema.json.cjs +1 -1
  387. package/assets/json-schemas/video-options.schema.json.d.ts +1 -1
  388. package/assets/json-schemas/video-options.schema.json.js +1 -1
  389. package/assets/json-schemas/video.schema.json.cjs +1 -1
  390. package/assets/json-schemas/video.schema.json.d.ts +2 -2
  391. package/assets/json-schemas/video.schema.json.js +1 -1
  392. package/assets/json-schemas/viz-item-type.schema.json.cjs +1 -1
  393. package/assets/json-schemas/viz-item-type.schema.json.d.ts +1 -2
  394. package/assets/json-schemas/viz-item-type.schema.json.js +1 -1
  395. package/assets/json-schemas/wordcloud-chart-options.schema.json.cjs +1 -1
  396. package/assets/json-schemas/wordcloud-chart-options.schema.json.d.ts +21 -1
  397. package/assets/json-schemas/wordcloud-chart-options.schema.json.js +1 -1
  398. package/assets/json-schemas/wordcloud-chart-slots.schema.json.cjs +1 -1
  399. package/assets/json-schemas/wordcloud-chart-slots.schema.json.d.ts +26 -20
  400. package/assets/json-schemas/wordcloud-chart-slots.schema.json.js +1 -1
  401. package/assets/json-schemas/wordcloud-chart.schema.json.cjs +1 -1
  402. package/assets/json-schemas/wordcloud-chart.schema.json.d.ts +3 -3
  403. package/assets/json-schemas/wordcloud-chart.schema.json.js +1 -1
  404. package/index.cjs +1 -1
  405. package/index.js +234 -238
  406. package/index.js.map +1 -1
  407. package/json-schemas.cjs.map +1 -1
  408. package/json-schemas.d.ts +565 -0
  409. package/json-schemas.d.ts.map +1 -1
  410. package/json-schemas.js.map +1 -1
  411. package/package.json +1 -1
  412. package/src/index.d.ts +0 -1
  413. package/src/index.d.ts.map +1 -1
  414. package/src/lib/area-chart/area-chart-options.config.cjs +1 -1
  415. package/src/lib/area-chart/area-chart-options.config.cjs.map +1 -1
  416. package/src/lib/area-chart/area-chart-options.config.d.ts.map +1 -1
  417. package/src/lib/area-chart/area-chart-options.config.js +20 -2
  418. package/src/lib/area-chart/area-chart-options.config.js.map +1 -1
  419. package/src/lib/area-chart/area-chart-options.d.ts +7 -1
  420. package/src/lib/area-chart/area-chart-options.d.ts.map +1 -1
  421. package/src/lib/bar-chart/bar-chart-options.config.cjs +1 -1
  422. package/src/lib/bar-chart/bar-chart-options.config.cjs.map +1 -1
  423. package/src/lib/bar-chart/bar-chart-options.config.d.ts.map +1 -1
  424. package/src/lib/bar-chart/bar-chart-options.config.js +23 -5
  425. package/src/lib/bar-chart/bar-chart-options.config.js.map +1 -1
  426. package/src/lib/bar-chart/bar-chart-options.d.ts +7 -1
  427. package/src/lib/bar-chart/bar-chart-options.d.ts.map +1 -1
  428. package/src/lib/bubble-chart/bubble-chart-options.config.cjs +1 -1
  429. package/src/lib/bubble-chart/bubble-chart-options.config.cjs.map +1 -1
  430. package/src/lib/bubble-chart/bubble-chart-options.config.d.ts.map +1 -1
  431. package/src/lib/bubble-chart/bubble-chart-options.config.js +23 -5
  432. package/src/lib/bubble-chart/bubble-chart-options.config.js.map +1 -1
  433. package/src/lib/bubble-chart/bubble-chart-options.d.ts +7 -1
  434. package/src/lib/bubble-chart/bubble-chart-options.d.ts.map +1 -1
  435. package/src/lib/column-chart/column-chart-options.cjs.map +1 -1
  436. package/src/lib/column-chart/column-chart-options.config.cjs +1 -1
  437. package/src/lib/column-chart/column-chart-options.config.cjs.map +1 -1
  438. package/src/lib/column-chart/column-chart-options.config.d.ts.map +1 -1
  439. package/src/lib/column-chart/column-chart-options.config.js +20 -2
  440. package/src/lib/column-chart/column-chart-options.config.js.map +1 -1
  441. package/src/lib/column-chart/column-chart-options.d.ts +7 -1
  442. package/src/lib/column-chart/column-chart-options.d.ts.map +1 -1
  443. package/src/lib/column-chart/column-chart-options.js.map +1 -1
  444. package/src/lib/combination-chart/combination-chart-options.d.ts +7 -1
  445. package/src/lib/combination-chart/combination-chart-options.d.ts.map +1 -1
  446. package/src/lib/donut-chart/donut-chart-context.config.cjs.map +1 -1
  447. package/src/lib/donut-chart/donut-chart-context.config.js.map +1 -1
  448. package/src/lib/donut-chart/donut-chart-options.d.ts +7 -1
  449. package/src/lib/donut-chart/donut-chart-options.d.ts.map +1 -1
  450. package/src/lib/funnel-chart/funnel-chart-options.config.cjs +1 -1
  451. package/src/lib/funnel-chart/funnel-chart-options.config.cjs.map +1 -1
  452. package/src/lib/funnel-chart/funnel-chart-options.config.d.ts.map +1 -1
  453. package/src/lib/funnel-chart/funnel-chart-options.config.js +18 -0
  454. package/src/lib/funnel-chart/funnel-chart-options.config.js.map +1 -1
  455. package/src/lib/funnel-chart/funnel-chart-options.d.ts +7 -1
  456. package/src/lib/funnel-chart/funnel-chart-options.d.ts.map +1 -1
  457. package/src/lib/line-chart/line-chart-options.config.cjs +1 -1
  458. package/src/lib/line-chart/line-chart-options.config.cjs.map +1 -1
  459. package/src/lib/line-chart/line-chart-options.config.d.ts.map +1 -1
  460. package/src/lib/line-chart/line-chart-options.config.js +26 -8
  461. package/src/lib/line-chart/line-chart-options.config.js.map +1 -1
  462. package/src/lib/line-chart/line-chart-options.d.ts +7 -1
  463. package/src/lib/line-chart/line-chart-options.d.ts.map +1 -1
  464. package/src/lib/pyramid-chart/pyramid-chart-options.config.cjs +1 -1
  465. package/src/lib/pyramid-chart/pyramid-chart-options.config.cjs.map +1 -1
  466. package/src/lib/pyramid-chart/pyramid-chart-options.config.d.ts.map +1 -1
  467. package/src/lib/pyramid-chart/pyramid-chart-options.config.js +23 -5
  468. package/src/lib/pyramid-chart/pyramid-chart-options.config.js.map +1 -1
  469. package/src/lib/pyramid-chart/pyramid-chart-options.d.ts +7 -1
  470. package/src/lib/pyramid-chart/pyramid-chart-options.d.ts.map +1 -1
  471. package/src/lib/radar-chart/radar-chart-options.config.cjs +1 -1
  472. package/src/lib/radar-chart/radar-chart-options.config.cjs.map +1 -1
  473. package/src/lib/radar-chart/radar-chart-options.config.d.ts.map +1 -1
  474. package/src/lib/radar-chart/radar-chart-options.config.js +21 -3
  475. package/src/lib/radar-chart/radar-chart-options.config.js.map +1 -1
  476. package/src/lib/radar-chart/radar-chart-options.d.ts +7 -1
  477. package/src/lib/radar-chart/radar-chart-options.d.ts.map +1 -1
  478. package/src/lib/scatter-plot/scatter-plot-options.config.cjs +1 -1
  479. package/src/lib/scatter-plot/scatter-plot-options.config.cjs.map +1 -1
  480. package/src/lib/scatter-plot/scatter-plot-options.config.d.ts.map +1 -1
  481. package/src/lib/scatter-plot/scatter-plot-options.config.js +25 -7
  482. package/src/lib/scatter-plot/scatter-plot-options.config.js.map +1 -1
  483. package/src/lib/scatter-plot/scatter-plot-options.d.ts +7 -1
  484. package/src/lib/scatter-plot/scatter-plot-options.d.ts.map +1 -1
  485. package/src/lib/shared/index.d.ts +1 -0
  486. package/src/lib/shared/index.d.ts.map +1 -1
  487. package/src/lib/shared/types/data-field.d.ts +1 -0
  488. package/src/lib/shared/types/data-field.d.ts.map +1 -1
  489. package/src/lib/shared/types/formula.d.ts +1 -0
  490. package/src/lib/shared/types/formula.d.ts.map +1 -1
  491. package/src/lib/shared/types/index.d.ts +1 -0
  492. package/src/lib/shared/types/index.d.ts.map +1 -1
  493. package/src/lib/shared/types/interactivity-legend-reorder.d.ts +14 -0
  494. package/src/lib/shared/types/interactivity-legend-reorder.d.ts.map +1 -0
  495. package/src/lib/shared/types/iq-components.d.ts +2 -0
  496. package/src/lib/shared/types/iq-components.d.ts.map +1 -1
  497. package/src/lib/shared/types/item-filter-group.d.ts +2 -2
  498. package/src/lib/shared/types/legend.d.ts +17 -0
  499. package/src/lib/shared/types/legend.d.ts.map +1 -1
  500. package/src/lib/shared/types/query.d.ts +5 -1
  501. package/src/lib/shared/types/query.d.ts.map +1 -1
  502. package/src/lib/shared/types/viz-item-type.cjs +1 -1
  503. package/src/lib/shared/types/viz-item-type.cjs.map +1 -1
  504. package/src/lib/shared/types/viz-item-type.d.ts +1 -1
  505. package/src/lib/shared/types/viz-item-type.d.ts.map +1 -1
  506. package/src/lib/shared/types/viz-item-type.js +0 -1
  507. package/src/lib/shared/types/viz-item-type.js.map +1 -1
  508. package/src/lib/shared/utils/context-registry.generated.cjs +1 -1
  509. package/src/lib/shared/utils/context-registry.generated.cjs.map +1 -1
  510. package/src/lib/shared/utils/context-registry.generated.d.ts.map +1 -1
  511. package/src/lib/shared/utils/context-registry.generated.js +0 -1
  512. package/src/lib/shared/utils/context-registry.generated.js.map +1 -1
  513. package/src/lib/shared/utils/slots-registry.generated.cjs +1 -1
  514. package/src/lib/shared/utils/slots-registry.generated.cjs.map +1 -1
  515. package/src/lib/shared/utils/slots-registry.generated.d.ts.map +1 -1
  516. package/src/lib/shared/utils/slots-registry.generated.js +0 -1
  517. package/src/lib/shared/utils/slots-registry.generated.js.map +1 -1
  518. package/src/lib/shared/version.cjs +1 -1
  519. package/src/lib/shared/version.cjs.map +1 -1
  520. package/src/lib/shared/version.d.ts +1 -1
  521. package/src/lib/shared/version.js +1 -1
  522. package/src/lib/shared/version.js.map +1 -1
  523. package/src/lib/sunburst-chart/sunburst-chart-options.config.cjs +1 -1
  524. package/src/lib/sunburst-chart/sunburst-chart-options.config.cjs.map +1 -1
  525. package/src/lib/sunburst-chart/sunburst-chart-options.config.d.ts.map +1 -1
  526. package/src/lib/sunburst-chart/sunburst-chart-options.config.js +18 -0
  527. package/src/lib/sunburst-chart/sunburst-chart-options.config.js.map +1 -1
  528. package/src/lib/sunburst-chart/sunburst-chart-options.d.ts +7 -1
  529. package/src/lib/sunburst-chart/sunburst-chart-options.d.ts.map +1 -1
  530. package/src/lib/symbol-map/symbol-map-options.config.cjs +1 -1
  531. package/src/lib/symbol-map/symbol-map-options.config.cjs.map +1 -1
  532. package/src/lib/symbol-map/symbol-map-options.config.d.ts.map +1 -1
  533. package/src/lib/symbol-map/symbol-map-options.config.js +20 -2
  534. package/src/lib/symbol-map/symbol-map-options.config.js.map +1 -1
  535. package/src/lib/symbol-map/symbol-map-options.d.ts +6 -0
  536. package/src/lib/symbol-map/symbol-map-options.d.ts.map +1 -1
  537. package/src/lib/treemap-chart/treemap-chart-options.config.cjs +1 -1
  538. package/src/lib/treemap-chart/treemap-chart-options.config.cjs.map +1 -1
  539. package/src/lib/treemap-chart/treemap-chart-options.config.d.ts.map +1 -1
  540. package/src/lib/treemap-chart/treemap-chart-options.config.js +25 -7
  541. package/src/lib/treemap-chart/treemap-chart-options.config.js.map +1 -1
  542. package/src/lib/treemap-chart/treemap-chart-options.d.ts +6 -0
  543. package/src/lib/treemap-chart/treemap-chart-options.d.ts.map +1 -1
  544. package/src/lib/wordcloud-chart/wordcloud-chart-options.d.ts +6 -0
  545. package/src/lib/wordcloud-chart/wordcloud-chart-options.d.ts.map +1 -1
  546. package/src/lib/dynamic-imageobject/dynamic-imageobject-context.config.cjs +0 -4
  547. package/src/lib/dynamic-imageobject/dynamic-imageobject-context.config.cjs.map +0 -1
  548. package/src/lib/dynamic-imageobject/dynamic-imageobject-context.config.d.ts +0 -3
  549. package/src/lib/dynamic-imageobject/dynamic-imageobject-context.config.d.ts.map +0 -1
  550. package/src/lib/dynamic-imageobject/dynamic-imageobject-context.config.js +0 -17
  551. package/src/lib/dynamic-imageobject/dynamic-imageobject-context.config.js.map +0 -1
  552. package/src/lib/dynamic-imageobject/dynamic-imageobject-slots.config.cjs +0 -2
  553. package/src/lib/dynamic-imageobject/dynamic-imageobject-slots.config.cjs.map +0 -1
  554. package/src/lib/dynamic-imageobject/dynamic-imageobject-slots.config.d.ts +0 -3
  555. package/src/lib/dynamic-imageobject/dynamic-imageobject-slots.config.d.ts.map +0 -1
  556. package/src/lib/dynamic-imageobject/dynamic-imageobject-slots.config.js +0 -14
  557. package/src/lib/dynamic-imageobject/dynamic-imageobject-slots.config.js.map +0 -1
  558. package/src/lib/dynamic-imageobject/index.d.ts +0 -3
  559. package/src/lib/dynamic-imageobject/index.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"json-schemas.d.ts","sourceRoot":"","sources":["../../../libs/dashboard-contents-types/json-schemas.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuIxB,CAAC"}
1
+ {"version":3,"file":"json-schemas.d.ts","sourceRoot":"","sources":["../../../libs/dashboard-contents-types/json-schemas.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuIxB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"json-schemas.js","sources":["../../../libs/dashboard-contents-types/json-schemas.ts"],"sourcesContent":["/**\n * AUTO-GENERATED FILE — DO NOT EDIT MANUALLY.\n *\n * This file is generated by: npm run build:dashboard-contents-types-lib\n * Source script: tools/scripts/json-schemas-exports.js\n */\n\nimport VizItemTypeJSONSchema from './assets/json-schemas/viz-item-type.schema.json';\n\nimport OptionsJSONSchema from './assets/json-schemas/options.schema.json';\n\nimport SlotsJSONSchema from './assets/json-schemas/slots.schema.json';\n\nimport AiSummaryJSONSchema from './assets/json-schemas/ai-summary.schema.json';\nimport AiSummaryOptionsJSONSchema from './assets/json-schemas/ai-summary-options.schema.json';\n\nimport AreaChartJSONSchema from './assets/json-schemas/area-chart.schema.json';\nimport AreaChartOptionsJSONSchema from './assets/json-schemas/area-chart-options.schema.json';\nimport AreaChartSlotsJSONSchema from './assets/json-schemas/area-chart-slots.schema.json';\n\nimport BarChartJSONSchema from './assets/json-schemas/bar-chart.schema.json';\nimport BarChartOptionsJSONSchema from './assets/json-schemas/bar-chart-options.schema.json';\nimport BarChartSlotsJSONSchema from './assets/json-schemas/bar-chart-slots.schema.json';\n\nimport BoxPlotJSONSchema from './assets/json-schemas/box-plot.schema.json';\nimport BoxPlotOptionsJSONSchema from './assets/json-schemas/box-plot-options.schema.json';\nimport BoxPlotSlotsJSONSchema from './assets/json-schemas/box-plot-slots.schema.json';\n\nimport BubbleChartJSONSchema from './assets/json-schemas/bubble-chart.schema.json';\nimport BubbleChartOptionsJSONSchema from './assets/json-schemas/bubble-chart-options.schema.json';\nimport BubbleChartSlotsJSONSchema from './assets/json-schemas/bubble-chart-slots.schema.json';\n\nimport BulletChartJSONSchema from './assets/json-schemas/bullet-chart.schema.json';\nimport BulletChartOptionsJSONSchema from './assets/json-schemas/bullet-chart-options.schema.json';\nimport BulletChartSlotsJSONSchema from './assets/json-schemas/bullet-chart-slots.schema.json';\n\nimport ChoroplethMapJSONSchema from './assets/json-schemas/choropleth-map.schema.json';\nimport ChoroplethMapOptionsJSONSchema from './assets/json-schemas/choropleth-map-options.schema.json';\nimport ChoroplethMapSlotsJSONSchema from './assets/json-schemas/choropleth-map-slots.schema.json';\n\nimport CirclePackChartJSONSchema from './assets/json-schemas/circle-pack-chart.schema.json';\nimport CirclePackChartOptionsJSONSchema from './assets/json-schemas/circle-pack-chart-options.schema.json';\nimport CirclePackChartSlotsJSONSchema from './assets/json-schemas/circle-pack-chart-slots.schema.json';\n\nimport CircularGaugeJSONSchema from './assets/json-schemas/circular-gauge.schema.json';\nimport CircularGaugeOptionsJSONSchema from './assets/json-schemas/circular-gauge-options.schema.json';\nimport CircularGaugeSlotsJSONSchema from './assets/json-schemas/circular-gauge-slots.schema.json';\n\nimport ColumnChartJSONSchema from './assets/json-schemas/column-chart.schema.json';\nimport ColumnChartOptionsJSONSchema from './assets/json-schemas/column-chart-options.schema.json';\nimport ColumnChartSlotsJSONSchema from './assets/json-schemas/column-chart-slots.schema.json';\n\nimport CombinationChartJSONSchema from './assets/json-schemas/combination-chart.schema.json';\nimport CombinationChartOptionsJSONSchema from './assets/json-schemas/combination-chart-options.schema.json';\nimport CombinationChartSlotsJSONSchema from './assets/json-schemas/combination-chart-slots.schema.json';\n\nimport ConditionalNumberJSONSchema from './assets/json-schemas/conditional-number.schema.json';\nimport ConditionalNumberOptionsJSONSchema from './assets/json-schemas/conditional-number-options.schema.json';\nimport ConditionalNumberSlotsJSONSchema from './assets/json-schemas/conditional-number-slots.schema.json';\n\nimport DateComparisonFilterJSONSchema from './assets/json-schemas/date-comparison-filter.schema.json';\nimport DateComparisonFilterOptionsJSONSchema from './assets/json-schemas/date-comparison-filter-options.schema.json';\nimport DateComparisonFilterSlotsJSONSchema from './assets/json-schemas/date-comparison-filter-slots.schema.json';\n\nimport DateFilterJSONSchema from './assets/json-schemas/date-filter.schema.json';\nimport DateFilterOptionsJSONSchema from './assets/json-schemas/date-filter-options.schema.json';\nimport DateFilterSlotsJSONSchema from './assets/json-schemas/date-filter-slots.schema.json';\n\nimport DonutChartJSONSchema from './assets/json-schemas/donut-chart.schema.json';\nimport DonutChartOptionsJSONSchema from './assets/json-schemas/donut-chart-options.schema.json';\nimport DonutChartSlotsJSONSchema from './assets/json-schemas/donut-chart-slots.schema.json';\n\nimport DropdownFilterJSONSchema from './assets/json-schemas/dropdown-filter.schema.json';\nimport DropdownFilterOptionsJSONSchema from './assets/json-schemas/dropdown-filter-options.schema.json';\nimport DropdownFilterSlotsJSONSchema from './assets/json-schemas/dropdown-filter-slots.schema.json';\n\nimport EvolutionNumberJSONSchema from './assets/json-schemas/evolution-number.schema.json';\nimport EvolutionNumberOptionsJSONSchema from './assets/json-schemas/evolution-number-options.schema.json';\nimport EvolutionNumberSlotsJSONSchema from './assets/json-schemas/evolution-number-slots.schema.json';\n\nimport FunnelChartJSONSchema from './assets/json-schemas/funnel-chart.schema.json';\nimport FunnelChartOptionsJSONSchema from './assets/json-schemas/funnel-chart-options.schema.json';\nimport FunnelChartSlotsJSONSchema from './assets/json-schemas/funnel-chart-slots.schema.json';\n\nimport HeatMapJSONSchema from './assets/json-schemas/heat-map.schema.json';\nimport HeatMapOptionsJSONSchema from './assets/json-schemas/heat-map-options.schema.json';\nimport HeatMapSlotsJSONSchema from './assets/json-schemas/heat-map-slots.schema.json';\n\nimport HeatTableJSONSchema from './assets/json-schemas/heat-table.schema.json';\nimport HeatTableOptionsJSONSchema from './assets/json-schemas/heat-table-options.schema.json';\nimport HeatTableSlotsJSONSchema from './assets/json-schemas/heat-table-slots.schema.json';\n\nimport HexbinMapJSONSchema from './assets/json-schemas/hexbin-map.schema.json';\nimport HexbinMapOptionsJSONSchema from './assets/json-schemas/hexbin-map-options.schema.json';\nimport HexbinMapSlotsJSONSchema from './assets/json-schemas/hexbin-map-slots.schema.json';\n\nimport ImageJSONSchema from './assets/json-schemas/image.schema.json';\nimport ImageOptionsJSONSchema from './assets/json-schemas/image-options.schema.json';\n\nimport LineChartJSONSchema from './assets/json-schemas/line-chart.schema.json';\nimport LineChartOptionsJSONSchema from './assets/json-schemas/line-chart-options.schema.json';\nimport LineChartSlotsJSONSchema from './assets/json-schemas/line-chart-slots.schema.json';\n\nimport MarkerMapJSONSchema from './assets/json-schemas/marker-map.schema.json';\nimport MarkerMapOptionsJSONSchema from './assets/json-schemas/marker-map-options.schema.json';\nimport MarkerMapSlotsJSONSchema from './assets/json-schemas/marker-map-slots.schema.json';\n\nimport OhlcChartJSONSchema from './assets/json-schemas/ohlc-chart.schema.json';\nimport OhlcChartOptionsJSONSchema from './assets/json-schemas/ohlc-chart-options.schema.json';\nimport OhlcChartSlotsJSONSchema from './assets/json-schemas/ohlc-chart-slots.schema.json';\n\nimport ParallelCoordinatesPlotJSONSchema from './assets/json-schemas/parallel-coordinates-plot.schema.json';\nimport ParallelCoordinatesPlotOptionsJSONSchema from './assets/json-schemas/parallel-coordinates-plot-options.schema.json';\nimport ParallelCoordinatesPlotSlotsJSONSchema from './assets/json-schemas/parallel-coordinates-plot-slots.schema.json';\n\nimport PivotTableJSONSchema from './assets/json-schemas/pivot-table.schema.json';\nimport PivotTableOptionsJSONSchema from './assets/json-schemas/pivot-table-options.schema.json';\nimport PivotTableSlotsJSONSchema from './assets/json-schemas/pivot-table-slots.schema.json';\n\nimport PyramidChartJSONSchema from './assets/json-schemas/pyramid-chart.schema.json';\nimport PyramidChartOptionsJSONSchema from './assets/json-schemas/pyramid-chart-options.schema.json';\nimport PyramidChartSlotsJSONSchema from './assets/json-schemas/pyramid-chart-slots.schema.json';\n\nimport RadarChartJSONSchema from './assets/json-schemas/radar-chart.schema.json';\nimport RadarChartOptionsJSONSchema from './assets/json-schemas/radar-chart-options.schema.json';\nimport RadarChartSlotsJSONSchema from './assets/json-schemas/radar-chart-slots.schema.json';\n\nimport RegularTableJSONSchema from './assets/json-schemas/regular-table.schema.json';\nimport RegularTableOptionsJSONSchema from './assets/json-schemas/regular-table-options.schema.json';\nimport RegularTableSlotsJSONSchema from './assets/json-schemas/regular-table-slots.schema.json';\n\nimport RouteMapJSONSchema from './assets/json-schemas/route-map.schema.json';\nimport RouteMapOptionsJSONSchema from './assets/json-schemas/route-map-options.schema.json';\nimport RouteMapSlotsJSONSchema from './assets/json-schemas/route-map-slots.schema.json';\n\nimport SankeyDiagramJSONSchema from './assets/json-schemas/sankey-diagram.schema.json';\nimport SankeyDiagramOptionsJSONSchema from './assets/json-schemas/sankey-diagram-options.schema.json';\nimport SankeyDiagramSlotsJSONSchema from './assets/json-schemas/sankey-diagram-slots.schema.json';\n\nimport ScatterPlotJSONSchema from './assets/json-schemas/scatter-plot.schema.json';\nimport ScatterPlotOptionsJSONSchema from './assets/json-schemas/scatter-plot-options.schema.json';\nimport ScatterPlotSlotsJSONSchema from './assets/json-schemas/scatter-plot-slots.schema.json';\n\nimport SearchFilterJSONSchema from './assets/json-schemas/search-filter.schema.json';\nimport SearchFilterOptionsJSONSchema from './assets/json-schemas/search-filter-options.schema.json';\nimport SearchFilterSlotsJSONSchema from './assets/json-schemas/search-filter-slots.schema.json';\n\nimport SlicerFilterJSONSchema from './assets/json-schemas/slicer-filter.schema.json';\nimport SlicerFilterOptionsJSONSchema from './assets/json-schemas/slicer-filter-options.schema.json';\nimport SlicerFilterSlotsJSONSchema from './assets/json-schemas/slicer-filter-slots.schema.json';\n\nimport SliderFilterJSONSchema from './assets/json-schemas/slider-filter.schema.json';\nimport SliderFilterOptionsJSONSchema from './assets/json-schemas/slider-filter-options.schema.json';\nimport SliderFilterSlotsJSONSchema from './assets/json-schemas/slider-filter-slots.schema.json';\n\nimport SpeedometerChartJSONSchema from './assets/json-schemas/speedometer-chart.schema.json';\nimport SpeedometerChartOptionsJSONSchema from './assets/json-schemas/speedometer-chart-options.schema.json';\nimport SpeedometerChartSlotsJSONSchema from './assets/json-schemas/speedometer-chart-slots.schema.json';\n\nimport SpikeMapJSONSchema from './assets/json-schemas/spike-map.schema.json';\nimport SpikeMapOptionsJSONSchema from './assets/json-schemas/spike-map-options.schema.json';\nimport SpikeMapSlotsJSONSchema from './assets/json-schemas/spike-map-slots.schema.json';\n\nimport StripPlotJSONSchema from './assets/json-schemas/strip-plot.schema.json';\nimport StripPlotOptionsJSONSchema from './assets/json-schemas/strip-plot-options.schema.json';\nimport StripPlotSlotsJSONSchema from './assets/json-schemas/strip-plot-slots.schema.json';\n\nimport SunburstChartJSONSchema from './assets/json-schemas/sunburst-chart.schema.json';\nimport SunburstChartOptionsJSONSchema from './assets/json-schemas/sunburst-chart-options.schema.json';\nimport SunburstChartSlotsJSONSchema from './assets/json-schemas/sunburst-chart-slots.schema.json';\n\nimport SymbolMapJSONSchema from './assets/json-schemas/symbol-map.schema.json';\nimport SymbolMapOptionsJSONSchema from './assets/json-schemas/symbol-map-options.schema.json';\nimport SymbolMapSlotsJSONSchema from './assets/json-schemas/symbol-map-slots.schema.json';\n\nimport TextJSONSchema from './assets/json-schemas/text.schema.json';\nimport TextOptionsJSONSchema from './assets/json-schemas/text-options.schema.json';\n\nimport TreemapChartJSONSchema from './assets/json-schemas/treemap-chart.schema.json';\nimport TreemapChartOptionsJSONSchema from './assets/json-schemas/treemap-chart-options.schema.json';\nimport TreemapChartSlotsJSONSchema from './assets/json-schemas/treemap-chart-slots.schema.json';\n\nimport VideoJSONSchema from './assets/json-schemas/video.schema.json';\nimport VideoOptionsJSONSchema from './assets/json-schemas/video-options.schema.json';\n\nimport WordcloudChartJSONSchema from './assets/json-schemas/wordcloud-chart.schema.json';\nimport WordcloudChartOptionsJSONSchema from './assets/json-schemas/wordcloud-chart-options.schema.json';\nimport WordcloudChartSlotsJSONSchema from './assets/json-schemas/wordcloud-chart-slots.schema.json';\n\n// eslint-disable-next-line unicorn/prefer-export-from,max-len\nexport { VizItemTypeJSONSchema, OptionsJSONSchema, SlotsJSONSchema, AiSummaryJSONSchema, AiSummaryOptionsJSONSchema, AreaChartJSONSchema, AreaChartOptionsJSONSchema, AreaChartSlotsJSONSchema, BarChartJSONSchema, BarChartOptionsJSONSchema, BarChartSlotsJSONSchema, BoxPlotJSONSchema, BoxPlotOptionsJSONSchema, BoxPlotSlotsJSONSchema, BubbleChartJSONSchema, BubbleChartOptionsJSONSchema, BubbleChartSlotsJSONSchema, BulletChartJSONSchema, BulletChartOptionsJSONSchema, BulletChartSlotsJSONSchema, ChoroplethMapJSONSchema, ChoroplethMapOptionsJSONSchema, ChoroplethMapSlotsJSONSchema, CirclePackChartJSONSchema, CirclePackChartOptionsJSONSchema, CirclePackChartSlotsJSONSchema, CircularGaugeJSONSchema, CircularGaugeOptionsJSONSchema, CircularGaugeSlotsJSONSchema, ColumnChartJSONSchema, ColumnChartOptionsJSONSchema, ColumnChartSlotsJSONSchema, CombinationChartJSONSchema, CombinationChartOptionsJSONSchema, CombinationChartSlotsJSONSchema, ConditionalNumberJSONSchema, ConditionalNumberOptionsJSONSchema, ConditionalNumberSlotsJSONSchema, DateComparisonFilterJSONSchema, DateComparisonFilterOptionsJSONSchema, DateComparisonFilterSlotsJSONSchema, DateFilterJSONSchema, DateFilterOptionsJSONSchema, DateFilterSlotsJSONSchema, DonutChartJSONSchema, DonutChartOptionsJSONSchema, DonutChartSlotsJSONSchema, DropdownFilterJSONSchema, DropdownFilterOptionsJSONSchema, DropdownFilterSlotsJSONSchema, EvolutionNumberJSONSchema, EvolutionNumberOptionsJSONSchema, EvolutionNumberSlotsJSONSchema, FunnelChartJSONSchema, FunnelChartOptionsJSONSchema, FunnelChartSlotsJSONSchema, HeatMapJSONSchema, HeatMapOptionsJSONSchema, HeatMapSlotsJSONSchema, HeatTableJSONSchema, HeatTableOptionsJSONSchema, HeatTableSlotsJSONSchema, HexbinMapJSONSchema, HexbinMapOptionsJSONSchema, HexbinMapSlotsJSONSchema, ImageJSONSchema, ImageOptionsJSONSchema, LineChartJSONSchema, LineChartOptionsJSONSchema, LineChartSlotsJSONSchema, MarkerMapJSONSchema, MarkerMapOptionsJSONSchema, MarkerMapSlotsJSONSchema, OhlcChartJSONSchema, OhlcChartOptionsJSONSchema, OhlcChartSlotsJSONSchema, ParallelCoordinatesPlotJSONSchema, ParallelCoordinatesPlotOptionsJSONSchema, ParallelCoordinatesPlotSlotsJSONSchema, PivotTableJSONSchema, PivotTableOptionsJSONSchema, PivotTableSlotsJSONSchema, PyramidChartJSONSchema, PyramidChartOptionsJSONSchema, PyramidChartSlotsJSONSchema, RadarChartJSONSchema, RadarChartOptionsJSONSchema, RadarChartSlotsJSONSchema, RegularTableJSONSchema, RegularTableOptionsJSONSchema, RegularTableSlotsJSONSchema, RouteMapJSONSchema, RouteMapOptionsJSONSchema, RouteMapSlotsJSONSchema, SankeyDiagramJSONSchema, SankeyDiagramOptionsJSONSchema, SankeyDiagramSlotsJSONSchema, ScatterPlotJSONSchema, ScatterPlotOptionsJSONSchema, ScatterPlotSlotsJSONSchema, SearchFilterJSONSchema, SearchFilterOptionsJSONSchema, SearchFilterSlotsJSONSchema, SlicerFilterJSONSchema, SlicerFilterOptionsJSONSchema, SlicerFilterSlotsJSONSchema, SliderFilterJSONSchema, SliderFilterOptionsJSONSchema, SliderFilterSlotsJSONSchema, SpeedometerChartJSONSchema, SpeedometerChartOptionsJSONSchema, SpeedometerChartSlotsJSONSchema, SpikeMapJSONSchema, SpikeMapOptionsJSONSchema, SpikeMapSlotsJSONSchema, StripPlotJSONSchema, StripPlotOptionsJSONSchema, StripPlotSlotsJSONSchema, SunburstChartJSONSchema, SunburstChartOptionsJSONSchema, SunburstChartSlotsJSONSchema, SymbolMapJSONSchema, SymbolMapOptionsJSONSchema, SymbolMapSlotsJSONSchema, TextJSONSchema, TextOptionsJSONSchema, TreemapChartJSONSchema, TreemapChartOptionsJSONSchema, TreemapChartSlotsJSONSchema, VideoJSONSchema, VideoOptionsJSONSchema, WordcloudChartJSONSchema, WordcloudChartOptionsJSONSchema, WordcloudChartSlotsJSONSchema };\n\n/**\n * Using JSON_SCHEMAS increases bundle size; instead, import the needed schemas, e.g., \"import { TextOptionsJSONSchema } from '@luzmo/dashboard-contents-types'\"\n */\nexport const JSON_SCHEMAS = {\n 'viz-item-type.schema.json': VizItemTypeJSONSchema,\n 'options.schema.json': OptionsJSONSchema,\n 'slots.schema.json': SlotsJSONSchema,\n 'ai-summary.schema.json': AiSummaryJSONSchema,\n 'ai-summary-options.schema.json': AiSummaryOptionsJSONSchema,\n 'area-chart.schema.json': AreaChartJSONSchema,\n 'area-chart-options.schema.json': AreaChartOptionsJSONSchema,\n 'area-chart-slots.schema.json': AreaChartSlotsJSONSchema,\n 'bar-chart.schema.json': BarChartJSONSchema,\n 'bar-chart-options.schema.json': BarChartOptionsJSONSchema,\n 'bar-chart-slots.schema.json': BarChartSlotsJSONSchema,\n 'box-plot.schema.json': BoxPlotJSONSchema,\n 'box-plot-options.schema.json': BoxPlotOptionsJSONSchema,\n 'box-plot-slots.schema.json': BoxPlotSlotsJSONSchema,\n 'bubble-chart.schema.json': BubbleChartJSONSchema,\n 'bubble-chart-options.schema.json': BubbleChartOptionsJSONSchema,\n 'bubble-chart-slots.schema.json': BubbleChartSlotsJSONSchema,\n 'bullet-chart.schema.json': BulletChartJSONSchema,\n 'bullet-chart-options.schema.json': BulletChartOptionsJSONSchema,\n 'bullet-chart-slots.schema.json': BulletChartSlotsJSONSchema,\n 'choropleth-map.schema.json': ChoroplethMapJSONSchema,\n 'choropleth-map-options.schema.json': ChoroplethMapOptionsJSONSchema,\n 'choropleth-map-slots.schema.json': ChoroplethMapSlotsJSONSchema,\n 'circle-pack-chart.schema.json': CirclePackChartJSONSchema,\n 'circle-pack-chart-options.schema.json': CirclePackChartOptionsJSONSchema,\n 'circle-pack-chart-slots.schema.json': CirclePackChartSlotsJSONSchema,\n 'circular-gauge.schema.json': CircularGaugeJSONSchema,\n 'circular-gauge-options.schema.json': CircularGaugeOptionsJSONSchema,\n 'circular-gauge-slots.schema.json': CircularGaugeSlotsJSONSchema,\n 'column-chart.schema.json': ColumnChartJSONSchema,\n 'column-chart-options.schema.json': ColumnChartOptionsJSONSchema,\n 'column-chart-slots.schema.json': ColumnChartSlotsJSONSchema,\n 'combination-chart.schema.json': CombinationChartJSONSchema,\n 'combination-chart-options.schema.json': CombinationChartOptionsJSONSchema,\n 'combination-chart-slots.schema.json': CombinationChartSlotsJSONSchema,\n 'conditional-number.schema.json': ConditionalNumberJSONSchema,\n 'conditional-number-options.schema.json': ConditionalNumberOptionsJSONSchema,\n 'conditional-number-slots.schema.json': ConditionalNumberSlotsJSONSchema,\n 'date-comparison-filter.schema.json': DateComparisonFilterJSONSchema,\n 'date-comparison-filter-options.schema.json': DateComparisonFilterOptionsJSONSchema,\n 'date-comparison-filter-slots.schema.json': DateComparisonFilterSlotsJSONSchema,\n 'date-filter.schema.json': DateFilterJSONSchema,\n 'date-filter-options.schema.json': DateFilterOptionsJSONSchema,\n 'date-filter-slots.schema.json': DateFilterSlotsJSONSchema,\n 'donut-chart.schema.json': DonutChartJSONSchema,\n 'donut-chart-options.schema.json': DonutChartOptionsJSONSchema,\n 'donut-chart-slots.schema.json': DonutChartSlotsJSONSchema,\n 'dropdown-filter.schema.json': DropdownFilterJSONSchema,\n 'dropdown-filter-options.schema.json': DropdownFilterOptionsJSONSchema,\n 'dropdown-filter-slots.schema.json': DropdownFilterSlotsJSONSchema,\n 'evolution-number.schema.json': EvolutionNumberJSONSchema,\n 'evolution-number-options.schema.json': EvolutionNumberOptionsJSONSchema,\n 'evolution-number-slots.schema.json': EvolutionNumberSlotsJSONSchema,\n 'funnel-chart.schema.json': FunnelChartJSONSchema,\n 'funnel-chart-options.schema.json': FunnelChartOptionsJSONSchema,\n 'funnel-chart-slots.schema.json': FunnelChartSlotsJSONSchema,\n 'heat-map.schema.json': HeatMapJSONSchema,\n 'heat-map-options.schema.json': HeatMapOptionsJSONSchema,\n 'heat-map-slots.schema.json': HeatMapSlotsJSONSchema,\n 'heat-table.schema.json': HeatTableJSONSchema,\n 'heat-table-options.schema.json': HeatTableOptionsJSONSchema,\n 'heat-table-slots.schema.json': HeatTableSlotsJSONSchema,\n 'hexbin-map.schema.json': HexbinMapJSONSchema,\n 'hexbin-map-options.schema.json': HexbinMapOptionsJSONSchema,\n 'hexbin-map-slots.schema.json': HexbinMapSlotsJSONSchema,\n 'image.schema.json': ImageJSONSchema,\n 'image-options.schema.json': ImageOptionsJSONSchema,\n 'line-chart.schema.json': LineChartJSONSchema,\n 'line-chart-options.schema.json': LineChartOptionsJSONSchema,\n 'line-chart-slots.schema.json': LineChartSlotsJSONSchema,\n 'marker-map.schema.json': MarkerMapJSONSchema,\n 'marker-map-options.schema.json': MarkerMapOptionsJSONSchema,\n 'marker-map-slots.schema.json': MarkerMapSlotsJSONSchema,\n 'ohlc-chart.schema.json': OhlcChartJSONSchema,\n 'ohlc-chart-options.schema.json': OhlcChartOptionsJSONSchema,\n 'ohlc-chart-slots.schema.json': OhlcChartSlotsJSONSchema,\n 'parallel-coordinates-plot.schema.json': ParallelCoordinatesPlotJSONSchema,\n 'parallel-coordinates-plot-options.schema.json': ParallelCoordinatesPlotOptionsJSONSchema,\n 'parallel-coordinates-plot-slots.schema.json': ParallelCoordinatesPlotSlotsJSONSchema,\n 'pivot-table.schema.json': PivotTableJSONSchema,\n 'pivot-table-options.schema.json': PivotTableOptionsJSONSchema,\n 'pivot-table-slots.schema.json': PivotTableSlotsJSONSchema,\n 'pyramid-chart.schema.json': PyramidChartJSONSchema,\n 'pyramid-chart-options.schema.json': PyramidChartOptionsJSONSchema,\n 'pyramid-chart-slots.schema.json': PyramidChartSlotsJSONSchema,\n 'radar-chart.schema.json': RadarChartJSONSchema,\n 'radar-chart-options.schema.json': RadarChartOptionsJSONSchema,\n 'radar-chart-slots.schema.json': RadarChartSlotsJSONSchema,\n 'regular-table.schema.json': RegularTableJSONSchema,\n 'regular-table-options.schema.json': RegularTableOptionsJSONSchema,\n 'regular-table-slots.schema.json': RegularTableSlotsJSONSchema,\n 'route-map.schema.json': RouteMapJSONSchema,\n 'route-map-options.schema.json': RouteMapOptionsJSONSchema,\n 'route-map-slots.schema.json': RouteMapSlotsJSONSchema,\n 'sankey-diagram.schema.json': SankeyDiagramJSONSchema,\n 'sankey-diagram-options.schema.json': SankeyDiagramOptionsJSONSchema,\n 'sankey-diagram-slots.schema.json': SankeyDiagramSlotsJSONSchema,\n 'scatter-plot.schema.json': ScatterPlotJSONSchema,\n 'scatter-plot-options.schema.json': ScatterPlotOptionsJSONSchema,\n 'scatter-plot-slots.schema.json': ScatterPlotSlotsJSONSchema,\n 'search-filter.schema.json': SearchFilterJSONSchema,\n 'search-filter-options.schema.json': SearchFilterOptionsJSONSchema,\n 'search-filter-slots.schema.json': SearchFilterSlotsJSONSchema,\n 'slicer-filter.schema.json': SlicerFilterJSONSchema,\n 'slicer-filter-options.schema.json': SlicerFilterOptionsJSONSchema,\n 'slicer-filter-slots.schema.json': SlicerFilterSlotsJSONSchema,\n 'slider-filter.schema.json': SliderFilterJSONSchema,\n 'slider-filter-options.schema.json': SliderFilterOptionsJSONSchema,\n 'slider-filter-slots.schema.json': SliderFilterSlotsJSONSchema,\n 'speedometer-chart.schema.json': SpeedometerChartJSONSchema,\n 'speedometer-chart-options.schema.json': SpeedometerChartOptionsJSONSchema,\n 'speedometer-chart-slots.schema.json': SpeedometerChartSlotsJSONSchema,\n 'spike-map.schema.json': SpikeMapJSONSchema,\n 'spike-map-options.schema.json': SpikeMapOptionsJSONSchema,\n 'spike-map-slots.schema.json': SpikeMapSlotsJSONSchema,\n 'strip-plot.schema.json': StripPlotJSONSchema,\n 'strip-plot-options.schema.json': StripPlotOptionsJSONSchema,\n 'strip-plot-slots.schema.json': StripPlotSlotsJSONSchema,\n 'sunburst-chart.schema.json': SunburstChartJSONSchema,\n 'sunburst-chart-options.schema.json': SunburstChartOptionsJSONSchema,\n 'sunburst-chart-slots.schema.json': SunburstChartSlotsJSONSchema,\n 'symbol-map.schema.json': SymbolMapJSONSchema,\n 'symbol-map-options.schema.json': SymbolMapOptionsJSONSchema,\n 'symbol-map-slots.schema.json': SymbolMapSlotsJSONSchema,\n 'text.schema.json': TextJSONSchema,\n 'text-options.schema.json': TextOptionsJSONSchema,\n 'treemap-chart.schema.json': TreemapChartJSONSchema,\n 'treemap-chart-options.schema.json': TreemapChartOptionsJSONSchema,\n 'treemap-chart-slots.schema.json': TreemapChartSlotsJSONSchema,\n 'video.schema.json': VideoJSONSchema,\n 'video-options.schema.json': VideoOptionsJSONSchema,\n 'wordcloud-chart.schema.json': WordcloudChartJSONSchema,\n 'wordcloud-chart-options.schema.json': WordcloudChartOptionsJSONSchema,\n 'wordcloud-chart-slots.schema.json': WordcloudChartSlotsJSONSchema\n};\n"],"names":["VizItemTypeJSONSchema","OptionsJSONSchema","SlotsJSONSchema","AiSummaryJSONSchema","AiSummaryOptionsJSONSchema","AreaChartJSONSchema","AreaChartOptionsJSONSchema","AreaChartSlotsJSONSchema","BarChartJSONSchema","BarChartOptionsJSONSchema","BarChartSlotsJSONSchema","BoxPlotJSONSchema","BoxPlotOptionsJSONSchema","BoxPlotSlotsJSONSchema","BubbleChartJSONSchema","BubbleChartOptionsJSONSchema","BubbleChartSlotsJSONSchema","BulletChartJSONSchema","BulletChartOptionsJSONSchema","BulletChartSlotsJSONSchema","ChoroplethMapJSONSchema","ChoroplethMapOptionsJSONSchema","ChoroplethMapSlotsJSONSchema","CirclePackChartJSONSchema","CirclePackChartOptionsJSONSchema","CirclePackChartSlotsJSONSchema","CircularGaugeJSONSchema","CircularGaugeOptionsJSONSchema","CircularGaugeSlotsJSONSchema","ColumnChartJSONSchema","ColumnChartOptionsJSONSchema","ColumnChartSlotsJSONSchema","CombinationChartJSONSchema","CombinationChartOptionsJSONSchema","CombinationChartSlotsJSONSchema","ConditionalNumberJSONSchema","ConditionalNumberOptionsJSONSchema","ConditionalNumberSlotsJSONSchema","DateComparisonFilterJSONSchema","DateComparisonFilterOptionsJSONSchema","DateComparisonFilterSlotsJSONSchema","DateFilterJSONSchema","DateFilterOptionsJSONSchema","DateFilterSlotsJSONSchema","DonutChartJSONSchema","DonutChartOptionsJSONSchema","DonutChartSlotsJSONSchema","DropdownFilterJSONSchema","DropdownFilterOptionsJSONSchema","DropdownFilterSlotsJSONSchema","EvolutionNumberJSONSchema","EvolutionNumberOptionsJSONSchema","EvolutionNumberSlotsJSONSchema","FunnelChartJSONSchema","FunnelChartOptionsJSONSchema","FunnelChartSlotsJSONSchema","HeatMapJSONSchema","HeatMapOptionsJSONSchema","HeatMapSlotsJSONSchema","HeatTableJSONSchema","HeatTableOptionsJSONSchema","HeatTableSlotsJSONSchema","HexbinMapJSONSchema","HexbinMapOptionsJSONSchema","HexbinMapSlotsJSONSchema","ImageJSONSchema","ImageOptionsJSONSchema","LineChartJSONSchema","LineChartOptionsJSONSchema","LineChartSlotsJSONSchema","MarkerMapJSONSchema","MarkerMapOptionsJSONSchema","MarkerMapSlotsJSONSchema","OhlcChartJSONSchema","OhlcChartOptionsJSONSchema","OhlcChartSlotsJSONSchema","ParallelCoordinatesPlotJSONSchema","ParallelCoordinatesPlotOptionsJSONSchema","ParallelCoordinatesPlotSlotsJSONSchema","PivotTableJSONSchema","PivotTableOptionsJSONSchema","PivotTableSlotsJSONSchema","PyramidChartJSONSchema","PyramidChartOptionsJSONSchema","PyramidChartSlotsJSONSchema","RadarChartJSONSchema","RadarChartOptionsJSONSchema","RadarChartSlotsJSONSchema","RegularTableJSONSchema","RegularTableOptionsJSONSchema","RegularTableSlotsJSONSchema","RouteMapJSONSchema","RouteMapOptionsJSONSchema","RouteMapSlotsJSONSchema","SankeyDiagramJSONSchema","SankeyDiagramOptionsJSONSchema","SankeyDiagramSlotsJSONSchema","ScatterPlotJSONSchema","ScatterPlotOptionsJSONSchema","ScatterPlotSlotsJSONSchema","SearchFilterJSONSchema","SearchFilterOptionsJSONSchema","SearchFilterSlotsJSONSchema","SlicerFilterJSONSchema","SlicerFilterOptionsJSONSchema","SlicerFilterSlotsJSONSchema","SliderFilterJSONSchema","SliderFilterOptionsJSONSchema","SliderFilterSlotsJSONSchema","SpeedometerChartJSONSchema","SpeedometerChartOptionsJSONSchema","SpeedometerChartSlotsJSONSchema","SpikeMapJSONSchema","SpikeMapOptionsJSONSchema","SpikeMapSlotsJSONSchema","StripPlotJSONSchema","StripPlotOptionsJSONSchema","StripPlotSlotsJSONSchema","SunburstChartJSONSchema","SunburstChartOptionsJSONSchema","SunburstChartSlotsJSONSchema","SymbolMapJSONSchema","SymbolMapOptionsJSONSchema","SymbolMapSlotsJSONSchema","TextJSONSchema","TextOptionsJSONSchema","TreemapChartJSONSchema","TreemapChartOptionsJSONSchema","TreemapChartSlotsJSONSchema","VideoJSONSchema","VideoOptionsJSONSchema","WordcloudChartJSONSchema","WordcloudChartOptionsJSONSchema","WordcloudChartSlotsJSONSchema","JSON_SCHEMAS"],"mappings":"AAmMO,OAAAA,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA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"}
1
+ {"version":3,"file":"json-schemas.js","sources":["../../../libs/dashboard-contents-types/json-schemas.ts"],"sourcesContent":["/**\n * AUTO-GENERATED FILE — DO NOT EDIT MANUALLY.\n *\n * This file is generated by: npm run build:lib:dashboard-contents-types\n * Source script: tools/scripts/json-schemas-exports.js\n */\n\nimport VizItemTypeJSONSchema from './assets/json-schemas/viz-item-type.schema.json';\n\nimport OptionsJSONSchema from './assets/json-schemas/options.schema.json';\n\nimport SlotsJSONSchema from './assets/json-schemas/slots.schema.json';\n\nimport AiSummaryJSONSchema from './assets/json-schemas/ai-summary.schema.json';\nimport AiSummaryOptionsJSONSchema from './assets/json-schemas/ai-summary-options.schema.json';\n\nimport AreaChartJSONSchema from './assets/json-schemas/area-chart.schema.json';\nimport AreaChartOptionsJSONSchema from './assets/json-schemas/area-chart-options.schema.json';\nimport AreaChartSlotsJSONSchema from './assets/json-schemas/area-chart-slots.schema.json';\n\nimport BarChartJSONSchema from './assets/json-schemas/bar-chart.schema.json';\nimport BarChartOptionsJSONSchema from './assets/json-schemas/bar-chart-options.schema.json';\nimport BarChartSlotsJSONSchema from './assets/json-schemas/bar-chart-slots.schema.json';\n\nimport BoxPlotJSONSchema from './assets/json-schemas/box-plot.schema.json';\nimport BoxPlotOptionsJSONSchema from './assets/json-schemas/box-plot-options.schema.json';\nimport BoxPlotSlotsJSONSchema from './assets/json-schemas/box-plot-slots.schema.json';\n\nimport BubbleChartJSONSchema from './assets/json-schemas/bubble-chart.schema.json';\nimport BubbleChartOptionsJSONSchema from './assets/json-schemas/bubble-chart-options.schema.json';\nimport BubbleChartSlotsJSONSchema from './assets/json-schemas/bubble-chart-slots.schema.json';\n\nimport BulletChartJSONSchema from './assets/json-schemas/bullet-chart.schema.json';\nimport BulletChartOptionsJSONSchema from './assets/json-schemas/bullet-chart-options.schema.json';\nimport BulletChartSlotsJSONSchema from './assets/json-schemas/bullet-chart-slots.schema.json';\n\nimport ChoroplethMapJSONSchema from './assets/json-schemas/choropleth-map.schema.json';\nimport ChoroplethMapOptionsJSONSchema from './assets/json-schemas/choropleth-map-options.schema.json';\nimport ChoroplethMapSlotsJSONSchema from './assets/json-schemas/choropleth-map-slots.schema.json';\n\nimport CirclePackChartJSONSchema from './assets/json-schemas/circle-pack-chart.schema.json';\nimport CirclePackChartOptionsJSONSchema from './assets/json-schemas/circle-pack-chart-options.schema.json';\nimport CirclePackChartSlotsJSONSchema from './assets/json-schemas/circle-pack-chart-slots.schema.json';\n\nimport CircularGaugeJSONSchema from './assets/json-schemas/circular-gauge.schema.json';\nimport CircularGaugeOptionsJSONSchema from './assets/json-schemas/circular-gauge-options.schema.json';\nimport CircularGaugeSlotsJSONSchema from './assets/json-schemas/circular-gauge-slots.schema.json';\n\nimport ColumnChartJSONSchema from './assets/json-schemas/column-chart.schema.json';\nimport ColumnChartOptionsJSONSchema from './assets/json-schemas/column-chart-options.schema.json';\nimport ColumnChartSlotsJSONSchema from './assets/json-schemas/column-chart-slots.schema.json';\n\nimport CombinationChartJSONSchema from './assets/json-schemas/combination-chart.schema.json';\nimport CombinationChartOptionsJSONSchema from './assets/json-schemas/combination-chart-options.schema.json';\nimport CombinationChartSlotsJSONSchema from './assets/json-schemas/combination-chart-slots.schema.json';\n\nimport ConditionalNumberJSONSchema from './assets/json-schemas/conditional-number.schema.json';\nimport ConditionalNumberOptionsJSONSchema from './assets/json-schemas/conditional-number-options.schema.json';\nimport ConditionalNumberSlotsJSONSchema from './assets/json-schemas/conditional-number-slots.schema.json';\n\nimport DateComparisonFilterJSONSchema from './assets/json-schemas/date-comparison-filter.schema.json';\nimport DateComparisonFilterOptionsJSONSchema from './assets/json-schemas/date-comparison-filter-options.schema.json';\nimport DateComparisonFilterSlotsJSONSchema from './assets/json-schemas/date-comparison-filter-slots.schema.json';\n\nimport DateFilterJSONSchema from './assets/json-schemas/date-filter.schema.json';\nimport DateFilterOptionsJSONSchema from './assets/json-schemas/date-filter-options.schema.json';\nimport DateFilterSlotsJSONSchema from './assets/json-schemas/date-filter-slots.schema.json';\n\nimport DonutChartJSONSchema from './assets/json-schemas/donut-chart.schema.json';\nimport DonutChartOptionsJSONSchema from './assets/json-schemas/donut-chart-options.schema.json';\nimport DonutChartSlotsJSONSchema from './assets/json-schemas/donut-chart-slots.schema.json';\n\nimport DropdownFilterJSONSchema from './assets/json-schemas/dropdown-filter.schema.json';\nimport DropdownFilterOptionsJSONSchema from './assets/json-schemas/dropdown-filter-options.schema.json';\nimport DropdownFilterSlotsJSONSchema from './assets/json-schemas/dropdown-filter-slots.schema.json';\n\nimport EvolutionNumberJSONSchema from './assets/json-schemas/evolution-number.schema.json';\nimport EvolutionNumberOptionsJSONSchema from './assets/json-schemas/evolution-number-options.schema.json';\nimport EvolutionNumberSlotsJSONSchema from './assets/json-schemas/evolution-number-slots.schema.json';\n\nimport FunnelChartJSONSchema from './assets/json-schemas/funnel-chart.schema.json';\nimport FunnelChartOptionsJSONSchema from './assets/json-schemas/funnel-chart-options.schema.json';\nimport FunnelChartSlotsJSONSchema from './assets/json-schemas/funnel-chart-slots.schema.json';\n\nimport HeatMapJSONSchema from './assets/json-schemas/heat-map.schema.json';\nimport HeatMapOptionsJSONSchema from './assets/json-schemas/heat-map-options.schema.json';\nimport HeatMapSlotsJSONSchema from './assets/json-schemas/heat-map-slots.schema.json';\n\nimport HeatTableJSONSchema from './assets/json-schemas/heat-table.schema.json';\nimport HeatTableOptionsJSONSchema from './assets/json-schemas/heat-table-options.schema.json';\nimport HeatTableSlotsJSONSchema from './assets/json-schemas/heat-table-slots.schema.json';\n\nimport HexbinMapJSONSchema from './assets/json-schemas/hexbin-map.schema.json';\nimport HexbinMapOptionsJSONSchema from './assets/json-schemas/hexbin-map-options.schema.json';\nimport HexbinMapSlotsJSONSchema from './assets/json-schemas/hexbin-map-slots.schema.json';\n\nimport ImageJSONSchema from './assets/json-schemas/image.schema.json';\nimport ImageOptionsJSONSchema from './assets/json-schemas/image-options.schema.json';\n\nimport LineChartJSONSchema from './assets/json-schemas/line-chart.schema.json';\nimport LineChartOptionsJSONSchema from './assets/json-schemas/line-chart-options.schema.json';\nimport LineChartSlotsJSONSchema from './assets/json-schemas/line-chart-slots.schema.json';\n\nimport MarkerMapJSONSchema from './assets/json-schemas/marker-map.schema.json';\nimport MarkerMapOptionsJSONSchema from './assets/json-schemas/marker-map-options.schema.json';\nimport MarkerMapSlotsJSONSchema from './assets/json-schemas/marker-map-slots.schema.json';\n\nimport OhlcChartJSONSchema from './assets/json-schemas/ohlc-chart.schema.json';\nimport OhlcChartOptionsJSONSchema from './assets/json-schemas/ohlc-chart-options.schema.json';\nimport OhlcChartSlotsJSONSchema from './assets/json-schemas/ohlc-chart-slots.schema.json';\n\nimport ParallelCoordinatesPlotJSONSchema from './assets/json-schemas/parallel-coordinates-plot.schema.json';\nimport ParallelCoordinatesPlotOptionsJSONSchema from './assets/json-schemas/parallel-coordinates-plot-options.schema.json';\nimport ParallelCoordinatesPlotSlotsJSONSchema from './assets/json-schemas/parallel-coordinates-plot-slots.schema.json';\n\nimport PivotTableJSONSchema from './assets/json-schemas/pivot-table.schema.json';\nimport PivotTableOptionsJSONSchema from './assets/json-schemas/pivot-table-options.schema.json';\nimport PivotTableSlotsJSONSchema from './assets/json-schemas/pivot-table-slots.schema.json';\n\nimport PyramidChartJSONSchema from './assets/json-schemas/pyramid-chart.schema.json';\nimport PyramidChartOptionsJSONSchema from './assets/json-schemas/pyramid-chart-options.schema.json';\nimport PyramidChartSlotsJSONSchema from './assets/json-schemas/pyramid-chart-slots.schema.json';\n\nimport RadarChartJSONSchema from './assets/json-schemas/radar-chart.schema.json';\nimport RadarChartOptionsJSONSchema from './assets/json-schemas/radar-chart-options.schema.json';\nimport RadarChartSlotsJSONSchema from './assets/json-schemas/radar-chart-slots.schema.json';\n\nimport RegularTableJSONSchema from './assets/json-schemas/regular-table.schema.json';\nimport RegularTableOptionsJSONSchema from './assets/json-schemas/regular-table-options.schema.json';\nimport RegularTableSlotsJSONSchema from './assets/json-schemas/regular-table-slots.schema.json';\n\nimport RouteMapJSONSchema from './assets/json-schemas/route-map.schema.json';\nimport RouteMapOptionsJSONSchema from './assets/json-schemas/route-map-options.schema.json';\nimport RouteMapSlotsJSONSchema from './assets/json-schemas/route-map-slots.schema.json';\n\nimport SankeyDiagramJSONSchema from './assets/json-schemas/sankey-diagram.schema.json';\nimport SankeyDiagramOptionsJSONSchema from './assets/json-schemas/sankey-diagram-options.schema.json';\nimport SankeyDiagramSlotsJSONSchema from './assets/json-schemas/sankey-diagram-slots.schema.json';\n\nimport ScatterPlotJSONSchema from './assets/json-schemas/scatter-plot.schema.json';\nimport ScatterPlotOptionsJSONSchema from './assets/json-schemas/scatter-plot-options.schema.json';\nimport ScatterPlotSlotsJSONSchema from './assets/json-schemas/scatter-plot-slots.schema.json';\n\nimport SearchFilterJSONSchema from './assets/json-schemas/search-filter.schema.json';\nimport SearchFilterOptionsJSONSchema from './assets/json-schemas/search-filter-options.schema.json';\nimport SearchFilterSlotsJSONSchema from './assets/json-schemas/search-filter-slots.schema.json';\n\nimport SlicerFilterJSONSchema from './assets/json-schemas/slicer-filter.schema.json';\nimport SlicerFilterOptionsJSONSchema from './assets/json-schemas/slicer-filter-options.schema.json';\nimport SlicerFilterSlotsJSONSchema from './assets/json-schemas/slicer-filter-slots.schema.json';\n\nimport SliderFilterJSONSchema from './assets/json-schemas/slider-filter.schema.json';\nimport SliderFilterOptionsJSONSchema from './assets/json-schemas/slider-filter-options.schema.json';\nimport SliderFilterSlotsJSONSchema from './assets/json-schemas/slider-filter-slots.schema.json';\n\nimport SpeedometerChartJSONSchema from './assets/json-schemas/speedometer-chart.schema.json';\nimport SpeedometerChartOptionsJSONSchema from './assets/json-schemas/speedometer-chart-options.schema.json';\nimport SpeedometerChartSlotsJSONSchema from './assets/json-schemas/speedometer-chart-slots.schema.json';\n\nimport SpikeMapJSONSchema from './assets/json-schemas/spike-map.schema.json';\nimport SpikeMapOptionsJSONSchema from './assets/json-schemas/spike-map-options.schema.json';\nimport SpikeMapSlotsJSONSchema from './assets/json-schemas/spike-map-slots.schema.json';\n\nimport StripPlotJSONSchema from './assets/json-schemas/strip-plot.schema.json';\nimport StripPlotOptionsJSONSchema from './assets/json-schemas/strip-plot-options.schema.json';\nimport StripPlotSlotsJSONSchema from './assets/json-schemas/strip-plot-slots.schema.json';\n\nimport SunburstChartJSONSchema from './assets/json-schemas/sunburst-chart.schema.json';\nimport SunburstChartOptionsJSONSchema from './assets/json-schemas/sunburst-chart-options.schema.json';\nimport SunburstChartSlotsJSONSchema from './assets/json-schemas/sunburst-chart-slots.schema.json';\n\nimport SymbolMapJSONSchema from './assets/json-schemas/symbol-map.schema.json';\nimport SymbolMapOptionsJSONSchema from './assets/json-schemas/symbol-map-options.schema.json';\nimport SymbolMapSlotsJSONSchema from './assets/json-schemas/symbol-map-slots.schema.json';\n\nimport TextJSONSchema from './assets/json-schemas/text.schema.json';\nimport TextOptionsJSONSchema from './assets/json-schemas/text-options.schema.json';\n\nimport TreemapChartJSONSchema from './assets/json-schemas/treemap-chart.schema.json';\nimport TreemapChartOptionsJSONSchema from './assets/json-schemas/treemap-chart-options.schema.json';\nimport TreemapChartSlotsJSONSchema from './assets/json-schemas/treemap-chart-slots.schema.json';\n\nimport VideoJSONSchema from './assets/json-schemas/video.schema.json';\nimport VideoOptionsJSONSchema from './assets/json-schemas/video-options.schema.json';\n\nimport WordcloudChartJSONSchema from './assets/json-schemas/wordcloud-chart.schema.json';\nimport WordcloudChartOptionsJSONSchema from './assets/json-schemas/wordcloud-chart-options.schema.json';\nimport WordcloudChartSlotsJSONSchema from './assets/json-schemas/wordcloud-chart-slots.schema.json';\n\n// eslint-disable-next-line unicorn/prefer-export-from,max-len\nexport { VizItemTypeJSONSchema, OptionsJSONSchema, SlotsJSONSchema, AiSummaryJSONSchema, AiSummaryOptionsJSONSchema, AreaChartJSONSchema, AreaChartOptionsJSONSchema, AreaChartSlotsJSONSchema, BarChartJSONSchema, BarChartOptionsJSONSchema, BarChartSlotsJSONSchema, BoxPlotJSONSchema, BoxPlotOptionsJSONSchema, BoxPlotSlotsJSONSchema, BubbleChartJSONSchema, BubbleChartOptionsJSONSchema, BubbleChartSlotsJSONSchema, BulletChartJSONSchema, BulletChartOptionsJSONSchema, BulletChartSlotsJSONSchema, ChoroplethMapJSONSchema, ChoroplethMapOptionsJSONSchema, ChoroplethMapSlotsJSONSchema, CirclePackChartJSONSchema, CirclePackChartOptionsJSONSchema, CirclePackChartSlotsJSONSchema, CircularGaugeJSONSchema, CircularGaugeOptionsJSONSchema, CircularGaugeSlotsJSONSchema, ColumnChartJSONSchema, ColumnChartOptionsJSONSchema, ColumnChartSlotsJSONSchema, CombinationChartJSONSchema, CombinationChartOptionsJSONSchema, CombinationChartSlotsJSONSchema, ConditionalNumberJSONSchema, ConditionalNumberOptionsJSONSchema, ConditionalNumberSlotsJSONSchema, DateComparisonFilterJSONSchema, DateComparisonFilterOptionsJSONSchema, DateComparisonFilterSlotsJSONSchema, DateFilterJSONSchema, DateFilterOptionsJSONSchema, DateFilterSlotsJSONSchema, DonutChartJSONSchema, DonutChartOptionsJSONSchema, DonutChartSlotsJSONSchema, DropdownFilterJSONSchema, DropdownFilterOptionsJSONSchema, DropdownFilterSlotsJSONSchema, EvolutionNumberJSONSchema, EvolutionNumberOptionsJSONSchema, EvolutionNumberSlotsJSONSchema, FunnelChartJSONSchema, FunnelChartOptionsJSONSchema, FunnelChartSlotsJSONSchema, HeatMapJSONSchema, HeatMapOptionsJSONSchema, HeatMapSlotsJSONSchema, HeatTableJSONSchema, HeatTableOptionsJSONSchema, HeatTableSlotsJSONSchema, HexbinMapJSONSchema, HexbinMapOptionsJSONSchema, HexbinMapSlotsJSONSchema, ImageJSONSchema, ImageOptionsJSONSchema, LineChartJSONSchema, LineChartOptionsJSONSchema, LineChartSlotsJSONSchema, MarkerMapJSONSchema, MarkerMapOptionsJSONSchema, MarkerMapSlotsJSONSchema, OhlcChartJSONSchema, OhlcChartOptionsJSONSchema, OhlcChartSlotsJSONSchema, ParallelCoordinatesPlotJSONSchema, ParallelCoordinatesPlotOptionsJSONSchema, ParallelCoordinatesPlotSlotsJSONSchema, PivotTableJSONSchema, PivotTableOptionsJSONSchema, PivotTableSlotsJSONSchema, PyramidChartJSONSchema, PyramidChartOptionsJSONSchema, PyramidChartSlotsJSONSchema, RadarChartJSONSchema, RadarChartOptionsJSONSchema, RadarChartSlotsJSONSchema, RegularTableJSONSchema, RegularTableOptionsJSONSchema, RegularTableSlotsJSONSchema, RouteMapJSONSchema, RouteMapOptionsJSONSchema, RouteMapSlotsJSONSchema, SankeyDiagramJSONSchema, SankeyDiagramOptionsJSONSchema, SankeyDiagramSlotsJSONSchema, ScatterPlotJSONSchema, ScatterPlotOptionsJSONSchema, ScatterPlotSlotsJSONSchema, SearchFilterJSONSchema, SearchFilterOptionsJSONSchema, SearchFilterSlotsJSONSchema, SlicerFilterJSONSchema, SlicerFilterOptionsJSONSchema, SlicerFilterSlotsJSONSchema, SliderFilterJSONSchema, SliderFilterOptionsJSONSchema, SliderFilterSlotsJSONSchema, SpeedometerChartJSONSchema, SpeedometerChartOptionsJSONSchema, SpeedometerChartSlotsJSONSchema, SpikeMapJSONSchema, SpikeMapOptionsJSONSchema, SpikeMapSlotsJSONSchema, StripPlotJSONSchema, StripPlotOptionsJSONSchema, StripPlotSlotsJSONSchema, SunburstChartJSONSchema, SunburstChartOptionsJSONSchema, SunburstChartSlotsJSONSchema, SymbolMapJSONSchema, SymbolMapOptionsJSONSchema, SymbolMapSlotsJSONSchema, TextJSONSchema, TextOptionsJSONSchema, TreemapChartJSONSchema, TreemapChartOptionsJSONSchema, TreemapChartSlotsJSONSchema, VideoJSONSchema, VideoOptionsJSONSchema, WordcloudChartJSONSchema, WordcloudChartOptionsJSONSchema, WordcloudChartSlotsJSONSchema };\n\n/**\n * Using JSON_SCHEMAS increases bundle size; instead, import the needed schemas, e.g., \"import { TextOptionsJSONSchema } from '@luzmo/dashboard-contents-types'\"\n */\nexport const JSON_SCHEMAS = {\n 'viz-item-type.schema.json': VizItemTypeJSONSchema,\n 'options.schema.json': OptionsJSONSchema,\n 'slots.schema.json': SlotsJSONSchema,\n 'ai-summary.schema.json': AiSummaryJSONSchema,\n 'ai-summary-options.schema.json': AiSummaryOptionsJSONSchema,\n 'area-chart.schema.json': AreaChartJSONSchema,\n 'area-chart-options.schema.json': AreaChartOptionsJSONSchema,\n 'area-chart-slots.schema.json': AreaChartSlotsJSONSchema,\n 'bar-chart.schema.json': BarChartJSONSchema,\n 'bar-chart-options.schema.json': BarChartOptionsJSONSchema,\n 'bar-chart-slots.schema.json': BarChartSlotsJSONSchema,\n 'box-plot.schema.json': BoxPlotJSONSchema,\n 'box-plot-options.schema.json': BoxPlotOptionsJSONSchema,\n 'box-plot-slots.schema.json': BoxPlotSlotsJSONSchema,\n 'bubble-chart.schema.json': BubbleChartJSONSchema,\n 'bubble-chart-options.schema.json': BubbleChartOptionsJSONSchema,\n 'bubble-chart-slots.schema.json': BubbleChartSlotsJSONSchema,\n 'bullet-chart.schema.json': BulletChartJSONSchema,\n 'bullet-chart-options.schema.json': BulletChartOptionsJSONSchema,\n 'bullet-chart-slots.schema.json': BulletChartSlotsJSONSchema,\n 'choropleth-map.schema.json': ChoroplethMapJSONSchema,\n 'choropleth-map-options.schema.json': ChoroplethMapOptionsJSONSchema,\n 'choropleth-map-slots.schema.json': ChoroplethMapSlotsJSONSchema,\n 'circle-pack-chart.schema.json': CirclePackChartJSONSchema,\n 'circle-pack-chart-options.schema.json': CirclePackChartOptionsJSONSchema,\n 'circle-pack-chart-slots.schema.json': CirclePackChartSlotsJSONSchema,\n 'circular-gauge.schema.json': CircularGaugeJSONSchema,\n 'circular-gauge-options.schema.json': CircularGaugeOptionsJSONSchema,\n 'circular-gauge-slots.schema.json': CircularGaugeSlotsJSONSchema,\n 'column-chart.schema.json': ColumnChartJSONSchema,\n 'column-chart-options.schema.json': ColumnChartOptionsJSONSchema,\n 'column-chart-slots.schema.json': ColumnChartSlotsJSONSchema,\n 'combination-chart.schema.json': CombinationChartJSONSchema,\n 'combination-chart-options.schema.json': CombinationChartOptionsJSONSchema,\n 'combination-chart-slots.schema.json': CombinationChartSlotsJSONSchema,\n 'conditional-number.schema.json': ConditionalNumberJSONSchema,\n 'conditional-number-options.schema.json': ConditionalNumberOptionsJSONSchema,\n 'conditional-number-slots.schema.json': ConditionalNumberSlotsJSONSchema,\n 'date-comparison-filter.schema.json': DateComparisonFilterJSONSchema,\n 'date-comparison-filter-options.schema.json': DateComparisonFilterOptionsJSONSchema,\n 'date-comparison-filter-slots.schema.json': DateComparisonFilterSlotsJSONSchema,\n 'date-filter.schema.json': DateFilterJSONSchema,\n 'date-filter-options.schema.json': DateFilterOptionsJSONSchema,\n 'date-filter-slots.schema.json': DateFilterSlotsJSONSchema,\n 'donut-chart.schema.json': DonutChartJSONSchema,\n 'donut-chart-options.schema.json': DonutChartOptionsJSONSchema,\n 'donut-chart-slots.schema.json': DonutChartSlotsJSONSchema,\n 'dropdown-filter.schema.json': DropdownFilterJSONSchema,\n 'dropdown-filter-options.schema.json': DropdownFilterOptionsJSONSchema,\n 'dropdown-filter-slots.schema.json': DropdownFilterSlotsJSONSchema,\n 'evolution-number.schema.json': EvolutionNumberJSONSchema,\n 'evolution-number-options.schema.json': EvolutionNumberOptionsJSONSchema,\n 'evolution-number-slots.schema.json': EvolutionNumberSlotsJSONSchema,\n 'funnel-chart.schema.json': FunnelChartJSONSchema,\n 'funnel-chart-options.schema.json': FunnelChartOptionsJSONSchema,\n 'funnel-chart-slots.schema.json': FunnelChartSlotsJSONSchema,\n 'heat-map.schema.json': HeatMapJSONSchema,\n 'heat-map-options.schema.json': HeatMapOptionsJSONSchema,\n 'heat-map-slots.schema.json': HeatMapSlotsJSONSchema,\n 'heat-table.schema.json': HeatTableJSONSchema,\n 'heat-table-options.schema.json': HeatTableOptionsJSONSchema,\n 'heat-table-slots.schema.json': HeatTableSlotsJSONSchema,\n 'hexbin-map.schema.json': HexbinMapJSONSchema,\n 'hexbin-map-options.schema.json': HexbinMapOptionsJSONSchema,\n 'hexbin-map-slots.schema.json': HexbinMapSlotsJSONSchema,\n 'image.schema.json': ImageJSONSchema,\n 'image-options.schema.json': ImageOptionsJSONSchema,\n 'line-chart.schema.json': LineChartJSONSchema,\n 'line-chart-options.schema.json': LineChartOptionsJSONSchema,\n 'line-chart-slots.schema.json': LineChartSlotsJSONSchema,\n 'marker-map.schema.json': MarkerMapJSONSchema,\n 'marker-map-options.schema.json': MarkerMapOptionsJSONSchema,\n 'marker-map-slots.schema.json': MarkerMapSlotsJSONSchema,\n 'ohlc-chart.schema.json': OhlcChartJSONSchema,\n 'ohlc-chart-options.schema.json': OhlcChartOptionsJSONSchema,\n 'ohlc-chart-slots.schema.json': OhlcChartSlotsJSONSchema,\n 'parallel-coordinates-plot.schema.json': ParallelCoordinatesPlotJSONSchema,\n 'parallel-coordinates-plot-options.schema.json': ParallelCoordinatesPlotOptionsJSONSchema,\n 'parallel-coordinates-plot-slots.schema.json': ParallelCoordinatesPlotSlotsJSONSchema,\n 'pivot-table.schema.json': PivotTableJSONSchema,\n 'pivot-table-options.schema.json': PivotTableOptionsJSONSchema,\n 'pivot-table-slots.schema.json': PivotTableSlotsJSONSchema,\n 'pyramid-chart.schema.json': PyramidChartJSONSchema,\n 'pyramid-chart-options.schema.json': PyramidChartOptionsJSONSchema,\n 'pyramid-chart-slots.schema.json': PyramidChartSlotsJSONSchema,\n 'radar-chart.schema.json': RadarChartJSONSchema,\n 'radar-chart-options.schema.json': RadarChartOptionsJSONSchema,\n 'radar-chart-slots.schema.json': RadarChartSlotsJSONSchema,\n 'regular-table.schema.json': RegularTableJSONSchema,\n 'regular-table-options.schema.json': RegularTableOptionsJSONSchema,\n 'regular-table-slots.schema.json': RegularTableSlotsJSONSchema,\n 'route-map.schema.json': RouteMapJSONSchema,\n 'route-map-options.schema.json': RouteMapOptionsJSONSchema,\n 'route-map-slots.schema.json': RouteMapSlotsJSONSchema,\n 'sankey-diagram.schema.json': SankeyDiagramJSONSchema,\n 'sankey-diagram-options.schema.json': SankeyDiagramOptionsJSONSchema,\n 'sankey-diagram-slots.schema.json': SankeyDiagramSlotsJSONSchema,\n 'scatter-plot.schema.json': ScatterPlotJSONSchema,\n 'scatter-plot-options.schema.json': ScatterPlotOptionsJSONSchema,\n 'scatter-plot-slots.schema.json': ScatterPlotSlotsJSONSchema,\n 'search-filter.schema.json': SearchFilterJSONSchema,\n 'search-filter-options.schema.json': SearchFilterOptionsJSONSchema,\n 'search-filter-slots.schema.json': SearchFilterSlotsJSONSchema,\n 'slicer-filter.schema.json': SlicerFilterJSONSchema,\n 'slicer-filter-options.schema.json': SlicerFilterOptionsJSONSchema,\n 'slicer-filter-slots.schema.json': SlicerFilterSlotsJSONSchema,\n 'slider-filter.schema.json': SliderFilterJSONSchema,\n 'slider-filter-options.schema.json': SliderFilterOptionsJSONSchema,\n 'slider-filter-slots.schema.json': SliderFilterSlotsJSONSchema,\n 'speedometer-chart.schema.json': SpeedometerChartJSONSchema,\n 'speedometer-chart-options.schema.json': SpeedometerChartOptionsJSONSchema,\n 'speedometer-chart-slots.schema.json': SpeedometerChartSlotsJSONSchema,\n 'spike-map.schema.json': SpikeMapJSONSchema,\n 'spike-map-options.schema.json': SpikeMapOptionsJSONSchema,\n 'spike-map-slots.schema.json': SpikeMapSlotsJSONSchema,\n 'strip-plot.schema.json': StripPlotJSONSchema,\n 'strip-plot-options.schema.json': StripPlotOptionsJSONSchema,\n 'strip-plot-slots.schema.json': StripPlotSlotsJSONSchema,\n 'sunburst-chart.schema.json': SunburstChartJSONSchema,\n 'sunburst-chart-options.schema.json': SunburstChartOptionsJSONSchema,\n 'sunburst-chart-slots.schema.json': SunburstChartSlotsJSONSchema,\n 'symbol-map.schema.json': SymbolMapJSONSchema,\n 'symbol-map-options.schema.json': SymbolMapOptionsJSONSchema,\n 'symbol-map-slots.schema.json': SymbolMapSlotsJSONSchema,\n 'text.schema.json': TextJSONSchema,\n 'text-options.schema.json': TextOptionsJSONSchema,\n 'treemap-chart.schema.json': TreemapChartJSONSchema,\n 'treemap-chart-options.schema.json': TreemapChartOptionsJSONSchema,\n 'treemap-chart-slots.schema.json': TreemapChartSlotsJSONSchema,\n 'video.schema.json': VideoJSONSchema,\n 'video-options.schema.json': VideoOptionsJSONSchema,\n 'wordcloud-chart.schema.json': WordcloudChartJSONSchema,\n 'wordcloud-chart-options.schema.json': WordcloudChartOptionsJSONSchema,\n 'wordcloud-chart-slots.schema.json': WordcloudChartSlotsJSONSchema\n};\n"],"names":["VizItemTypeJSONSchema","OptionsJSONSchema","SlotsJSONSchema","AiSummaryJSONSchema","AiSummaryOptionsJSONSchema","AreaChartJSONSchema","AreaChartOptionsJSONSchema","AreaChartSlotsJSONSchema","BarChartJSONSchema","BarChartOptionsJSONSchema","BarChartSlotsJSONSchema","BoxPlotJSONSchema","BoxPlotOptionsJSONSchema","BoxPlotSlotsJSONSchema","BubbleChartJSONSchema","BubbleChartOptionsJSONSchema","BubbleChartSlotsJSONSchema","BulletChartJSONSchema","BulletChartOptionsJSONSchema","BulletChartSlotsJSONSchema","ChoroplethMapJSONSchema","ChoroplethMapOptionsJSONSchema","ChoroplethMapSlotsJSONSchema","CirclePackChartJSONSchema","CirclePackChartOptionsJSONSchema","CirclePackChartSlotsJSONSchema","CircularGaugeJSONSchema","CircularGaugeOptionsJSONSchema","CircularGaugeSlotsJSONSchema","ColumnChartJSONSchema","ColumnChartOptionsJSONSchema","ColumnChartSlotsJSONSchema","CombinationChartJSONSchema","CombinationChartOptionsJSONSchema","CombinationChartSlotsJSONSchema","ConditionalNumberJSONSchema","ConditionalNumberOptionsJSONSchema","ConditionalNumberSlotsJSONSchema","DateComparisonFilterJSONSchema","DateComparisonFilterOptionsJSONSchema","DateComparisonFilterSlotsJSONSchema","DateFilterJSONSchema","DateFilterOptionsJSONSchema","DateFilterSlotsJSONSchema","DonutChartJSONSchema","DonutChartOptionsJSONSchema","DonutChartSlotsJSONSchema","DropdownFilterJSONSchema","DropdownFilterOptionsJSONSchema","DropdownFilterSlotsJSONSchema","EvolutionNumberJSONSchema","EvolutionNumberOptionsJSONSchema","EvolutionNumberSlotsJSONSchema","FunnelChartJSONSchema","FunnelChartOptionsJSONSchema","FunnelChartSlotsJSONSchema","HeatMapJSONSchema","HeatMapOptionsJSONSchema","HeatMapSlotsJSONSchema","HeatTableJSONSchema","HeatTableOptionsJSONSchema","HeatTableSlotsJSONSchema","HexbinMapJSONSchema","HexbinMapOptionsJSONSchema","HexbinMapSlotsJSONSchema","ImageJSONSchema","ImageOptionsJSONSchema","LineChartJSONSchema","LineChartOptionsJSONSchema","LineChartSlotsJSONSchema","MarkerMapJSONSchema","MarkerMapOptionsJSONSchema","MarkerMapSlotsJSONSchema","OhlcChartJSONSchema","OhlcChartOptionsJSONSchema","OhlcChartSlotsJSONSchema","ParallelCoordinatesPlotJSONSchema","ParallelCoordinatesPlotOptionsJSONSchema","ParallelCoordinatesPlotSlotsJSONSchema","PivotTableJSONSchema","PivotTableOptionsJSONSchema","PivotTableSlotsJSONSchema","PyramidChartJSONSchema","PyramidChartOptionsJSONSchema","PyramidChartSlotsJSONSchema","RadarChartJSONSchema","RadarChartOptionsJSONSchema","RadarChartSlotsJSONSchema","RegularTableJSONSchema","RegularTableOptionsJSONSchema","RegularTableSlotsJSONSchema","RouteMapJSONSchema","RouteMapOptionsJSONSchema","RouteMapSlotsJSONSchema","SankeyDiagramJSONSchema","SankeyDiagramOptionsJSONSchema","SankeyDiagramSlotsJSONSchema","ScatterPlotJSONSchema","ScatterPlotOptionsJSONSchema","ScatterPlotSlotsJSONSchema","SearchFilterJSONSchema","SearchFilterOptionsJSONSchema","SearchFilterSlotsJSONSchema","SlicerFilterJSONSchema","SlicerFilterOptionsJSONSchema","SlicerFilterSlotsJSONSchema","SliderFilterJSONSchema","SliderFilterOptionsJSONSchema","SliderFilterSlotsJSONSchema","SpeedometerChartJSONSchema","SpeedometerChartOptionsJSONSchema","SpeedometerChartSlotsJSONSchema","SpikeMapJSONSchema","SpikeMapOptionsJSONSchema","SpikeMapSlotsJSONSchema","StripPlotJSONSchema","StripPlotOptionsJSONSchema","StripPlotSlotsJSONSchema","SunburstChartJSONSchema","SunburstChartOptionsJSONSchema","SunburstChartSlotsJSONSchema","SymbolMapJSONSchema","SymbolMapOptionsJSONSchema","SymbolMapSlotsJSONSchema","TextJSONSchema","TextOptionsJSONSchema","TreemapChartJSONSchema","TreemapChartOptionsJSONSchema","TreemapChartSlotsJSONSchema","VideoJSONSchema","VideoOptionsJSONSchema","WordcloudChartJSONSchema","WordcloudChartOptionsJSONSchema","WordcloudChartSlotsJSONSchema","JSON_SCHEMAS"],"mappings":"AAmMO,OAAAA,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,OAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA;AAAA,OAAAC,QAAA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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luzmo/dashboard-contents-types",
3
- "version": "1.0.32",
3
+ "version": "1.0.34",
4
4
  "dependencies": {
5
5
  "tslib": "^2.3.0",
6
6
  "colorjs.io": "^0.5.2"
package/src/index.d.ts CHANGED
@@ -14,7 +14,6 @@ export * from './lib/date-comparison-filter';
14
14
  export * from './lib/date-filter';
15
15
  export * from './lib/donut-chart';
16
16
  export * from './lib/dropdown-filter';
17
- export * from './lib/dynamic-imageobject';
18
17
  export * from './lib/evolution-number';
19
18
  export * from './lib/funnel-chart';
20
19
  export * from './lib/heat-map';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../libs/dashboard-contents-types/src/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAC;AAEjC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,iBAAiB,CAAC;AAEhC,cAAc,gBAAgB,CAAC;AAE/B,cAAc,oBAAoB,CAAC;AAEnC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,sBAAsB,CAAC;AAErC,cAAc,yBAAyB,CAAC;AAExC,cAAc,sBAAsB,CAAC;AAErC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,yBAAyB,CAAC;AAExC,cAAc,0BAA0B,CAAC;AAEzC,cAAc,8BAA8B,CAAC;AAE7C,cAAc,mBAAmB,CAAC;AAElC,cAAc,mBAAmB,CAAC;AAElC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,2BAA2B,CAAC;AAE1C,cAAc,wBAAwB,CAAC;AAEvC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,gBAAgB,CAAC;AAE/B,cAAc,kBAAkB,CAAC;AAEjC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,aAAa,CAAC;AAE5B,cAAc,kBAAkB,CAAC;AAEjC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,iCAAiC,CAAC;AAEhD,cAAc,mBAAmB,CAAC;AAElC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,mBAAmB,CAAC;AAElC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,iBAAiB,CAAC;AAEhC,cAAc,sBAAsB,CAAC;AAErC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,cAAc,CAAC;AAE7B,cAAc,yBAAyB,CAAC;AAExC,cAAc,iBAAiB,CAAC;AAEhC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,sBAAsB,CAAC;AAErC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,YAAY,CAAC;AAE3B,cAAc,qBAAqB,CAAC;AAEpC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,aAAa,CAAC;AAE5B,cAAc,uBAAuB,CAAC;AAGtC,cAAc,cAAc,CAAC;AAE7B,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../libs/dashboard-contents-types/src/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAC;AAEjC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,iBAAiB,CAAC;AAEhC,cAAc,gBAAgB,CAAC;AAE/B,cAAc,oBAAoB,CAAC;AAEnC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,sBAAsB,CAAC;AAErC,cAAc,yBAAyB,CAAC;AAExC,cAAc,sBAAsB,CAAC;AAErC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,yBAAyB,CAAC;AAExC,cAAc,0BAA0B,CAAC;AAEzC,cAAc,8BAA8B,CAAC;AAE7C,cAAc,mBAAmB,CAAC;AAElC,cAAc,mBAAmB,CAAC;AAElC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,gBAAgB,CAAC;AAE/B,cAAc,kBAAkB,CAAC;AAEjC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,aAAa,CAAC;AAE5B,cAAc,kBAAkB,CAAC;AAEjC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,iCAAiC,CAAC;AAEhD,cAAc,mBAAmB,CAAC;AAElC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,mBAAmB,CAAC;AAElC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,iBAAiB,CAAC;AAEhC,cAAc,sBAAsB,CAAC;AAErC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,cAAc,CAAC;AAE7B,cAAc,yBAAyB,CAAC;AAExC,cAAc,iBAAiB,CAAC;AAEhC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,sBAAsB,CAAC;AAErC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,YAAY,CAAC;AAE3B,cAAc,qBAAqB,CAAC;AAEpC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,aAAa,CAAC;AAE5B,cAAc,uBAAuB,CAAC;AAGtC,cAAc,cAAc,CAAC;AAE7B,cAAc,WAAW,CAAC"}
@@ -1,2 +1,2 @@
1
- "use strict";const l=require("../helpers.cjs"),a=({slots:e})=>Array.isArray(e)&&e?.length>0?(e?.find(t=>t?.name==="legend")?.content?.length??0)>0||(e?.find(t=>t?.name==="measure")?.content?.length??0)>1:!1,n=({slots:e})=>Array.isArray(e)&&e?.length>0?!((e?.find(t=>t?.name==="legend")?.content?.length??0)>0)&&(e?.find(t=>t?.name==="measure")?.content?.length??0)<=1:!0,o=({slots:e})=>Array.isArray(e)&&e?.find(t=>t?.name==="x-axis")?.content?.[0]?.type==="datetime",r=({options:e,slots:t})=>Array.isArray(t)&&t?.find(i=>i?.name==="x-axis")?.content?.[0]?.type==="datetime"&&e?.missingValue?.type==="manual",s=[{key:"general",type:"group",open:!0,children:[{key:"display.title",control:{label:"Title",type:"switch",default:!0}},{type:"divider"},{key:"mode",control:{label:"Mode",type:"picker",default:"stacked",enum:["100","unstacked","stacked","stream"]},visibleIf:a},{key:"interpolation",control:{label:"Interpolation",type:"picker",default:"linear",enum:["linear","step-before","step-after","monotone"]}},{key:"display.legend",control:{label:"Legend",type:"switch",default:!0},visibleIf:a},{key:"display.modeOption",control:{label:"Mode option",type:"switch",default:!0},visibleIf:a},{key:"missingValue.type",control:{label:"Fill missing values",type:"picker",default:"no",enum:["no","break","manual"]},visibleIf:o},{key:"missingValue.value",control:{label:"Value",type:"number-field",default:0,min:1},visibleIf:r},{key:"color",control:{label:"Area color",type:"color-picker",default:({theme:e})=>l.getThemeMainColor(e),extraLabel:({options:e,theme:t})=>l.getThemeMainColorResetLabel(e,t,"color"),extraLabelHasClickAction:({options:e,theme:t})=>l.getThemeMainColorExtraLabelHasClickAction(e,t,"color"),extraLabelClickAction:({options:e,theme:t})=>l.getThemeMainColorExtraLabelClickAction(e,t,"color")},visibleIf:n}]},{key:"axes",type:"group",open:!1,children:[{key:"xAxisLabels",type:"group",label:"X-axis label",collapsible:!0,open:!0,children:[{key:"axislabels.x.enabled",control:{type:"switch",label:"Enabled",default:!1}},{key:"axislabels.x.position",control:{type:"picker",label:"Position",default:"center",enum:["left","center","right"]},visibleIf:({options:e})=>e?.axislabels?.x?.enabled===!0}]},{key:"yAxisLabels",type:"group",label:"Y-axis label",collapsible:!0,open:!0,children:[{key:"axislabels.y.enabled",control:{type:"switch",label:"Enabled",default:!1}},{key:"axislabels.y.position",control:{type:"picker",label:"Position",default:"middle",enum:["top","middle","bottom"]},visibleIf:({options:e})=>e?.axislabels?.y?.enabled===!0}]}]},{key:"legend",type:"group",open:!1,children:[{key:"legend.position",control:{label:"Position",type:"position-picker",default:"topRight",enum:["topLeft","top","topRight","right","bottomRight","bottom","bottomLeft","left"]}}],visibleIf:a}];module.exports=s;
1
+ "use strict";const l=require("../helpers.cjs"),a=({slots:e})=>Array.isArray(e)&&e?.length>0?(e?.find(t=>t?.name==="legend")?.content?.length??0)>0||(e?.find(t=>t?.name==="measure")?.content?.length??0)>1:!1,n=({slots:e})=>Array.isArray(e)&&e?.length>0?!((e?.find(t=>t?.name==="legend")?.content?.length??0)>0)&&(e?.find(t=>t?.name==="measure")?.content?.length??0)<=1:!0,o=({slots:e})=>Array.isArray(e)&&e?.find(t=>t?.name==="x-axis")?.content?.[0]?.type==="datetime",r=({options:e,slots:t})=>Array.isArray(t)&&t?.find(i=>i?.name==="x-axis")?.content?.[0]?.type==="datetime"&&e?.missingValue?.type==="manual",s=[{key:"general",type:"group",open:!0,children:[{key:"display.title",control:{label:"Title",type:"switch",default:!0}},{type:"divider"},{key:"mode",control:{label:"Mode",type:"picker",default:"stacked",enum:["100","unstacked","stacked","stream"]},visibleIf:a},{key:"interpolation",control:{label:"Interpolation",type:"picker",default:"linear",enum:["linear","step-before","step-after","monotone"]}},{key:"display.legend",control:{label:"Legend",type:"switch",default:!0},visibleIf:a},{key:"display.modeOption",control:{label:"Mode option",type:"switch",default:!0},visibleIf:a},{key:"missingValue.type",control:{label:"Fill missing values",type:"picker",default:"no",enum:["no","break","manual"]},visibleIf:o},{key:"missingValue.value",control:{label:"Value",type:"number-field",default:0,min:1},visibleIf:r},{key:"color",control:{label:"Area color",type:"color-picker",default:({theme:e})=>l.getThemeMainColor(e),extraLabel:({options:e,theme:t})=>l.getThemeMainColorResetLabel(e,t,"color"),extraLabelHasClickAction:({options:e,theme:t})=>l.getThemeMainColorExtraLabelHasClickAction(e,t,"color"),extraLabelClickAction:({options:e,theme:t})=>l.getThemeMainColorExtraLabelClickAction(e,t,"color")},visibleIf:n}]},{key:"axes",type:"group",open:!1,children:[{key:"xAxisLabels",type:"group",label:"X-axis label",collapsible:!0,open:!0,children:[{key:"axislabels.x.enabled",control:{type:"switch",label:"Enabled",default:!1}},{key:"axislabels.x.position",control:{type:"picker",label:"Position",default:"center",enum:["left","center","right"]},visibleIf:({options:e})=>e?.axislabels?.x?.enabled===!0}]},{key:"yAxisLabels",type:"group",label:"Y-axis label",collapsible:!0,open:!0,children:[{key:"axislabels.y.enabled",control:{type:"switch",label:"Enabled",default:!1}},{key:"axislabels.y.position",control:{type:"picker",label:"Position",default:"middle",enum:["top","middle","bottom"]},visibleIf:({options:e})=>e?.axislabels?.y?.enabled===!0}]}]},{key:"legend",type:"group",open:!1,children:[{key:"legend.position",control:{label:"Position",type:"position-picker",default:"topRight",enum:["topLeft","top","topRight","right","bottomRight","bottom","bottomLeft","left"]}},{key:"legend.customOrder",control:{label:"Custom order",description:"Drag items in the chart legend to set the order.",type:"switch",default:!1}},{key:"interactivity.legendReorder",control:{label:"Allow viewers to reorder",type:"switch",default:!1},visibleIf:({options:e})=>e?.legend?.customOrder===!0}],visibleIf:a}];module.exports=s;
2
2
  //# sourceMappingURL=area-chart-options.config.cjs.map