scu-web-components 0.0.49 → 0.0.51

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 (2135) hide show
  1. package/dist/chunks/axe.min.TNGPDQQL.js +2 -0
  2. package/dist/chunks/axe.min.TNGPDQQL.js.gz +0 -0
  3. package/dist/chunks/chunk.243OHVJI.js +17 -0
  4. package/dist/chunks/chunk.243OHVJI.js.gz +0 -0
  5. package/dist/chunks/chunk.243OHVJI.js.map +7 -0
  6. package/dist/chunks/chunk.243OHVJI.js.map.gz +0 -0
  7. package/dist/chunks/chunk.25GCIBEO.js +2 -0
  8. package/dist/chunks/chunk.2BDKWSZS.js +31 -0
  9. package/dist/chunks/chunk.2BDKWSZS.js.gz +0 -0
  10. package/dist/chunks/chunk.2BDKWSZS.js.map +7 -0
  11. package/dist/chunks/chunk.2BDKWSZS.js.map.gz +0 -0
  12. package/dist/chunks/{chunk.3UEHBCHI.js → chunk.2JM52ZQM.js} +8 -8
  13. package/dist/chunks/chunk.2JM52ZQM.js.gz +0 -0
  14. package/dist/chunks/chunk.2JM52ZQM.js.map +7 -0
  15. package/dist/chunks/chunk.2JM52ZQM.js.map.gz +0 -0
  16. package/dist/chunks/{chunk.OZDISW2G.js → chunk.2SPVZPB7.js} +5 -5
  17. package/dist/chunks/chunk.2SPVZPB7.js.gz +0 -0
  18. package/dist/chunks/{chunk.OZDISW2G.js.map → chunk.2SPVZPB7.js.map} +3 -3
  19. package/dist/chunks/{chunk.OZDISW2G.js.map.gz → chunk.2SPVZPB7.js.map.gz} +0 -0
  20. package/dist/chunks/{chunk.MZV3L5GG.js → chunk.33WEDZJ7.js} +18 -18
  21. package/dist/chunks/chunk.33WEDZJ7.js.gz +0 -0
  22. package/dist/chunks/chunk.33WEDZJ7.js.map +7 -0
  23. package/dist/chunks/chunk.33WEDZJ7.js.map.gz +0 -0
  24. package/dist/chunks/chunk.3ADOQYW7.js +2 -0
  25. package/dist/chunks/chunk.3M7MBLQ3.js +42 -0
  26. package/dist/chunks/chunk.3M7MBLQ3.js.map +7 -0
  27. package/dist/chunks/{chunk.DSSTKNQ5.js → chunk.4EAXMMQK.js} +2 -2
  28. package/dist/chunks/chunk.4EAXMMQK.js.gz +0 -0
  29. package/dist/chunks/{chunk.DSSTKNQ5.js.map → chunk.4EAXMMQK.js.map} +1 -1
  30. package/dist/chunks/{chunk.DSSTKNQ5.js.map.gz → chunk.4EAXMMQK.js.map.gz} +0 -0
  31. package/dist/chunks/chunk.4FSP3PJK.js +4 -0
  32. package/dist/chunks/chunk.4FSP3PJK.js.gz +0 -0
  33. package/dist/chunks/{chunk.I52FNVGQ.js.map → chunk.4FSP3PJK.js.map} +1 -1
  34. package/dist/chunks/chunk.4FSP3PJK.js.map.gz +0 -0
  35. package/dist/chunks/chunk.4PZL5FSZ.js +247 -0
  36. package/dist/chunks/chunk.4PZL5FSZ.js.map +7 -0
  37. package/dist/chunks/chunk.4SHGXHPZ.js +2 -0
  38. package/dist/chunks/chunk.4SHGXHPZ.js.gz +0 -0
  39. package/dist/chunks/chunk.4UA4KIOB.js +4 -0
  40. package/dist/chunks/chunk.4UA4KIOB.js.map +7 -0
  41. package/dist/chunks/{chunk.3CYTTNE6.js → chunk.5FLYXEAZ.js} +27 -30
  42. package/dist/chunks/chunk.5FLYXEAZ.js.gz +0 -0
  43. package/dist/chunks/chunk.5FLYXEAZ.js.map +7 -0
  44. package/dist/chunks/chunk.5FLYXEAZ.js.map.gz +0 -0
  45. package/dist/chunks/chunk.5Q22UUUI.js +247 -0
  46. package/dist/chunks/chunk.5Q22UUUI.js.gz +0 -0
  47. package/dist/chunks/chunk.5Q22UUUI.js.map +7 -0
  48. package/dist/chunks/chunk.5Q22UUUI.js.map.gz +0 -0
  49. package/dist/chunks/{chunk.GAYXGND2.js → chunk.5XPDNDRM.js} +2 -2
  50. package/dist/chunks/chunk.5XPDNDRM.js.gz +0 -0
  51. package/dist/chunks/{chunk.GAYXGND2.js.map → chunk.5XPDNDRM.js.map} +1 -1
  52. package/dist/chunks/{chunk.GAYXGND2.js.map.gz → chunk.5XPDNDRM.js.map.gz} +0 -0
  53. package/dist/chunks/chunk.6CZRLX37.js +31 -0
  54. package/dist/chunks/chunk.6CZRLX37.js.gz +0 -0
  55. package/dist/chunks/chunk.6CZRLX37.js.map +7 -0
  56. package/dist/chunks/chunk.6CZRLX37.js.map.gz +0 -0
  57. package/dist/chunks/{chunk.IOSK3BT6.js → chunk.6I7JTRNW.js} +11 -14
  58. package/dist/chunks/chunk.6I7JTRNW.js.gz +0 -0
  59. package/dist/chunks/chunk.6I7JTRNW.js.map +7 -0
  60. package/dist/chunks/chunk.6I7JTRNW.js.map.gz +0 -0
  61. package/dist/chunks/chunk.6K7KZV7E.js +2 -0
  62. package/dist/chunks/chunk.6K7KZV7E.js.gz +0 -0
  63. package/dist/chunks/chunk.6K7KZV7E.js.map +7 -0
  64. package/dist/chunks/{chunk.DXDJI6UK.js → chunk.6X3T3GLO.js} +2 -2
  65. package/dist/chunks/chunk.6X3T3GLO.js.gz +0 -0
  66. package/dist/chunks/chunk.6ZGWKGNP.js +2 -0
  67. package/dist/chunks/chunk.6ZGWKGNP.js.gz +0 -0
  68. package/dist/chunks/chunk.6ZGWKGNP.js.map +7 -0
  69. package/dist/chunks/chunk.6ZGWKGNP.js.map.gz +0 -0
  70. package/dist/chunks/chunk.72352V5G.js +2 -0
  71. package/dist/chunks/chunk.72352V5G.js.gz +0 -0
  72. package/dist/chunks/chunk.72LV46YA.js +17 -0
  73. package/dist/chunks/chunk.72LV46YA.js.gz +0 -0
  74. package/dist/chunks/chunk.72LV46YA.js.map +7 -0
  75. package/dist/chunks/chunk.72LV46YA.js.map.gz +0 -0
  76. package/dist/chunks/{chunk.LL2Q36MD.js → chunk.73I34YJ5.js} +2 -2
  77. package/dist/chunks/chunk.73I34YJ5.js.gz +0 -0
  78. package/dist/chunks/{chunk.LL2Q36MD.js.map → chunk.73I34YJ5.js.map} +1 -1
  79. package/dist/chunks/{chunk.LL2Q36MD.js.map.gz → chunk.73I34YJ5.js.map.gz} +0 -0
  80. package/dist/chunks/{chunk.GO5WDIBC.js → chunk.7B2PQ2WH.js} +8 -8
  81. package/dist/chunks/chunk.7B2PQ2WH.js.gz +0 -0
  82. package/dist/chunks/chunk.7B2PQ2WH.js.map +7 -0
  83. package/dist/chunks/chunk.7B2PQ2WH.js.map.gz +0 -0
  84. package/dist/chunks/chunk.7U3GLKIN.js +247 -0
  85. package/dist/chunks/chunk.7U3GLKIN.js.gz +0 -0
  86. package/dist/chunks/chunk.7U3GLKIN.js.map +7 -0
  87. package/dist/chunks/chunk.7U3GLKIN.js.map.gz +0 -0
  88. package/dist/chunks/{chunk.HHQBCY44.js → chunk.A3OU6GD4.js} +2 -2
  89. package/dist/chunks/chunk.A3OU6GD4.js.gz +0 -0
  90. package/dist/chunks/{chunk.HHQBCY44.js.map → chunk.A3OU6GD4.js.map} +1 -1
  91. package/dist/chunks/chunk.A3OU6GD4.js.map.gz +0 -0
  92. package/dist/chunks/chunk.A66EC32B.js +2 -0
  93. package/dist/chunks/chunk.A66EC32B.js.map +7 -0
  94. package/dist/chunks/chunk.ASIY7N5H.js +2 -0
  95. package/dist/chunks/chunk.ASIY7N5H.js.gz +0 -0
  96. package/dist/chunks/chunk.B2HFBLNN.js +247 -0
  97. package/dist/chunks/chunk.B2HFBLNN.js.gz +0 -0
  98. package/dist/chunks/chunk.B2HFBLNN.js.map +7 -0
  99. package/dist/chunks/chunk.B2HFBLNN.js.map.gz +0 -0
  100. package/dist/chunks/chunk.B5IARNIA.js +4 -0
  101. package/dist/chunks/chunk.B5IARNIA.js.gz +0 -0
  102. package/dist/chunks/chunk.B5IARNIA.js.map +7 -0
  103. package/dist/chunks/chunk.B5IARNIA.js.map.gz +0 -0
  104. package/dist/chunks/chunk.BFSBBUYT.js +4 -0
  105. package/dist/chunks/{chunk.IESW767J.js.map → chunk.BFSBBUYT.js.map} +1 -1
  106. package/dist/chunks/{chunk.PKWXMRDA.js → chunk.BLU6IFX6.js} +2 -2
  107. package/dist/chunks/chunk.BLU6IFX6.js.gz +0 -0
  108. package/dist/chunks/{chunk.PKWXMRDA.js.map → chunk.BLU6IFX6.js.map} +1 -1
  109. package/dist/chunks/{chunk.PKWXMRDA.js.map.gz → chunk.BLU6IFX6.js.map.gz} +0 -0
  110. package/dist/chunks/chunk.BNOMNHLD.js +2 -0
  111. package/dist/chunks/chunk.BNOMNHLD.js.gz +0 -0
  112. package/dist/chunks/chunk.BNOMNHLD.js.map +7 -0
  113. package/dist/chunks/chunk.BNOMNHLD.js.map.gz +0 -0
  114. package/dist/chunks/{chunk.DT2Z4DK4.js → chunk.BPTN2TLV.js} +5 -5
  115. package/dist/chunks/chunk.BPTN2TLV.js.gz +0 -0
  116. package/dist/chunks/{chunk.DT2Z4DK4.js.map → chunk.BPTN2TLV.js.map} +3 -3
  117. package/dist/chunks/chunk.BPTN2TLV.js.map.gz +0 -0
  118. package/dist/chunks/chunk.BRBTEOOY.js +4 -0
  119. package/dist/chunks/chunk.BRBTEOOY.js.map +7 -0
  120. package/dist/chunks/chunk.BSNM2OO4.js +2 -0
  121. package/dist/chunks/chunk.BSNM2OO4.js.gz +0 -0
  122. package/dist/chunks/chunk.CD6EIJGD.js +2 -0
  123. package/dist/chunks/chunk.CD6EIJGD.js.gz +0 -0
  124. package/dist/chunks/chunk.CD6EIJGD.js.map +7 -0
  125. package/dist/chunks/chunk.CD6EIJGD.js.map.gz +0 -0
  126. package/dist/chunks/chunk.CH3XFUWR.js +31 -0
  127. package/dist/chunks/chunk.CH3XFUWR.js.gz +0 -0
  128. package/dist/chunks/chunk.CH3XFUWR.js.map +7 -0
  129. package/dist/chunks/chunk.CH3XFUWR.js.map.gz +0 -0
  130. package/dist/chunks/chunk.CZWW2W7F.js +4 -0
  131. package/dist/chunks/chunk.CZWW2W7F.js.gz +0 -0
  132. package/dist/chunks/chunk.CZWW2W7F.js.map +7 -0
  133. package/dist/chunks/chunk.CZWW2W7F.js.map.gz +0 -0
  134. package/dist/chunks/chunk.DDSE2OQO.js +2 -0
  135. package/dist/chunks/chunk.DEJTQKIS.js +17 -0
  136. package/dist/chunks/chunk.DEJTQKIS.js.gz +0 -0
  137. package/dist/chunks/chunk.DEJTQKIS.js.map +7 -0
  138. package/dist/chunks/chunk.DEJTQKIS.js.map.gz +0 -0
  139. package/dist/chunks/{chunk.56DNAIKT.js → chunk.DOQM3PL5.js} +2 -2
  140. package/dist/chunks/chunk.DSYPMCWJ.js +17 -0
  141. package/dist/chunks/chunk.DSYPMCWJ.js.gz +0 -0
  142. package/dist/chunks/chunk.DSYPMCWJ.js.map +7 -0
  143. package/dist/chunks/chunk.DSYPMCWJ.js.map.gz +0 -0
  144. package/dist/chunks/chunk.EZS25Y66.js +2 -0
  145. package/dist/chunks/chunk.EZS25Y66.js.gz +0 -0
  146. package/dist/chunks/chunk.FCHLUZGI.js +2 -0
  147. package/dist/chunks/chunk.FCHLUZGI.js.gz +0 -0
  148. package/dist/chunks/chunk.FCHLUZGI.js.map +7 -0
  149. package/dist/chunks/chunk.FCHLUZGI.js.map.gz +0 -0
  150. package/dist/chunks/chunk.FF7XMLLW.js +31 -0
  151. package/dist/chunks/chunk.FF7XMLLW.js.gz +0 -0
  152. package/dist/chunks/chunk.FF7XMLLW.js.map +7 -0
  153. package/dist/chunks/chunk.FF7XMLLW.js.map.gz +0 -0
  154. package/dist/chunks/chunk.FFI7NROP.js +2 -0
  155. package/dist/chunks/chunk.FFI7NROP.js.map +7 -0
  156. package/dist/chunks/chunk.G3B7KME7.js +2 -0
  157. package/dist/chunks/chunk.G3B7KME7.js.gz +0 -0
  158. package/dist/chunks/chunk.G3B7KME7.js.map +7 -0
  159. package/dist/chunks/chunk.G3B7KME7.js.map.gz +0 -0
  160. package/dist/chunks/chunk.GANEMUM7.js +2 -0
  161. package/dist/chunks/chunk.GANEMUM7.js.gz +0 -0
  162. package/dist/chunks/chunk.GANEMUM7.js.map +7 -0
  163. package/dist/chunks/chunk.GANEMUM7.js.map.gz +0 -0
  164. package/dist/chunks/chunk.GHYZIEXB.js +247 -0
  165. package/dist/chunks/chunk.GHYZIEXB.js.gz +0 -0
  166. package/dist/chunks/chunk.GHYZIEXB.js.map +7 -0
  167. package/dist/chunks/chunk.GHYZIEXB.js.map.gz +0 -0
  168. package/dist/chunks/chunk.GOLR2K45.js +9 -0
  169. package/dist/chunks/chunk.GOLR2K45.js.gz +0 -0
  170. package/dist/chunks/chunk.GOLR2K45.js.map +7 -0
  171. package/dist/chunks/chunk.GOLR2K45.js.map.gz +0 -0
  172. package/dist/chunks/chunk.GUOYIUM5.js +4 -0
  173. package/dist/chunks/chunk.GUOYIUM5.js.gz +0 -0
  174. package/dist/chunks/chunk.GUOYIUM5.js.map +7 -0
  175. package/dist/chunks/chunk.GUOYIUM5.js.map.gz +0 -0
  176. package/dist/chunks/chunk.H6YAQOOT.js +2 -0
  177. package/dist/chunks/chunk.H6YAQOOT.js.gz +0 -0
  178. package/dist/chunks/{chunk.J7SGRJXX.js → chunk.HMO3FTOO.js} +2 -2
  179. package/dist/chunks/chunk.HMO3FTOO.js.gz +0 -0
  180. package/dist/chunks/chunk.HNKGWJ2V.js +31 -0
  181. package/dist/chunks/chunk.HNKGWJ2V.js.gz +0 -0
  182. package/dist/chunks/chunk.HNKGWJ2V.js.map +7 -0
  183. package/dist/chunks/chunk.HNKGWJ2V.js.map.gz +0 -0
  184. package/dist/chunks/{chunk.MSNTYPQM.js → chunk.HXF7JJED.js} +2 -2
  185. package/dist/chunks/{chunk.MSNTYPQM.js.map → chunk.HXF7JJED.js.map} +1 -1
  186. package/dist/chunks/chunk.HZZCDSZ5.js +247 -0
  187. package/dist/chunks/chunk.HZZCDSZ5.js.gz +0 -0
  188. package/dist/chunks/chunk.HZZCDSZ5.js.map +7 -0
  189. package/dist/chunks/chunk.HZZCDSZ5.js.map.gz +0 -0
  190. package/dist/chunks/{chunk.UXIAMI3F.js → chunk.IE23J4E6.js} +2 -2
  191. package/dist/chunks/chunk.IE23J4E6.js.gz +0 -0
  192. package/dist/chunks/chunk.IE23J4E6.js.map +7 -0
  193. package/dist/chunks/chunk.IE23J4E6.js.map.gz +0 -0
  194. package/dist/chunks/chunk.IFZE7CTS.js +247 -0
  195. package/dist/chunks/chunk.IFZE7CTS.js.map +7 -0
  196. package/dist/chunks/chunk.IIVJO3L5.js +2 -0
  197. package/dist/chunks/chunk.IIVJO3L5.js.gz +0 -0
  198. package/dist/chunks/chunk.IIVJO3L5.js.map +7 -0
  199. package/dist/chunks/chunk.IIVJO3L5.js.map.gz +0 -0
  200. package/dist/chunks/chunk.IKVSH4SO.js +6 -0
  201. package/dist/chunks/chunk.IKVSH4SO.js.gz +0 -0
  202. package/dist/chunks/chunk.IKVSH4SO.js.map +7 -0
  203. package/dist/chunks/chunk.IKVSH4SO.js.map.gz +0 -0
  204. package/dist/chunks/chunk.IKXNGM4O.js +2 -0
  205. package/dist/chunks/chunk.IKXNGM4O.js.gz +0 -0
  206. package/dist/chunks/chunk.IKXNGM4O.js.map +7 -0
  207. package/dist/chunks/chunk.IKXNGM4O.js.map.gz +0 -0
  208. package/dist/chunks/chunk.INDQCPIZ.js +2 -0
  209. package/dist/chunks/chunk.INDQCPIZ.js.gz +0 -0
  210. package/dist/chunks/chunk.INDVMZJJ.js +2 -0
  211. package/dist/chunks/chunk.INDVMZJJ.js.gz +0 -0
  212. package/dist/chunks/chunk.INDVMZJJ.js.map +7 -0
  213. package/dist/chunks/chunk.INDVMZJJ.js.map.gz +0 -0
  214. package/dist/chunks/chunk.IRZOUKDB.js +2 -0
  215. package/dist/chunks/chunk.IRZOUKDB.js.map +7 -0
  216. package/dist/chunks/chunk.ISK43ZQA.js +31 -0
  217. package/dist/chunks/chunk.ISK43ZQA.js.gz +0 -0
  218. package/dist/chunks/chunk.ISK43ZQA.js.map +7 -0
  219. package/dist/chunks/chunk.ISK43ZQA.js.map.gz +0 -0
  220. package/dist/chunks/{chunk.2G75FJJM.js → chunk.IUKZ466E.js} +2 -2
  221. package/dist/chunks/chunk.IUKZ466E.js.gz +0 -0
  222. package/dist/chunks/chunk.IVLH67DF.js +2 -0
  223. package/dist/chunks/chunk.IVLH67DF.js.gz +0 -0
  224. package/dist/chunks/chunk.J2WJAXPU.js +2 -0
  225. package/dist/chunks/chunk.J2WJAXPU.js.gz +0 -0
  226. package/dist/chunks/chunk.J2WJAXPU.js.map +7 -0
  227. package/dist/chunks/chunk.J2WJAXPU.js.map.gz +0 -0
  228. package/dist/chunks/chunk.J7OXUBIO.js +4 -0
  229. package/dist/chunks/chunk.J7OXUBIO.js.gz +0 -0
  230. package/dist/chunks/chunk.J7OXUBIO.js.map +7 -0
  231. package/dist/chunks/chunk.J7OXUBIO.js.map.gz +0 -0
  232. package/dist/chunks/chunk.JQUOAQ3U.js +59 -0
  233. package/dist/chunks/chunk.JQUOAQ3U.js.map +7 -0
  234. package/dist/chunks/chunk.KBENKX4U.js +4 -0
  235. package/dist/chunks/chunk.KBENKX4U.js.gz +0 -0
  236. package/dist/chunks/chunk.KBENKX4U.js.map +7 -0
  237. package/dist/chunks/chunk.KBENKX4U.js.map.gz +0 -0
  238. package/dist/chunks/chunk.KMAQM74Q.js +17 -0
  239. package/dist/chunks/chunk.KMAQM74Q.js.gz +0 -0
  240. package/dist/chunks/chunk.KMAQM74Q.js.map +7 -0
  241. package/dist/chunks/chunk.KMAQM74Q.js.map.gz +0 -0
  242. package/dist/chunks/chunk.KMM6APSP.js +31 -0
  243. package/dist/chunks/chunk.KMM6APSP.js.map +7 -0
  244. package/dist/chunks/chunk.KZO7DGIW.js +2 -0
  245. package/dist/chunks/chunk.KZO7DGIW.js.gz +0 -0
  246. package/dist/chunks/chunk.KZO7DGIW.js.map +7 -0
  247. package/dist/chunks/chunk.KZO7DGIW.js.map.gz +0 -0
  248. package/dist/chunks/chunk.LERDHIW6.js +50 -0
  249. package/dist/chunks/chunk.LERDHIW6.js.map +7 -0
  250. package/dist/chunks/chunk.LM4UOUIV.js +2 -0
  251. package/dist/chunks/chunk.LM4UOUIV.js.gz +0 -0
  252. package/dist/chunks/chunk.LM4UOUIV.js.map +7 -0
  253. package/dist/chunks/{chunk.AP76NHYK.js → chunk.LPGZH2LO.js} +2 -2
  254. package/dist/chunks/chunk.LPGZH2LO.js.gz +0 -0
  255. package/dist/chunks/chunk.LTVZT37S.js +2 -0
  256. package/dist/chunks/chunk.LTVZT37S.js.gz +0 -0
  257. package/dist/chunks/chunk.LTVZT37S.js.map +7 -0
  258. package/dist/chunks/chunk.LTVZT37S.js.map.gz +0 -0
  259. package/dist/chunks/chunk.M2ENQYEQ.js +4 -0
  260. package/dist/chunks/chunk.M2ENQYEQ.js.gz +0 -0
  261. package/dist/chunks/chunk.M2ENQYEQ.js.map +7 -0
  262. package/dist/chunks/chunk.M2ENQYEQ.js.map.gz +0 -0
  263. package/dist/chunks/{chunk.GWYCKHBI.js → chunk.M7G4IHIM.js} +8 -7
  264. package/dist/chunks/chunk.M7G4IHIM.js.gz +0 -0
  265. package/dist/chunks/chunk.M7G4IHIM.js.map +7 -0
  266. package/dist/chunks/chunk.M7G4IHIM.js.map.gz +0 -0
  267. package/dist/chunks/chunk.MCCGY744.js +2 -0
  268. package/dist/chunks/chunk.MCCGY744.js.map +7 -0
  269. package/dist/chunks/chunk.MFCVDYNN.js +2 -0
  270. package/dist/chunks/chunk.MFCVDYNN.js.map +7 -0
  271. package/dist/chunks/chunk.MKG3JTDP.js +17 -0
  272. package/dist/chunks/chunk.MKG3JTDP.js.gz +0 -0
  273. package/dist/chunks/chunk.MKG3JTDP.js.map +7 -0
  274. package/dist/chunks/chunk.MKG3JTDP.js.map.gz +0 -0
  275. package/dist/chunks/chunk.MUDJIBIM.js +2 -0
  276. package/dist/chunks/chunk.MUDJIBIM.js.map +7 -0
  277. package/dist/chunks/chunk.NCG6NKKX.js +247 -0
  278. package/dist/chunks/chunk.NCG6NKKX.js.gz +0 -0
  279. package/dist/chunks/chunk.NCG6NKKX.js.map +7 -0
  280. package/dist/chunks/chunk.NCG6NKKX.js.map.gz +0 -0
  281. package/dist/chunks/chunk.NGNNUTXC.js +2 -0
  282. package/dist/chunks/chunk.NGNNUTXC.js.gz +0 -0
  283. package/dist/chunks/chunk.NOXJ26Q6.js +2 -0
  284. package/dist/chunks/chunk.NOXJ26Q6.js.gz +0 -0
  285. package/dist/chunks/chunk.NOXJ26Q6.js.map +7 -0
  286. package/dist/chunks/chunk.NOXJ26Q6.js.map.gz +0 -0
  287. package/dist/chunks/{chunk.NBLIIWTN.js → chunk.NRK7TWEL.js} +2 -2
  288. package/dist/chunks/chunk.NRK7TWEL.js.gz +0 -0
  289. package/dist/chunks/chunk.NUUIUVXV.js +112 -0
  290. package/dist/chunks/chunk.NUUIUVXV.js.map +7 -0
  291. package/dist/chunks/chunk.NVDBB756.js +2 -0
  292. package/dist/chunks/chunk.NVDBB756.js.gz +0 -0
  293. package/dist/chunks/chunk.NVDBB756.js.map +7 -0
  294. package/dist/chunks/chunk.NVDBB756.js.map.gz +0 -0
  295. package/dist/chunks/chunk.NZDW7WKW.js +10 -0
  296. package/dist/chunks/chunk.NZDW7WKW.js.gz +0 -0
  297. package/dist/chunks/chunk.NZDW7WKW.js.map +7 -0
  298. package/dist/chunks/chunk.NZDW7WKW.js.map.gz +0 -0
  299. package/dist/chunks/chunk.OANBQIRS.js +2 -0
  300. package/dist/chunks/chunk.OANBQIRS.js.map +7 -0
  301. package/dist/chunks/chunk.OE6Z2SVQ.js +2 -0
  302. package/dist/chunks/chunk.OE6Z2SVQ.js.map +7 -0
  303. package/dist/chunks/chunk.OPP6LO62.js +87 -0
  304. package/dist/chunks/chunk.OPP6LO62.js.map +7 -0
  305. package/dist/chunks/chunk.OUEFDOQF.js +2 -0
  306. package/dist/chunks/chunk.OUEFDOQF.js.gz +0 -0
  307. package/dist/chunks/chunk.OUEFDOQF.js.map +7 -0
  308. package/dist/chunks/chunk.OVOQAAT2.js +4 -0
  309. package/dist/chunks/chunk.OVOQAAT2.js.gz +0 -0
  310. package/dist/chunks/chunk.OVOQAAT2.js.map +7 -0
  311. package/dist/chunks/chunk.OVOQAAT2.js.map.gz +0 -0
  312. package/dist/chunks/chunk.OWNG2MEZ.js +2 -0
  313. package/dist/chunks/chunk.OWNG2MEZ.js.map +7 -0
  314. package/dist/chunks/chunk.OZBYLYFD.js +28 -0
  315. package/dist/chunks/chunk.OZBYLYFD.js.map +7 -0
  316. package/dist/chunks/chunk.P4YGSTDE.js +258 -0
  317. package/dist/chunks/chunk.P4YGSTDE.js.map +7 -0
  318. package/dist/chunks/chunk.PF7V2Y6H.js +4 -0
  319. package/dist/chunks/chunk.PF7V2Y6H.js.gz +0 -0
  320. package/dist/chunks/chunk.PF7V2Y6H.js.map +7 -0
  321. package/dist/chunks/chunk.PF7V2Y6H.js.map.gz +0 -0
  322. package/dist/chunks/chunk.PMRO6R6J.js +2 -0
  323. package/dist/chunks/chunk.PMRO6R6J.js.gz +0 -0
  324. package/dist/chunks/chunk.PMRO6R6J.js.map +7 -0
  325. package/dist/chunks/chunk.PMRO6R6J.js.map.gz +0 -0
  326. package/dist/chunks/chunk.PO2TECEX.js +2 -0
  327. package/dist/chunks/{chunk.XWFI56OY.js → chunk.PQ34W6XF.js} +2 -2
  328. package/dist/chunks/chunk.PQ34W6XF.js.gz +0 -0
  329. package/dist/chunks/{chunk.XWFI56OY.js.map → chunk.PQ34W6XF.js.map} +1 -1
  330. package/dist/chunks/chunk.PQ34W6XF.js.map.gz +0 -0
  331. package/dist/chunks/chunk.PU5IM2P3.js +247 -0
  332. package/dist/chunks/chunk.PU5IM2P3.js.gz +0 -0
  333. package/dist/chunks/chunk.PU5IM2P3.js.map +7 -0
  334. package/dist/chunks/chunk.PU5IM2P3.js.map.gz +0 -0
  335. package/dist/chunks/chunk.PVJ6BGC3.js +31 -0
  336. package/dist/chunks/chunk.PVJ6BGC3.js.gz +0 -0
  337. package/dist/chunks/chunk.PVJ6BGC3.js.map +7 -0
  338. package/dist/chunks/chunk.PVJ6BGC3.js.map.gz +0 -0
  339. package/dist/chunks/chunk.PWWH7HF6.js +183 -0
  340. package/dist/chunks/chunk.PWWH7HF6.js.map +7 -0
  341. package/dist/chunks/chunk.QDWEYWWU.js +208 -0
  342. package/dist/chunks/chunk.QDWEYWWU.js.map +7 -0
  343. package/dist/chunks/chunk.QVCFAUL2.js +7 -0
  344. package/dist/chunks/chunk.QVCFAUL2.js.gz +0 -0
  345. package/dist/chunks/chunk.QWMXZMWO.js +17 -0
  346. package/dist/chunks/chunk.QWMXZMWO.js.gz +0 -0
  347. package/dist/chunks/chunk.QWMXZMWO.js.map +7 -0
  348. package/dist/chunks/chunk.QWMXZMWO.js.map.gz +0 -0
  349. package/dist/chunks/chunk.QWSDYLWM.js +31 -0
  350. package/dist/chunks/chunk.QWSDYLWM.js.map +7 -0
  351. package/dist/chunks/chunk.QYWOXBM7.js +2 -0
  352. package/dist/chunks/chunk.QYWOXBM7.js.gz +0 -0
  353. package/dist/chunks/chunk.QYWOXBM7.js.map +7 -0
  354. package/dist/chunks/chunk.QYWOXBM7.js.map.gz +0 -0
  355. package/dist/chunks/chunk.RCJOUML4.js +2 -0
  356. package/dist/chunks/{chunk.RSR7WC4R.js → chunk.RNPNMHAU.js} +1 -1
  357. package/dist/chunks/chunk.RNPNMHAU.js.gz +0 -0
  358. package/dist/chunks/chunk.RNPNMHAU.js.map +7 -0
  359. package/dist/chunks/chunk.RNPNMHAU.js.map.gz +0 -0
  360. package/dist/chunks/chunk.S4PMEOAH.js +2 -0
  361. package/dist/chunks/chunk.S4PMEOAH.js.gz +0 -0
  362. package/dist/chunks/chunk.S4PMEOAH.js.map +7 -0
  363. package/dist/chunks/chunk.S4PMEOAH.js.map.gz +0 -0
  364. package/dist/chunks/chunk.SGCT4T76.js +31 -0
  365. package/dist/chunks/chunk.SGCT4T76.js.map +7 -0
  366. package/dist/chunks/chunk.SMV2I5DZ.js +4 -0
  367. package/dist/chunks/chunk.SMV2I5DZ.js.map +7 -0
  368. package/dist/chunks/chunk.SN4D7DLM.js +2 -0
  369. package/dist/chunks/chunk.SN4D7DLM.js.gz +0 -0
  370. package/dist/chunks/chunk.SN4D7DLM.js.map +7 -0
  371. package/dist/chunks/chunk.SN4D7DLM.js.map.gz +0 -0
  372. package/dist/chunks/chunk.SNSWGWWS.js +2 -0
  373. package/dist/chunks/chunk.SNSWGWWS.js.gz +0 -0
  374. package/dist/chunks/chunk.SNSWGWWS.js.map +7 -0
  375. package/dist/chunks/chunk.SNSWGWWS.js.map.gz +0 -0
  376. package/dist/chunks/chunk.SPDDQ6TQ.js +2 -0
  377. package/dist/chunks/chunk.SPDDQ6TQ.js.map +7 -0
  378. package/dist/chunks/chunk.SPZIUAH4.js +2 -0
  379. package/dist/chunks/chunk.SPZIUAH4.js.gz +0 -0
  380. package/dist/chunks/chunk.SPZIUAH4.js.map +7 -0
  381. package/dist/chunks/chunk.SPZIUAH4.js.map.gz +0 -0
  382. package/dist/chunks/chunk.SQGB36OF.js +31 -0
  383. package/dist/chunks/chunk.SQGB36OF.js.gz +0 -0
  384. package/dist/chunks/chunk.SQGB36OF.js.map +7 -0
  385. package/dist/chunks/chunk.SQGB36OF.js.map.gz +0 -0
  386. package/dist/chunks/chunk.SRNUBS6H.js +17 -0
  387. package/dist/chunks/chunk.SRNUBS6H.js.map +7 -0
  388. package/dist/chunks/chunk.TA6MGJV3.js +17 -0
  389. package/dist/chunks/chunk.TA6MGJV3.js.gz +0 -0
  390. package/dist/chunks/chunk.TA6MGJV3.js.map +7 -0
  391. package/dist/chunks/chunk.TA6MGJV3.js.map.gz +0 -0
  392. package/dist/chunks/chunk.TJLOPS7G.js +31 -0
  393. package/dist/chunks/chunk.TJLOPS7G.js.gz +0 -0
  394. package/dist/chunks/chunk.TJLOPS7G.js.map +7 -0
  395. package/dist/chunks/chunk.TJLOPS7G.js.map.gz +0 -0
  396. package/dist/chunks/chunk.U2UM7J62.js +2 -0
  397. package/dist/chunks/chunk.U2UM7J62.js.gz +0 -0
  398. package/dist/chunks/chunk.U2UM7J62.js.map +7 -0
  399. package/dist/chunks/chunk.U4YWIIVA.js +2 -0
  400. package/dist/chunks/chunk.U4YWIIVA.js.gz +0 -0
  401. package/dist/chunks/chunk.UAI4QQD6.js +62 -0
  402. package/dist/chunks/chunk.UAI4QQD6.js.map +7 -0
  403. package/dist/chunks/{chunk.LXVTLQA3.js → chunk.V63GL6WR.js} +2 -2
  404. package/dist/chunks/chunk.V63GL6WR.js.gz +0 -0
  405. package/dist/chunks/{chunk.RV2KOT76.js → chunk.VDUC6J3T.js} +7 -7
  406. package/dist/chunks/chunk.VDUC6J3T.js.gz +0 -0
  407. package/dist/chunks/chunk.VDUC6J3T.js.map +7 -0
  408. package/dist/chunks/chunk.VDUC6J3T.js.map.gz +0 -0
  409. package/dist/chunks/chunk.VMTK44OP.js +2 -0
  410. package/dist/chunks/chunk.VMTK44OP.js.gz +0 -0
  411. package/dist/chunks/chunk.VMTK44OP.js.map +7 -0
  412. package/dist/chunks/chunk.VQD4G6LB.js +17 -0
  413. package/dist/chunks/chunk.VQD4G6LB.js.map +7 -0
  414. package/dist/chunks/{chunk.NDALVOT5.js → chunk.VVEGTQBJ.js} +2 -2
  415. package/dist/chunks/chunk.VVEGTQBJ.js.gz +0 -0
  416. package/dist/chunks/{chunk.NDALVOT5.js.map → chunk.VVEGTQBJ.js.map} +3 -3
  417. package/dist/chunks/chunk.VVEGTQBJ.js.map.gz +0 -0
  418. package/dist/chunks/chunk.W4RTP3FH.js +2 -0
  419. package/dist/chunks/chunk.W4RTP3FH.js.gz +0 -0
  420. package/dist/chunks/chunk.W4RTP3FH.js.map +7 -0
  421. package/dist/chunks/chunk.WEKNKMTA.js +2 -0
  422. package/dist/chunks/chunk.WEKNKMTA.js.gz +0 -0
  423. package/dist/chunks/chunk.WEKNKMTA.js.map +7 -0
  424. package/dist/chunks/chunk.WEKNKMTA.js.map.gz +0 -0
  425. package/dist/chunks/chunk.WOPRH35L.js +2 -0
  426. package/dist/chunks/chunk.WOPRH35L.js.gz +0 -0
  427. package/dist/chunks/chunk.WOPRH35L.js.map +7 -0
  428. package/dist/chunks/chunk.WOPRH35L.js.map.gz +0 -0
  429. package/dist/chunks/chunk.WQK4ZSIE.js +2 -0
  430. package/dist/chunks/chunk.WQK4ZSIE.js.map +7 -0
  431. package/dist/chunks/chunk.WXTPQJT2.js +2 -0
  432. package/dist/chunks/chunk.WXTPQJT2.js.gz +0 -0
  433. package/dist/chunks/chunk.WXTPQJT2.js.map +7 -0
  434. package/dist/chunks/chunk.WXTPQJT2.js.map.gz +0 -0
  435. package/dist/chunks/chunk.X4P4K3VX.js +2 -0
  436. package/dist/chunks/chunk.X4P4K3VX.js.gz +0 -0
  437. package/dist/chunks/chunk.X4P4K3VX.js.map +7 -0
  438. package/dist/chunks/chunk.X4P4K3VX.js.map.gz +0 -0
  439. package/dist/chunks/chunk.XFKGMX6I.js +4 -0
  440. package/dist/chunks/chunk.XFKGMX6I.js.gz +0 -0
  441. package/dist/chunks/chunk.XFKGMX6I.js.map +7 -0
  442. package/dist/chunks/chunk.XFKGMX6I.js.map.gz +0 -0
  443. package/dist/chunks/chunk.XNG5SSWY.js +2 -0
  444. package/dist/chunks/chunk.XNG5SSWY.js.map +7 -0
  445. package/dist/chunks/chunk.XP6CC3HK.js +247 -0
  446. package/dist/chunks/chunk.XP6CC3HK.js.gz +0 -0
  447. package/dist/chunks/chunk.XP6CC3HK.js.map +7 -0
  448. package/dist/chunks/chunk.XP6CC3HK.js.map.gz +0 -0
  449. package/dist/chunks/chunk.XZO4TJX3.js +17 -0
  450. package/dist/chunks/chunk.XZO4TJX3.js.gz +0 -0
  451. package/dist/chunks/chunk.XZO4TJX3.js.map +7 -0
  452. package/dist/chunks/chunk.XZO4TJX3.js.map.gz +0 -0
  453. package/dist/chunks/chunk.YLKFPTCA.js +17 -0
  454. package/dist/chunks/chunk.YLKFPTCA.js.gz +0 -0
  455. package/dist/chunks/chunk.YLKFPTCA.js.map +7 -0
  456. package/dist/chunks/chunk.YLKFPTCA.js.map.gz +0 -0
  457. package/dist/chunks/chunk.YNQZLLJD.js +2 -0
  458. package/dist/chunks/chunk.YNQZLLJD.js.map +7 -0
  459. package/dist/chunks/chunk.YRCCHCAZ.js +2 -0
  460. package/dist/chunks/chunk.YRCCHCAZ.js.gz +0 -0
  461. package/dist/chunks/chunk.YRCCHCAZ.js.map +7 -0
  462. package/dist/chunks/chunk.YRCCHCAZ.js.map.gz +0 -0
  463. package/dist/chunks/chunk.ZNL2SXE7.js +2 -0
  464. package/dist/chunks/chunk.ZNL2SXE7.js.gz +0 -0
  465. package/dist/chunks/chunk.ZNL2SXE7.js.map +7 -0
  466. package/dist/chunks/chunk.ZNL2SXE7.js.map.gz +0 -0
  467. package/dist/chunks/{scopedElementsWrapper.235XAAWV.js → scopedElementsWrapper.SVBP2REL.js} +2 -2
  468. package/dist/chunks/scopedElementsWrapper.SVBP2REL.js.gz +0 -0
  469. package/dist/chunks/scopedElementsWrapper.SVBP2REL.js.map +7 -0
  470. package/dist/chunks/scopedElementsWrapper.SVBP2REL.js.map.gz +0 -0
  471. package/dist/custom-elements.json +1191 -1191
  472. package/dist/custom-elements.json.gz +0 -0
  473. package/dist/docs/components/manifest.json +82 -82
  474. package/dist/docs/config.json +3 -3
  475. package/dist/scw-alert/ScwAlert.js +1 -1
  476. package/dist/scw-alert/ScwAlert.js.gz +0 -0
  477. package/dist/scw-alert/scw-alert.js +1 -1
  478. package/dist/scw-alert/scw-alert.js.gz +0 -0
  479. package/dist/scw-button/ScwButton.js +1 -1
  480. package/dist/scw-button/ScwButton.js.gz +0 -0
  481. package/dist/scw-button/scw-button.js +1 -1
  482. package/dist/scw-button/scw-button.js.gz +0 -0
  483. package/dist/scw-card/ScwCard.js +1 -1
  484. package/dist/scw-card/ScwCard.js.gz +0 -0
  485. package/dist/scw-card/scw-card.js +1 -1
  486. package/dist/scw-card/scw-card.js.gz +0 -0
  487. package/dist/scw-center-component/ScwCenterComponent.js +1 -1
  488. package/dist/scw-center-component/ScwCenterComponent.js.gz +0 -0
  489. package/dist/scw-center-component/scw-center-component.js +1 -1
  490. package/dist/scw-center-component/scw-center-component.js.gz +0 -0
  491. package/dist/scw-component/ScwComponent.js +1 -1
  492. package/dist/scw-component/ScwComponent.js.gz +0 -0
  493. package/dist/scw-component/scw-component.js +1 -1
  494. package/dist/scw-component/scw-component.js.gz +0 -0
  495. package/dist/scw-components.js +1 -1
  496. package/dist/scw-components.js.gz +0 -0
  497. package/dist/scw-element-component/scw-element-component.js +1 -1
  498. package/dist/scw-element-component/scw-element-component.js.gz +0 -0
  499. package/dist/scw-flex-h-component/scw-flex-h-component.js +1 -1
  500. package/dist/scw-flex-h-component/scw-flex-h-component.js.gz +0 -0
  501. package/dist/scw-flex-h-component/scw-flex-h-component.js.map +1 -1
  502. package/dist/scw-flex-h-component/scw-flex-h-component.js.map.gz +0 -0
  503. package/dist/scw-flex-v-component/scw-flex-v-component.js +1 -1
  504. package/dist/scw-flex-v-component/scw-flex-v-component.js.gz +0 -0
  505. package/dist/scw-flex-v-component/scw-flex-v-component.js.map +1 -1
  506. package/dist/scw-flex-v-component/scw-flex-v-component.js.map.gz +0 -0
  507. package/dist/scw-float-component/scw-float-component.js +1 -1
  508. package/dist/scw-float-component/scw-float-component.js.gz +0 -0
  509. package/dist/scw-float-component/scw-float-component.js.map +1 -1
  510. package/dist/scw-float-component/scw-float-component.js.map.gz +0 -0
  511. package/dist/scw-form/scw-form.js +2 -2
  512. package/dist/scw-form/scw-form.js.gz +0 -0
  513. package/dist/scw-form/scw-form.js.map +3 -3
  514. package/dist/scw-form/scw-form.js.map.gz +0 -0
  515. package/dist/scw-form-component/scw-form-component.js +1 -1
  516. package/dist/scw-form-component/scw-form-component.js.gz +0 -0
  517. package/dist/scw-heading/ScwHeading.js +1 -1
  518. package/dist/scw-heading/ScwHeading.js.gz +0 -0
  519. package/dist/scw-heading/scw-heading.js +1 -1
  520. package/dist/scw-heading/scw-heading.js.gz +0 -0
  521. package/dist/scw-icon/ScwIcon.js +1 -1
  522. package/dist/scw-icon/ScwIcon.js.gz +0 -0
  523. package/dist/scw-icon/scw-icon.js +1 -1
  524. package/dist/scw-icon/scw-icon.js.gz +0 -0
  525. package/dist/scw-icon/tests/checkIconADA.js +1 -1
  526. package/dist/scw-icon/tests/checkIconADA.js.gz +0 -0
  527. package/dist/scw-image/ScwImage.js +1 -1
  528. package/dist/scw-image/ScwImage.js.gz +0 -0
  529. package/dist/scw-image/scw-image.js +1 -1
  530. package/dist/scw-image/scw-image.js.gz +0 -0
  531. package/dist/scw-input/scw-input.js +3 -3
  532. package/dist/scw-input/scw-input.js.gz +0 -0
  533. package/dist/scw-input/scw-input.js.map +2 -2
  534. package/dist/scw-input-field/scw-input-field.js +4 -4
  535. package/dist/scw-input-field/scw-input-field.js.gz +0 -0
  536. package/dist/scw-input-field/scw-input-field.js.map +3 -3
  537. package/dist/scw-input-field/scw-input-field.js.map.gz +0 -0
  538. package/dist/scw-input-layout/scw-input-layout.js +9 -9
  539. package/dist/scw-input-layout/scw-input-layout.js.gz +0 -0
  540. package/dist/scw-input-layout/scw-input-layout.js.map +3 -3
  541. package/dist/scw-input-layout/scw-input-layout.js.map.gz +0 -0
  542. package/dist/scw-layout-component/scw-layout-component.js +1 -1
  543. package/dist/scw-layout-component/scw-layout-component.js.gz +0 -0
  544. package/dist/scw-link/ScwLink.js +1 -1
  545. package/dist/scw-link/ScwLink.js.gz +0 -0
  546. package/dist/scw-link/scw-link.js +1 -1
  547. package/dist/scw-link/scw-link.js.gz +0 -0
  548. package/dist/scw-link-base/ScwLinkBase.js +1 -1
  549. package/dist/scw-link-base/ScwLinkBase.js.gz +0 -0
  550. package/dist/scw-link-base/scw-link-base.js +1 -1
  551. package/dist/scw-link-base/scw-link-base.js.gz +0 -0
  552. package/dist/scw-menu/ScwMenu.js +1 -1
  553. package/dist/scw-menu/ScwMenu.js.gz +0 -0
  554. package/dist/scw-menu/scw-menu.js +1 -1
  555. package/dist/scw-menu/scw-menu.js.gz +0 -0
  556. package/dist/scw-menu-item/ScwMenuItem.js +1 -1
  557. package/dist/scw-menu-item/ScwMenuItem.js.gz +0 -0
  558. package/dist/scw-menu-item/scw-menu-item.js +1 -1
  559. package/dist/scw-menu-item/scw-menu-item.js.gz +0 -0
  560. package/dist/scw-page-alert/scw-page-alert.js +4 -4
  561. package/dist/scw-page-alert/scw-page-alert.js.gz +0 -0
  562. package/dist/scw-page-alert/scw-page-alert.js.map +3 -3
  563. package/dist/scw-page-alert/scw-page-alert.js.map.gz +0 -0
  564. package/dist/scw-pane-component/scw-pane-component.js +1 -1
  565. package/dist/scw-pane-component/scw-pane-component.js.gz +0 -0
  566. package/dist/scw-pane-component/scw-pane-component.js.map +1 -1
  567. package/dist/scw-pane-component/scw-pane-component.js.map.gz +0 -0
  568. package/dist/scw-rich-text/ScwRichText.js +1 -1
  569. package/dist/scw-rich-text/ScwRichText.js.gz +0 -0
  570. package/dist/scw-rich-text/scw-rich-text.js +1 -1
  571. package/dist/scw-rich-text/scw-rich-text.js.gz +0 -0
  572. package/dist/scw-rich-text/utils/documentToHtml.js +1 -1
  573. package/dist/scw-rich-text/utils/documentToHtml.js.gz +0 -0
  574. package/dist/scw-select/scw-select.js +7 -7
  575. package/dist/scw-select/scw-select.js.gz +0 -0
  576. package/dist/scw-select/scw-select.js.map +3 -3
  577. package/dist/scw-single-input/scw-single-input.js +2 -2
  578. package/dist/scw-single-input/scw-single-input.js.gz +0 -0
  579. package/dist/scw-single-input/scw-single-input.js.map +2 -2
  580. package/dist/scw-single-input-layout/scw-single-input-layout.js +1 -1
  581. package/dist/scw-single-input-layout/scw-single-input-layout.js.gz +0 -0
  582. package/dist/scw-stack-component/scw-stack-component.js +1 -1
  583. package/dist/scw-stack-component/scw-stack-component.js.gz +0 -0
  584. package/dist/scw-stepper/ScwStepper.js +1 -1
  585. package/dist/scw-stepper/ScwStepper.js.gz +0 -0
  586. package/dist/scw-stepper/scw-stepper.js +1 -1
  587. package/dist/scw-stepper/scw-stepper.js.gz +0 -0
  588. package/dist/scw-test/ScwTest.js +1 -1
  589. package/dist/scw-test/ScwTest.js.gz +0 -0
  590. package/dist/scw-test/scw-test.js +1 -1
  591. package/dist/scw-test/scw-test.js.gz +0 -0
  592. package/dist/scw-textarea/scw-textarea.js +3 -3
  593. package/dist/scw-textarea/scw-textarea.js.gz +0 -0
  594. package/dist/scw-textarea/scw-textarea.js.map +2 -2
  595. package/dist/scw-validate/rules/currency.js +1 -1
  596. package/dist/scw-validate/rules/currency.js.gz +0 -0
  597. package/dist/scw-validate/rules/date.js +1 -1
  598. package/dist/scw-validate/rules/date.js.gz +0 -0
  599. package/dist/scw-validate/rules/email.js +1 -1
  600. package/dist/scw-validate/rules/email.js.gz +0 -0
  601. package/dist/scw-validate/scw-validate.js +3 -3
  602. package/dist/scw-validate/scw-validate.js.gz +0 -0
  603. package/dist/scw-validate/scw-validate.js.map +3 -3
  604. package/dist/scw-validate/scw-validate.js.map.gz +0 -0
  605. package/dist/scw-validation/scw-validation.js +3 -3
  606. package/dist/scw-validation/scw-validation.js.gz +0 -0
  607. package/dist/scw-validation/scw-validation.js.map +3 -3
  608. package/dist/scw-validation/scw-validation.js.map.gz +0 -0
  609. package/dist/scw.css +1 -0
  610. package/dist/scw.css.gz +0 -0
  611. package/dist/scw.js +1 -1
  612. package/dist/scw.js.gz +0 -0
  613. package/dist/themes/themes.css +335 -0
  614. package/dist/themes/themes.css.gz +0 -0
  615. package/dist/tokens/css.html +2 -2
  616. package/dist/tokens/css.html.gz +0 -0
  617. package/dist/tokens/segments/comp-scw-alert/_description-mixins.scss +1 -1
  618. package/dist/tokens/segments/comp-scw-alert/_index-mixins.scss +1 -1
  619. package/dist/tokens/segments/comp-scw-alert/_message-mixins.scss +1 -1
  620. package/dist/tokens/segments/comp-scw-block/_alignment-center-body-mixins.scss +55 -0
  621. package/dist/tokens/segments/comp-scw-block/_alignment-center-body-vars.scss +32 -0
  622. package/dist/tokens/segments/comp-scw-block/_alignment-center-heading-mixins.scss +55 -0
  623. package/dist/tokens/segments/comp-scw-block/_alignment-center-heading-vars.scss +32 -0
  624. package/dist/tokens/segments/comp-scw-block/_alignment-center-mixins.scss +72 -0
  625. package/dist/tokens/segments/comp-scw-block/_alignment-center-scw-link-label-mixins.scss +54 -0
  626. package/dist/tokens/segments/comp-scw-block/_alignment-center-scw-link-label-vars.scss +32 -0
  627. package/dist/tokens/segments/comp-scw-block/_alignment-center-scw-link-left-icon-mixins.scss +58 -0
  628. package/dist/tokens/segments/comp-scw-block/_alignment-center-scw-link-left-icon-vars.scss +30 -0
  629. package/dist/tokens/segments/comp-scw-block/_alignment-center-scw-link-mixins.scss +69 -0
  630. package/dist/tokens/segments/comp-scw-block/_alignment-center-scw-link-right-icon-mixins.scss +58 -0
  631. package/dist/tokens/segments/comp-scw-block/_alignment-center-scw-link-right-icon-vars.scss +29 -0
  632. package/dist/tokens/segments/comp-scw-block/_alignment-center-scw-link-vars.scss +30 -0
  633. package/dist/tokens/segments/comp-scw-block/_alignment-center-vars.scss +25 -0
  634. package/dist/tokens/segments/comp-scw-block/_default-body-mixins.scss +55 -0
  635. package/dist/tokens/segments/comp-scw-block/_default-body-vars.scss +32 -0
  636. package/dist/tokens/segments/comp-scw-block/_default-heading-mixins.scss +55 -0
  637. package/dist/tokens/segments/comp-scw-block/_default-heading-vars.scss +32 -0
  638. package/dist/tokens/segments/comp-scw-block/_default-mixins.scss +72 -0
  639. package/dist/tokens/segments/comp-scw-block/_default-scw-link-label-mixins.scss +54 -0
  640. package/dist/tokens/segments/comp-scw-block/_default-scw-link-label-vars.scss +32 -0
  641. package/dist/tokens/segments/comp-scw-block/_default-scw-link-left-icon-mixins.scss +58 -0
  642. package/dist/tokens/segments/comp-scw-block/_default-scw-link-left-icon-vars.scss +30 -0
  643. package/dist/tokens/segments/comp-scw-block/_default-scw-link-mixins.scss +69 -0
  644. package/dist/tokens/segments/comp-scw-block/_default-scw-link-right-icon-mixins.scss +58 -0
  645. package/dist/tokens/segments/comp-scw-block/_default-scw-link-right-icon-vars.scss +29 -0
  646. package/dist/tokens/segments/comp-scw-block/_default-scw-link-vars.scss +30 -0
  647. package/dist/tokens/segments/comp-scw-block/_default-vars.scss +25 -0
  648. package/dist/tokens/segments/comp-scw-block/_index-mixins.scss +65 -0
  649. package/dist/tokens/segments/comp-scw-block/_index-vars.scss +32 -0
  650. package/dist/tokens/segments/comp-scw-card/_color-checking-action-mixins.scss +1 -1
  651. package/dist/tokens/segments/comp-scw-card/_color-checking-super-heading-mixins.scss +1 -1
  652. package/dist/tokens/segments/comp-scw-card/_color-credit-cards-action-mixins.scss +1 -1
  653. package/dist/tokens/segments/comp-scw-card/_color-credit-cards-super-heading-mixins.scss +1 -1
  654. package/dist/tokens/segments/comp-scw-card/_color-investments-action-mixins.scss +1 -1
  655. package/dist/tokens/segments/comp-scw-card/_color-investments-super-heading-mixins.scss +1 -1
  656. package/dist/tokens/segments/comp-scw-card/_color-mortgage-action-mixins.scss +1 -1
  657. package/dist/tokens/segments/comp-scw-card/_color-mortgage-super-heading-mixins.scss +1 -1
  658. package/dist/tokens/segments/comp-scw-card/_color-savings-action-mixins.scss +1 -1
  659. package/dist/tokens/segments/comp-scw-card/_color-savings-super-heading-mixins.scss +1 -1
  660. package/dist/tokens/segments/comp-scw-card/_color-student-action-mixins.scss +1 -1
  661. package/dist/tokens/segments/comp-scw-card/_color-student-super-heading-mixins.scss +1 -1
  662. package/dist/tokens/segments/comp-scw-card/_default-action-mixins.scss +1 -1
  663. package/dist/tokens/segments/comp-scw-card/_default-super-heading-mixins.scss +1 -1
  664. package/dist/tokens/segments/comp-scw-card/_size-medium-action-mixins.scss +1 -1
  665. package/dist/tokens/segments/comp-scw-card/_size-medium-color-checking-action-mixins.scss +1 -1
  666. package/dist/tokens/segments/comp-scw-card/_size-medium-color-checking-super-heading-mixins.scss +1 -1
  667. package/dist/tokens/segments/comp-scw-card/_size-medium-color-credit-cards-action-mixins.scss +1 -1
  668. package/dist/tokens/segments/comp-scw-card/_size-medium-color-credit-cards-super-heading-mixins.scss +1 -1
  669. package/dist/tokens/segments/comp-scw-card/_size-medium-color-investments-action-mixins.scss +1 -1
  670. package/dist/tokens/segments/comp-scw-card/_size-medium-color-investments-super-heading-mixins.scss +1 -1
  671. package/dist/tokens/segments/comp-scw-card/_size-medium-color-mortgage-action-mixins.scss +1 -1
  672. package/dist/tokens/segments/comp-scw-card/_size-medium-color-mortgage-super-heading-mixins.scss +1 -1
  673. package/dist/tokens/segments/comp-scw-card/_size-medium-color-savings-action-mixins.scss +1 -1
  674. package/dist/tokens/segments/comp-scw-card/_size-medium-color-savings-super-heading-mixins.scss +1 -1
  675. package/dist/tokens/segments/comp-scw-card/_size-medium-color-student-action-mixins.scss +1 -1
  676. package/dist/tokens/segments/comp-scw-card/_size-medium-color-student-super-heading-mixins.scss +1 -1
  677. package/dist/tokens/segments/comp-scw-heading/_default-label-mixins.scss +1 -1
  678. package/dist/tokens/segments/comp-scw-heading/_size-h2-label-mixins.scss +1 -1
  679. package/dist/tokens/segments/comp-scw-heading/_size-h2-state-disabled-label-mixins.scss +1 -1
  680. package/dist/tokens/segments/comp-scw-heading/_size-h2-state-focused-label-mixins.scss +1 -1
  681. package/dist/tokens/segments/comp-scw-heading/_size-h2-state-hover-label-mixins.scss +1 -1
  682. package/dist/tokens/segments/comp-scw-heading/_size-h2-state-hover-underline-mixins.scss +1 -1
  683. package/dist/tokens/segments/comp-scw-heading/_size-h3-label-mixins.scss +1 -1
  684. package/dist/tokens/segments/comp-scw-heading/_size-h3-state-disabled-label-mixins.scss +1 -1
  685. package/dist/tokens/segments/comp-scw-heading/_size-h3-state-focused-label-mixins.scss +1 -1
  686. package/dist/tokens/segments/comp-scw-heading/_size-h3-state-hover-label-mixins.scss +1 -1
  687. package/dist/tokens/segments/comp-scw-heading/_size-h3-state-hover-underline-mixins.scss +1 -1
  688. package/dist/tokens/segments/comp-scw-heading/_size-h4-label-mixins.scss +1 -1
  689. package/dist/tokens/segments/comp-scw-heading/_size-h4-state-disabled-label-mixins.scss +1 -1
  690. package/dist/tokens/segments/comp-scw-heading/_size-h4-state-focused-label-mixins.scss +1 -1
  691. package/dist/tokens/segments/comp-scw-heading/_size-h4-state-hover-label-mixins.scss +1 -1
  692. package/dist/tokens/segments/comp-scw-heading/_size-h4-state-hover-underline-mixins.scss +1 -1
  693. package/dist/tokens/segments/comp-scw-heading/_size-h5-label-mixins.scss +1 -1
  694. package/dist/tokens/segments/comp-scw-heading/_size-h5-state-disabled-label-mixins.scss +1 -1
  695. package/dist/tokens/segments/comp-scw-heading/_size-h5-state-focused-label-mixins.scss +1 -1
  696. package/dist/tokens/segments/comp-scw-heading/_size-h5-state-hover-label-mixins.scss +1 -1
  697. package/dist/tokens/segments/comp-scw-heading/_size-h5-state-hover-underline-mixins.scss +1 -1
  698. package/dist/tokens/segments/comp-scw-heading/_state-disabled-label-mixins.scss +1 -1
  699. package/dist/tokens/segments/comp-scw-heading/_state-focused-label-mixins.scss +1 -1
  700. package/dist/tokens/segments/comp-scw-heading/_state-hover-label-mixins.scss +1 -1
  701. package/dist/tokens/segments/comp-scw-heading/_state-hover-underline-mixins.scss +1 -1
  702. package/dist/tokens/segments/comp-scw-icon/_background-color-checking-mixins.scss +1 -1
  703. package/dist/tokens/segments/comp-scw-icon/_background-color-credit-cards-mixins.scss +1 -1
  704. package/dist/tokens/segments/comp-scw-icon/_background-color-error-mixins.scss +1 -1
  705. package/dist/tokens/segments/comp-scw-icon/_background-color-information-mixins.scss +1 -1
  706. package/dist/tokens/segments/comp-scw-icon/_background-color-investments-mixins.scss +1 -1
  707. package/dist/tokens/segments/comp-scw-icon/_background-color-mortgage-mixins.scss +1 -1
  708. package/dist/tokens/segments/comp-scw-icon/_background-color-primary-mixins.scss +1 -1
  709. package/dist/tokens/segments/comp-scw-icon/_background-color-savings-mixins.scss +1 -1
  710. package/dist/tokens/segments/comp-scw-icon/_background-color-student-mixins.scss +1 -1
  711. package/dist/tokens/segments/comp-scw-icon/_background-color-success-mixins.scss +1 -1
  712. package/dist/tokens/segments/comp-scw-icon/_background-color-warning-mixins.scss +1 -1
  713. package/dist/tokens/segments/comp-scw-icon/_color-checking-icon-vector-mixins.scss +1 -1
  714. package/dist/tokens/segments/comp-scw-icon/_color-credit-cards-icon-vector-mixins.scss +1 -1
  715. package/dist/tokens/segments/comp-scw-icon/_color-investments-icon-vector-mixins.scss +1 -1
  716. package/dist/tokens/segments/comp-scw-icon/_color-mortgage-icon-vector-mixins.scss +1 -1
  717. package/dist/tokens/segments/comp-scw-icon/_color-primary-icon-vector-mixins.scss +1 -1
  718. package/dist/tokens/segments/comp-scw-icon/_color-savings-icon-vector-mixins.scss +1 -1
  719. package/dist/tokens/segments/comp-scw-icon/_color-student-icon-vector-mixins.scss +1 -1
  720. package/dist/tokens/segments/comp-scw-icon/_state-focused-background-color-checking-mixins.scss +1 -1
  721. package/dist/tokens/segments/comp-scw-icon/_state-focused-background-color-credit-cards-mixins.scss +1 -1
  722. package/dist/tokens/segments/comp-scw-icon/_state-focused-background-color-error-mixins.scss +1 -1
  723. package/dist/tokens/segments/comp-scw-icon/_state-focused-background-color-information-mixins.scss +1 -1
  724. package/dist/tokens/segments/comp-scw-icon/_state-focused-background-color-investments-mixins.scss +1 -1
  725. package/dist/tokens/segments/comp-scw-icon/_state-focused-background-color-mortgage-mixins.scss +1 -1
  726. package/dist/tokens/segments/comp-scw-icon/_state-focused-background-color-primary-mixins.scss +1 -1
  727. package/dist/tokens/segments/comp-scw-icon/_state-focused-background-color-savings-mixins.scss +1 -1
  728. package/dist/tokens/segments/comp-scw-icon/_state-focused-background-color-student-mixins.scss +1 -1
  729. package/dist/tokens/segments/comp-scw-icon/_state-focused-background-color-success-mixins.scss +1 -1
  730. package/dist/tokens/segments/comp-scw-icon/_state-focused-background-color-warning-mixins.scss +1 -1
  731. package/dist/tokens/segments/comp-scw-icon/_state-focused-color-checking-icon-vector-mixins.scss +1 -1
  732. package/dist/tokens/segments/comp-scw-icon/_state-focused-color-credit-cards-icon-vector-mixins.scss +1 -1
  733. package/dist/tokens/segments/comp-scw-icon/_state-focused-color-investments-icon-vector-mixins.scss +1 -1
  734. package/dist/tokens/segments/comp-scw-icon/_state-focused-color-mortgage-icon-vector-mixins.scss +1 -1
  735. package/dist/tokens/segments/comp-scw-icon/_state-focused-color-primary-icon-vector-mixins.scss +1 -1
  736. package/dist/tokens/segments/comp-scw-icon/_state-focused-color-savings-icon-vector-mixins.scss +1 -1
  737. package/dist/tokens/segments/comp-scw-icon/_state-focused-color-student-icon-vector-mixins.scss +1 -1
  738. package/dist/tokens/segments/comp-scw-icon/_state-hover-background-color-checking-mixins.scss +1 -1
  739. package/dist/tokens/segments/comp-scw-icon/_state-hover-background-color-credit-cards-mixins.scss +1 -1
  740. package/dist/tokens/segments/comp-scw-icon/_state-hover-background-color-error-mixins.scss +1 -1
  741. package/dist/tokens/segments/comp-scw-icon/_state-hover-background-color-information-mixins.scss +1 -1
  742. package/dist/tokens/segments/comp-scw-icon/_state-hover-background-color-investments-mixins.scss +1 -1
  743. package/dist/tokens/segments/comp-scw-icon/_state-hover-background-color-mortgage-mixins.scss +1 -1
  744. package/dist/tokens/segments/comp-scw-icon/_state-hover-background-color-primary-mixins.scss +1 -1
  745. package/dist/tokens/segments/comp-scw-icon/_state-hover-background-color-savings-mixins.scss +1 -1
  746. package/dist/tokens/segments/comp-scw-icon/_state-hover-background-color-student-mixins.scss +1 -1
  747. package/dist/tokens/segments/comp-scw-icon/_state-hover-background-color-success-mixins.scss +1 -1
  748. package/dist/tokens/segments/comp-scw-icon/_state-hover-background-color-warning-mixins.scss +1 -1
  749. package/dist/tokens/segments/comp-scw-icon/_state-hover-color-checking-icon-vector-mixins.scss +1 -1
  750. package/dist/tokens/segments/comp-scw-icon/_state-hover-color-credit-cards-icon-vector-mixins.scss +1 -1
  751. package/dist/tokens/segments/comp-scw-icon/_state-hover-color-investments-icon-vector-mixins.scss +1 -1
  752. package/dist/tokens/segments/comp-scw-icon/_state-hover-color-mortgage-icon-vector-mixins.scss +1 -1
  753. package/dist/tokens/segments/comp-scw-icon/_state-hover-color-primary-icon-vector-mixins.scss +1 -1
  754. package/dist/tokens/segments/comp-scw-icon/_state-hover-color-savings-icon-vector-mixins.scss +1 -1
  755. package/dist/tokens/segments/comp-scw-icon/_state-hover-color-student-icon-vector-mixins.scss +1 -1
  756. package/dist/tokens/segments/comp-scw-input-feedback-base/_default-scw-input-feedback-mixins.scss +1 -1
  757. package/dist/tokens/segments/comp-scw-input-field-bg/_invalid-mixins.scss +1 -1
  758. package/dist/tokens/segments/comp-scw-input-right-action/_default-mixins.scss +1 -1
  759. package/dist/tokens/segments/comp-scw-input-right-action/_text-mixins.scss +1 -1
  760. package/dist/tokens/segments/comp-scw-link/_default-mixins.scss +1 -1
  761. package/dist/tokens/segments/comp-scw-link/_design-outlined-label-mixins.scss +1 -1
  762. package/dist/tokens/segments/comp-scw-link/_design-outlined-mixins.scss +1 -1
  763. package/dist/tokens/segments/comp-scw-link/_design-text-label-mixins.scss +1 -1
  764. package/dist/tokens/segments/comp-scw-link/_design-text-underline-mixins.scss +1 -1
  765. package/dist/tokens/segments/comp-scw-link/_icon-left-design-outlined-label-mixins.scss +1 -1
  766. package/dist/tokens/segments/comp-scw-link/_icon-left-design-outlined-mixins.scss +1 -1
  767. package/dist/tokens/segments/comp-scw-link/_icon-left-mixins.scss +1 -1
  768. package/dist/tokens/segments/comp-scw-link/_icon-right-design-outlined-label-mixins.scss +1 -1
  769. package/dist/tokens/segments/comp-scw-link/_icon-right-design-outlined-mixins.scss +1 -1
  770. package/dist/tokens/segments/comp-scw-link/_icon-right-mixins.scss +1 -1
  771. package/dist/tokens/segments/comp-scw-link/_state-focused-design-outlined-label-mixins.scss +1 -1
  772. package/dist/tokens/segments/comp-scw-link/_state-focused-design-outlined-mixins.scss +1 -1
  773. package/dist/tokens/segments/comp-scw-link/_state-focused-design-text-label-mixins.scss +1 -1
  774. package/dist/tokens/segments/comp-scw-link/_state-focused-design-text-underline-mixins.scss +1 -1
  775. package/dist/tokens/segments/comp-scw-link/_state-focused-icon-left-design-outlined-label-mixins.scss +1 -1
  776. package/dist/tokens/segments/comp-scw-link/_state-focused-icon-left-design-outlined-mixins.scss +1 -1
  777. package/dist/tokens/segments/comp-scw-link/_state-focused-icon-left-mixins.scss +1 -1
  778. package/dist/tokens/segments/comp-scw-link/_state-focused-icon-right-design-outlined-label-mixins.scss +1 -1
  779. package/dist/tokens/segments/comp-scw-link/_state-focused-icon-right-design-outlined-mixins.scss +1 -1
  780. package/dist/tokens/segments/comp-scw-link/_state-focused-icon-right-mixins.scss +1 -1
  781. package/dist/tokens/segments/comp-scw-link/_state-focused-mixins.scss +1 -1
  782. package/dist/tokens/segments/comp-scw-link/_state-hover-design-outlined-label-mixins.scss +1 -1
  783. package/dist/tokens/segments/comp-scw-link/_state-hover-design-outlined-mixins.scss +1 -1
  784. package/dist/tokens/segments/comp-scw-link/_state-hover-design-text-label-mixins.scss +1 -1
  785. package/dist/tokens/segments/comp-scw-link/_state-hover-design-text-underline-mixins.scss +1 -1
  786. package/dist/tokens/segments/comp-scw-link/_state-hover-icon-left-design-outlined-label-mixins.scss +1 -1
  787. package/dist/tokens/segments/comp-scw-link/_state-hover-icon-left-design-outlined-mixins.scss +1 -1
  788. package/dist/tokens/segments/comp-scw-link/_state-hover-icon-left-mixins.scss +1 -1
  789. package/dist/tokens/segments/comp-scw-link/_state-hover-icon-right-design-outlined-label-mixins.scss +1 -1
  790. package/dist/tokens/segments/comp-scw-link/_state-hover-icon-right-design-outlined-mixins.scss +1 -1
  791. package/dist/tokens/segments/comp-scw-link/_state-hover-icon-right-mixins.scss +1 -1
  792. package/dist/tokens/segments/comp-scw-link/_state-hover-mixins.scss +1 -1
  793. package/dist/tokens/segments/comp-scw-menu-item/_design-utility-state-hover-icon-vector-mixins.scss +1 -1
  794. package/dist/tokens/segments/comp-scw-menu-item/_design-utility-state-hover-label-mixins.scss +1 -1
  795. package/dist/tokens/segments/comp-scw-menu-item/_design-utility-state-selected-icon-vector-mixins.scss +1 -1
  796. package/dist/tokens/segments/comp-scw-menu-item/_design-utility-state-selected-label-mixins.scss +1 -1
  797. package/dist/tokens/segments/comp-scw-menu-item/_state-hover-label-mixins.scss +1 -1
  798. package/dist/tokens/segments/comp-scw-menu-item/_state-selected-selected-mixins.scss +1 -1
  799. package/dist/tokens/segments/comp-scw-page-alert/_default-icon-mixins.scss +1 -1
  800. package/dist/tokens/segments/comp-scw-page-alert/_state-disabled-icon-mixins.scss +1 -1
  801. package/dist/tokens/segments/comp-scw-page-alert/_state-focused-icon-mixins.scss +1 -1
  802. package/dist/tokens/segments/comp-scw-page-alert/_state-hover-icon-mixins.scss +1 -1
  803. package/dist/tokens/segments/comp-scw-page-alert/_state-hover-mixins.scss +1 -1
  804. package/dist/tokens/segments/comp-scw-page-alert/_type-warning-icon-mixins.scss +1 -1
  805. package/dist/tokens/segments/comp-scw-page-alert/_type-warning-state-disabled-icon-mixins.scss +1 -1
  806. package/dist/tokens/segments/comp-scw-page-alert/_type-warning-state-focused-icon-mixins.scss +1 -1
  807. package/dist/tokens/segments/comp-scw-page-alert/_type-warning-state-hover-icon-mixins.scss +1 -1
  808. package/dist/tokens/segments/comp-scw-page-alert/_type-warning-state-hover-mixins.scss +1 -1
  809. package/dist/tokens/segments/comp-scw-rich-text/_default-text-mixins.scss +2 -2
  810. package/dist/tokens/segments/comp-scw-rich-text/_default-text-vars.scss +1 -1
  811. package/dist/tokens/segments/comp-scw-rich-text/_size-h2-text-mixins.scss +2 -2
  812. package/dist/tokens/segments/comp-scw-rich-text/_size-h2-text-vars.scss +1 -1
  813. package/dist/tokens/segments/comp-scw-rich-text/_size-h3-text-mixins.scss +2 -2
  814. package/dist/tokens/segments/comp-scw-rich-text/_size-h3-text-vars.scss +1 -1
  815. package/dist/tokens/segments/comp-scw-rich-text/_size-link-text-mixins.scss +1 -1
  816. package/dist/tokens/segments/comp-scw-single-input-field/_index-mixins.scss +1 -1
  817. package/dist/tokens/segments/comp-scw-single-input-field/_right-action-edit-mixins.scss +1 -1
  818. package/dist/tokens/segments/comp-scw-single-input-field-bg/_default-mixins.scss +1 -1
  819. package/dist/tokens/segments/comp-scw-single-input-field-bg/_focused-mixins.scss +1 -1
  820. package/dist/tokens/segments/comp-scw-single-input-field-bg/_invalid-mixins.scss +1 -1
  821. package/dist/tokens/segments/comp-scw-single-input-field-v2/_default-bg-mixins.scss +1 -1
  822. package/dist/tokens/segments/comp-scw-single-input-field-v2/_left-icon-bg-mixins.scss +1 -1
  823. package/dist/tokens/segments/comp-scw-single-input-field-v2/_left-icon-right-action-bg-mixins.scss +1 -1
  824. package/dist/tokens/segments/comp-scw-single-input-field-v2/_left-icon-right-action-content-right-action-mixins.scss +1 -1
  825. package/dist/tokens/segments/comp-scw-single-input-field-v2/_left-icon-right-action-right-icon-bg-mixins.scss +1 -1
  826. package/dist/tokens/segments/comp-scw-single-input-field-v2/_left-icon-right-action-right-icon-content-right-action-mixins.scss +1 -1
  827. package/dist/tokens/segments/comp-scw-single-input-field-v2/_left-icon-right-action-right-icon-right-icon-2-bg-mixins.scss +1 -1
  828. package/dist/tokens/segments/comp-scw-single-input-field-v2/_left-icon-right-action-right-icon-right-icon-2-content-right-action-mixins.scss +1 -1
  829. package/dist/tokens/segments/comp-scw-single-input-field-v2/_left-icon-right-icon-bg-mixins.scss +1 -1
  830. package/dist/tokens/segments/comp-scw-single-input-field-v2/_left-icon-right-icon-right-icon-2-bg-mixins.scss +1 -1
  831. package/dist/tokens/segments/comp-scw-single-input-field-v2/_right-action-bg-mixins.scss +1 -1
  832. package/dist/tokens/segments/comp-scw-single-input-field-v2/_right-action-content-right-action-mixins.scss +1 -1
  833. package/dist/tokens/segments/comp-scw-single-input-field-v2/_right-action-right-icon-bg-mixins.scss +1 -1
  834. package/dist/tokens/segments/comp-scw-single-input-field-v2/_right-action-right-icon-content-right-action-mixins.scss +1 -1
  835. package/dist/tokens/segments/comp-scw-single-input-field-v2/_right-action-right-icon-right-icon-2-bg-mixins.scss +1 -1
  836. package/dist/tokens/segments/comp-scw-single-input-field-v2/_right-action-right-icon-right-icon-2-content-right-action-mixins.scss +1 -1
  837. package/dist/tokens/segments/comp-scw-single-input-field-v2/_right-icon-bg-mixins.scss +1 -1
  838. package/dist/tokens/segments/comp-scw-single-input-field-v2/_right-icon-right-icon-2-bg-mixins.scss +1 -1
  839. package/dist/tokens/source/componentScssMixins/components-scw-alert-.json +2 -2
  840. package/dist/tokens/source/componentScssMixins/components-scw-alert-.json.gz +0 -0
  841. package/dist/tokens/source/componentScssMixins/components-scw-alert-description-.json +2 -2
  842. package/dist/tokens/source/componentScssMixins/components-scw-alert-description-.json.gz +0 -0
  843. package/dist/tokens/source/componentScssMixins/components-scw-alert-message-.json +2 -2
  844. package/dist/tokens/source/componentScssMixins/components-scw-alert-message-.json.gz +0 -0
  845. package/dist/tokens/source/componentScssMixins/components-scw-block-.json +52 -0
  846. package/dist/tokens/source/componentScssMixins/components-scw-block-.json.gz +0 -0
  847. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-.json +52 -0
  848. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-.json.gz +0 -0
  849. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-body-.json +47 -0
  850. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-body-.json.gz +0 -0
  851. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-heading-.json +47 -0
  852. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-heading-.json.gz +0 -0
  853. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-scw-link-.json +52 -0
  854. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-scw-link-.json.gz +0 -0
  855. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-scw-link-label-.json +47 -0
  856. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-scw-link-label-.json.gz +0 -0
  857. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-scw-link-left-icon-.json +52 -0
  858. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-scw-link-left-icon-.json.gz +0 -0
  859. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-scw-link-right-icon-.json +52 -0
  860. package/dist/tokens/source/componentScssMixins/components-scw-block-alignment-center-scw-link-right-icon-.json.gz +0 -0
  861. package/dist/tokens/source/componentScssMixins/components-scw-block-default-.json +52 -0
  862. package/dist/tokens/source/componentScssMixins/components-scw-block-default-.json.gz +0 -0
  863. package/dist/tokens/source/componentScssMixins/components-scw-block-default-body-.json +47 -0
  864. package/dist/tokens/source/componentScssMixins/components-scw-block-default-body-.json.gz +0 -0
  865. package/dist/tokens/source/componentScssMixins/components-scw-block-default-heading-.json +47 -0
  866. package/dist/tokens/source/componentScssMixins/components-scw-block-default-heading-.json.gz +0 -0
  867. package/dist/tokens/source/componentScssMixins/components-scw-block-default-scw-link-.json +52 -0
  868. package/dist/tokens/source/componentScssMixins/components-scw-block-default-scw-link-.json.gz +0 -0
  869. package/dist/tokens/source/componentScssMixins/components-scw-block-default-scw-link-label-.json +47 -0
  870. package/dist/tokens/source/componentScssMixins/components-scw-block-default-scw-link-label-.json.gz +0 -0
  871. package/dist/tokens/source/componentScssMixins/components-scw-block-default-scw-link-left-icon-.json +52 -0
  872. package/dist/tokens/source/componentScssMixins/components-scw-block-default-scw-link-left-icon-.json.gz +0 -0
  873. package/dist/tokens/source/componentScssMixins/components-scw-block-default-scw-link-right-icon-.json +52 -0
  874. package/dist/tokens/source/componentScssMixins/components-scw-block-default-scw-link-right-icon-.json.gz +0 -0
  875. package/dist/tokens/source/componentScssMixins/components-scw-card-color-checking-action-.json +2 -2
  876. package/dist/tokens/source/componentScssMixins/components-scw-card-color-checking-action-.json.gz +0 -0
  877. package/dist/tokens/source/componentScssMixins/components-scw-card-color-checking-super-heading-.json +2 -2
  878. package/dist/tokens/source/componentScssMixins/components-scw-card-color-checking-super-heading-.json.gz +0 -0
  879. package/dist/tokens/source/componentScssMixins/components-scw-card-color-credit-cards-action-.json +2 -2
  880. package/dist/tokens/source/componentScssMixins/components-scw-card-color-credit-cards-action-.json.gz +0 -0
  881. package/dist/tokens/source/componentScssMixins/components-scw-card-color-credit-cards-super-heading-.json +2 -2
  882. package/dist/tokens/source/componentScssMixins/components-scw-card-color-credit-cards-super-heading-.json.gz +0 -0
  883. package/dist/tokens/source/componentScssMixins/components-scw-card-color-investments-action-.json +2 -2
  884. package/dist/tokens/source/componentScssMixins/components-scw-card-color-investments-action-.json.gz +0 -0
  885. package/dist/tokens/source/componentScssMixins/components-scw-card-color-investments-super-heading-.json +2 -2
  886. package/dist/tokens/source/componentScssMixins/components-scw-card-color-investments-super-heading-.json.gz +0 -0
  887. package/dist/tokens/source/componentScssMixins/components-scw-card-color-mortgage-action-.json +2 -2
  888. package/dist/tokens/source/componentScssMixins/components-scw-card-color-mortgage-action-.json.gz +0 -0
  889. package/dist/tokens/source/componentScssMixins/components-scw-card-color-mortgage-super-heading-.json +2 -2
  890. package/dist/tokens/source/componentScssMixins/components-scw-card-color-mortgage-super-heading-.json.gz +0 -0
  891. package/dist/tokens/source/componentScssMixins/components-scw-card-color-savings-action-.json +2 -2
  892. package/dist/tokens/source/componentScssMixins/components-scw-card-color-savings-action-.json.gz +0 -0
  893. package/dist/tokens/source/componentScssMixins/components-scw-card-color-savings-super-heading-.json +2 -2
  894. package/dist/tokens/source/componentScssMixins/components-scw-card-color-savings-super-heading-.json.gz +0 -0
  895. package/dist/tokens/source/componentScssMixins/components-scw-card-color-student-action-.json +2 -2
  896. package/dist/tokens/source/componentScssMixins/components-scw-card-color-student-action-.json.gz +0 -0
  897. package/dist/tokens/source/componentScssMixins/components-scw-card-color-student-super-heading-.json +2 -2
  898. package/dist/tokens/source/componentScssMixins/components-scw-card-color-student-super-heading-.json.gz +0 -0
  899. package/dist/tokens/source/componentScssMixins/components-scw-card-default-action-.json +2 -2
  900. package/dist/tokens/source/componentScssMixins/components-scw-card-default-action-.json.gz +0 -0
  901. package/dist/tokens/source/componentScssMixins/components-scw-card-default-super-heading-.json +2 -2
  902. package/dist/tokens/source/componentScssMixins/components-scw-card-default-super-heading-.json.gz +0 -0
  903. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-action-.json +2 -2
  904. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-action-.json.gz +0 -0
  905. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-checking-action-.json +2 -2
  906. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-checking-action-.json.gz +0 -0
  907. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-checking-super-heading-.json +2 -2
  908. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-checking-super-heading-.json.gz +0 -0
  909. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-credit-cards-action-.json +2 -2
  910. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-credit-cards-action-.json.gz +0 -0
  911. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-credit-cards-super-heading-.json +2 -2
  912. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-credit-cards-super-heading-.json.gz +0 -0
  913. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-investments-action-.json +2 -2
  914. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-investments-action-.json.gz +0 -0
  915. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-investments-super-heading-.json +2 -2
  916. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-investments-super-heading-.json.gz +0 -0
  917. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-mortgage-action-.json +2 -2
  918. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-mortgage-action-.json.gz +0 -0
  919. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-mortgage-super-heading-.json +2 -2
  920. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-mortgage-super-heading-.json.gz +0 -0
  921. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-savings-action-.json +2 -2
  922. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-savings-action-.json.gz +0 -0
  923. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-savings-super-heading-.json +2 -2
  924. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-savings-super-heading-.json.gz +0 -0
  925. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-student-action-.json +2 -2
  926. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-student-action-.json.gz +0 -0
  927. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-student-super-heading-.json +2 -2
  928. package/dist/tokens/source/componentScssMixins/components-scw-card-size-medium-color-student-super-heading-.json.gz +0 -0
  929. package/dist/tokens/source/componentScssMixins/components-scw-heading-default-label-.json +2 -2
  930. package/dist/tokens/source/componentScssMixins/components-scw-heading-default-label-.json.gz +0 -0
  931. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h2-label-.json +2 -2
  932. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h2-label-.json.gz +0 -0
  933. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h2-state-disabled-label-.json +2 -2
  934. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h2-state-disabled-label-.json.gz +0 -0
  935. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h2-state-focused-label-.json +2 -2
  936. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h2-state-focused-label-.json.gz +0 -0
  937. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h2-state-hover-label-.json +2 -2
  938. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h2-state-hover-label-.json.gz +0 -0
  939. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h2-state-hover-underline-.json +2 -2
  940. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h2-state-hover-underline-.json.gz +0 -0
  941. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h3-label-.json +2 -2
  942. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h3-label-.json.gz +0 -0
  943. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h3-state-disabled-label-.json +2 -2
  944. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h3-state-disabled-label-.json.gz +0 -0
  945. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h3-state-focused-label-.json +2 -2
  946. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h3-state-focused-label-.json.gz +0 -0
  947. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h3-state-hover-label-.json +2 -2
  948. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h3-state-hover-label-.json.gz +0 -0
  949. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h3-state-hover-underline-.json +2 -2
  950. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h3-state-hover-underline-.json.gz +0 -0
  951. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h4-label-.json +2 -2
  952. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h4-label-.json.gz +0 -0
  953. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h4-state-disabled-label-.json +2 -2
  954. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h4-state-disabled-label-.json.gz +0 -0
  955. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h4-state-focused-label-.json +2 -2
  956. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h4-state-focused-label-.json.gz +0 -0
  957. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h4-state-hover-label-.json +2 -2
  958. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h4-state-hover-label-.json.gz +0 -0
  959. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h4-state-hover-underline-.json +2 -2
  960. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h4-state-hover-underline-.json.gz +0 -0
  961. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h5-label-.json +2 -2
  962. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h5-label-.json.gz +0 -0
  963. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h5-state-disabled-label-.json +2 -2
  964. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h5-state-disabled-label-.json.gz +0 -0
  965. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h5-state-focused-label-.json +2 -2
  966. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h5-state-focused-label-.json.gz +0 -0
  967. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h5-state-hover-label-.json +2 -2
  968. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h5-state-hover-label-.json.gz +0 -0
  969. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h5-state-hover-underline-.json +2 -2
  970. package/dist/tokens/source/componentScssMixins/components-scw-heading-size-h5-state-hover-underline-.json.gz +0 -0
  971. package/dist/tokens/source/componentScssMixins/components-scw-heading-state-disabled-label-.json +2 -2
  972. package/dist/tokens/source/componentScssMixins/components-scw-heading-state-disabled-label-.json.gz +0 -0
  973. package/dist/tokens/source/componentScssMixins/components-scw-heading-state-focused-label-.json +2 -2
  974. package/dist/tokens/source/componentScssMixins/components-scw-heading-state-focused-label-.json.gz +0 -0
  975. package/dist/tokens/source/componentScssMixins/components-scw-heading-state-hover-label-.json +2 -2
  976. package/dist/tokens/source/componentScssMixins/components-scw-heading-state-hover-label-.json.gz +0 -0
  977. package/dist/tokens/source/componentScssMixins/components-scw-heading-state-hover-underline-.json +2 -2
  978. package/dist/tokens/source/componentScssMixins/components-scw-heading-state-hover-underline-.json.gz +0 -0
  979. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-checking-.json +2 -2
  980. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-checking-.json.gz +0 -0
  981. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-credit-cards-.json +2 -2
  982. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-credit-cards-.json.gz +0 -0
  983. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-error-.json +2 -2
  984. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-error-.json.gz +0 -0
  985. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-information-.json +2 -2
  986. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-information-.json.gz +0 -0
  987. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-investments-.json +2 -2
  988. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-investments-.json.gz +0 -0
  989. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-mortgage-.json +2 -2
  990. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-mortgage-.json.gz +0 -0
  991. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-primary-.json +2 -2
  992. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-primary-.json.gz +0 -0
  993. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-savings-.json +2 -2
  994. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-savings-.json.gz +0 -0
  995. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-student-.json +2 -2
  996. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-student-.json.gz +0 -0
  997. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-success-.json +2 -2
  998. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-success-.json.gz +0 -0
  999. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-warning-.json +2 -2
  1000. package/dist/tokens/source/componentScssMixins/components-scw-icon-background-color-warning-.json.gz +0 -0
  1001. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-checking-icon-vector-.json +2 -2
  1002. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-checking-icon-vector-.json.gz +0 -0
  1003. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-credit-cards-icon-vector-.json +2 -2
  1004. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-credit-cards-icon-vector-.json.gz +0 -0
  1005. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-investments-icon-vector-.json +2 -2
  1006. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-investments-icon-vector-.json.gz +0 -0
  1007. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-mortgage-icon-vector-.json +2 -2
  1008. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-mortgage-icon-vector-.json.gz +0 -0
  1009. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-primary-icon-vector-.json +2 -2
  1010. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-primary-icon-vector-.json.gz +0 -0
  1011. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-savings-icon-vector-.json +2 -2
  1012. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-savings-icon-vector-.json.gz +0 -0
  1013. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-student-icon-vector-.json +2 -2
  1014. package/dist/tokens/source/componentScssMixins/components-scw-icon-color-student-icon-vector-.json.gz +0 -0
  1015. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-checking-.json +2 -2
  1016. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-checking-.json.gz +0 -0
  1017. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-credit-cards-.json +2 -2
  1018. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-credit-cards-.json.gz +0 -0
  1019. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-error-.json +2 -2
  1020. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-error-.json.gz +0 -0
  1021. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-information-.json +2 -2
  1022. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-information-.json.gz +0 -0
  1023. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-investments-.json +2 -2
  1024. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-investments-.json.gz +0 -0
  1025. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-mortgage-.json +2 -2
  1026. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-mortgage-.json.gz +0 -0
  1027. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-primary-.json +2 -2
  1028. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-primary-.json.gz +0 -0
  1029. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-savings-.json +2 -2
  1030. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-savings-.json.gz +0 -0
  1031. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-student-.json +2 -2
  1032. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-student-.json.gz +0 -0
  1033. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-success-.json +2 -2
  1034. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-success-.json.gz +0 -0
  1035. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-warning-.json +2 -2
  1036. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-background-color-warning-.json.gz +0 -0
  1037. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-checking-icon-vector-.json +2 -2
  1038. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-checking-icon-vector-.json.gz +0 -0
  1039. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-credit-cards-icon-vector-.json +2 -2
  1040. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-credit-cards-icon-vector-.json.gz +0 -0
  1041. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-investments-icon-vector-.json +2 -2
  1042. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-investments-icon-vector-.json.gz +0 -0
  1043. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-mortgage-icon-vector-.json +2 -2
  1044. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-mortgage-icon-vector-.json.gz +0 -0
  1045. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-primary-icon-vector-.json +2 -2
  1046. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-primary-icon-vector-.json.gz +0 -0
  1047. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-savings-icon-vector-.json +2 -2
  1048. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-savings-icon-vector-.json.gz +0 -0
  1049. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-student-icon-vector-.json +2 -2
  1050. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-focused-color-student-icon-vector-.json.gz +0 -0
  1051. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-checking-.json +2 -2
  1052. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-checking-.json.gz +0 -0
  1053. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-credit-cards-.json +2 -2
  1054. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-credit-cards-.json.gz +0 -0
  1055. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-error-.json +2 -2
  1056. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-error-.json.gz +0 -0
  1057. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-information-.json +2 -2
  1058. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-information-.json.gz +0 -0
  1059. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-investments-.json +2 -2
  1060. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-investments-.json.gz +0 -0
  1061. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-mortgage-.json +2 -2
  1062. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-mortgage-.json.gz +0 -0
  1063. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-primary-.json +2 -2
  1064. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-primary-.json.gz +0 -0
  1065. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-savings-.json +2 -2
  1066. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-savings-.json.gz +0 -0
  1067. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-student-.json +2 -2
  1068. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-student-.json.gz +0 -0
  1069. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-success-.json +2 -2
  1070. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-success-.json.gz +0 -0
  1071. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-warning-.json +2 -2
  1072. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-background-color-warning-.json.gz +0 -0
  1073. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-checking-icon-vector-.json +2 -2
  1074. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-checking-icon-vector-.json.gz +0 -0
  1075. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-credit-cards-icon-vector-.json +2 -2
  1076. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-credit-cards-icon-vector-.json.gz +0 -0
  1077. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-investments-icon-vector-.json +2 -2
  1078. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-investments-icon-vector-.json.gz +0 -0
  1079. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-mortgage-icon-vector-.json +2 -2
  1080. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-mortgage-icon-vector-.json.gz +0 -0
  1081. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-primary-icon-vector-.json +2 -2
  1082. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-primary-icon-vector-.json.gz +0 -0
  1083. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-savings-icon-vector-.json +2 -2
  1084. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-savings-icon-vector-.json.gz +0 -0
  1085. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-student-icon-vector-.json +2 -2
  1086. package/dist/tokens/source/componentScssMixins/components-scw-icon-state-hover-color-student-icon-vector-.json.gz +0 -0
  1087. package/dist/tokens/source/componentScssMixins/components-scw-input-feedback-base-default-scw-input-feedback-.json +2 -2
  1088. package/dist/tokens/source/componentScssMixins/components-scw-input-feedback-base-default-scw-input-feedback-.json.gz +0 -0
  1089. package/dist/tokens/source/componentScssMixins/components-scw-input-field-bg-invalid-.json +2 -2
  1090. package/dist/tokens/source/componentScssMixins/components-scw-input-field-bg-invalid-.json.gz +0 -0
  1091. package/dist/tokens/source/componentScssMixins/components-scw-input-right-action-default-.json +2 -2
  1092. package/dist/tokens/source/componentScssMixins/components-scw-input-right-action-default-.json.gz +0 -0
  1093. package/dist/tokens/source/componentScssMixins/components-scw-input-right-action-text-.json +2 -2
  1094. package/dist/tokens/source/componentScssMixins/components-scw-input-right-action-text-.json.gz +0 -0
  1095. package/dist/tokens/source/componentScssMixins/components-scw-link-default-.json +2 -2
  1096. package/dist/tokens/source/componentScssMixins/components-scw-link-default-.json.gz +0 -0
  1097. package/dist/tokens/source/componentScssMixins/components-scw-link-design-outlined-.json +2 -2
  1098. package/dist/tokens/source/componentScssMixins/components-scw-link-design-outlined-.json.gz +0 -0
  1099. package/dist/tokens/source/componentScssMixins/components-scw-link-design-outlined-label-.json +2 -2
  1100. package/dist/tokens/source/componentScssMixins/components-scw-link-design-outlined-label-.json.gz +0 -0
  1101. package/dist/tokens/source/componentScssMixins/components-scw-link-design-text-label-.json +2 -2
  1102. package/dist/tokens/source/componentScssMixins/components-scw-link-design-text-label-.json.gz +0 -0
  1103. package/dist/tokens/source/componentScssMixins/components-scw-link-design-text-underline-.json +2 -2
  1104. package/dist/tokens/source/componentScssMixins/components-scw-link-design-text-underline-.json.gz +0 -0
  1105. package/dist/tokens/source/componentScssMixins/components-scw-link-icon-left-.json +2 -2
  1106. package/dist/tokens/source/componentScssMixins/components-scw-link-icon-left-.json.gz +0 -0
  1107. package/dist/tokens/source/componentScssMixins/components-scw-link-icon-left-design-outlined-.json +2 -2
  1108. package/dist/tokens/source/componentScssMixins/components-scw-link-icon-left-design-outlined-.json.gz +0 -0
  1109. package/dist/tokens/source/componentScssMixins/components-scw-link-icon-left-design-outlined-label-.json +2 -2
  1110. package/dist/tokens/source/componentScssMixins/components-scw-link-icon-left-design-outlined-label-.json.gz +0 -0
  1111. package/dist/tokens/source/componentScssMixins/components-scw-link-icon-right-.json +2 -2
  1112. package/dist/tokens/source/componentScssMixins/components-scw-link-icon-right-.json.gz +0 -0
  1113. package/dist/tokens/source/componentScssMixins/components-scw-link-icon-right-design-outlined-.json +2 -2
  1114. package/dist/tokens/source/componentScssMixins/components-scw-link-icon-right-design-outlined-.json.gz +0 -0
  1115. package/dist/tokens/source/componentScssMixins/components-scw-link-icon-right-design-outlined-label-.json +2 -2
  1116. package/dist/tokens/source/componentScssMixins/components-scw-link-icon-right-design-outlined-label-.json.gz +0 -0
  1117. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-.json +2 -2
  1118. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-.json.gz +0 -0
  1119. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-design-outlined-.json +2 -2
  1120. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-design-outlined-.json.gz +0 -0
  1121. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-design-outlined-label-.json +2 -2
  1122. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-design-outlined-label-.json.gz +0 -0
  1123. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-design-text-label-.json +2 -2
  1124. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-design-text-label-.json.gz +0 -0
  1125. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-design-text-underline-.json +2 -2
  1126. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-design-text-underline-.json.gz +0 -0
  1127. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-icon-left-.json +2 -2
  1128. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-icon-left-.json.gz +0 -0
  1129. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-icon-left-design-outlined-.json +2 -2
  1130. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-icon-left-design-outlined-.json.gz +0 -0
  1131. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-icon-left-design-outlined-label-.json +2 -2
  1132. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-icon-left-design-outlined-label-.json.gz +0 -0
  1133. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-icon-right-.json +2 -2
  1134. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-icon-right-.json.gz +0 -0
  1135. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-icon-right-design-outlined-.json +2 -2
  1136. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-icon-right-design-outlined-.json.gz +0 -0
  1137. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-icon-right-design-outlined-label-.json +2 -2
  1138. package/dist/tokens/source/componentScssMixins/components-scw-link-state-focused-icon-right-design-outlined-label-.json.gz +0 -0
  1139. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-.json +2 -2
  1140. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-.json.gz +0 -0
  1141. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-design-outlined-.json +2 -2
  1142. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-design-outlined-.json.gz +0 -0
  1143. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-design-outlined-label-.json +2 -2
  1144. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-design-outlined-label-.json.gz +0 -0
  1145. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-design-text-label-.json +2 -2
  1146. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-design-text-label-.json.gz +0 -0
  1147. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-design-text-underline-.json +2 -2
  1148. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-design-text-underline-.json.gz +0 -0
  1149. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-icon-left-.json +2 -2
  1150. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-icon-left-.json.gz +0 -0
  1151. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-icon-left-design-outlined-.json +2 -2
  1152. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-icon-left-design-outlined-.json.gz +0 -0
  1153. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-icon-left-design-outlined-label-.json +2 -2
  1154. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-icon-left-design-outlined-label-.json.gz +0 -0
  1155. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-icon-right-.json +2 -2
  1156. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-icon-right-.json.gz +0 -0
  1157. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-icon-right-design-outlined-.json +2 -2
  1158. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-icon-right-design-outlined-.json.gz +0 -0
  1159. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-icon-right-design-outlined-label-.json +2 -2
  1160. package/dist/tokens/source/componentScssMixins/components-scw-link-state-hover-icon-right-design-outlined-label-.json.gz +0 -0
  1161. package/dist/tokens/source/componentScssMixins/components-scw-menu-item-design-utility-state-hover-icon-vector-.json +2 -2
  1162. package/dist/tokens/source/componentScssMixins/components-scw-menu-item-design-utility-state-hover-icon-vector-.json.gz +0 -0
  1163. package/dist/tokens/source/componentScssMixins/components-scw-menu-item-design-utility-state-hover-label-.json +2 -2
  1164. package/dist/tokens/source/componentScssMixins/components-scw-menu-item-design-utility-state-hover-label-.json.gz +0 -0
  1165. package/dist/tokens/source/componentScssMixins/components-scw-menu-item-design-utility-state-selected-icon-vector-.json +2 -2
  1166. package/dist/tokens/source/componentScssMixins/components-scw-menu-item-design-utility-state-selected-icon-vector-.json.gz +0 -0
  1167. package/dist/tokens/source/componentScssMixins/components-scw-menu-item-design-utility-state-selected-label-.json +2 -2
  1168. package/dist/tokens/source/componentScssMixins/components-scw-menu-item-design-utility-state-selected-label-.json.gz +0 -0
  1169. package/dist/tokens/source/componentScssMixins/components-scw-menu-item-state-hover-label-.json +2 -2
  1170. package/dist/tokens/source/componentScssMixins/components-scw-menu-item-state-hover-label-.json.gz +0 -0
  1171. package/dist/tokens/source/componentScssMixins/components-scw-menu-item-state-selected-selected-.json +2 -2
  1172. package/dist/tokens/source/componentScssMixins/components-scw-menu-item-state-selected-selected-.json.gz +0 -0
  1173. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-default-icon-.json +2 -2
  1174. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-default-icon-.json.gz +0 -0
  1175. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-state-disabled-icon-.json +2 -2
  1176. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-state-disabled-icon-.json.gz +0 -0
  1177. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-state-focused-icon-.json +2 -2
  1178. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-state-focused-icon-.json.gz +0 -0
  1179. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-state-hover-.json +2 -2
  1180. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-state-hover-.json.gz +0 -0
  1181. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-state-hover-icon-.json +2 -2
  1182. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-state-hover-icon-.json.gz +0 -0
  1183. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-type-warning-icon-.json +2 -2
  1184. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-type-warning-icon-.json.gz +0 -0
  1185. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-type-warning-state-disabled-icon-.json +2 -2
  1186. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-type-warning-state-disabled-icon-.json.gz +0 -0
  1187. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-type-warning-state-focused-icon-.json +2 -2
  1188. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-type-warning-state-focused-icon-.json.gz +0 -0
  1189. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-type-warning-state-hover-.json +2 -2
  1190. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-type-warning-state-hover-.json.gz +0 -0
  1191. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-type-warning-state-hover-icon-.json +2 -2
  1192. package/dist/tokens/source/componentScssMixins/components-scw-page-alert-type-warning-state-hover-icon-.json.gz +0 -0
  1193. package/dist/tokens/source/componentScssMixins/components-scw-rich-text-default-text-.json +2 -2
  1194. package/dist/tokens/source/componentScssMixins/components-scw-rich-text-default-text-.json.gz +0 -0
  1195. package/dist/tokens/source/componentScssMixins/components-scw-rich-text-size-h2-text-.json +2 -2
  1196. package/dist/tokens/source/componentScssMixins/components-scw-rich-text-size-h2-text-.json.gz +0 -0
  1197. package/dist/tokens/source/componentScssMixins/components-scw-rich-text-size-h3-text-.json +2 -2
  1198. package/dist/tokens/source/componentScssMixins/components-scw-rich-text-size-h3-text-.json.gz +0 -0
  1199. package/dist/tokens/source/componentScssMixins/components-scw-rich-text-size-link-text-.json +2 -2
  1200. package/dist/tokens/source/componentScssMixins/components-scw-rich-text-size-link-text-.json.gz +0 -0
  1201. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-.json +2 -2
  1202. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-.json.gz +0 -0
  1203. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-bg-default-.json +2 -2
  1204. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-bg-default-.json.gz +0 -0
  1205. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-bg-focused-.json +2 -2
  1206. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-bg-focused-.json.gz +0 -0
  1207. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-bg-invalid-.json +2 -2
  1208. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-bg-invalid-.json.gz +0 -0
  1209. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-right-action-edit-.json +2 -2
  1210. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-right-action-edit-.json.gz +0 -0
  1211. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-default-bg-.json +2 -2
  1212. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-default-bg-.json.gz +0 -0
  1213. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-bg-.json +2 -2
  1214. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-bg-.json.gz +0 -0
  1215. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-action-bg-.json +2 -2
  1216. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-action-bg-.json.gz +0 -0
  1217. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-action-content-right-action-.json +2 -2
  1218. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-action-content-right-action-.json.gz +0 -0
  1219. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-action-right-icon-bg-.json +2 -2
  1220. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-action-right-icon-bg-.json.gz +0 -0
  1221. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-action-right-icon-content-right-action-.json +2 -2
  1222. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-action-right-icon-content-right-action-.json.gz +0 -0
  1223. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-action-right-icon-right-icon-2-bg-.json +2 -2
  1224. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-action-right-icon-right-icon-2-bg-.json.gz +0 -0
  1225. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-action-right-icon-right-icon-2-content-right-action-.json +2 -2
  1226. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-action-right-icon-right-icon-2-content-right-action-.json.gz +0 -0
  1227. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-icon-bg-.json +2 -2
  1228. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-icon-bg-.json.gz +0 -0
  1229. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-icon-right-icon-2-bg-.json +2 -2
  1230. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-left-icon-right-icon-right-icon-2-bg-.json.gz +0 -0
  1231. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-action-bg-.json +2 -2
  1232. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-action-bg-.json.gz +0 -0
  1233. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-action-content-right-action-.json +2 -2
  1234. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-action-content-right-action-.json.gz +0 -0
  1235. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-action-right-icon-bg-.json +2 -2
  1236. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-action-right-icon-bg-.json.gz +0 -0
  1237. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-action-right-icon-content-right-action-.json +2 -2
  1238. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-action-right-icon-content-right-action-.json.gz +0 -0
  1239. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-action-right-icon-right-icon-2-bg-.json +2 -2
  1240. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-action-right-icon-right-icon-2-bg-.json.gz +0 -0
  1241. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-action-right-icon-right-icon-2-content-right-action-.json +2 -2
  1242. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-action-right-icon-right-icon-2-content-right-action-.json.gz +0 -0
  1243. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-icon-bg-.json +2 -2
  1244. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-icon-bg-.json.gz +0 -0
  1245. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-icon-right-icon-2-bg-.json +2 -2
  1246. package/dist/tokens/source/componentScssMixins/components-scw-single-input-field-v2-right-icon-right-icon-2-bg-.json.gz +0 -0
  1247. package/dist/tokens/source/componentScssMixins.json +1128 -378
  1248. package/dist/tokens/source/componentScssMixins.json.gz +0 -0
  1249. package/dist/tokens/source/componentScssMixins.scss +1084 -192
  1250. package/dist/tokens/source/cssApi/colors-business-.css.json +10 -10
  1251. package/dist/tokens/source/cssApi/colors-business-.css.json.gz +0 -0
  1252. package/dist/tokens/source/cssApi/colors-business-.scss.json +10 -10
  1253. package/dist/tokens/source/cssApi/colors-business-.scss.json.gz +0 -0
  1254. package/dist/tokens/source/cssApi/colors-business-01.css.json +10 -10
  1255. package/dist/tokens/source/cssApi/colors-business-01.css.json.gz +0 -0
  1256. package/dist/tokens/source/cssApi/colors-business-01.scss.json +10 -10
  1257. package/dist/tokens/source/cssApi/colors-business-01.scss.json.gz +0 -0
  1258. package/dist/tokens/source/cssApi/colors-business-02.css.json +10 -10
  1259. package/dist/tokens/source/cssApi/colors-business-02.css.json.gz +0 -0
  1260. package/dist/tokens/source/cssApi/colors-business-02.scss.json +10 -10
  1261. package/dist/tokens/source/cssApi/colors-business-02.scss.json.gz +0 -0
  1262. package/dist/tokens/source/cssApi/colors-business-03.css.json +10 -10
  1263. package/dist/tokens/source/cssApi/colors-business-03.css.json.gz +0 -0
  1264. package/dist/tokens/source/cssApi/colors-business-03.scss.json +10 -10
  1265. package/dist/tokens/source/cssApi/colors-business-03.scss.json.gz +0 -0
  1266. package/dist/tokens/source/cssApi/colors-business-04.css.json +10 -10
  1267. package/dist/tokens/source/cssApi/colors-business-04.css.json.gz +0 -0
  1268. package/dist/tokens/source/cssApi/colors-business-04.scss.json +10 -10
  1269. package/dist/tokens/source/cssApi/colors-business-04.scss.json.gz +0 -0
  1270. package/dist/tokens/source/cssApi/colors-business-05.css.json +10 -10
  1271. package/dist/tokens/source/cssApi/colors-business-05.css.json.gz +0 -0
  1272. package/dist/tokens/source/cssApi/colors-business-05.scss.json +10 -10
  1273. package/dist/tokens/source/cssApi/colors-business-05.scss.json.gz +0 -0
  1274. package/dist/tokens/source/cssApi/colors-business-06.css.json +10 -10
  1275. package/dist/tokens/source/cssApi/colors-business-06.css.json.gz +0 -0
  1276. package/dist/tokens/source/cssApi/colors-business-06.scss.json +10 -10
  1277. package/dist/tokens/source/cssApi/colors-business-06.scss.json.gz +0 -0
  1278. package/dist/tokens/source/cssApi/colors-business-07.css.json +10 -10
  1279. package/dist/tokens/source/cssApi/colors-business-07.css.json.gz +0 -0
  1280. package/dist/tokens/source/cssApi/colors-business-07.scss.json +10 -10
  1281. package/dist/tokens/source/cssApi/colors-business-07.scss.json.gz +0 -0
  1282. package/dist/tokens/source/cssApi/colors-business-08.css.json +10 -10
  1283. package/dist/tokens/source/cssApi/colors-business-08.css.json.gz +0 -0
  1284. package/dist/tokens/source/cssApi/colors-business-08.scss.json +10 -10
  1285. package/dist/tokens/source/cssApi/colors-business-08.scss.json.gz +0 -0
  1286. package/dist/tokens/source/cssApi/colors-business-09.css.json +10 -10
  1287. package/dist/tokens/source/cssApi/colors-business-09.css.json.gz +0 -0
  1288. package/dist/tokens/source/cssApi/colors-business-09.scss.json +10 -10
  1289. package/dist/tokens/source/cssApi/colors-business-09.scss.json.gz +0 -0
  1290. package/dist/tokens/source/cssApi/colors-business-092.css.json +10 -10
  1291. package/dist/tokens/source/cssApi/colors-business-092.css.json.gz +0 -0
  1292. package/dist/tokens/source/cssApi/colors-business-092.scss.json +10 -10
  1293. package/dist/tokens/source/cssApi/colors-business-092.scss.json.gz +0 -0
  1294. package/dist/tokens/source/cssApi/colors-business-095.css.json +10 -10
  1295. package/dist/tokens/source/cssApi/colors-business-095.css.json.gz +0 -0
  1296. package/dist/tokens/source/cssApi/colors-business-095.scss.json +10 -10
  1297. package/dist/tokens/source/cssApi/colors-business-095.scss.json.gz +0 -0
  1298. package/dist/tokens/source/cssApi/colors-checking-.css.json +10 -10
  1299. package/dist/tokens/source/cssApi/colors-checking-.css.json.gz +0 -0
  1300. package/dist/tokens/source/cssApi/colors-checking-.scss.json +10 -10
  1301. package/dist/tokens/source/cssApi/colors-checking-.scss.json.gz +0 -0
  1302. package/dist/tokens/source/cssApi/colors-checking-01.css.json +10 -10
  1303. package/dist/tokens/source/cssApi/colors-checking-01.css.json.gz +0 -0
  1304. package/dist/tokens/source/cssApi/colors-checking-01.scss.json +10 -10
  1305. package/dist/tokens/source/cssApi/colors-checking-01.scss.json.gz +0 -0
  1306. package/dist/tokens/source/cssApi/colors-checking-02.css.json +10 -10
  1307. package/dist/tokens/source/cssApi/colors-checking-02.css.json.gz +0 -0
  1308. package/dist/tokens/source/cssApi/colors-checking-02.scss.json +10 -10
  1309. package/dist/tokens/source/cssApi/colors-checking-02.scss.json.gz +0 -0
  1310. package/dist/tokens/source/cssApi/colors-checking-03.css.json +10 -10
  1311. package/dist/tokens/source/cssApi/colors-checking-03.css.json.gz +0 -0
  1312. package/dist/tokens/source/cssApi/colors-checking-03.scss.json +10 -10
  1313. package/dist/tokens/source/cssApi/colors-checking-03.scss.json.gz +0 -0
  1314. package/dist/tokens/source/cssApi/colors-checking-04.css.json +10 -10
  1315. package/dist/tokens/source/cssApi/colors-checking-04.css.json.gz +0 -0
  1316. package/dist/tokens/source/cssApi/colors-checking-04.scss.json +10 -10
  1317. package/dist/tokens/source/cssApi/colors-checking-04.scss.json.gz +0 -0
  1318. package/dist/tokens/source/cssApi/colors-checking-05.css.json +10 -10
  1319. package/dist/tokens/source/cssApi/colors-checking-05.css.json.gz +0 -0
  1320. package/dist/tokens/source/cssApi/colors-checking-05.scss.json +10 -10
  1321. package/dist/tokens/source/cssApi/colors-checking-05.scss.json.gz +0 -0
  1322. package/dist/tokens/source/cssApi/colors-checking-06.css.json +10 -10
  1323. package/dist/tokens/source/cssApi/colors-checking-06.css.json.gz +0 -0
  1324. package/dist/tokens/source/cssApi/colors-checking-06.scss.json +10 -10
  1325. package/dist/tokens/source/cssApi/colors-checking-06.scss.json.gz +0 -0
  1326. package/dist/tokens/source/cssApi/colors-checking-07.css.json +10 -10
  1327. package/dist/tokens/source/cssApi/colors-checking-07.css.json.gz +0 -0
  1328. package/dist/tokens/source/cssApi/colors-checking-07.scss.json +10 -10
  1329. package/dist/tokens/source/cssApi/colors-checking-07.scss.json.gz +0 -0
  1330. package/dist/tokens/source/cssApi/colors-checking-08.css.json +10 -10
  1331. package/dist/tokens/source/cssApi/colors-checking-08.css.json.gz +0 -0
  1332. package/dist/tokens/source/cssApi/colors-checking-08.scss.json +10 -10
  1333. package/dist/tokens/source/cssApi/colors-checking-08.scss.json.gz +0 -0
  1334. package/dist/tokens/source/cssApi/colors-checking-09.css.json +10 -10
  1335. package/dist/tokens/source/cssApi/colors-checking-09.css.json.gz +0 -0
  1336. package/dist/tokens/source/cssApi/colors-checking-09.scss.json +10 -10
  1337. package/dist/tokens/source/cssApi/colors-checking-09.scss.json.gz +0 -0
  1338. package/dist/tokens/source/cssApi/colors-checking-092.css.json +10 -10
  1339. package/dist/tokens/source/cssApi/colors-checking-092.css.json.gz +0 -0
  1340. package/dist/tokens/source/cssApi/colors-checking-092.scss.json +10 -10
  1341. package/dist/tokens/source/cssApi/colors-checking-092.scss.json.gz +0 -0
  1342. package/dist/tokens/source/cssApi/colors-checking-095.css.json +10 -10
  1343. package/dist/tokens/source/cssApi/colors-checking-095.css.json.gz +0 -0
  1344. package/dist/tokens/source/cssApi/colors-checking-095.scss.json +10 -10
  1345. package/dist/tokens/source/cssApi/colors-checking-095.scss.json.gz +0 -0
  1346. package/dist/tokens/source/cssApi/colors-credit-cards-.css.json +10 -10
  1347. package/dist/tokens/source/cssApi/colors-credit-cards-.css.json.gz +0 -0
  1348. package/dist/tokens/source/cssApi/colors-credit-cards-.scss.json +10 -10
  1349. package/dist/tokens/source/cssApi/colors-credit-cards-.scss.json.gz +0 -0
  1350. package/dist/tokens/source/cssApi/colors-credit-cards-01.css.json +10 -10
  1351. package/dist/tokens/source/cssApi/colors-credit-cards-01.css.json.gz +0 -0
  1352. package/dist/tokens/source/cssApi/colors-credit-cards-01.scss.json +10 -10
  1353. package/dist/tokens/source/cssApi/colors-credit-cards-01.scss.json.gz +0 -0
  1354. package/dist/tokens/source/cssApi/colors-credit-cards-02.css.json +10 -10
  1355. package/dist/tokens/source/cssApi/colors-credit-cards-02.css.json.gz +0 -0
  1356. package/dist/tokens/source/cssApi/colors-credit-cards-02.scss.json +10 -10
  1357. package/dist/tokens/source/cssApi/colors-credit-cards-02.scss.json.gz +0 -0
  1358. package/dist/tokens/source/cssApi/colors-credit-cards-03.css.json +10 -10
  1359. package/dist/tokens/source/cssApi/colors-credit-cards-03.css.json.gz +0 -0
  1360. package/dist/tokens/source/cssApi/colors-credit-cards-03.scss.json +10 -10
  1361. package/dist/tokens/source/cssApi/colors-credit-cards-03.scss.json.gz +0 -0
  1362. package/dist/tokens/source/cssApi/colors-credit-cards-04.css.json +10 -10
  1363. package/dist/tokens/source/cssApi/colors-credit-cards-04.css.json.gz +0 -0
  1364. package/dist/tokens/source/cssApi/colors-credit-cards-04.scss.json +10 -10
  1365. package/dist/tokens/source/cssApi/colors-credit-cards-04.scss.json.gz +0 -0
  1366. package/dist/tokens/source/cssApi/colors-credit-cards-05.css.json +10 -10
  1367. package/dist/tokens/source/cssApi/colors-credit-cards-05.css.json.gz +0 -0
  1368. package/dist/tokens/source/cssApi/colors-credit-cards-05.scss.json +10 -10
  1369. package/dist/tokens/source/cssApi/colors-credit-cards-05.scss.json.gz +0 -0
  1370. package/dist/tokens/source/cssApi/colors-credit-cards-06.css.json +10 -10
  1371. package/dist/tokens/source/cssApi/colors-credit-cards-06.css.json.gz +0 -0
  1372. package/dist/tokens/source/cssApi/colors-credit-cards-06.scss.json +10 -10
  1373. package/dist/tokens/source/cssApi/colors-credit-cards-06.scss.json.gz +0 -0
  1374. package/dist/tokens/source/cssApi/colors-credit-cards-07.css.json +10 -10
  1375. package/dist/tokens/source/cssApi/colors-credit-cards-07.css.json.gz +0 -0
  1376. package/dist/tokens/source/cssApi/colors-credit-cards-07.scss.json +10 -10
  1377. package/dist/tokens/source/cssApi/colors-credit-cards-07.scss.json.gz +0 -0
  1378. package/dist/tokens/source/cssApi/colors-credit-cards-08.css.json +10 -10
  1379. package/dist/tokens/source/cssApi/colors-credit-cards-08.css.json.gz +0 -0
  1380. package/dist/tokens/source/cssApi/colors-credit-cards-08.scss.json +10 -10
  1381. package/dist/tokens/source/cssApi/colors-credit-cards-08.scss.json.gz +0 -0
  1382. package/dist/tokens/source/cssApi/colors-credit-cards-09.css.json +10 -10
  1383. package/dist/tokens/source/cssApi/colors-credit-cards-09.css.json.gz +0 -0
  1384. package/dist/tokens/source/cssApi/colors-credit-cards-09.scss.json +10 -10
  1385. package/dist/tokens/source/cssApi/colors-credit-cards-09.scss.json.gz +0 -0
  1386. package/dist/tokens/source/cssApi/colors-credit-cards-092.css.json +10 -10
  1387. package/dist/tokens/source/cssApi/colors-credit-cards-092.css.json.gz +0 -0
  1388. package/dist/tokens/source/cssApi/colors-credit-cards-092.scss.json +10 -10
  1389. package/dist/tokens/source/cssApi/colors-credit-cards-092.scss.json.gz +0 -0
  1390. package/dist/tokens/source/cssApi/colors-credit-cards-095.css.json +10 -10
  1391. package/dist/tokens/source/cssApi/colors-credit-cards-095.css.json.gz +0 -0
  1392. package/dist/tokens/source/cssApi/colors-credit-cards-095.scss.json +10 -10
  1393. package/dist/tokens/source/cssApi/colors-credit-cards-095.scss.json.gz +0 -0
  1394. package/dist/tokens/source/cssApi/colors-error-.css.json +10 -10
  1395. package/dist/tokens/source/cssApi/colors-error-.css.json.gz +0 -0
  1396. package/dist/tokens/source/cssApi/colors-error-.scss.json +10 -10
  1397. package/dist/tokens/source/cssApi/colors-error-.scss.json.gz +0 -0
  1398. package/dist/tokens/source/cssApi/colors-error-dark.css.json +10 -10
  1399. package/dist/tokens/source/cssApi/colors-error-dark.css.json.gz +0 -0
  1400. package/dist/tokens/source/cssApi/colors-error-dark.scss.json +10 -10
  1401. package/dist/tokens/source/cssApi/colors-error-dark.scss.json.gz +0 -0
  1402. package/dist/tokens/source/cssApi/colors-error-light.css.json +10 -10
  1403. package/dist/tokens/source/cssApi/colors-error-light.css.json.gz +0 -0
  1404. package/dist/tokens/source/cssApi/colors-error-light.scss.json +10 -10
  1405. package/dist/tokens/source/cssApi/colors-error-light.scss.json.gz +0 -0
  1406. package/dist/tokens/source/cssApi/colors-heloc-.css.json +10 -10
  1407. package/dist/tokens/source/cssApi/colors-heloc-.css.json.gz +0 -0
  1408. package/dist/tokens/source/cssApi/colors-heloc-.scss.json +10 -10
  1409. package/dist/tokens/source/cssApi/colors-heloc-.scss.json.gz +0 -0
  1410. package/dist/tokens/source/cssApi/colors-heloc-01.css.json +10 -10
  1411. package/dist/tokens/source/cssApi/colors-heloc-01.css.json.gz +0 -0
  1412. package/dist/tokens/source/cssApi/colors-heloc-01.scss.json +10 -10
  1413. package/dist/tokens/source/cssApi/colors-heloc-01.scss.json.gz +0 -0
  1414. package/dist/tokens/source/cssApi/colors-heloc-02.css.json +10 -10
  1415. package/dist/tokens/source/cssApi/colors-heloc-02.css.json.gz +0 -0
  1416. package/dist/tokens/source/cssApi/colors-heloc-02.scss.json +10 -10
  1417. package/dist/tokens/source/cssApi/colors-heloc-02.scss.json.gz +0 -0
  1418. package/dist/tokens/source/cssApi/colors-heloc-03.css.json +10 -10
  1419. package/dist/tokens/source/cssApi/colors-heloc-03.css.json.gz +0 -0
  1420. package/dist/tokens/source/cssApi/colors-heloc-03.scss.json +10 -10
  1421. package/dist/tokens/source/cssApi/colors-heloc-03.scss.json.gz +0 -0
  1422. package/dist/tokens/source/cssApi/colors-heloc-04.css.json +10 -10
  1423. package/dist/tokens/source/cssApi/colors-heloc-04.css.json.gz +0 -0
  1424. package/dist/tokens/source/cssApi/colors-heloc-04.scss.json +10 -10
  1425. package/dist/tokens/source/cssApi/colors-heloc-04.scss.json.gz +0 -0
  1426. package/dist/tokens/source/cssApi/colors-heloc-05.css.json +10 -10
  1427. package/dist/tokens/source/cssApi/colors-heloc-05.css.json.gz +0 -0
  1428. package/dist/tokens/source/cssApi/colors-heloc-05.scss.json +10 -10
  1429. package/dist/tokens/source/cssApi/colors-heloc-05.scss.json.gz +0 -0
  1430. package/dist/tokens/source/cssApi/colors-heloc-06.css.json +10 -10
  1431. package/dist/tokens/source/cssApi/colors-heloc-06.css.json.gz +0 -0
  1432. package/dist/tokens/source/cssApi/colors-heloc-06.scss.json +10 -10
  1433. package/dist/tokens/source/cssApi/colors-heloc-06.scss.json.gz +0 -0
  1434. package/dist/tokens/source/cssApi/colors-heloc-07.css.json +10 -10
  1435. package/dist/tokens/source/cssApi/colors-heloc-07.css.json.gz +0 -0
  1436. package/dist/tokens/source/cssApi/colors-heloc-07.scss.json +10 -10
  1437. package/dist/tokens/source/cssApi/colors-heloc-07.scss.json.gz +0 -0
  1438. package/dist/tokens/source/cssApi/colors-heloc-08.css.json +10 -10
  1439. package/dist/tokens/source/cssApi/colors-heloc-08.css.json.gz +0 -0
  1440. package/dist/tokens/source/cssApi/colors-heloc-08.scss.json +10 -10
  1441. package/dist/tokens/source/cssApi/colors-heloc-08.scss.json.gz +0 -0
  1442. package/dist/tokens/source/cssApi/colors-heloc-09.css.json +10 -10
  1443. package/dist/tokens/source/cssApi/colors-heloc-09.css.json.gz +0 -0
  1444. package/dist/tokens/source/cssApi/colors-heloc-09.scss.json +10 -10
  1445. package/dist/tokens/source/cssApi/colors-heloc-09.scss.json.gz +0 -0
  1446. package/dist/tokens/source/cssApi/colors-heloc-092.css.json +10 -10
  1447. package/dist/tokens/source/cssApi/colors-heloc-092.css.json.gz +0 -0
  1448. package/dist/tokens/source/cssApi/colors-heloc-092.scss.json +10 -10
  1449. package/dist/tokens/source/cssApi/colors-heloc-092.scss.json.gz +0 -0
  1450. package/dist/tokens/source/cssApi/colors-heloc-095.css.json +10 -10
  1451. package/dist/tokens/source/cssApi/colors-heloc-095.css.json.gz +0 -0
  1452. package/dist/tokens/source/cssApi/colors-heloc-095.scss.json +10 -10
  1453. package/dist/tokens/source/cssApi/colors-heloc-095.scss.json.gz +0 -0
  1454. package/dist/tokens/source/cssApi/colors-information-.css.json +10 -10
  1455. package/dist/tokens/source/cssApi/colors-information-.css.json.gz +0 -0
  1456. package/dist/tokens/source/cssApi/colors-information-.scss.json +10 -10
  1457. package/dist/tokens/source/cssApi/colors-information-.scss.json.gz +0 -0
  1458. package/dist/tokens/source/cssApi/colors-information-dark.css.json +10 -10
  1459. package/dist/tokens/source/cssApi/colors-information-dark.css.json.gz +0 -0
  1460. package/dist/tokens/source/cssApi/colors-information-dark.scss.json +10 -10
  1461. package/dist/tokens/source/cssApi/colors-information-dark.scss.json.gz +0 -0
  1462. package/dist/tokens/source/cssApi/colors-information-light.css.json +10 -10
  1463. package/dist/tokens/source/cssApi/colors-information-light.css.json.gz +0 -0
  1464. package/dist/tokens/source/cssApi/colors-information-light.scss.json +10 -10
  1465. package/dist/tokens/source/cssApi/colors-information-light.scss.json.gz +0 -0
  1466. package/dist/tokens/source/cssApi/colors-investments-.css.json +10 -10
  1467. package/dist/tokens/source/cssApi/colors-investments-.css.json.gz +0 -0
  1468. package/dist/tokens/source/cssApi/colors-investments-.scss.json +10 -10
  1469. package/dist/tokens/source/cssApi/colors-investments-.scss.json.gz +0 -0
  1470. package/dist/tokens/source/cssApi/colors-investments-01.css.json +10 -10
  1471. package/dist/tokens/source/cssApi/colors-investments-01.css.json.gz +0 -0
  1472. package/dist/tokens/source/cssApi/colors-investments-01.scss.json +10 -10
  1473. package/dist/tokens/source/cssApi/colors-investments-01.scss.json.gz +0 -0
  1474. package/dist/tokens/source/cssApi/colors-investments-02.css.json +10 -10
  1475. package/dist/tokens/source/cssApi/colors-investments-02.css.json.gz +0 -0
  1476. package/dist/tokens/source/cssApi/colors-investments-02.scss.json +10 -10
  1477. package/dist/tokens/source/cssApi/colors-investments-02.scss.json.gz +0 -0
  1478. package/dist/tokens/source/cssApi/colors-investments-03.css.json +10 -10
  1479. package/dist/tokens/source/cssApi/colors-investments-03.css.json.gz +0 -0
  1480. package/dist/tokens/source/cssApi/colors-investments-03.scss.json +10 -10
  1481. package/dist/tokens/source/cssApi/colors-investments-03.scss.json.gz +0 -0
  1482. package/dist/tokens/source/cssApi/colors-investments-04.css.json +10 -10
  1483. package/dist/tokens/source/cssApi/colors-investments-04.css.json.gz +0 -0
  1484. package/dist/tokens/source/cssApi/colors-investments-04.scss.json +10 -10
  1485. package/dist/tokens/source/cssApi/colors-investments-04.scss.json.gz +0 -0
  1486. package/dist/tokens/source/cssApi/colors-investments-05.css.json +10 -10
  1487. package/dist/tokens/source/cssApi/colors-investments-05.css.json.gz +0 -0
  1488. package/dist/tokens/source/cssApi/colors-investments-05.scss.json +10 -10
  1489. package/dist/tokens/source/cssApi/colors-investments-05.scss.json.gz +0 -0
  1490. package/dist/tokens/source/cssApi/colors-investments-06.css.json +10 -10
  1491. package/dist/tokens/source/cssApi/colors-investments-06.css.json.gz +0 -0
  1492. package/dist/tokens/source/cssApi/colors-investments-06.scss.json +10 -10
  1493. package/dist/tokens/source/cssApi/colors-investments-06.scss.json.gz +0 -0
  1494. package/dist/tokens/source/cssApi/colors-investments-07.css.json +10 -10
  1495. package/dist/tokens/source/cssApi/colors-investments-07.css.json.gz +0 -0
  1496. package/dist/tokens/source/cssApi/colors-investments-07.scss.json +10 -10
  1497. package/dist/tokens/source/cssApi/colors-investments-07.scss.json.gz +0 -0
  1498. package/dist/tokens/source/cssApi/colors-investments-08.css.json +10 -10
  1499. package/dist/tokens/source/cssApi/colors-investments-08.css.json.gz +0 -0
  1500. package/dist/tokens/source/cssApi/colors-investments-08.scss.json +10 -10
  1501. package/dist/tokens/source/cssApi/colors-investments-08.scss.json.gz +0 -0
  1502. package/dist/tokens/source/cssApi/colors-investments-09.css.json +10 -10
  1503. package/dist/tokens/source/cssApi/colors-investments-09.css.json.gz +0 -0
  1504. package/dist/tokens/source/cssApi/colors-investments-09.scss.json +10 -10
  1505. package/dist/tokens/source/cssApi/colors-investments-09.scss.json.gz +0 -0
  1506. package/dist/tokens/source/cssApi/colors-investments-092.css.json +10 -10
  1507. package/dist/tokens/source/cssApi/colors-investments-092.css.json.gz +0 -0
  1508. package/dist/tokens/source/cssApi/colors-investments-092.scss.json +10 -10
  1509. package/dist/tokens/source/cssApi/colors-investments-092.scss.json.gz +0 -0
  1510. package/dist/tokens/source/cssApi/colors-investments-095.css.json +10 -10
  1511. package/dist/tokens/source/cssApi/colors-investments-095.css.json.gz +0 -0
  1512. package/dist/tokens/source/cssApi/colors-investments-095.scss.json +10 -10
  1513. package/dist/tokens/source/cssApi/colors-investments-095.scss.json.gz +0 -0
  1514. package/dist/tokens/source/cssApi/colors-mortgage-.css.json +10 -10
  1515. package/dist/tokens/source/cssApi/colors-mortgage-.css.json.gz +0 -0
  1516. package/dist/tokens/source/cssApi/colors-mortgage-.scss.json +10 -10
  1517. package/dist/tokens/source/cssApi/colors-mortgage-.scss.json.gz +0 -0
  1518. package/dist/tokens/source/cssApi/colors-mortgage-01.css.json +10 -10
  1519. package/dist/tokens/source/cssApi/colors-mortgage-01.css.json.gz +0 -0
  1520. package/dist/tokens/source/cssApi/colors-mortgage-01.scss.json +10 -10
  1521. package/dist/tokens/source/cssApi/colors-mortgage-01.scss.json.gz +0 -0
  1522. package/dist/tokens/source/cssApi/colors-mortgage-02.css.json +10 -10
  1523. package/dist/tokens/source/cssApi/colors-mortgage-02.css.json.gz +0 -0
  1524. package/dist/tokens/source/cssApi/colors-mortgage-02.scss.json +10 -10
  1525. package/dist/tokens/source/cssApi/colors-mortgage-02.scss.json.gz +0 -0
  1526. package/dist/tokens/source/cssApi/colors-mortgage-03.css.json +10 -10
  1527. package/dist/tokens/source/cssApi/colors-mortgage-03.css.json.gz +0 -0
  1528. package/dist/tokens/source/cssApi/colors-mortgage-03.scss.json +10 -10
  1529. package/dist/tokens/source/cssApi/colors-mortgage-03.scss.json.gz +0 -0
  1530. package/dist/tokens/source/cssApi/colors-mortgage-04.css.json +10 -10
  1531. package/dist/tokens/source/cssApi/colors-mortgage-04.css.json.gz +0 -0
  1532. package/dist/tokens/source/cssApi/colors-mortgage-04.scss.json +10 -10
  1533. package/dist/tokens/source/cssApi/colors-mortgage-04.scss.json.gz +0 -0
  1534. package/dist/tokens/source/cssApi/colors-mortgage-05.css.json +10 -10
  1535. package/dist/tokens/source/cssApi/colors-mortgage-05.css.json.gz +0 -0
  1536. package/dist/tokens/source/cssApi/colors-mortgage-05.scss.json +10 -10
  1537. package/dist/tokens/source/cssApi/colors-mortgage-05.scss.json.gz +0 -0
  1538. package/dist/tokens/source/cssApi/colors-mortgage-06.css.json +10 -10
  1539. package/dist/tokens/source/cssApi/colors-mortgage-06.css.json.gz +0 -0
  1540. package/dist/tokens/source/cssApi/colors-mortgage-06.scss.json +10 -10
  1541. package/dist/tokens/source/cssApi/colors-mortgage-06.scss.json.gz +0 -0
  1542. package/dist/tokens/source/cssApi/colors-mortgage-07.css.json +10 -10
  1543. package/dist/tokens/source/cssApi/colors-mortgage-07.css.json.gz +0 -0
  1544. package/dist/tokens/source/cssApi/colors-mortgage-07.scss.json +10 -10
  1545. package/dist/tokens/source/cssApi/colors-mortgage-07.scss.json.gz +0 -0
  1546. package/dist/tokens/source/cssApi/colors-mortgage-08.css.json +10 -10
  1547. package/dist/tokens/source/cssApi/colors-mortgage-08.css.json.gz +0 -0
  1548. package/dist/tokens/source/cssApi/colors-mortgage-08.scss.json +10 -10
  1549. package/dist/tokens/source/cssApi/colors-mortgage-08.scss.json.gz +0 -0
  1550. package/dist/tokens/source/cssApi/colors-mortgage-09.css.json +10 -10
  1551. package/dist/tokens/source/cssApi/colors-mortgage-09.css.json.gz +0 -0
  1552. package/dist/tokens/source/cssApi/colors-mortgage-09.scss.json +10 -10
  1553. package/dist/tokens/source/cssApi/colors-mortgage-09.scss.json.gz +0 -0
  1554. package/dist/tokens/source/cssApi/colors-mortgage-092.css.json +10 -10
  1555. package/dist/tokens/source/cssApi/colors-mortgage-092.css.json.gz +0 -0
  1556. package/dist/tokens/source/cssApi/colors-mortgage-092.scss.json +10 -10
  1557. package/dist/tokens/source/cssApi/colors-mortgage-092.scss.json.gz +0 -0
  1558. package/dist/tokens/source/cssApi/colors-mortgage-095.css.json +10 -10
  1559. package/dist/tokens/source/cssApi/colors-mortgage-095.css.json.gz +0 -0
  1560. package/dist/tokens/source/cssApi/colors-mortgage-095.scss.json +10 -10
  1561. package/dist/tokens/source/cssApi/colors-mortgage-095.scss.json.gz +0 -0
  1562. package/dist/tokens/source/cssApi/colors-personal-.css.json +10 -10
  1563. package/dist/tokens/source/cssApi/colors-personal-.css.json.gz +0 -0
  1564. package/dist/tokens/source/cssApi/colors-personal-.scss.json +10 -10
  1565. package/dist/tokens/source/cssApi/colors-personal-.scss.json.gz +0 -0
  1566. package/dist/tokens/source/cssApi/colors-personal-01.css.json +10 -10
  1567. package/dist/tokens/source/cssApi/colors-personal-01.css.json.gz +0 -0
  1568. package/dist/tokens/source/cssApi/colors-personal-01.scss.json +10 -10
  1569. package/dist/tokens/source/cssApi/colors-personal-01.scss.json.gz +0 -0
  1570. package/dist/tokens/source/cssApi/colors-personal-02.css.json +10 -10
  1571. package/dist/tokens/source/cssApi/colors-personal-02.css.json.gz +0 -0
  1572. package/dist/tokens/source/cssApi/colors-personal-02.scss.json +10 -10
  1573. package/dist/tokens/source/cssApi/colors-personal-02.scss.json.gz +0 -0
  1574. package/dist/tokens/source/cssApi/colors-personal-03.css.json +10 -10
  1575. package/dist/tokens/source/cssApi/colors-personal-03.css.json.gz +0 -0
  1576. package/dist/tokens/source/cssApi/colors-personal-03.scss.json +10 -10
  1577. package/dist/tokens/source/cssApi/colors-personal-03.scss.json.gz +0 -0
  1578. package/dist/tokens/source/cssApi/colors-personal-04.css.json +10 -10
  1579. package/dist/tokens/source/cssApi/colors-personal-04.css.json.gz +0 -0
  1580. package/dist/tokens/source/cssApi/colors-personal-04.scss.json +10 -10
  1581. package/dist/tokens/source/cssApi/colors-personal-04.scss.json.gz +0 -0
  1582. package/dist/tokens/source/cssApi/colors-personal-05.css.json +10 -10
  1583. package/dist/tokens/source/cssApi/colors-personal-05.css.json.gz +0 -0
  1584. package/dist/tokens/source/cssApi/colors-personal-05.scss.json +10 -10
  1585. package/dist/tokens/source/cssApi/colors-personal-05.scss.json.gz +0 -0
  1586. package/dist/tokens/source/cssApi/colors-personal-06.css.json +10 -10
  1587. package/dist/tokens/source/cssApi/colors-personal-06.css.json.gz +0 -0
  1588. package/dist/tokens/source/cssApi/colors-personal-06.scss.json +10 -10
  1589. package/dist/tokens/source/cssApi/colors-personal-06.scss.json.gz +0 -0
  1590. package/dist/tokens/source/cssApi/colors-personal-07.css.json +10 -10
  1591. package/dist/tokens/source/cssApi/colors-personal-07.css.json.gz +0 -0
  1592. package/dist/tokens/source/cssApi/colors-personal-07.scss.json +10 -10
  1593. package/dist/tokens/source/cssApi/colors-personal-07.scss.json.gz +0 -0
  1594. package/dist/tokens/source/cssApi/colors-personal-08.css.json +10 -10
  1595. package/dist/tokens/source/cssApi/colors-personal-08.css.json.gz +0 -0
  1596. package/dist/tokens/source/cssApi/colors-personal-08.scss.json +10 -10
  1597. package/dist/tokens/source/cssApi/colors-personal-08.scss.json.gz +0 -0
  1598. package/dist/tokens/source/cssApi/colors-personal-09.css.json +10 -10
  1599. package/dist/tokens/source/cssApi/colors-personal-09.css.json.gz +0 -0
  1600. package/dist/tokens/source/cssApi/colors-personal-09.scss.json +10 -10
  1601. package/dist/tokens/source/cssApi/colors-personal-09.scss.json.gz +0 -0
  1602. package/dist/tokens/source/cssApi/colors-personal-092.css.json +10 -10
  1603. package/dist/tokens/source/cssApi/colors-personal-092.css.json.gz +0 -0
  1604. package/dist/tokens/source/cssApi/colors-personal-092.scss.json +10 -10
  1605. package/dist/tokens/source/cssApi/colors-personal-092.scss.json.gz +0 -0
  1606. package/dist/tokens/source/cssApi/colors-personal-095.css.json +10 -10
  1607. package/dist/tokens/source/cssApi/colors-personal-095.css.json.gz +0 -0
  1608. package/dist/tokens/source/cssApi/colors-personal-095.scss.json +10 -10
  1609. package/dist/tokens/source/cssApi/colors-personal-095.scss.json.gz +0 -0
  1610. package/dist/tokens/source/cssApi/colors-primary-.css.json +10 -10
  1611. package/dist/tokens/source/cssApi/colors-primary-.css.json.gz +0 -0
  1612. package/dist/tokens/source/cssApi/colors-primary-.scss.json +10 -10
  1613. package/dist/tokens/source/cssApi/colors-primary-.scss.json.gz +0 -0
  1614. package/dist/tokens/source/cssApi/colors-primary-01.css.json +10 -10
  1615. package/dist/tokens/source/cssApi/colors-primary-01.css.json.gz +0 -0
  1616. package/dist/tokens/source/cssApi/colors-primary-01.scss.json +10 -10
  1617. package/dist/tokens/source/cssApi/colors-primary-01.scss.json.gz +0 -0
  1618. package/dist/tokens/source/cssApi/colors-primary-02.css.json +10 -10
  1619. package/dist/tokens/source/cssApi/colors-primary-02.css.json.gz +0 -0
  1620. package/dist/tokens/source/cssApi/colors-primary-02.scss.json +10 -10
  1621. package/dist/tokens/source/cssApi/colors-primary-02.scss.json.gz +0 -0
  1622. package/dist/tokens/source/cssApi/colors-primary-03.css.json +10 -10
  1623. package/dist/tokens/source/cssApi/colors-primary-03.css.json.gz +0 -0
  1624. package/dist/tokens/source/cssApi/colors-primary-03.scss.json +10 -10
  1625. package/dist/tokens/source/cssApi/colors-primary-03.scss.json.gz +0 -0
  1626. package/dist/tokens/source/cssApi/colors-primary-04.css.json +10 -10
  1627. package/dist/tokens/source/cssApi/colors-primary-04.css.json.gz +0 -0
  1628. package/dist/tokens/source/cssApi/colors-primary-04.scss.json +10 -10
  1629. package/dist/tokens/source/cssApi/colors-primary-04.scss.json.gz +0 -0
  1630. package/dist/tokens/source/cssApi/colors-primary-05.css.json +10 -10
  1631. package/dist/tokens/source/cssApi/colors-primary-05.css.json.gz +0 -0
  1632. package/dist/tokens/source/cssApi/colors-primary-05.scss.json +10 -10
  1633. package/dist/tokens/source/cssApi/colors-primary-05.scss.json.gz +0 -0
  1634. package/dist/tokens/source/cssApi/colors-primary-06.css.json +10 -10
  1635. package/dist/tokens/source/cssApi/colors-primary-06.css.json.gz +0 -0
  1636. package/dist/tokens/source/cssApi/colors-primary-06.scss.json +10 -10
  1637. package/dist/tokens/source/cssApi/colors-primary-06.scss.json.gz +0 -0
  1638. package/dist/tokens/source/cssApi/colors-primary-07.css.json +10 -10
  1639. package/dist/tokens/source/cssApi/colors-primary-07.css.json.gz +0 -0
  1640. package/dist/tokens/source/cssApi/colors-primary-07.scss.json +10 -10
  1641. package/dist/tokens/source/cssApi/colors-primary-07.scss.json.gz +0 -0
  1642. package/dist/tokens/source/cssApi/colors-primary-08.css.json +10 -10
  1643. package/dist/tokens/source/cssApi/colors-primary-08.css.json.gz +0 -0
  1644. package/dist/tokens/source/cssApi/colors-primary-08.scss.json +10 -10
  1645. package/dist/tokens/source/cssApi/colors-primary-08.scss.json.gz +0 -0
  1646. package/dist/tokens/source/cssApi/colors-primary-09.css.json +10 -10
  1647. package/dist/tokens/source/cssApi/colors-primary-09.css.json.gz +0 -0
  1648. package/dist/tokens/source/cssApi/colors-primary-09.scss.json +10 -10
  1649. package/dist/tokens/source/cssApi/colors-primary-09.scss.json.gz +0 -0
  1650. package/dist/tokens/source/cssApi/colors-primary-092.css.json +10 -10
  1651. package/dist/tokens/source/cssApi/colors-primary-092.css.json.gz +0 -0
  1652. package/dist/tokens/source/cssApi/colors-primary-092.scss.json +10 -10
  1653. package/dist/tokens/source/cssApi/colors-primary-092.scss.json.gz +0 -0
  1654. package/dist/tokens/source/cssApi/colors-primary-095.css.json +10 -10
  1655. package/dist/tokens/source/cssApi/colors-primary-095.css.json.gz +0 -0
  1656. package/dist/tokens/source/cssApi/colors-primary-095.scss.json +10 -10
  1657. package/dist/tokens/source/cssApi/colors-primary-095.scss.json.gz +0 -0
  1658. package/dist/tokens/source/cssApi/colors-red-shoes-.css.json +10 -10
  1659. package/dist/tokens/source/cssApi/colors-red-shoes-.css.json.gz +0 -0
  1660. package/dist/tokens/source/cssApi/colors-red-shoes-.scss.json +10 -10
  1661. package/dist/tokens/source/cssApi/colors-red-shoes-.scss.json.gz +0 -0
  1662. package/dist/tokens/source/cssApi/colors-red-shoes-01.css.json +10 -10
  1663. package/dist/tokens/source/cssApi/colors-red-shoes-01.css.json.gz +0 -0
  1664. package/dist/tokens/source/cssApi/colors-red-shoes-01.scss.json +10 -10
  1665. package/dist/tokens/source/cssApi/colors-red-shoes-01.scss.json.gz +0 -0
  1666. package/dist/tokens/source/cssApi/colors-red-shoes-02.css.json +10 -10
  1667. package/dist/tokens/source/cssApi/colors-red-shoes-02.css.json.gz +0 -0
  1668. package/dist/tokens/source/cssApi/colors-red-shoes-02.scss.json +10 -10
  1669. package/dist/tokens/source/cssApi/colors-red-shoes-02.scss.json.gz +0 -0
  1670. package/dist/tokens/source/cssApi/colors-red-shoes-03.css.json +10 -10
  1671. package/dist/tokens/source/cssApi/colors-red-shoes-03.css.json.gz +0 -0
  1672. package/dist/tokens/source/cssApi/colors-red-shoes-03.scss.json +10 -10
  1673. package/dist/tokens/source/cssApi/colors-red-shoes-03.scss.json.gz +0 -0
  1674. package/dist/tokens/source/cssApi/colors-red-shoes-04.css.json +10 -10
  1675. package/dist/tokens/source/cssApi/colors-red-shoes-04.css.json.gz +0 -0
  1676. package/dist/tokens/source/cssApi/colors-red-shoes-04.scss.json +10 -10
  1677. package/dist/tokens/source/cssApi/colors-red-shoes-04.scss.json.gz +0 -0
  1678. package/dist/tokens/source/cssApi/colors-red-shoes-05.css.json +10 -10
  1679. package/dist/tokens/source/cssApi/colors-red-shoes-05.css.json.gz +0 -0
  1680. package/dist/tokens/source/cssApi/colors-red-shoes-05.scss.json +10 -10
  1681. package/dist/tokens/source/cssApi/colors-red-shoes-05.scss.json.gz +0 -0
  1682. package/dist/tokens/source/cssApi/colors-red-shoes-06.css.json +10 -10
  1683. package/dist/tokens/source/cssApi/colors-red-shoes-06.css.json.gz +0 -0
  1684. package/dist/tokens/source/cssApi/colors-red-shoes-06.scss.json +10 -10
  1685. package/dist/tokens/source/cssApi/colors-red-shoes-06.scss.json.gz +0 -0
  1686. package/dist/tokens/source/cssApi/colors-red-shoes-07.css.json +10 -10
  1687. package/dist/tokens/source/cssApi/colors-red-shoes-07.css.json.gz +0 -0
  1688. package/dist/tokens/source/cssApi/colors-red-shoes-07.scss.json +10 -10
  1689. package/dist/tokens/source/cssApi/colors-red-shoes-07.scss.json.gz +0 -0
  1690. package/dist/tokens/source/cssApi/colors-red-shoes-08.css.json +10 -10
  1691. package/dist/tokens/source/cssApi/colors-red-shoes-08.css.json.gz +0 -0
  1692. package/dist/tokens/source/cssApi/colors-red-shoes-08.scss.json +10 -10
  1693. package/dist/tokens/source/cssApi/colors-red-shoes-08.scss.json.gz +0 -0
  1694. package/dist/tokens/source/cssApi/colors-red-shoes-09.css.json +10 -10
  1695. package/dist/tokens/source/cssApi/colors-red-shoes-09.css.json.gz +0 -0
  1696. package/dist/tokens/source/cssApi/colors-red-shoes-09.scss.json +10 -10
  1697. package/dist/tokens/source/cssApi/colors-red-shoes-09.scss.json.gz +0 -0
  1698. package/dist/tokens/source/cssApi/colors-red-shoes-092.css.json +10 -10
  1699. package/dist/tokens/source/cssApi/colors-red-shoes-092.css.json.gz +0 -0
  1700. package/dist/tokens/source/cssApi/colors-red-shoes-092.scss.json +10 -10
  1701. package/dist/tokens/source/cssApi/colors-red-shoes-092.scss.json.gz +0 -0
  1702. package/dist/tokens/source/cssApi/colors-red-shoes-095.css.json +10 -10
  1703. package/dist/tokens/source/cssApi/colors-red-shoes-095.css.json.gz +0 -0
  1704. package/dist/tokens/source/cssApi/colors-red-shoes-095.scss.json +10 -10
  1705. package/dist/tokens/source/cssApi/colors-red-shoes-095.scss.json.gz +0 -0
  1706. package/dist/tokens/source/cssApi/colors-savings-.css.json +10 -10
  1707. package/dist/tokens/source/cssApi/colors-savings-.css.json.gz +0 -0
  1708. package/dist/tokens/source/cssApi/colors-savings-.scss.json +10 -10
  1709. package/dist/tokens/source/cssApi/colors-savings-.scss.json.gz +0 -0
  1710. package/dist/tokens/source/cssApi/colors-savings-01.css.json +10 -10
  1711. package/dist/tokens/source/cssApi/colors-savings-01.css.json.gz +0 -0
  1712. package/dist/tokens/source/cssApi/colors-savings-01.scss.json +10 -10
  1713. package/dist/tokens/source/cssApi/colors-savings-01.scss.json.gz +0 -0
  1714. package/dist/tokens/source/cssApi/colors-savings-02.css.json +10 -10
  1715. package/dist/tokens/source/cssApi/colors-savings-02.css.json.gz +0 -0
  1716. package/dist/tokens/source/cssApi/colors-savings-02.scss.json +10 -10
  1717. package/dist/tokens/source/cssApi/colors-savings-02.scss.json.gz +0 -0
  1718. package/dist/tokens/source/cssApi/colors-savings-03.css.json +10 -10
  1719. package/dist/tokens/source/cssApi/colors-savings-03.css.json.gz +0 -0
  1720. package/dist/tokens/source/cssApi/colors-savings-03.scss.json +10 -10
  1721. package/dist/tokens/source/cssApi/colors-savings-03.scss.json.gz +0 -0
  1722. package/dist/tokens/source/cssApi/colors-savings-04.css.json +10 -10
  1723. package/dist/tokens/source/cssApi/colors-savings-04.css.json.gz +0 -0
  1724. package/dist/tokens/source/cssApi/colors-savings-04.scss.json +10 -10
  1725. package/dist/tokens/source/cssApi/colors-savings-04.scss.json.gz +0 -0
  1726. package/dist/tokens/source/cssApi/colors-savings-05.css.json +10 -10
  1727. package/dist/tokens/source/cssApi/colors-savings-05.css.json.gz +0 -0
  1728. package/dist/tokens/source/cssApi/colors-savings-05.scss.json +10 -10
  1729. package/dist/tokens/source/cssApi/colors-savings-05.scss.json.gz +0 -0
  1730. package/dist/tokens/source/cssApi/colors-savings-06.css.json +10 -10
  1731. package/dist/tokens/source/cssApi/colors-savings-06.css.json.gz +0 -0
  1732. package/dist/tokens/source/cssApi/colors-savings-06.scss.json +10 -10
  1733. package/dist/tokens/source/cssApi/colors-savings-06.scss.json.gz +0 -0
  1734. package/dist/tokens/source/cssApi/colors-savings-07.css.json +10 -10
  1735. package/dist/tokens/source/cssApi/colors-savings-07.css.json.gz +0 -0
  1736. package/dist/tokens/source/cssApi/colors-savings-07.scss.json +10 -10
  1737. package/dist/tokens/source/cssApi/colors-savings-07.scss.json.gz +0 -0
  1738. package/dist/tokens/source/cssApi/colors-savings-08.css.json +10 -10
  1739. package/dist/tokens/source/cssApi/colors-savings-08.css.json.gz +0 -0
  1740. package/dist/tokens/source/cssApi/colors-savings-08.scss.json +10 -10
  1741. package/dist/tokens/source/cssApi/colors-savings-08.scss.json.gz +0 -0
  1742. package/dist/tokens/source/cssApi/colors-savings-09.css.json +10 -10
  1743. package/dist/tokens/source/cssApi/colors-savings-09.css.json.gz +0 -0
  1744. package/dist/tokens/source/cssApi/colors-savings-09.scss.json +10 -10
  1745. package/dist/tokens/source/cssApi/colors-savings-09.scss.json.gz +0 -0
  1746. package/dist/tokens/source/cssApi/colors-savings-092.css.json +10 -10
  1747. package/dist/tokens/source/cssApi/colors-savings-092.css.json.gz +0 -0
  1748. package/dist/tokens/source/cssApi/colors-savings-092.scss.json +10 -10
  1749. package/dist/tokens/source/cssApi/colors-savings-092.scss.json.gz +0 -0
  1750. package/dist/tokens/source/cssApi/colors-savings-095.css.json +10 -10
  1751. package/dist/tokens/source/cssApi/colors-savings-095.css.json.gz +0 -0
  1752. package/dist/tokens/source/cssApi/colors-savings-095.scss.json +10 -10
  1753. package/dist/tokens/source/cssApi/colors-savings-095.scss.json.gz +0 -0
  1754. package/dist/tokens/source/cssApi/colors-student-.css.json +10 -10
  1755. package/dist/tokens/source/cssApi/colors-student-.css.json.gz +0 -0
  1756. package/dist/tokens/source/cssApi/colors-student-.scss.json +10 -10
  1757. package/dist/tokens/source/cssApi/colors-student-.scss.json.gz +0 -0
  1758. package/dist/tokens/source/cssApi/colors-student-01.css.json +10 -10
  1759. package/dist/tokens/source/cssApi/colors-student-01.css.json.gz +0 -0
  1760. package/dist/tokens/source/cssApi/colors-student-01.scss.json +10 -10
  1761. package/dist/tokens/source/cssApi/colors-student-01.scss.json.gz +0 -0
  1762. package/dist/tokens/source/cssApi/colors-student-02.css.json +10 -10
  1763. package/dist/tokens/source/cssApi/colors-student-02.css.json.gz +0 -0
  1764. package/dist/tokens/source/cssApi/colors-student-02.scss.json +10 -10
  1765. package/dist/tokens/source/cssApi/colors-student-02.scss.json.gz +0 -0
  1766. package/dist/tokens/source/cssApi/colors-student-03.css.json +10 -10
  1767. package/dist/tokens/source/cssApi/colors-student-03.css.json.gz +0 -0
  1768. package/dist/tokens/source/cssApi/colors-student-03.scss.json +10 -10
  1769. package/dist/tokens/source/cssApi/colors-student-03.scss.json.gz +0 -0
  1770. package/dist/tokens/source/cssApi/colors-student-04.css.json +10 -10
  1771. package/dist/tokens/source/cssApi/colors-student-04.css.json.gz +0 -0
  1772. package/dist/tokens/source/cssApi/colors-student-04.scss.json +10 -10
  1773. package/dist/tokens/source/cssApi/colors-student-04.scss.json.gz +0 -0
  1774. package/dist/tokens/source/cssApi/colors-student-05.css.json +10 -10
  1775. package/dist/tokens/source/cssApi/colors-student-05.css.json.gz +0 -0
  1776. package/dist/tokens/source/cssApi/colors-student-05.scss.json +10 -10
  1777. package/dist/tokens/source/cssApi/colors-student-05.scss.json.gz +0 -0
  1778. package/dist/tokens/source/cssApi/colors-student-06.css.json +10 -10
  1779. package/dist/tokens/source/cssApi/colors-student-06.css.json.gz +0 -0
  1780. package/dist/tokens/source/cssApi/colors-student-06.scss.json +10 -10
  1781. package/dist/tokens/source/cssApi/colors-student-06.scss.json.gz +0 -0
  1782. package/dist/tokens/source/cssApi/colors-student-07.css.json +10 -10
  1783. package/dist/tokens/source/cssApi/colors-student-07.css.json.gz +0 -0
  1784. package/dist/tokens/source/cssApi/colors-student-07.scss.json +10 -10
  1785. package/dist/tokens/source/cssApi/colors-student-07.scss.json.gz +0 -0
  1786. package/dist/tokens/source/cssApi/colors-student-08.css.json +10 -10
  1787. package/dist/tokens/source/cssApi/colors-student-08.css.json.gz +0 -0
  1788. package/dist/tokens/source/cssApi/colors-student-08.scss.json +10 -10
  1789. package/dist/tokens/source/cssApi/colors-student-08.scss.json.gz +0 -0
  1790. package/dist/tokens/source/cssApi/colors-student-09.css.json +10 -10
  1791. package/dist/tokens/source/cssApi/colors-student-09.css.json.gz +0 -0
  1792. package/dist/tokens/source/cssApi/colors-student-09.scss.json +10 -10
  1793. package/dist/tokens/source/cssApi/colors-student-09.scss.json.gz +0 -0
  1794. package/dist/tokens/source/cssApi/colors-student-092.css.json +10 -10
  1795. package/dist/tokens/source/cssApi/colors-student-092.css.json.gz +0 -0
  1796. package/dist/tokens/source/cssApi/colors-student-092.scss.json +10 -10
  1797. package/dist/tokens/source/cssApi/colors-student-092.scss.json.gz +0 -0
  1798. package/dist/tokens/source/cssApi/colors-student-095.css.json +10 -10
  1799. package/dist/tokens/source/cssApi/colors-student-095.css.json.gz +0 -0
  1800. package/dist/tokens/source/cssApi/colors-student-095.scss.json +10 -10
  1801. package/dist/tokens/source/cssApi/colors-student-095.scss.json.gz +0 -0
  1802. package/dist/tokens/source/cssApi/colors-success-.css.json +10 -10
  1803. package/dist/tokens/source/cssApi/colors-success-.css.json.gz +0 -0
  1804. package/dist/tokens/source/cssApi/colors-success-.scss.json +10 -10
  1805. package/dist/tokens/source/cssApi/colors-success-.scss.json.gz +0 -0
  1806. package/dist/tokens/source/cssApi/colors-success-dark.css.json +10 -10
  1807. package/dist/tokens/source/cssApi/colors-success-dark.css.json.gz +0 -0
  1808. package/dist/tokens/source/cssApi/colors-success-dark.scss.json +10 -10
  1809. package/dist/tokens/source/cssApi/colors-success-dark.scss.json.gz +0 -0
  1810. package/dist/tokens/source/cssApi/colors-success-light.css.json +10 -10
  1811. package/dist/tokens/source/cssApi/colors-success-light.css.json.gz +0 -0
  1812. package/dist/tokens/source/cssApi/colors-success-light.scss.json +10 -10
  1813. package/dist/tokens/source/cssApi/colors-success-light.scss.json.gz +0 -0
  1814. package/dist/tokens/source/cssApi/colors-warning-.css.json +10 -10
  1815. package/dist/tokens/source/cssApi/colors-warning-.css.json.gz +0 -0
  1816. package/dist/tokens/source/cssApi/colors-warning-.scss.json +10 -10
  1817. package/dist/tokens/source/cssApi/colors-warning-.scss.json.gz +0 -0
  1818. package/dist/tokens/source/cssApi/colors-warning-dark.css.json +10 -10
  1819. package/dist/tokens/source/cssApi/colors-warning-dark.css.json.gz +0 -0
  1820. package/dist/tokens/source/cssApi/colors-warning-dark.scss.json +10 -10
  1821. package/dist/tokens/source/cssApi/colors-warning-dark.scss.json.gz +0 -0
  1822. package/dist/tokens/source/cssApi/colors-warning-light.css.json +10 -10
  1823. package/dist/tokens/source/cssApi/colors-warning-light.css.json.gz +0 -0
  1824. package/dist/tokens/source/cssApi/colors-warning-light.scss.json +10 -10
  1825. package/dist/tokens/source/cssApi/colors-warning-light.scss.json.gz +0 -0
  1826. package/dist/tokens/source/cssApi.css +1440 -1790
  1827. package/dist/tokens/source/cssApi.css.gz +0 -0
  1828. package/dist/tokens/source/cssApi.css.json +1440 -1536
  1829. package/dist/tokens/source/cssApi.css.json.gz +0 -0
  1830. package/dist/tokens/source/cssApi.scss +1440 -1440
  1831. package/dist/tokens/source/cssApi.scss.json +1440 -1440
  1832. package/dist/tokens/source/cssApi.scss.json.gz +0 -0
  1833. package/dist/tokens/source/cssPropertiesApi.css +50 -60
  1834. package/dist/tokens/source/cssPropertiesApi.css.gz +0 -0
  1835. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center-body.json +10 -0
  1836. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center-body.json.gz +0 -0
  1837. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center-heading.json +10 -0
  1838. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center-heading.json.gz +0 -0
  1839. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center-scw-link-label.json +10 -0
  1840. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center-scw-link-label.json.gz +0 -0
  1841. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center-scw-link-left-icon.json +10 -0
  1842. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center-scw-link-left-icon.json.gz +0 -0
  1843. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center-scw-link-right-icon.json +10 -0
  1844. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center-scw-link-right-icon.json.gz +0 -0
  1845. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center-scw-link.json +10 -0
  1846. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center-scw-link.json.gz +0 -0
  1847. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center.json +10 -0
  1848. package/dist/tokens/source/htmlStubs/components-scw-block-alignment-center.json.gz +0 -0
  1849. package/dist/tokens/source/htmlStubs/components-scw-block-default-body.json +10 -0
  1850. package/dist/tokens/source/htmlStubs/components-scw-block-default-body.json.gz +0 -0
  1851. package/dist/tokens/source/htmlStubs/components-scw-block-default-heading.json +10 -0
  1852. package/dist/tokens/source/htmlStubs/components-scw-block-default-heading.json.gz +0 -0
  1853. package/dist/tokens/source/htmlStubs/components-scw-block-default-scw-link-label.json +10 -0
  1854. package/dist/tokens/source/htmlStubs/components-scw-block-default-scw-link-label.json.gz +0 -0
  1855. package/dist/tokens/source/htmlStubs/components-scw-block-default-scw-link-left-icon.json +10 -0
  1856. package/dist/tokens/source/htmlStubs/components-scw-block-default-scw-link-left-icon.json.gz +0 -0
  1857. package/dist/tokens/source/htmlStubs/components-scw-block-default-scw-link-right-icon.json +10 -0
  1858. package/dist/tokens/source/htmlStubs/components-scw-block-default-scw-link-right-icon.json.gz +0 -0
  1859. package/dist/tokens/source/htmlStubs/components-scw-block-default-scw-link.json +10 -0
  1860. package/dist/tokens/source/htmlStubs/components-scw-block-default-scw-link.json.gz +0 -0
  1861. package/dist/tokens/source/htmlStubs/components-scw-block-default.json +10 -0
  1862. package/dist/tokens/source/htmlStubs/components-scw-block-default.json.gz +0 -0
  1863. package/dist/tokens/source/htmlStubs/components-scw-block.json +10 -0
  1864. package/dist/tokens/source/htmlStubs/components-scw-block.json.gz +0 -0
  1865. package/dist/tokens/source/htmlStubs.json +150 -0
  1866. package/dist/tokens/source/htmlStubs.json.gz +0 -0
  1867. package/dist/tokens/source/jsCss.js +1 -1
  1868. package/dist/tokens/source/jsCss.js.gz +0 -0
  1869. package/dist/tokens/source/jsCssGenerator.js +1 -1
  1870. package/dist/tokens/source/jsCssGenerator.js.gz +0 -0
  1871. package/dist/tokens/source/jsCssGeneratorSansAssets.js +1 -1
  1872. package/dist/tokens/source/jsCssGeneratorSansAssets.js.gz +0 -0
  1873. package/dist/tokens/source/scssVariables/components-scw-block-.json +157 -0
  1874. package/dist/tokens/source/scssVariables/components-scw-block-.json.gz +0 -0
  1875. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-.json +122 -0
  1876. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-.json.gz +0 -0
  1877. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-body-.json +157 -0
  1878. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-body-.json.gz +0 -0
  1879. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-heading-.json +157 -0
  1880. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-heading-.json.gz +0 -0
  1881. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-scw-link-.json +147 -0
  1882. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-scw-link-.json.gz +0 -0
  1883. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-scw-link-label-.json +157 -0
  1884. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-scw-link-label-.json.gz +0 -0
  1885. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-scw-link-left-icon-.json +147 -0
  1886. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-scw-link-left-icon-.json.gz +0 -0
  1887. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-scw-link-right-icon-.json +142 -0
  1888. package/dist/tokens/source/scssVariables/components-scw-block-alignment-center-scw-link-right-icon-.json.gz +0 -0
  1889. package/dist/tokens/source/scssVariables/components-scw-block-default-.json +122 -0
  1890. package/dist/tokens/source/scssVariables/components-scw-block-default-.json.gz +0 -0
  1891. package/dist/tokens/source/scssVariables/components-scw-block-default-body-.json +157 -0
  1892. package/dist/tokens/source/scssVariables/components-scw-block-default-body-.json.gz +0 -0
  1893. package/dist/tokens/source/scssVariables/components-scw-block-default-heading-.json +157 -0
  1894. package/dist/tokens/source/scssVariables/components-scw-block-default-heading-.json.gz +0 -0
  1895. package/dist/tokens/source/scssVariables/components-scw-block-default-scw-link-.json +147 -0
  1896. package/dist/tokens/source/scssVariables/components-scw-block-default-scw-link-.json.gz +0 -0
  1897. package/dist/tokens/source/scssVariables/components-scw-block-default-scw-link-label-.json +157 -0
  1898. package/dist/tokens/source/scssVariables/components-scw-block-default-scw-link-label-.json.gz +0 -0
  1899. package/dist/tokens/source/scssVariables/components-scw-block-default-scw-link-left-icon-.json +147 -0
  1900. package/dist/tokens/source/scssVariables/components-scw-block-default-scw-link-left-icon-.json.gz +0 -0
  1901. package/dist/tokens/source/scssVariables/components-scw-block-default-scw-link-right-icon-.json +142 -0
  1902. package/dist/tokens/source/scssVariables/components-scw-block-default-scw-link-right-icon-.json.gz +0 -0
  1903. package/dist/tokens/source/scssVariables/components-scw-rich-text-default-text-.json +2 -2
  1904. package/dist/tokens/source/scssVariables/components-scw-rich-text-default-text-.json.gz +0 -0
  1905. package/dist/tokens/source/scssVariables/components-scw-rich-text-size-h2-text-.json +2 -2
  1906. package/dist/tokens/source/scssVariables/components-scw-rich-text-size-h2-text-.json.gz +0 -0
  1907. package/dist/tokens/source/scssVariables/components-scw-rich-text-size-h3-text-.json +2 -2
  1908. package/dist/tokens/source/scssVariables/components-scw-rich-text-size-h3-text-.json.gz +0 -0
  1909. package/dist/tokens/source/scssVariables.json +2221 -6
  1910. package/dist/tokens/source/scssVariables.json.gz +0 -0
  1911. package/dist/tokens/source/scssVariables.scss +440 -4
  1912. package/dist/tokens/source/tokens.json +1998 -6
  1913. package/dist/tokens/source/tokens.json.gz +0 -0
  1914. package/dist/tokens/styles.css +1440 -1790
  1915. package/dist/tokens/styles.css.gz +0 -0
  1916. package/dist/tokens/styles.scss +1440 -1440
  1917. package/dist/tokens/stylesEmbedded.css +1440 -1790
  1918. package/dist/tokens/stylesEmbedded.css.gz +0 -0
  1919. package/dist/tokens/tokens.html +2 -2
  1920. package/dist/tokens/tokens.html.gz +0 -0
  1921. package/dist/utils/observers/intersectionObserverSingleton.js +1 -1
  1922. package/dist/utils/observers/intersectionObserverSingleton.js.gz +0 -0
  1923. package/dist/utils/suffix.js +1 -1
  1924. package/dist/utils/suffix.js.gz +0 -0
  1925. package/dist/utils/testing/colorContrast.js +1 -1
  1926. package/dist/utils/testing/colorContrast.js.gz +0 -0
  1927. package/dist/utils/testing/expectLink.js +1 -1
  1928. package/dist/utils/testing/expectLink.js.gz +0 -0
  1929. package/dist/utils/testing/ssrTesting.js +1 -1
  1930. package/dist/utils/testing/ssrTesting.js.gz +0 -0
  1931. package/dist/utils/testing/testButtonADA.js +1 -1
  1932. package/dist/utils/testing/testButtonADA.js.gz +0 -0
  1933. package/package.json +5 -3
  1934. package/scripts/themes.mjs +68 -0
  1935. package/scripts/types.mjs +1 -1
  1936. package/dist/chunks/axe.min.U7WNHTHQ.js +0 -2
  1937. package/dist/chunks/axe.min.U7WNHTHQ.js.gz +0 -0
  1938. package/dist/chunks/chunk.223WJTWZ.js +0 -6
  1939. package/dist/chunks/chunk.223WJTWZ.js.gz +0 -0
  1940. package/dist/chunks/chunk.223WJTWZ.js.map +0 -7
  1941. package/dist/chunks/chunk.223WJTWZ.js.map.gz +0 -0
  1942. package/dist/chunks/chunk.2G75FJJM.js.gz +0 -0
  1943. package/dist/chunks/chunk.3CYTTNE6.js.gz +0 -0
  1944. package/dist/chunks/chunk.3CYTTNE6.js.map +0 -7
  1945. package/dist/chunks/chunk.3CYTTNE6.js.map.gz +0 -0
  1946. package/dist/chunks/chunk.3IG37SCP.js +0 -12
  1947. package/dist/chunks/chunk.3IG37SCP.js.gz +0 -0
  1948. package/dist/chunks/chunk.3IG37SCP.js.map +0 -7
  1949. package/dist/chunks/chunk.3IG37SCP.js.map.gz +0 -0
  1950. package/dist/chunks/chunk.3UEHBCHI.js.gz +0 -0
  1951. package/dist/chunks/chunk.3UEHBCHI.js.map +0 -7
  1952. package/dist/chunks/chunk.3UEHBCHI.js.map.gz +0 -0
  1953. package/dist/chunks/chunk.4I4XZ5J5.js +0 -2
  1954. package/dist/chunks/chunk.4I4XZ5J5.js.gz +0 -0
  1955. package/dist/chunks/chunk.4ZMVEKNB.js +0 -2
  1956. package/dist/chunks/chunk.4ZMVEKNB.js.gz +0 -0
  1957. package/dist/chunks/chunk.56DNAIKT.js.gz +0 -0
  1958. package/dist/chunks/chunk.5XHBQIIV.js +0 -2
  1959. package/dist/chunks/chunk.5XHBQIIV.js.gz +0 -0
  1960. package/dist/chunks/chunk.6JFSOWAB.js +0 -7
  1961. package/dist/chunks/chunk.6JFSOWAB.js.gz +0 -0
  1962. package/dist/chunks/chunk.AP76NHYK.js.gz +0 -0
  1963. package/dist/chunks/chunk.B5H2OMW3.js +0 -2
  1964. package/dist/chunks/chunk.B5H2OMW3.js.gz +0 -0
  1965. package/dist/chunks/chunk.B5H2OMW3.js.map +0 -7
  1966. package/dist/chunks/chunk.B5H2OMW3.js.map.gz +0 -0
  1967. package/dist/chunks/chunk.DSSTKNQ5.js.gz +0 -0
  1968. package/dist/chunks/chunk.DT2Z4DK4.js.gz +0 -0
  1969. package/dist/chunks/chunk.DT2Z4DK4.js.map.gz +0 -0
  1970. package/dist/chunks/chunk.DXDJI6UK.js.gz +0 -0
  1971. package/dist/chunks/chunk.FPSZIBPL.js +0 -2
  1972. package/dist/chunks/chunk.FPSZIBPL.js.gz +0 -0
  1973. package/dist/chunks/chunk.FSF6MEVS.js +0 -2
  1974. package/dist/chunks/chunk.FSF6MEVS.js.gz +0 -0
  1975. package/dist/chunks/chunk.FSF6MEVS.js.map +0 -7
  1976. package/dist/chunks/chunk.FSF6MEVS.js.map.gz +0 -0
  1977. package/dist/chunks/chunk.GAYXGND2.js.gz +0 -0
  1978. package/dist/chunks/chunk.GO5WDIBC.js.gz +0 -0
  1979. package/dist/chunks/chunk.GO5WDIBC.js.map +0 -7
  1980. package/dist/chunks/chunk.GO5WDIBC.js.map.gz +0 -0
  1981. package/dist/chunks/chunk.GWYCKHBI.js.gz +0 -0
  1982. package/dist/chunks/chunk.GWYCKHBI.js.map +0 -7
  1983. package/dist/chunks/chunk.GWYCKHBI.js.map.gz +0 -0
  1984. package/dist/chunks/chunk.HFYYS74W.js +0 -2
  1985. package/dist/chunks/chunk.HFYYS74W.js.gz +0 -0
  1986. package/dist/chunks/chunk.HHQBCY44.js.gz +0 -0
  1987. package/dist/chunks/chunk.HHQBCY44.js.map.gz +0 -0
  1988. package/dist/chunks/chunk.HYZZIWTD.js +0 -2
  1989. package/dist/chunks/chunk.HYZZIWTD.js.gz +0 -0
  1990. package/dist/chunks/chunk.I52FNVGQ.js +0 -4
  1991. package/dist/chunks/chunk.I52FNVGQ.js.gz +0 -0
  1992. package/dist/chunks/chunk.I52FNVGQ.js.map.gz +0 -0
  1993. package/dist/chunks/chunk.IESW767J.js +0 -4
  1994. package/dist/chunks/chunk.IESW767J.js.gz +0 -0
  1995. package/dist/chunks/chunk.IESW767J.js.map.gz +0 -0
  1996. package/dist/chunks/chunk.IOSK3BT6.js.gz +0 -0
  1997. package/dist/chunks/chunk.IOSK3BT6.js.map +0 -7
  1998. package/dist/chunks/chunk.IOSK3BT6.js.map.gz +0 -0
  1999. package/dist/chunks/chunk.J7SGRJXX.js.gz +0 -0
  2000. package/dist/chunks/chunk.JAF2EZZL.js +0 -30
  2001. package/dist/chunks/chunk.JAF2EZZL.js.gz +0 -0
  2002. package/dist/chunks/chunk.JAF2EZZL.js.map +0 -7
  2003. package/dist/chunks/chunk.JAF2EZZL.js.map.gz +0 -0
  2004. package/dist/chunks/chunk.LL2Q36MD.js.gz +0 -0
  2005. package/dist/chunks/chunk.LXVTLQA3.js.gz +0 -0
  2006. package/dist/chunks/chunk.MSNTYPQM.js.gz +0 -0
  2007. package/dist/chunks/chunk.MSNTYPQM.js.map.gz +0 -0
  2008. package/dist/chunks/chunk.MVMLR5MM.js +0 -2
  2009. package/dist/chunks/chunk.MVMLR5MM.js.gz +0 -0
  2010. package/dist/chunks/chunk.MZV3L5GG.js.gz +0 -0
  2011. package/dist/chunks/chunk.MZV3L5GG.js.map +0 -7
  2012. package/dist/chunks/chunk.MZV3L5GG.js.map.gz +0 -0
  2013. package/dist/chunks/chunk.NBLIIWTN.js.gz +0 -0
  2014. package/dist/chunks/chunk.NDALVOT5.js.gz +0 -0
  2015. package/dist/chunks/chunk.NDALVOT5.js.map.gz +0 -0
  2016. package/dist/chunks/chunk.OE3AD43L.js +0 -2
  2017. package/dist/chunks/chunk.OE3AD43L.js.gz +0 -0
  2018. package/dist/chunks/chunk.OWB3BEDE.js +0 -2
  2019. package/dist/chunks/chunk.OWB3BEDE.js.gz +0 -0
  2020. package/dist/chunks/chunk.OZDISW2G.js.gz +0 -0
  2021. package/dist/chunks/chunk.PAOW42NT.js +0 -2
  2022. package/dist/chunks/chunk.PAOW42NT.js.gz +0 -0
  2023. package/dist/chunks/chunk.PGPT6RSE.js +0 -2
  2024. package/dist/chunks/chunk.PGPT6RSE.js.gz +0 -0
  2025. package/dist/chunks/chunk.PKA6D7UK.js +0 -11
  2026. package/dist/chunks/chunk.PKA6D7UK.js.gz +0 -0
  2027. package/dist/chunks/chunk.PKA6D7UK.js.map +0 -7
  2028. package/dist/chunks/chunk.PKA6D7UK.js.map.gz +0 -0
  2029. package/dist/chunks/chunk.PKWXMRDA.js.gz +0 -0
  2030. package/dist/chunks/chunk.Q2BPJFNX.js +0 -12
  2031. package/dist/chunks/chunk.Q2BPJFNX.js.gz +0 -0
  2032. package/dist/chunks/chunk.Q2BPJFNX.js.map +0 -7
  2033. package/dist/chunks/chunk.Q2BPJFNX.js.map.gz +0 -0
  2034. package/dist/chunks/chunk.R2UBRQPG.js +0 -2
  2035. package/dist/chunks/chunk.R2UBRQPG.js.gz +0 -0
  2036. package/dist/chunks/chunk.RDG6NQJA.js +0 -2
  2037. package/dist/chunks/chunk.RDG6NQJA.js.gz +0 -0
  2038. package/dist/chunks/chunk.REPWARFP.js +0 -2
  2039. package/dist/chunks/chunk.REPWARFP.js.gz +0 -0
  2040. package/dist/chunks/chunk.RSR7WC4R.js.gz +0 -0
  2041. package/dist/chunks/chunk.RSR7WC4R.js.map +0 -7
  2042. package/dist/chunks/chunk.RSR7WC4R.js.map.gz +0 -0
  2043. package/dist/chunks/chunk.RV2KOT76.js.gz +0 -0
  2044. package/dist/chunks/chunk.RV2KOT76.js.map +0 -7
  2045. package/dist/chunks/chunk.RV2KOT76.js.map.gz +0 -0
  2046. package/dist/chunks/chunk.T7YSJJF3.js +0 -2
  2047. package/dist/chunks/chunk.T7YSJJF3.js.gz +0 -0
  2048. package/dist/chunks/chunk.UXIAMI3F.js.gz +0 -0
  2049. package/dist/chunks/chunk.UXIAMI3F.js.map +0 -7
  2050. package/dist/chunks/chunk.UXIAMI3F.js.map.gz +0 -0
  2051. package/dist/chunks/chunk.XWFI56OY.js.gz +0 -0
  2052. package/dist/chunks/chunk.XWFI56OY.js.map.gz +0 -0
  2053. package/dist/chunks/scopedElementsWrapper.235XAAWV.js.gz +0 -0
  2054. package/dist/chunks/scopedElementsWrapper.235XAAWV.js.map +0 -7
  2055. package/dist/chunks/scopedElementsWrapper.235XAAWV.js.map.gz +0 -0
  2056. package/dist/tokens/source/cssApi/scw-theme-business-hook.css.json +0 -6
  2057. package/dist/tokens/source/cssApi/scw-theme-business-hook.css.json.gz +0 -0
  2058. package/dist/tokens/source/cssApi/scw-theme-checking-hook.css.json +0 -6
  2059. package/dist/tokens/source/cssApi/scw-theme-checking-hook.css.json.gz +0 -0
  2060. package/dist/tokens/source/cssApi/scw-theme-credit-cards-hook.css.json +0 -6
  2061. package/dist/tokens/source/cssApi/scw-theme-credit-cards-hook.css.json.gz +0 -0
  2062. package/dist/tokens/source/cssApi/scw-theme-error-hook.css.json +0 -6
  2063. package/dist/tokens/source/cssApi/scw-theme-error-hook.css.json.gz +0 -0
  2064. package/dist/tokens/source/cssApi/scw-theme-grey-hook.css.json +0 -6
  2065. package/dist/tokens/source/cssApi/scw-theme-grey-hook.css.json.gz +0 -0
  2066. package/dist/tokens/source/cssApi/scw-theme-heloc-hook.css.json +0 -6
  2067. package/dist/tokens/source/cssApi/scw-theme-heloc-hook.css.json.gz +0 -0
  2068. package/dist/tokens/source/cssApi/scw-theme-information-hook.css.json +0 -6
  2069. package/dist/tokens/source/cssApi/scw-theme-information-hook.css.json.gz +0 -0
  2070. package/dist/tokens/source/cssApi/scw-theme-investments-hook.css.json +0 -6
  2071. package/dist/tokens/source/cssApi/scw-theme-investments-hook.css.json.gz +0 -0
  2072. package/dist/tokens/source/cssApi/scw-theme-mortgage-hook.css.json +0 -6
  2073. package/dist/tokens/source/cssApi/scw-theme-mortgage-hook.css.json.gz +0 -0
  2074. package/dist/tokens/source/cssApi/scw-theme-personal-hook.css.json +0 -6
  2075. package/dist/tokens/source/cssApi/scw-theme-personal-hook.css.json.gz +0 -0
  2076. package/dist/tokens/source/cssApi/scw-theme-primary-hook.css.json +0 -6
  2077. package/dist/tokens/source/cssApi/scw-theme-primary-hook.css.json.gz +0 -0
  2078. package/dist/tokens/source/cssApi/scw-theme-red-shoes-hook.css.json +0 -6
  2079. package/dist/tokens/source/cssApi/scw-theme-red-shoes-hook.css.json.gz +0 -0
  2080. package/dist/tokens/source/cssApi/scw-theme-savings-hook.css.json +0 -6
  2081. package/dist/tokens/source/cssApi/scw-theme-savings-hook.css.json.gz +0 -0
  2082. package/dist/tokens/source/cssApi/scw-theme-student-hook.css.json +0 -6
  2083. package/dist/tokens/source/cssApi/scw-theme-student-hook.css.json.gz +0 -0
  2084. package/dist/tokens/source/cssApi/scw-theme-success-hook.css.json +0 -6
  2085. package/dist/tokens/source/cssApi/scw-theme-success-hook.css.json.gz +0 -0
  2086. package/dist/tokens/source/cssApi/scw-theme-warning-hook.css.json +0 -6
  2087. package/dist/tokens/source/cssApi/scw-theme-warning-hook.css.json.gz +0 -0
  2088. /package/dist/chunks/{axe.min.U7WNHTHQ.js.map → axe.min.TNGPDQQL.js.map} +0 -0
  2089. /package/dist/chunks/{axe.min.U7WNHTHQ.js.map.gz → axe.min.TNGPDQQL.js.map.gz} +0 -0
  2090. /package/dist/chunks/{chunk.REPWARFP.js.map → chunk.25GCIBEO.js.map} +0 -0
  2091. /package/dist/chunks/{chunk.FPSZIBPL.js.map → chunk.3ADOQYW7.js.map} +0 -0
  2092. /package/dist/chunks/{chunk.HYZZIWTD.js.map → chunk.4SHGXHPZ.js.map} +0 -0
  2093. /package/dist/chunks/{chunk.HYZZIWTD.js.map.gz → chunk.4SHGXHPZ.js.map.gz} +0 -0
  2094. /package/dist/chunks/{chunk.REPWARFP.js.map.gz → chunk.6K7KZV7E.js.map.gz} +0 -0
  2095. /package/dist/chunks/{chunk.DXDJI6UK.js.map → chunk.6X3T3GLO.js.map} +0 -0
  2096. /package/dist/chunks/{chunk.DXDJI6UK.js.map.gz → chunk.6X3T3GLO.js.map.gz} +0 -0
  2097. /package/dist/chunks/{chunk.HFYYS74W.js.map → chunk.72352V5G.js.map} +0 -0
  2098. /package/dist/chunks/{chunk.HFYYS74W.js.map.gz → chunk.72352V5G.js.map.gz} +0 -0
  2099. /package/dist/chunks/{chunk.OE3AD43L.js.map → chunk.ASIY7N5H.js.map} +0 -0
  2100. /package/dist/chunks/{chunk.OE3AD43L.js.map.gz → chunk.ASIY7N5H.js.map.gz} +0 -0
  2101. /package/dist/chunks/{chunk.PGPT6RSE.js.map → chunk.BSNM2OO4.js.map} +0 -0
  2102. /package/dist/chunks/{chunk.PGPT6RSE.js.map.gz → chunk.BSNM2OO4.js.map.gz} +0 -0
  2103. /package/dist/chunks/{chunk.OWB3BEDE.js.map → chunk.DDSE2OQO.js.map} +0 -0
  2104. /package/dist/chunks/{chunk.56DNAIKT.js.map → chunk.DOQM3PL5.js.map} +0 -0
  2105. /package/dist/chunks/{chunk.T7YSJJF3.js.map → chunk.EZS25Y66.js.map} +0 -0
  2106. /package/dist/chunks/{chunk.T7YSJJF3.js.map.gz → chunk.EZS25Y66.js.map.gz} +0 -0
  2107. /package/dist/chunks/{chunk.5XHBQIIV.js.map → chunk.H6YAQOOT.js.map} +0 -0
  2108. /package/dist/chunks/{chunk.5XHBQIIV.js.map.gz → chunk.H6YAQOOT.js.map.gz} +0 -0
  2109. /package/dist/chunks/{chunk.J7SGRJXX.js.map → chunk.HMO3FTOO.js.map} +0 -0
  2110. /package/dist/chunks/{chunk.J7SGRJXX.js.map.gz → chunk.HMO3FTOO.js.map.gz} +0 -0
  2111. /package/dist/chunks/{chunk.R2UBRQPG.js.map → chunk.INDQCPIZ.js.map} +0 -0
  2112. /package/dist/chunks/{chunk.R2UBRQPG.js.map.gz → chunk.INDQCPIZ.js.map.gz} +0 -0
  2113. /package/dist/chunks/{chunk.2G75FJJM.js.map → chunk.IUKZ466E.js.map} +0 -0
  2114. /package/dist/chunks/{chunk.2G75FJJM.js.map.gz → chunk.IUKZ466E.js.map.gz} +0 -0
  2115. /package/dist/chunks/{chunk.MVMLR5MM.js.map → chunk.IVLH67DF.js.map} +0 -0
  2116. /package/dist/chunks/{chunk.MVMLR5MM.js.map.gz → chunk.IVLH67DF.js.map.gz} +0 -0
  2117. /package/dist/chunks/{chunk.OWB3BEDE.js.map.gz → chunk.LM4UOUIV.js.map.gz} +0 -0
  2118. /package/dist/chunks/{chunk.AP76NHYK.js.map → chunk.LPGZH2LO.js.map} +0 -0
  2119. /package/dist/chunks/{chunk.AP76NHYK.js.map.gz → chunk.LPGZH2LO.js.map.gz} +0 -0
  2120. /package/dist/chunks/{chunk.4I4XZ5J5.js.map → chunk.NGNNUTXC.js.map} +0 -0
  2121. /package/dist/chunks/{chunk.4I4XZ5J5.js.map.gz → chunk.NGNNUTXC.js.map.gz} +0 -0
  2122. /package/dist/chunks/{chunk.NBLIIWTN.js.map → chunk.NRK7TWEL.js.map} +0 -0
  2123. /package/dist/chunks/{chunk.NBLIIWTN.js.map.gz → chunk.NRK7TWEL.js.map.gz} +0 -0
  2124. /package/dist/chunks/{chunk.FPSZIBPL.js.map.gz → chunk.OUEFDOQF.js.map.gz} +0 -0
  2125. /package/dist/chunks/{chunk.PAOW42NT.js.map → chunk.PO2TECEX.js.map} +0 -0
  2126. /package/dist/chunks/{chunk.6JFSOWAB.js.map → chunk.QVCFAUL2.js.map} +0 -0
  2127. /package/dist/chunks/{chunk.6JFSOWAB.js.map.gz → chunk.QVCFAUL2.js.map.gz} +0 -0
  2128. /package/dist/chunks/{chunk.RDG6NQJA.js.map → chunk.RCJOUML4.js.map} +0 -0
  2129. /package/dist/chunks/{chunk.PAOW42NT.js.map.gz → chunk.U2UM7J62.js.map.gz} +0 -0
  2130. /package/dist/chunks/{chunk.4ZMVEKNB.js.map → chunk.U4YWIIVA.js.map} +0 -0
  2131. /package/dist/chunks/{chunk.4ZMVEKNB.js.map.gz → chunk.U4YWIIVA.js.map.gz} +0 -0
  2132. /package/dist/chunks/{chunk.LXVTLQA3.js.map → chunk.V63GL6WR.js.map} +0 -0
  2133. /package/dist/chunks/{chunk.LXVTLQA3.js.map.gz → chunk.V63GL6WR.js.map.gz} +0 -0
  2134. /package/dist/chunks/{chunk.56DNAIKT.js.map.gz → chunk.VMTK44OP.js.map.gz} +0 -0
  2135. /package/dist/chunks/{chunk.RDG6NQJA.js.map.gz → chunk.W4RTP3FH.js.map.gz} +0 -0
@@ -0,0 +1,31 @@
1
+ import{a as l}from"./chunk.HMMADQ7Y.js";import{a as i,c as L}from"./chunk.DEJTQKIS.js";import{a as Y}from"./chunk.GOLR2K45.js";import{g as Z}from"./chunk.5YJY6NT6.js";var m=(c,I)=>I.kind==="method"&&I.descriptor&&!("value"in I.descriptor)?{...I,finisher(g){g.createProperty(I.key,c)}}:{kind:"field",key:Symbol(),placement:"own",descriptor:{},originalKey:I.key,initializer(){typeof I.initializer=="function"&&(this[I.key]=I.initializer.call(this))},finisher(g){g.createProperty(I.key,c)}};function W(c){return(I,g)=>g!==void 0?((C,t,b)=>{t.constructor.createProperty(b,C)})(c,I,g):m(c,I)}function B(c){return W({...c,state:!0})}var A=({finisher:c,descriptor:I})=>(g,C)=>{var t;if(C===void 0){let b=(t=g.originalKey)!==null&&t!==void 0?t:g.key,X=I!=null?{kind:"method",placement:"prototype",key:b,descriptor:I(g.key)}:{...g,key:b};return c!=null&&(X.finisher=function(N){c(N,b)}),X}{let b=g.constructor;I!==void 0&&Object.defineProperty(g,C,I(C)),c==null||c(b,C)}};function j(c,I){return A({descriptor:g=>{let C={get(){var t,b;return(b=(t=this.renderRoot)===null||t===void 0?void 0:t.querySelector(c))!==null&&b!==void 0?b:null},enumerable:!0,configurable:!0};if(I){let t=typeof g=="symbol"?Symbol():"__"+g;C.get=function(){var b,X;return this[t]===void 0&&(this[t]=(X=(b=this.renderRoot)===null||b===void 0?void 0:b.querySelector(c))!==null&&X!==void 0?X:null),this[t]}}return C}})}var y,S=((y=window.HTMLSlotElement)===null||y===void 0?void 0:y.prototype.assignedElements)!=null?(c,I)=>c.assignedElements(I):(c,I)=>c.assignedNodes(I).filter(g=>g.nodeType===Node.ELEMENT_NODE);var d=i`
2
+ :host {
3
+ /* scw element */
4
+ position: relative;
5
+ box-sizing: border-box;
6
+ --margin-right: initial;
7
+ --margin-bottom: initial;
8
+ --gap-h-int: initial;
9
+ --gap-v-int: initial;
10
+ margin-right: var(--margin-right, var(--gap-h-int, initial));
11
+ margin-bottom: var(--margin-bottom, var(--gap-v-int, initial));
12
+ display: block;
13
+ }
14
+
15
+ :host([warning]) {
16
+ outline: 2px solid red !important;
17
+ }
18
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL1VzZXJzL3Njb3R0cm91c2UvV29ya3NwYWNlL3NjdS13ZWItY29tcG9uZW50cy13ZWJzaXRlcy9zY3Utd2ViLWNvbXBvbmVudHMtd2Vic2l0ZXMvc3JjL3Njdy1jb21wb25lbnQvc2NzcyIsInNvdXJjZXMiOlsic2N3LWNvbXBvbmVudC5zY3NzIiwiLi4vLi4vLi4vZGlzdC90b2tlbnMvc291cmNlL2Nzc0FwaS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0FDMm90QkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7OztBRGpwdEJGO0VBQ0UiLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlIFwiLi4vLi4vLi4vZGlzdC90b2tlbnMvc291cmNlL2Nzc0FwaVwiIGFzIGNzc0FwaTtcblxuOmhvc3Qge1xuICBAaW5jbHVkZSBjc3NBcGkuc2N3LWVsZW1lbnQ7XG59XG5cbjpob3N0KFt3YXJuaW5nXSkge1xuICBvdXRsaW5lOiAycHggc29saWQgcmVkICFpbXBvcnRhbnQ7XG59IiwiXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcHJpbWFyeS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXByaW1hcnktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXByaW1hcnktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcHJpbWFyeS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXByaW1hcnktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXByaW1hcnktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wcmltYXJ5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcHJpbWFyeS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wcmltYXJ5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXByaW1hcnktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXByaW1hcnktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wcmltYXJ5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wcmltYXJ5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXByaW1hcnktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wcmltYXJ5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wcmltYXJ5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcHJpbWFyeS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXByaW1hcnktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcHJpbWFyeS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wcmltYXJ5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wcmltYXJ5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcHJpbWFyeS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcHJpbWFyeS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wcmltYXJ5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcHJpbWFyeS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcHJpbWFyeS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXByaW1hcnktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wcmltYXJ5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXByaW1hcnktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcHJpbWFyeS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcHJpbWFyeS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXByaW1hcnktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXByaW1hcnktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcHJpbWFyeS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXByaW1hcnktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXByaW1hcnktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wcmltYXJ5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcHJpbWFyeS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wcmltYXJ5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXByaW1hcnktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXByaW1hcnktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wcmltYXJ5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wcmltYXJ5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXByaW1hcnktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wcmltYXJ5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wcmltYXJ5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcHJpbWFyeS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXByaW1hcnktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcHJpbWFyeS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wcmltYXJ5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wcmltYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcHJpbWFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcHJpbWFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wcmltYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcHJpbWFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcHJpbWFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXByaW1hcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wcmltYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXByaW1hcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcHJpbWFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcHJpbWFyeS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXByaW1hcnktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXByaW1hcnktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcHJpbWFyeS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXByaW1hcnktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXByaW1hcnktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wcmltYXJ5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcHJpbWFyeS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wcmltYXJ5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXByaW1hcnktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXByaW1hcnktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wcmltYXJ5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wcmltYXJ5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXByaW1hcnktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wcmltYXJ5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wcmltYXJ5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcHJpbWFyeS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXByaW1hcnktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcHJpbWFyeS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wcmltYXJ5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wcmltYXJ5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcHJpbWFyeS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcHJpbWFyeS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wcmltYXJ5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcHJpbWFyeS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcHJpbWFyeS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXByaW1hcnktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wcmltYXJ5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXByaW1hcnktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcHJpbWFyeS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcHJpbWFyeS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXByaW1hcnktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXByaW1hcnktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcHJpbWFyeS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXByaW1hcnktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXByaW1hcnktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wcmltYXJ5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcHJpbWFyeS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wcmltYXJ5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXByaW1hcnktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXByaW1hcnktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcHJpbWFyeS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXByaW1hcnktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXByaW1hcnktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcHJpbWFyeS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXByaW1hcnktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcHJpbWFyeS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wcmltYXJ5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wcmltYXJ5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wcmltYXJ5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcHJpbWFyeS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wcmltYXJ5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcHJpbWFyeS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcHJpbWFyeS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wcmltYXJ5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcHJpbWFyeS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wcmltYXJ5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXByaW1hcnktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXByaW1hcnktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXByaW1hcnktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5LTAwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleS0wMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleS0wMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5LTAwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleS0wMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleS0wMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXktMDAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5LTAwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXktMDAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleS0wMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZ3JleSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZ3JleSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZ3JleSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5LTEwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMTAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleS0xMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0xMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleS0xMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTEwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5LTEwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0xMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleS0xMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTEwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleS0xMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTEwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXktMTAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMTAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5LTEwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0xMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXktMTAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMTAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleS0xMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTEwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZXJyb3IgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWVycm9yICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWVycm9yICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZXJyb3IgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWVycm9yICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWVycm9yICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1lcnJvciAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZXJyb3IgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1lcnJvciAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3IgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWVycm9yICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3IgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWVycm9yLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1lcnJvci1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1lcnJvci1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWVycm9yLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1lcnJvci1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1lcnJvci1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZXJyb3ItbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWVycm9yLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZXJyb3ItbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1lcnJvci1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1lcnJvci1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1lcnJvci1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWVycm9yLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1lcnJvci1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1lcnJvci1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWVycm9yLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWVycm9yLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWVycm9yLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1lcnJvci1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZXJyb3ItZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci13YXJuaW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itd2FybmluZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itd2FybmluZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci13YXJuaW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atd2FybmluZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20td2FybmluZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXdhcm5pbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC13YXJuaW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXdhcm5pbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItd2FybmluZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itd2FybmluZy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXdhcm5pbmctbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItd2FybmluZy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXdhcm5pbmctbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXdhcm5pbmctbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC13YXJuaW5nLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtd2FybmluZy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci13YXJuaW5nLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXdhcm5pbmctbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXdhcm5pbmctZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXdhcm5pbmctZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itd2FybmluZy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXdhcm5pbmctZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXdhcm5pbmctZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20td2FybmluZy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtd2FybmluZy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtd2FybmluZy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXdhcm5pbmctZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci13YXJuaW5nLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN1Y2Nlc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdWNjZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdWNjZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN1Y2Nlc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdWNjZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdWNjZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3VjY2VzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN1Y2Nlc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3VjY2VzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdWNjZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdWNjZXNzLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3VjY2Vzcy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3VjY2Vzcy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdWNjZXNzLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3VjY2Vzcy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3VjY2Vzcy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN1Y2Nlc3MtbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdWNjZXNzLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN1Y2Nlc3MtbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3VjY2Vzcy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3VjY2Vzcy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3VjY2Vzcy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdWNjZXNzLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3VjY2Vzcy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3VjY2Vzcy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdWNjZXNzLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdWNjZXNzLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdWNjZXNzLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3VjY2Vzcy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN1Y2Nlc3MtZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW5mb3JtYXRpb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWluZm9ybWF0aW9uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWluZm9ybWF0aW9uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW5mb3JtYXRpb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWluZm9ybWF0aW9uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWluZm9ybWF0aW9uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbmZvcm1hdGlvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW5mb3JtYXRpb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbmZvcm1hdGlvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWluZm9ybWF0aW9uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbmZvcm1hdGlvbi1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWluZm9ybWF0aW9uLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbmZvcm1hdGlvbi1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbmZvcm1hdGlvbi1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW5mb3JtYXRpb24tbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWluZm9ybWF0aW9uLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW5mb3JtYXRpb24tbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbmZvcm1hdGlvbi1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbmZvcm1hdGlvbi1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbmZvcm1hdGlvbi1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWluZm9ybWF0aW9uLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWluZm9ybWF0aW9uLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWluZm9ybWF0aW9uLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbmZvcm1hdGlvbi1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW5mb3JtYXRpb24tZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pY29uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWljb24gKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWljb24gKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaWNvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaWNvbiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWljb24gKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaWNvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pY29uICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWljb24gKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pY29uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaWNvbiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWljb24gKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaWNvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pY29uICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWljb24gKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taWNvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pY29uICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWljb24gKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWljb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWljb24gKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWljb24gKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pY29uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaWNvbiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWljb24gKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWljb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWljb24gKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaWNvbiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaWNvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pY29uICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaWNvbiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc2Vjb25kYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXNlY29uZGFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXNlY29uZGFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc2Vjb25kYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXNlY29uZGFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXNlY29uZGFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zZWNvbmRhcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc2Vjb25kYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zZWNvbmRhcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXNlY29uZGFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLW1vcnRnYWdlLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1tb3J0Z2FnZS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1tb3J0Z2FnZS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLW1vcnRnYWdlLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1tb3J0Z2FnZS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1tb3J0Z2FnZS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtbW9ydGdhZ2UtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LW1vcnRnYWdlLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItbW9ydGdhZ2UtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1tb3J0Z2FnZS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItbW9ydGdhZ2UtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItbW9ydGdhZ2UtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1tb3J0Z2FnZS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtbW9ydGdhZ2UtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tbW9ydGdhZ2UtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LW1vcnRnYWdlLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1tb3J0Z2FnZS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLW1vcnRnYWdlLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItbW9ydGdhZ2UtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItbW9ydGdhZ2UtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLW1vcnRnYWdlLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLW1vcnRnYWdlLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbW9ydGdhZ2UtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLW1vcnRnYWdlLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLW1vcnRnYWdlLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1tb3J0Z2FnZS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtbW9ydGdhZ2UtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLW1vcnRnYWdlLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLW1vcnRnYWdlLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1tb3J0Z2FnZS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1tb3J0Z2FnZS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLW1vcnRnYWdlLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1tb3J0Z2FnZS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1tb3J0Z2FnZS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtbW9ydGdhZ2UtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LW1vcnRnYWdlLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItbW9ydGdhZ2UtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1tb3J0Z2FnZS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItbW9ydGdhZ2UtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItbW9ydGdhZ2UtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1tb3J0Z2FnZS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtbW9ydGdhZ2UtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tbW9ydGdhZ2UtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LW1vcnRnYWdlLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1tb3J0Z2FnZS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItbW9ydGdhZ2UtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItbW9ydGdhZ2UgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLW1vcnRnYWdlICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLW1vcnRnYWdlICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbW9ydGdhZ2UgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLW1vcnRnYWdlICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLW1vcnRnYWdlICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1tb3J0Z2FnZSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtbW9ydGdhZ2UgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1tb3J0Z2FnZSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLW1vcnRnYWdlICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLW1vcnRnYWdlLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1tb3J0Z2FnZS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1tb3J0Z2FnZS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLW1vcnRnYWdlLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1tb3J0Z2FnZS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1tb3J0Z2FnZS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtbW9ydGdhZ2UtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LW1vcnRnYWdlLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItbW9ydGdhZ2UtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1tb3J0Z2FnZS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItbW9ydGdhZ2UtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItbW9ydGdhZ2UtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1tb3J0Z2FnZS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtbW9ydGdhZ2UtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tbW9ydGdhZ2UtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LW1vcnRnYWdlLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1tb3J0Z2FnZS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItbW9ydGdhZ2UtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItbW9ydGdhZ2UtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLW1vcnRnYWdlLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbW9ydGdhZ2UtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLW1vcnRnYWdlLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLW1vcnRnYWdlLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1tb3J0Z2FnZS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtbW9ydGdhZ2UtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLW1vcnRnYWdlLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1tb3J0Z2FnZS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1tb3J0Z2FnZS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLW1vcnRnYWdlLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1tb3J0Z2FnZS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1tb3J0Z2FnZS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtbW9ydGdhZ2UtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LW1vcnRnYWdlLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItbW9ydGdhZ2UtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1tb3J0Z2FnZS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1tb3J0Z2FnZS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1tb3J0Z2FnZS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLW1vcnRnYWdlLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1tb3J0Z2FnZS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LW1vcnRnYWdlLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtbW9ydGdhZ2UtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItbW9ydGdhZ2UtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItbW9ydGdhZ2UtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLW1vcnRnYWdlLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLW1vcnRnYWdlLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLW1vcnRnYWdlLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtbW9ydGdhZ2UtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLW1vcnRnYWdlLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtbW9ydGdhZ2UtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1tb3J0Z2FnZS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW52ZXN0bWVudHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWludmVzdG1lbnRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW52ZXN0bWVudHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWludmVzdG1lbnRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWludmVzdG1lbnRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbnZlc3RtZW50cy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW52ZXN0bWVudHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWludmVzdG1lbnRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbnZlc3RtZW50cy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWludmVzdG1lbnRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbnZlc3RtZW50cy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbnZlc3RtZW50cy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW52ZXN0bWVudHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWludmVzdG1lbnRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbnZlc3RtZW50cy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW52ZXN0bWVudHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbnZlc3RtZW50cy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW52ZXN0bWVudHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW52ZXN0bWVudHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWludmVzdG1lbnRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbnZlc3RtZW50cy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW52ZXN0bWVudHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWludmVzdG1lbnRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW52ZXN0bWVudHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWludmVzdG1lbnRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWludmVzdG1lbnRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbnZlc3RtZW50cy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW52ZXN0bWVudHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWludmVzdG1lbnRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbnZlc3RtZW50cy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWludmVzdG1lbnRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbnZlc3RtZW50cy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbnZlc3RtZW50cy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW52ZXN0bWVudHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWludmVzdG1lbnRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbnZlc3RtZW50cyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW52ZXN0bWVudHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW52ZXN0bWVudHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbnZlc3RtZW50cyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW52ZXN0bWVudHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW52ZXN0bWVudHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWludmVzdG1lbnRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbnZlc3RtZW50cyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWludmVzdG1lbnRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW52ZXN0bWVudHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW52ZXN0bWVudHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWludmVzdG1lbnRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW52ZXN0bWVudHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWludmVzdG1lbnRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWludmVzdG1lbnRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbnZlc3RtZW50cy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW52ZXN0bWVudHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWludmVzdG1lbnRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbnZlc3RtZW50cy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWludmVzdG1lbnRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbnZlc3RtZW50cy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbnZlc3RtZW50cy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW52ZXN0bWVudHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWludmVzdG1lbnRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbnZlc3RtZW50cy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW52ZXN0bWVudHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbnZlc3RtZW50cy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW52ZXN0bWVudHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW52ZXN0bWVudHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWludmVzdG1lbnRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbnZlc3RtZW50cy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW52ZXN0bWVudHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWludmVzdG1lbnRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW52ZXN0bWVudHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWludmVzdG1lbnRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWludmVzdG1lbnRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbnZlc3RtZW50cy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW52ZXN0bWVudHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWludmVzdG1lbnRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWludmVzdG1lbnRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWludmVzdG1lbnRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW52ZXN0bWVudHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWludmVzdG1lbnRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW52ZXN0bWVudHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbnZlc3RtZW50cy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW52ZXN0bWVudHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW52ZXN0bWVudHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW52ZXN0bWVudHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbnZlc3RtZW50cy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW52ZXN0bWVudHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbnZlc3RtZW50cy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWludmVzdG1lbnRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY3JlZGl0LWNhcmRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jcmVkaXQtY2FyZHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY3JlZGl0LWNhcmRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY3JlZGl0LWNhcmRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNyZWRpdC1jYXJkcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jcmVkaXQtY2FyZHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY3JlZGl0LWNhcmRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNyZWRpdC1jYXJkcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY3JlZGl0LWNhcmRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNyZWRpdC1jYXJkcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNyZWRpdC1jYXJkcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jcmVkaXQtY2FyZHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY3JlZGl0LWNhcmRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNyZWRpdC1jYXJkcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNyZWRpdC1jYXJkcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jcmVkaXQtY2FyZHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jcmVkaXQtY2FyZHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY3JlZGl0LWNhcmRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNyZWRpdC1jYXJkcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY3JlZGl0LWNhcmRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jcmVkaXQtY2FyZHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY3JlZGl0LWNhcmRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY3JlZGl0LWNhcmRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNyZWRpdC1jYXJkcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jcmVkaXQtY2FyZHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY3JlZGl0LWNhcmRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNyZWRpdC1jYXJkcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY3JlZGl0LWNhcmRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNyZWRpdC1jYXJkcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNyZWRpdC1jYXJkcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jcmVkaXQtY2FyZHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY3JlZGl0LWNhcmRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNyZWRpdC1jYXJkcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jcmVkaXQtY2FyZHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNyZWRpdC1jYXJkcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jcmVkaXQtY2FyZHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jcmVkaXQtY2FyZHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY3JlZGl0LWNhcmRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNyZWRpdC1jYXJkcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY3JlZGl0LWNhcmRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jcmVkaXQtY2FyZHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY3JlZGl0LWNhcmRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY3JlZGl0LWNhcmRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNyZWRpdC1jYXJkcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jcmVkaXQtY2FyZHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY3JlZGl0LWNhcmRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNyZWRpdC1jYXJkcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY3JlZGl0LWNhcmRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNyZWRpdC1jYXJkcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNyZWRpdC1jYXJkcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jcmVkaXQtY2FyZHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY3JlZGl0LWNhcmRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNyZWRpdC1jYXJkcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jcmVkaXQtY2FyZHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNyZWRpdC1jYXJkcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jcmVkaXQtY2FyZHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jcmVkaXQtY2FyZHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY3JlZGl0LWNhcmRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNyZWRpdC1jYXJkcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY3JlZGl0LWNhcmRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jcmVkaXQtY2FyZHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY3JlZGl0LWNhcmRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY3JlZGl0LWNhcmRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNyZWRpdC1jYXJkcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jcmVkaXQtY2FyZHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY3JlZGl0LWNhcmRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY3JlZGl0LWNhcmRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY3JlZGl0LWNhcmRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jcmVkaXQtY2FyZHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY3JlZGl0LWNhcmRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jcmVkaXQtY2FyZHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNyZWRpdC1jYXJkcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jcmVkaXQtY2FyZHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNyZWRpdC1jYXJkcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jcmVkaXQtY2FyZHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNyZWRpdC1jYXJkcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY3JlZGl0LWNhcmRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN0dWRlbnQtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdHVkZW50LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdHVkZW50LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN0dWRlbnQtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdHVkZW50LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdHVkZW50LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3R1ZGVudC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN0dWRlbnQtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3R1ZGVudC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdHVkZW50LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdHVkZW50LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3R1ZGVudC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3R1ZGVudC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdHVkZW50LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3R1ZGVudC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3R1ZGVudC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN0dWRlbnQtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdHVkZW50LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN0dWRlbnQtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3R1ZGVudC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3R1ZGVudC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN0dWRlbnQtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN0dWRlbnQtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3R1ZGVudC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN0dWRlbnQtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN0dWRlbnQtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdHVkZW50LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3R1ZGVudC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdHVkZW50LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN0dWRlbnQtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN0dWRlbnQtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdHVkZW50LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdHVkZW50LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN0dWRlbnQtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdHVkZW50LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdHVkZW50LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3R1ZGVudC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN0dWRlbnQtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3R1ZGVudC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdHVkZW50LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdHVkZW50LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3R1ZGVudC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3R1ZGVudC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdHVkZW50LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3R1ZGVudC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3R1ZGVudC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN0dWRlbnQtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdHVkZW50LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN0dWRlbnQtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3R1ZGVudC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3R1ZGVudCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN0dWRlbnQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN0dWRlbnQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3R1ZGVudCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN0dWRlbnQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN0dWRlbnQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdHVkZW50ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3R1ZGVudCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdHVkZW50ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN0dWRlbnQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN0dWRlbnQtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdHVkZW50LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdHVkZW50LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN0dWRlbnQtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdHVkZW50LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdHVkZW50LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3R1ZGVudC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN0dWRlbnQtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3R1ZGVudC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdHVkZW50LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdHVkZW50LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3R1ZGVudC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3R1ZGVudC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdHVkZW50LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3R1ZGVudC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3R1ZGVudC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN0dWRlbnQtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdHVkZW50LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN0dWRlbnQtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3R1ZGVudC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3R1ZGVudC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN0dWRlbnQtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN0dWRlbnQtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3R1ZGVudC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN0dWRlbnQtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN0dWRlbnQtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdHVkZW50LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3R1ZGVudC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdHVkZW50LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN0dWRlbnQtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN0dWRlbnQtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdHVkZW50LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdHVkZW50LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN0dWRlbnQtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdHVkZW50LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdHVkZW50LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3R1ZGVudC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN0dWRlbnQtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3R1ZGVudC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdHVkZW50LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdHVkZW50LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN0dWRlbnQtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdHVkZW50LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdHVkZW50LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN0dWRlbnQtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdHVkZW50LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN0dWRlbnQtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3R1ZGVudC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3R1ZGVudC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3R1ZGVudC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN0dWRlbnQtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3R1ZGVudC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN0dWRlbnQtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN0dWRlbnQtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3R1ZGVudC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN0dWRlbnQtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3R1ZGVudC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdHVkZW50LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdHVkZW50LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdHVkZW50LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc2F2aW5ncy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXNhdmluZ3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXNhdmluZ3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc2F2aW5ncy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXNhdmluZ3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXNhdmluZ3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zYXZpbmdzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc2F2aW5ncy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zYXZpbmdzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXNhdmluZ3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXNhdmluZ3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zYXZpbmdzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zYXZpbmdzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXNhdmluZ3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zYXZpbmdzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zYXZpbmdzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc2F2aW5ncy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXNhdmluZ3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc2F2aW5ncy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zYXZpbmdzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zYXZpbmdzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc2F2aW5ncy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc2F2aW5ncy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zYXZpbmdzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc2F2aW5ncy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc2F2aW5ncy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXNhdmluZ3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zYXZpbmdzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXNhdmluZ3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc2F2aW5ncy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc2F2aW5ncy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXNhdmluZ3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXNhdmluZ3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc2F2aW5ncy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXNhdmluZ3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXNhdmluZ3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zYXZpbmdzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc2F2aW5ncy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zYXZpbmdzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXNhdmluZ3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXNhdmluZ3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zYXZpbmdzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zYXZpbmdzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXNhdmluZ3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zYXZpbmdzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zYXZpbmdzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc2F2aW5ncy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXNhdmluZ3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc2F2aW5ncy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zYXZpbmdzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zYXZpbmdzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc2F2aW5ncyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc2F2aW5ncyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zYXZpbmdzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc2F2aW5ncyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc2F2aW5ncyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXNhdmluZ3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zYXZpbmdzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXNhdmluZ3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc2F2aW5ncyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc2F2aW5ncy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXNhdmluZ3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXNhdmluZ3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc2F2aW5ncy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXNhdmluZ3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXNhdmluZ3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zYXZpbmdzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc2F2aW5ncy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zYXZpbmdzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXNhdmluZ3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXNhdmluZ3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zYXZpbmdzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zYXZpbmdzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXNhdmluZ3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zYXZpbmdzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zYXZpbmdzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc2F2aW5ncy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXNhdmluZ3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc2F2aW5ncy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zYXZpbmdzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zYXZpbmdzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc2F2aW5ncy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc2F2aW5ncy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zYXZpbmdzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc2F2aW5ncy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc2F2aW5ncy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXNhdmluZ3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zYXZpbmdzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXNhdmluZ3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc2F2aW5ncy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc2F2aW5ncy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXNhdmluZ3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXNhdmluZ3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc2F2aW5ncy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXNhdmluZ3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXNhdmluZ3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zYXZpbmdzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc2F2aW5ncy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zYXZpbmdzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXNhdmluZ3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXNhdmluZ3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc2F2aW5ncy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXNhdmluZ3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXNhdmluZ3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc2F2aW5ncy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXNhdmluZ3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc2F2aW5ncy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zYXZpbmdzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zYXZpbmdzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zYXZpbmdzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc2F2aW5ncy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zYXZpbmdzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc2F2aW5ncy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc2F2aW5ncy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zYXZpbmdzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc2F2aW5ncy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zYXZpbmdzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXNhdmluZ3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXNhdmluZ3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXNhdmluZ3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jaGVja2luZy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY2hlY2tpbmctMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY2hlY2tpbmctMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jaGVja2luZy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY2hlY2tpbmctMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY2hlY2tpbmctMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNoZWNraW5nLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jaGVja2luZy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNoZWNraW5nLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY2hlY2tpbmctMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY2hlY2tpbmctMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNoZWNraW5nLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNoZWNraW5nLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY2hlY2tpbmctMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNoZWNraW5nLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNoZWNraW5nLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jaGVja2luZy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY2hlY2tpbmctMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jaGVja2luZy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNoZWNraW5nLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNraW5nLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jaGVja2luZy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jaGVja2luZy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNoZWNraW5nLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jaGVja2luZy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jaGVja2luZy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY2hlY2tpbmctMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNoZWNraW5nLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY2hlY2tpbmctMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jaGVja2luZy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jaGVja2luZy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY2hlY2tpbmctMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY2hlY2tpbmctMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jaGVja2luZy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY2hlY2tpbmctMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY2hlY2tpbmctMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNoZWNraW5nLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jaGVja2luZy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNoZWNraW5nLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY2hlY2tpbmctMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY2hlY2tpbmctMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNoZWNraW5nLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNoZWNraW5nLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY2hlY2tpbmctMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNoZWNraW5nLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNoZWNraW5nLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jaGVja2luZy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY2hlY2tpbmctMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jaGVja2luZy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNoZWNraW5nLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNraW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jaGVja2luZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jaGVja2luZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNoZWNraW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jaGVja2luZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jaGVja2luZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY2hlY2tpbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNoZWNraW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY2hlY2tpbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jaGVja2luZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jaGVja2luZy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY2hlY2tpbmctMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY2hlY2tpbmctMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jaGVja2luZy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY2hlY2tpbmctMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY2hlY2tpbmctMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNoZWNraW5nLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jaGVja2luZy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNoZWNraW5nLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY2hlY2tpbmctMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY2hlY2tpbmctMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNoZWNraW5nLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNoZWNraW5nLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY2hlY2tpbmctMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNoZWNraW5nLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNoZWNraW5nLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jaGVja2luZy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY2hlY2tpbmctMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jaGVja2luZy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNoZWNraW5nLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNraW5nLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jaGVja2luZy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jaGVja2luZy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNoZWNraW5nLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jaGVja2luZy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jaGVja2luZy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY2hlY2tpbmctMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNoZWNraW5nLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY2hlY2tpbmctMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jaGVja2luZy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jaGVja2luZy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY2hlY2tpbmctMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY2hlY2tpbmctMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jaGVja2luZy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY2hlY2tpbmctMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY2hlY2tpbmctMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNoZWNraW5nLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jaGVja2luZy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNoZWNraW5nLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY2hlY2tpbmctMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY2hlY2tpbmctMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jaGVja2luZy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY2hlY2tpbmctMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY2hlY2tpbmctMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jaGVja2luZy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY2hlY2tpbmctMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jaGVja2luZy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNoZWNraW5nLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNoZWNraW5nLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNoZWNraW5nLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jaGVja2luZy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNoZWNraW5nLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jaGVja2luZy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jaGVja2luZy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNoZWNraW5nLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jaGVja2luZy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNoZWNraW5nLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY2hlY2tpbmctMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY2hlY2tpbmctMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY2hlY2tpbmctMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXJlZC1zaG9lcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1yZWQtc2hvZXMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJlZC1zaG9lcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1yZWQtc2hvZXMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1yZWQtc2hvZXMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcmVkLXNob2VzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXJlZC1zaG9lcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcmVkLXNob2VzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1yZWQtc2hvZXMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcmVkLXNob2VzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcmVkLXNob2VzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yZWQtc2hvZXMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcmVkLXNob2VzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcmVkLXNob2VzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXJlZC1zaG9lcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1yZWQtc2hvZXMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcmVkLXNob2VzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcmVkLXNob2VzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXJlZC1zaG9lcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmVkLXNob2VzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXJlZC1zaG9lcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXJlZC1zaG9lcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1yZWQtc2hvZXMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcmVkLXNob2VzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXJlZC1zaG9lcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1yZWQtc2hvZXMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJlZC1zaG9lcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1yZWQtc2hvZXMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1yZWQtc2hvZXMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcmVkLXNob2VzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXJlZC1zaG9lcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcmVkLXNob2VzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1yZWQtc2hvZXMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcmVkLXNob2VzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcmVkLXNob2VzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yZWQtc2hvZXMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcmVkLXNob2VzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcmVkLXNob2VzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXJlZC1zaG9lcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1yZWQtc2hvZXMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcmVkLXNob2VzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcmVkLXNob2VzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXJlZC1zaG9lcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXJlZC1zaG9lcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmVkLXNob2VzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXJlZC1zaG9lcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXJlZC1zaG9lcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1yZWQtc2hvZXMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcmVkLXNob2VzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1yZWQtc2hvZXMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXJlZC1zaG9lcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXJlZC1zaG9lcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1yZWQtc2hvZXMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJlZC1zaG9lcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1yZWQtc2hvZXMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1yZWQtc2hvZXMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcmVkLXNob2VzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXJlZC1zaG9lcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcmVkLXNob2VzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1yZWQtc2hvZXMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcmVkLXNob2VzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcmVkLXNob2VzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yZWQtc2hvZXMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcmVkLXNob2VzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcmVkLXNob2VzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXJlZC1zaG9lcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1yZWQtc2hvZXMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcmVkLXNob2VzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcmVkLXNob2VzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXJlZC1zaG9lcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmVkLXNob2VzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXJlZC1zaG9lcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXJlZC1zaG9lcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1yZWQtc2hvZXMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcmVkLXNob2VzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXJlZC1zaG9lcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1yZWQtc2hvZXMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJlZC1zaG9lcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1yZWQtc2hvZXMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1yZWQtc2hvZXMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcmVkLXNob2VzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXJlZC1zaG9lcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcmVkLXNob2VzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1yZWQtc2hvZXMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1yZWQtc2hvZXMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yZWQtc2hvZXMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXJlZC1zaG9lcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1yZWQtc2hvZXMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXJlZC1zaG9lcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcmVkLXNob2VzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcmVkLXNob2VzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcmVkLXNob2VzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXJlZC1zaG9lcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcmVkLXNob2VzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXJlZC1zaG9lcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJlZC1zaG9lcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcmVkLXNob2VzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXJlZC1zaG9lcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcmVkLXNob2VzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1yZWQtc2hvZXMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItYnVzaW5lc3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWJ1c2luZXNzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWJ1c2luZXNzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYnVzaW5lc3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWJ1c2luZXNzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWJ1c2luZXNzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1idXNpbmVzcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtYnVzaW5lc3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1idXNpbmVzcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWJ1c2luZXNzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWJ1c2luZXNzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1idXNpbmVzcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1idXNpbmVzcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJ1c2luZXNzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1idXNpbmVzcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1idXNpbmVzcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtYnVzaW5lc3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWJ1c2luZXNzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItYnVzaW5lc3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1idXNpbmVzcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1idXNpbmVzcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItYnVzaW5lc3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItYnVzaW5lc3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1idXNpbmVzcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtYnVzaW5lc3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tYnVzaW5lc3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWJ1c2luZXNzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1idXNpbmVzcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWJ1c2luZXNzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItYnVzaW5lc3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItYnVzaW5lc3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWJ1c2luZXNzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYnVzaW5lc3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWJ1c2luZXNzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWJ1c2luZXNzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1idXNpbmVzcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtYnVzaW5lc3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1idXNpbmVzcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWJ1c2luZXNzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1idXNpbmVzcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1idXNpbmVzcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJ1c2luZXNzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1idXNpbmVzcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1idXNpbmVzcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtYnVzaW5lc3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWJ1c2luZXNzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItYnVzaW5lc3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1idXNpbmVzcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1idXNpbmVzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItYnVzaW5lc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItYnVzaW5lc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1idXNpbmVzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtYnVzaW5lc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tYnVzaW5lc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWJ1c2luZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1idXNpbmVzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWJ1c2luZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItYnVzaW5lc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItYnVzaW5lc3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWJ1c2luZXNzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYnVzaW5lc3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWJ1c2luZXNzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWJ1c2luZXNzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1idXNpbmVzcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtYnVzaW5lc3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1idXNpbmVzcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWJ1c2luZXNzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1idXNpbmVzcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1idXNpbmVzcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJ1c2luZXNzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1idXNpbmVzcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1idXNpbmVzcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtYnVzaW5lc3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWJ1c2luZXNzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItYnVzaW5lc3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1idXNpbmVzcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1idXNpbmVzcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItYnVzaW5lc3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItYnVzaW5lc3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1idXNpbmVzcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtYnVzaW5lc3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tYnVzaW5lc3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWJ1c2luZXNzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1idXNpbmVzcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItYnVzaW5lc3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItYnVzaW5lc3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWJ1c2luZXNzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYnVzaW5lc3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWJ1c2luZXNzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWJ1c2luZXNzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1idXNpbmVzcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtYnVzaW5lc3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1idXNpbmVzcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWJ1c2luZXNzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItYnVzaW5lc3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWJ1c2luZXNzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJ1c2luZXNzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtYnVzaW5lc3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWJ1c2luZXNzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtYnVzaW5lc3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1idXNpbmVzcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1idXNpbmVzcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1idXNpbmVzcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItYnVzaW5lc3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1idXNpbmVzcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItYnVzaW5lc3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYnVzaW5lc3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1idXNpbmVzcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tYnVzaW5lc3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1idXNpbmVzcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWJ1c2luZXNzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wZXJzb25hbC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcGVyc29uYWwtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcGVyc29uYWwtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wZXJzb25hbC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcGVyc29uYWwtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcGVyc29uYWwtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXBlcnNvbmFsLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wZXJzb25hbC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXBlcnNvbmFsLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcGVyc29uYWwtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcGVyc29uYWwtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXBlcnNvbmFsLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXBlcnNvbmFsLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcGVyc29uYWwtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXBlcnNvbmFsLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXBlcnNvbmFsLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wZXJzb25hbC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcGVyc29uYWwtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wZXJzb25hbC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXBlcnNvbmFsLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXBlcnNvbmFsLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wZXJzb25hbC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wZXJzb25hbC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXBlcnNvbmFsLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wZXJzb25hbC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wZXJzb25hbC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcGVyc29uYWwtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXBlcnNvbmFsLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcGVyc29uYWwtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wZXJzb25hbC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wZXJzb25hbC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcGVyc29uYWwtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcGVyc29uYWwtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wZXJzb25hbC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcGVyc29uYWwtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcGVyc29uYWwtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXBlcnNvbmFsLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wZXJzb25hbC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcGVyc29uYWwtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcGVyc29uYWwtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXBlcnNvbmFsLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcGVyc29uYWwtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXBlcnNvbmFsLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXBlcnNvbmFsLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wZXJzb25hbC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcGVyc29uYWwtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wZXJzb25hbC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXBlcnNvbmFsICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wZXJzb25hbCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wZXJzb25hbCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXBlcnNvbmFsICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wZXJzb25hbCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wZXJzb25hbCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcGVyc29uYWwgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXBlcnNvbmFsICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcGVyc29uYWwgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wZXJzb25hbCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wZXJzb25hbC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcGVyc29uYWwtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcGVyc29uYWwtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wZXJzb25hbC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcGVyc29uYWwtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcGVyc29uYWwtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXBlcnNvbmFsLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wZXJzb25hbC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcGVyc29uYWwtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcGVyc29uYWwtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXBlcnNvbmFsLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcGVyc29uYWwtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXBlcnNvbmFsLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXBlcnNvbmFsLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wZXJzb25hbC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcGVyc29uYWwtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wZXJzb25hbC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXBlcnNvbmFsLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wZXJzb25hbC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wZXJzb25hbC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXBlcnNvbmFsLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wZXJzb25hbC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wZXJzb25hbC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcGVyc29uYWwtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXBlcnNvbmFsLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcGVyc29uYWwtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wZXJzb25hbC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wZXJzb25hbC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcGVyc29uYWwtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcGVyc29uYWwtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wZXJzb25hbC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcGVyc29uYWwtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcGVyc29uYWwtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXBlcnNvbmFsLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wZXJzb25hbC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcGVyc29uYWwtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcGVyc29uYWwtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wZXJzb25hbC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcGVyc29uYWwtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcGVyc29uYWwtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wZXJzb25hbC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcGVyc29uYWwtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wZXJzb25hbC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXBlcnNvbmFsLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wZXJzb25hbC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wZXJzb25hbC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wZXJzb25hbC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXBlcnNvbmFsLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wZXJzb25hbC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXBlcnNvbmFsLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcGVyc29uYWwtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcGVyc29uYWwtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcGVyc29uYWwtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhlbG9jLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1oZWxvYy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1oZWxvYy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWhlbG9jLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1oZWxvYy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1oZWxvYy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaGVsb2MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWhlbG9jLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaGVsb2MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1oZWxvYy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1oZWxvYy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaGVsb2MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaGVsb2MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1oZWxvYy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaGVsb2MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taGVsb2MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWhlbG9jLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1oZWxvYy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWhlbG9jLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaGVsb2MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaGVsb2MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhlbG9jLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWhlbG9jLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaGVsb2MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWhlbG9jLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWhlbG9jLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1oZWxvYy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaGVsb2MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1oZWxvYy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWhlbG9jLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhlbG9jLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1oZWxvYy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1oZWxvYy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWhlbG9jLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1oZWxvYy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1oZWxvYy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaGVsb2MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWhlbG9jLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaGVsb2MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1oZWxvYy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1oZWxvYy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaGVsb2MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaGVsb2MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1oZWxvYy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaGVsb2MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taGVsb2MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWhlbG9jLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1oZWxvYy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWhlbG9jLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaGVsb2MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaGVsb2MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhlbG9jICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWhlbG9jICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaGVsb2MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWhlbG9jICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWhlbG9jICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1oZWxvYyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaGVsb2MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1oZWxvYyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWhlbG9jICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhlbG9jLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1oZWxvYy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1oZWxvYy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWhlbG9jLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1oZWxvYy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1oZWxvYy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaGVsb2MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWhlbG9jLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaGVsb2MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1oZWxvYy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1oZWxvYy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaGVsb2MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaGVsb2MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1oZWxvYy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaGVsb2MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taGVsb2MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWhlbG9jLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1oZWxvYy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWhlbG9jLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaGVsb2MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaGVsb2MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhlbG9jLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWhlbG9jLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaGVsb2MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWhlbG9jLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWhlbG9jLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1oZWxvYy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaGVsb2MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1oZWxvYy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWhlbG9jLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhlbG9jLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1oZWxvYy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1oZWxvYy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWhlbG9jLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1oZWxvYy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1oZWxvYy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaGVsb2MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWhlbG9jLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaGVsb2MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1oZWxvYy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1oZWxvYy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhlbG9jLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1oZWxvYy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1oZWxvYy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWhlbG9jLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1oZWxvYy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWhlbG9jLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaGVsb2MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaGVsb2MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaGVsb2MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhlbG9jLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaGVsb2MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWhlbG9jLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWhlbG9jLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaGVsb2MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWhlbG9jLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaGVsb2MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1oZWxvYy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1oZWxvYy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1oZWxvYy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LXRleHQtMTAgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtMTAtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LTA5IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LTA5LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC0wOCB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC0wOC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtMDcgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtMDctZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LTA2IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LTA2LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC0wNSB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LTA0IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LTA0LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC0wMyB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC0wMy1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtMDIgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtMDItZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LTAxIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LTAxLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLTEwIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtMTAtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtMDkgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC0wOS1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC0wOCB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLTA4LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLTA3IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtMDctZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtMDYgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC0wNi1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC0wNSB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtMDQgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC0wNC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC0wMyB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLTAzLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLTAyIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtMDItZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtMDEgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC0wMS1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC1jb25kZW5zZWQtMTAgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1jb25kZW5zZWQtMTAtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtY29uZGVuc2VkLTA5IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtY29uZGVuc2VkLTA5LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLWNvbmRlbnNlZC0wOCB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC0wOC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC1jb25kZW5zZWQtMDcgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1jb25kZW5zZWQtMDctZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtY29uZGVuc2VkLTA2IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtY29uZGVuc2VkLTA2LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLWNvbmRlbnNlZC0wNSB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC1jb25kZW5zZWQgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1jb25kZW5zZWQtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtY29uZGVuc2VkLTA0IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtY29uZGVuc2VkLTA0LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLWNvbmRlbnNlZC0wMyB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC0wMy1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC1jb25kZW5zZWQtMDIgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1jb25kZW5zZWQtMDItZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtY29uZGVuc2VkLTAxIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtY29uZGVuc2VkLTAxLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctZWZmZWN0LXNoYWRvdyB7IFxuICBib3gtc2hhZG93OiB2YXIoIC0tc2N3LWVmZmVjdC1zaGFkb3ctc2hhZG93ICk7IFxufVxuXG5AbWl4aW4gc2N3LWVmZmVjdC1mb2N1cyB7IFxuICBib3gtc2hhZG93OiB2YXIoIC0tc2N3LWVmZmVjdC1mb2N1cy1zaGFkb3cgKTsgXG59XG5cbkBtaXhpbiBzY3ctZ3JhcGhpYy1hcHBsZS1hcHAtc3RvcmUgeyBcbiAgLS1zdmctbmFtZTogYXBwbGUtYXBwLXN0b3JlO1xuICAtLXN2Zy1zaXplOiAxNTk7IFxufVxuXG5AbWl4aW4gc2N3LWdyYXBoaWMtbG9nbyB7IFxuICAtLXN2Zy1uYW1lOiBsb2dvO1xuICAtLXN2Zy1zaXplOiAxNDM7IFxufVxuXG5AbWl4aW4gc2N3LWdyYXBoaWMtbmN1YSB7IFxuICAtLXN2Zy1uYW1lOiBuY3VhO1xuICAtLXN2Zy1zaXplOiAxMDg7IFxufVxuXG5AbWl4aW4gc2N3LWdyYXBoaWMtZWhsIHsgXG4gIC0tc3ZnLW5hbWU6IGVobDtcbiAgLS1zdmctc2l6ZTogNTM7IFxufVxuXG5AbWl4aW4gc2N3LWdyYXBoaWMtZ29vZ2xlLXBsYXktc3RvcmUgeyBcbiAgLS1zdmctbmFtZTogZ29vZ2xlLXBsYXktc3RvcmU7XG4gIC0tc3ZnLXNpemU6IDE1OTsgXG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0wcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMHMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTBzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMHMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0wcyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMHMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0wcyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMHMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMHMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0wcyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0wcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0wcyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0wcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0wcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTBzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMHMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTBzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTBzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMHMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0wLTNzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMC0zcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTAtM3Mge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMC0zcyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMC0zcyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMC0zcyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0wLTNzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0wLTNzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTAtM3Mge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0wLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTAtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTAtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMC0zcyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTAtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTAtM3Mge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0wLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMC0zcyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTAtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTAtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMC0zcyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMC0zcyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0wLTNzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0wLTNzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTAtM3Mge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTAtM3Mge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTAtNHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0wLTRzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMC00cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0wLTRzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0wLTRzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0wLTRzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTAtNHMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTAtNHMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMC00cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTAtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0wLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0wLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0wLTRzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMC00cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTAtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0wLTRzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0wLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0wLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0wLTRzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0wLTRzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTAtNHMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTAtNHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMC00cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMC00cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMC02cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTAtNnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0wLTZzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTAtNnMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTAtNnMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTAtNnMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMC02cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMC02cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0wLTZzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0wLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0wLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTAtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTAtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTAtNnMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0wLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0wLTZzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTAtNnMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0wLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0wLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTAtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTAtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTAtNnMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTAtNnMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMC02cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMC02cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0wLTZzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0wLTZzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0wLThzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMC04cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTAtOHMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMC04cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMC04cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy10b3AtMC04cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0wLThzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0wLThzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTAtOHMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0wLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTAtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTAtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMC04cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTAtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTAtOHMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0wLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMC04cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTAtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTAtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMC04cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMC04cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0wLThzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0wLThzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTAtOHMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTAtOHMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTAtOXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0wLTlzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMC05cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0wLTlzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0wLTlzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0wLTlzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTAtOXMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTAtOXMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMC05cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTAtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0wLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0wLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0wLTlzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMC05cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTAtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0wLTlzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0wLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0wLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0wLTlzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0wLTlzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTAtOXMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTAtOXMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMC05cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMC05cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTFzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTFzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0xcyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTFzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMXMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTFzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMXMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTFzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0xcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0xcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTFzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMXMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMXMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0xcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0xcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0xcyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTFzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0xcyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTFzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0xcyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTFzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMS0zcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTEtM3Mge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0xLTNzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTEtM3Mge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTEtM3Mge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTEtM3Mge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMS0zcyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMS0zcyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0xLTNzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0xLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0xLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTEtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTEtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTEtM3Mge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0xLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0xLTNzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTEtM3Mge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0xLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0xLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTEtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTEtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTEtM3Mge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTEtM3Mge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMS0zcyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMS0zcyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0xLTNzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0xLTNzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0xLTRzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMS00cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTEtNHMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMS00cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMS00cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMS00cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0xLTRzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0xLTRzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTEtNHMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0xLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTEtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTEtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMS00cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTEtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTEtNHMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0xLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMS00cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTEtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTEtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMS00cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMS00cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0xLTRzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0xLTRzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTEtNHMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTEtNHMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTEtNnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0xLTZzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMS02cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0xLTZzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0xLTZzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0xLTZzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTEtNnMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTEtNnMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMS02cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTEtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0xLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0xLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0xLTZzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMS02cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTEtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0xLTZzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0xLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0xLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0xLTZzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0xLTZzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTEtNnMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTEtNnMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMS02cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMS02cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMS04cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTEtOHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0xLThzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTEtOHMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTEtOHMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTEtOHMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMS04cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMS04cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0xLThzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0xLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0xLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTEtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTEtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTEtOHMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0xLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0xLThzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTEtOHMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0xLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0xLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTEtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTEtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTEtOHMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTEtOHMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMS04cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMS04cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0xLThzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0xLThzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0xLTlzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMS05cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTEtOXMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMS05cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMS05cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMS05cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0xLTlzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0xLTlzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTEtOXMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0xLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTEtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTEtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMS05cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTEtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTEtOXMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0xLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMS05cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTEtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTEtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMS05cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMS05cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0xLTlzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0xLTlzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTEtOXMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTEtOXMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTJzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0ycyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0ycyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMnMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0ycyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTJzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0ycyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTJzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0ycyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0ycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0ycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0ycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0ycyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0ycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTJzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTJzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMnMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0ycyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMnMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0ycyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMnMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0ycyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTItM3Mge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0yLTNzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMi0zcyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0yLTNzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0yLTNzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0yLTNzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTItM3Mge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTItM3Mge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMi0zcyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTItM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMi0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMi0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0yLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0yLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0yLTNzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMi0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMi0zcyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTItM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0yLTNzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMi0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMi0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0yLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0yLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0yLTNzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0yLTNzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTItM3Mge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTItM3Mge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMi0zcyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMi0zcyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMi00cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTItNHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0yLTRzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTItNHMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTItNHMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTItNHMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMi00cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMi00cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0yLTRzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMi00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0yLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0yLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTItNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTItNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTItNHMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0yLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0yLTRzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMi00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTItNHMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0yLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0yLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTItNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTItNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTItNHMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTItNHMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMi00cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMi00cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0yLTRzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0yLTRzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0yLTZzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMi02cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTItNnMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMi02cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMi02cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMi02cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0yLTZzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0yLTZzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTItNnMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0yLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTItNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTItNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMi02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMi02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMi02cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTItNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTItNnMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0yLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMi02cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTItNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTItNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMi02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMi02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMi02cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMi02cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0yLTZzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0yLTZzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTItNnMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTItNnMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTItOHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0yLThzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMi04cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0yLThzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0yLThzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0yLThzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTItOHMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTItOHMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMi04cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTItOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMi04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMi04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0yLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0yLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0yLThzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMi04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMi04cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTItOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0yLThzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMi04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMi04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0yLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0yLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0yLThzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0yLThzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTItOHMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTItOHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMi04cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMi04cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMi05cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTItOXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0yLTlzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTItOXMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTItOXMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTItOXMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMi05cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMi05cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0yLTlzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMi05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0yLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0yLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTItOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTItOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTItOXMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0yLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0yLTlzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMi05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTItOXMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0yLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0yLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTItOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTItOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTItOXMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTItOXMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMi05cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMi05cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0yLTlzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0yLTlzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0zcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtM3Mge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtM3Mge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTNzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtM3Mge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0zcyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tM3Mge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0zcyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtM3Mge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtM3Mge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0zcyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0zcyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTNzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtM3Mge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTNzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tM3Mge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTNzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtM3Mge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0zLTNzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMy0zcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTMtM3Mge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMy0zcyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMy0zcyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMy0zcyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0zLTNzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0zLTNzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTMtM3Mge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0zLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTMtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTMtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMy0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMy0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMy0zcyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTMtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTMtM3Mge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0zLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMy0zcyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTMtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTMtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMy0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMy0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMy0zcyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMy0zcyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0zLTNzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0zLTNzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTMtM3Mge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTMtM3Mge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTMtNHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0zLTRzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMy00cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0zLTRzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0zLTRzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0zLTRzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTMtNHMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTMtNHMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMy00cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTMtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMy00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMy00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0zLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0zLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0zLTRzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMy00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMy00cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTMtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0zLTRzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMy00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMy00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0zLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0zLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0zLTRzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0zLTRzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTMtNHMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTMtNHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMy00cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMy00cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMy02cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTMtNnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0zLTZzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTMtNnMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTMtNnMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTMtNnMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMy02cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMy02cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0zLTZzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMy02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0zLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0zLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTMtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTMtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTMtNnMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0zLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0zLTZzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMy02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTMtNnMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0zLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0zLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTMtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTMtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTMtNnMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTMtNnMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMy02cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMy02cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0zLTZzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0zLTZzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0zLThzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMy04cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTMtOHMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMy04cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMy04cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy10b3AtMy04cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0zLThzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0zLThzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTMtOHMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0zLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTMtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTMtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMy04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMy04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMy04cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTMtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTMtOHMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0zLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMy04cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTMtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTMtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMy04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMy04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMy04cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMy04cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0zLThzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0zLThzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTMtOHMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTMtOHMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTMtOXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0zLTlzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMy05cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0zLTlzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0zLTlzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0zLTlzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTMtOXMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTMtOXMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMy05cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTMtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMy05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMy05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0zLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0zLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0zLTlzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMy05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMy05cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTMtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0zLTlzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMy05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMy05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0zLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0zLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0zLTlzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0zLTlzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTMtOXMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTMtOXMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMy05cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMy05cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtNHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTRzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTRzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC00cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTRzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy10b3AtNHMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTRzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtNHMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTRzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTRzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtNHMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctNHMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC00cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTRzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC00cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTRzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy00cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTRzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtNXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTVzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTVzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC01cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTVzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy10b3AtNXMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTVzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtNXMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTVzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTVzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC01cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC01cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTVzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTVzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTVzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTVzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtNXMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tNXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctNXMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtNXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtNXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC01cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS01cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC01cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTVzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC01cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTVzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy01cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTVzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtNnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTZzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTZzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC02cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTZzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy10b3AtNnMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTZzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtNnMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTZzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTZzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtNnMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctNnMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC02cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTZzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC02cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTZzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy02cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTZzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtN3Mge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTdzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTdzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC03cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTdzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy10b3AtN3Mge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTdzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtN3Mge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTdzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTdzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC03cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC03cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTdzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTdzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTdzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTdzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtN3Mge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tN3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctN3Mge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtN3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtN3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC03cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS03cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC03cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTdzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC03cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTdzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy03cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTdzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtOHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLThzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LThzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC04cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LThzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy10b3AtOHMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLThzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtOHMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LThzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LThzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtOHMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctOHMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC04cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LThzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC04cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLThzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy04cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLThzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtOXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTlzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTlzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC05cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTlzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy10b3AtOXMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTlzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtOXMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTlzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTlzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtOXMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctOXMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC05cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTlzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC05cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTlzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy05cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTlzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMTBzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTEwcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMTBzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMTBzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTEwcyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0xMHMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0xMHMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMTBzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMTBzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0xMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0xMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0xMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTEwcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTEwcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTEwcyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTEwcyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0xMHMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTEwcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTEwcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMTBzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTEwcyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTEwcyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0xMHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0xMHMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMTBzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTExcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0xMXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTExcyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTExcyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0xMXMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMTFzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMTFzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTExcyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTExcyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0xMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0xMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0xMXMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTExcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0xMXMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTExcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMTFzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0xMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0xMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTExcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTExcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTExcyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0xMXMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0xMXMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMTFzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMTFzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTExcyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0xMnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMTJzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0xMnMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0xMnMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMTJzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTEycyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTEycyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0xMnMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0xMnMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTEycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTEycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTEycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMTJzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0xMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMTJzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0xMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTEycyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0xMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0xMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0xMnMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMTJzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMTJzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTEycyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTEycyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0xMnMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0wIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTAgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTAge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTAge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTAgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0wIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0wIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0wIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0wIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0wIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTAge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0wIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTAtMyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTAtMyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0wLTMge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTAtMyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0wLTMge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTAtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTAtMyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0wLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTAtMyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTAtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMC0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0wLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTAtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMC00IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMC00IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTAtNCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMC00IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTAtNCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMC00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMC00IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTAtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMC00IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMC00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0wLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTAtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMC00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0wLTYge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0wLTYge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMC02IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0wLTYge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMC02IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0wLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0wLTYge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMC02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0wLTYge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0wLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTAtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMC02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0wLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTAtOCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTAtOCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0wLTgge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTAtOCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0wLTgge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTAtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTAtOCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0wLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTAtOCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTAtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMC04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0wLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTAtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMC05IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMC05IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTAtOSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMC05IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTAtOSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMC05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMC05IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTAtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMC05IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMC05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0wLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTAtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMC05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0xIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTEgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTEge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTEge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTEgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0xIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0xIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0xIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0xIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0xIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTEge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0xIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTEtMyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTEtMyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0xLTMge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTEtMyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0xLTMge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTEtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTEtMyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0xLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTEtMyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTEtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMS0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0xLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTEtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMS00IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMS00IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTEtNCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMS00IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTEtNCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMS00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMS00IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTEtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMS00IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMS00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0xLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTEtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMS00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0xLTYge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0xLTYge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMS02IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0xLTYge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMS02IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0xLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0xLTYge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMS02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0xLTYge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0xLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTEtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMS02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0xLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTEtOCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTEtOCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0xLTgge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTEtOCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0xLTgge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTEtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTEtOCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0xLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTEtOCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTEtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMS04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0xLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTEtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMS05IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMS05IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTEtOSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMS05IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTEtOSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMS05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMS05IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTEtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMS05IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMS05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0xLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTEtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMS05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0yIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTIgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTIge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTIge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTIgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0yIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0yIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0yIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0yIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0yIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTIge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTIgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0yIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTIgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTItMyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTItMyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0yLTMge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTItMyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0yLTMge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTItMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTItMyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0yLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTItMyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTItMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMi0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0yLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTItMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMi00IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMi00IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTItNCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMi00IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTItNCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMi00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMi00IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTItNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMi00IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMi00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0yLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTItNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMi00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0yLTYge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0yLTYge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMi02IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0yLTYge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMi02IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0yLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0yLTYge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMi02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0yLTYge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0yLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTItNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMi02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0yLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTItOCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTItOCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0yLTgge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTItOCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0yLTgge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTItOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTItOCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0yLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTItOCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTItOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMi04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0yLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTItOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMi05IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMi05IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTItOSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMi05IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTItOSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMi05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMi05IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTItOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMi05IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMi05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0yLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTItOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMi05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0zIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTMge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0zIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0zIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0zIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTMtMyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTMtMyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0zLTMge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTMtMyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0zLTMge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTMtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTMtMyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0zLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTMtMyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTMtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMy0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0zLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTMtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMy00IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMy00IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTMtNCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMy00IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTMtNCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMy00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMy00IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTMtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMy00IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMy00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0zLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTMtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMy00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0zLTYge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0zLTYge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMy02IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0zLTYge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMy02IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0zLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0zLTYge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMy02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0zLTYge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0zLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTMtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMy02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0zLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTMtOCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTMtOCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0zLTgge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTMtOCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0zLTgge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTMtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTMtOCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0zLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTMtOCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTMtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMy04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0zLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTMtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMy05IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMy05IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTMtOSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMy05IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTMtOSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMy05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMy05IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTMtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMy05IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMy05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0zLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTMtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMy05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC00IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTQge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTQge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC00IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC00IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC00IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtNCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTUge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtNSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtNSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtNSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtNSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtNSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTUge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTUge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtNSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC01IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTUgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTUge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTUgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTUge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTUgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC01IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtNSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTUge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTUgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtNSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtNSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtNSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC01IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTUgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTUge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtNSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTUgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtNiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC02IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC02IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtNiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtNiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtNiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTYge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC03IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTcgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTcge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTcgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTcge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTcgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC03IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtNyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC03IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTcgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtNyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC03IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC03IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtNyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTcgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC03IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTcgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTcge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTcgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtNyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtNyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtNyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC03IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTcgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTgge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtOCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtOCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTgge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTgge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTgge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC04IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtOSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC05IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC05IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtOSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtOSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtOSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTkge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0xMCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMTAge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0xMCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0xMCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTEwIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTEwIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0xMCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTEwIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTEwIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0xMCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTEwIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMTAge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTExIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0xMSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTExIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xMSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTExIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMTEge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMTEge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTExIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMTEge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTExICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMTEge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTExIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMTEge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTExICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTExIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTExICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMTIge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTEyIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMTIge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMTIge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0xMiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0xMiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMTIge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0xMiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0xMiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMTIge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEyICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0xMiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTEyIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEyICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMTIge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTAge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTAge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0wIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTAge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0wIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTAge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTAge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0wIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTAge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTAge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0wIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTAge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMC0zIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTAtMyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMC0zIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMC0zIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0wLTMge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0wLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMC0zIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0wLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0wLTMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMC0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0wLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTAtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMC0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0wLTQge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMC00IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0wLTQge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0wLTQge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTAtNCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTAtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0wLTQge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTAtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTAtNCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0wLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTAtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMC00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0wLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTAtNiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0wLTYge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTAtNiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTAtNiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMC02IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMC02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTAtNiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMC02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMC02IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTAtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMC02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0wLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTAtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMC04IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTAtOCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMC04IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMC04IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0wLTgge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0wLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMC04IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0wLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0wLTgge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMC04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0wLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTAtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMC04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0wLTkge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMC05IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0wLTkge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0wLTkge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTAtOSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTAtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0wLTkge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTAtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTAtOSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0wLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTAtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMC05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0wLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTEge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTEge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0xIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTEge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0xIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTEge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTEge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0xIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTEge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTEge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0xIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTEge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMS0zIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTEtMyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMS0zIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMS0zIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0xLTMge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0xLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMS0zIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0xLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0xLTMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMS0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0xLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTEtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMS0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0xLTQge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMS00IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0xLTQge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0xLTQge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTEtNCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTEtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0xLTQge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTEtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTEtNCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0xLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTEtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMS00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0xLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTEtNiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0xLTYge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTEtNiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTEtNiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMS02IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMS02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTEtNiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMS02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMS02IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTEtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMS02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0xLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTEtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMS04IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTEtOCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMS04IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMS04IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0xLTgge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0xLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMS04IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0xLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0xLTgge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMS04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0xLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTEtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMS04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0xLTkge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMS05IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0xLTkge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0xLTkge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTEtOSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTEtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0xLTkge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTEtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTEtOSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0xLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTEtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMS05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0xLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTIge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTIge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0yIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTIge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0yIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTIge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTIge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0yIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTIge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTIge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0yIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTIge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMi0zIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTItMyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMi0zIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMi0zIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0yLTMge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0yLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMi0zIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0yLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0yLTMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMi0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0yLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTItMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMi0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0yLTQge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMi00IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0yLTQge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0yLTQge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTItNCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTItNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0yLTQge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTItNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTItNCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0yLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTItNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMi00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0yLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTItNiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0yLTYge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTItNiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTItNiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMi02IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMi02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTItNiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMi02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMi02IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTItNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMi02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0yLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTItNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMi04IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTItOCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMi04IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMi04IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0yLTgge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0yLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMi04IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0yLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0yLTgge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMi04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0yLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTItOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMi04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0yLTkge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMi05IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0yLTkge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0yLTkge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTItOSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTItOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0yLTkge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTItOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTItOSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0yLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTItOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMi05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0yLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMyApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0zIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0zIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTMge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMy0zIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTMtMyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMy0zIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMy0zIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0zLTMge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0zLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMy0zIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0zLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0zLTMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMy0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0zLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTMtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMy0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0zLTQge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMy00IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0zLTQge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0zLTQge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTMtNCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTMtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0zLTQge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTMtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTMtNCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0zLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTMtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMy00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0zLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTMtNiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0zLTYge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTMtNiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTMtNiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMy02IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMy02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTMtNiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMy02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMy02IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTMtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMy02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0zLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTMtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMy04IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTMtOCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMy04IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMy04IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0zLTgge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0zLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMy04IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0zLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0zLTgge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMy04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0zLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTMtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMy04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0zLTkge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMy05IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0zLTkge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0zLTkge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTMtOSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTMtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0zLTkge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTMtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTMtOSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0zLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTMtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMy05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0zLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTQge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTQge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctNCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy00IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTQge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy00IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTQge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctNSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctNSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTUge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctNSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctNSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctNSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTUge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctNSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctNSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTUge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctNSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctNSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy01IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTUge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctNSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy02IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy02IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctNiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy02IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctNiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy02IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy02IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTcge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTcge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctNyApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy03IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTcge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy03IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTcge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTcge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy03IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTcge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTcge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctNyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy03IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTcge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctOCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctOCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTgge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctOCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTgge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctOCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctOCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy05IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy05IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctOSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy05IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctOSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy05IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy05IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTEwIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMTAge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMTAge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTEwIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTEwIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0xMCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTEwIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTEwIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0xMCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTEwIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMTAge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0xMCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMTEge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0xMSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0xMSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMTEge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMTEge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTExIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMTEge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMTEge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTExIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMTEge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0xMSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTExIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMTEge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0xMiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTEyIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTEyIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0xMiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0xMiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMTIge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0xMiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0xMiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMTIge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0xMiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTEyIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMTIge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0xMiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LWZpbGwtMSB7XG4gIGZsZXg6IDE7XG59XG5cblxuQG1peGluIHNjdy1maWxsLTIge1xuICBmbGV4OiAyO1xufVxuXG5cbkBtaXhpbiBzY3ctZmlsbC0zIHtcbiAgZmxleDogMztcbn1cblxuXG5AbWl4aW4gc2N3LWZpbGwtNCB7XG4gIGZsZXg6IDQ7XG59XG5cblxuQG1peGluIHNjdy1maWxsLTUge1xuICBmbGV4OiA1O1xufVxuXG5cbkBtaXhpbiBzY3ctZmlsbC02IHtcbiAgZmxleDogNjtcbn1cblxuXG5AbWl4aW4gc2N3LWZpbGwtNyB7XG4gIGZsZXg6IDc7XG59XG5cblxuQG1peGluIHNjdy1maWxsLTgge1xuICBmbGV4OiA4O1xufVxuXG5cbkBtaXhpbiBzY3ctZmlsbC05IHtcbiAgZmxleDogOTtcbn1cblxuXG5AbWl4aW4gc2N3LWZpbGwge1xuICBmbGV4OiAxO1xufVxuXG5cbkBtaXhpbiBzY3ctZmlsbC1jb250YWluZXIge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWVsZW1lbnQtaW5pdGlhbCB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5cbkBtaXhpbiBzY3ctc3RhY2staW5pdGlhbCgkaXNTbG90OiBmYWxzZSkge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcblxuICBkaXNwbGF5OiBibG9jaztcblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bnRoLWNoaWxkKG4pICknLCBcbiAgICAnPiAqOm50aC1jaGlsZChuKSdcbiAgKX0ge1xuICAgIFxuICAgIC0tZ2FwLWgtaW50OiAwcHg7XG4gICAgLS1nYXAtdi1pbnQ6IHZhciggLS1nYXAsIHZhciggLS1nYXAtdiwgaW5pdGlhbCApKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpsYXN0LWNoaWxkICknLCBcbiAgICAnPiAqOmxhc3QtY2hpbGQnXG4gICl9IHtcbiAgICAtLWdhcC12LWludDogMHB4O1xuICB9XG59XG5cblxuQG1peGluIHNjdy1sYXlvdXQtaW5pdGlhbCgkaXNTbG90OiBmYWxzZSkge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcblxuICBkaXNwbGF5OiBibG9jaztcblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bnRoLWNoaWxkKG4pICknLCBcbiAgICAnPiAqOm50aC1jaGlsZChuKSdcbiAgKX0ge1xuICAgIFxuICAgIC0tZ2FwLWgtaW50OiAwcHg7XG4gICAgLS1nYXAtdi1pbnQ6IHZhciggLS1nYXAsIHZhciggLS1nYXAtdiwgaW5pdGlhbCApKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpsYXN0LWNoaWxkICknLCBcbiAgICAnPiAqOmxhc3QtY2hpbGQnXG4gICl9IHtcbiAgICAtLWdhcC12LWludDogMHB4O1xuICB9XG59XG5cblxuQG1peGluIHNjdy1mbGV4LWgtaW5pdGlhbCgkaXNTbG90OiBmYWxzZSkge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcbiAgXG4gIC8qIHNjdyBmbGV4IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLWFsaWduLWl0ZW1zOiBpbml0aWFsO1xuICAtLWp1c3RpZnktY29udGVudDogaW5pdGlhbDtcbiAgYWxpZ24taXRlbXM6IHZhciggLS1hbGlnbi1pdGVtcyAsIHZhciggLS1haS1pbnQsIGZsZXgtc3RhcnQgKSApO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHZhciggLS1qdXN0aWZ5LWNvbnRlbnQgLCB2YXIoIC0tamMtaW50LCBmbGV4LXN0YXJ0ICkgKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG5cbiAgLS1haS1oOiBmbGV4LXN0YXJ0O1xuICAtLWpjLWg6IGZsZXgtc3RhcnQ7XG4gIC0tYWktaW50OiB2YXIoIC0tYWktaCwgaW5pdGlhbCApO1xuICAtLWpjLWludDogdmFyKCAtLWpjLWgsIGluaXRpYWwgKTtcblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bnRoLWNoaWxkKG4pICknLCBcbiAgICAnPiAqOm50aC1jaGlsZChuKSdcbiAgKX0ge1xuICAgIFxuICAgIC0tZ2FwLWgtaW50OiB2YXIoIC0tZ2FwICwgdmFyKCAtLWdhcC1oLCBpbml0aWFsICkpO1xuICAgIC0tZ2FwLXYtaW50OiAwcHg7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bGFzdC1jaGlsZCApJywgXG4gICAgJz4gKjpsYXN0LWNoaWxkJ1xuICApfSB7XG4gICAgLS1nYXAtaC1pbnQ6IDBweDtcbiAgfVxufVxuXG5cbkBtaXhpbiBzY3ctZmxleC12LWluaXRpYWwoJGlzU2xvdDogZmFsc2UpIHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG4gIFxuICAvKiBzY3cgZmxleCBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1hbGlnbi1pdGVtczogaW5pdGlhbDtcbiAgLS1qdXN0aWZ5LWNvbnRlbnQ6IGluaXRpYWw7XG4gIGFsaWduLWl0ZW1zOiB2YXIoIC0tYWxpZ24taXRlbXMgLCB2YXIoIC0tYWktaW50LCBmbGV4LXN0YXJ0ICkgKTtcbiAganVzdGlmeS1jb250ZW50OiB2YXIoIC0tanVzdGlmeS1jb250ZW50ICwgdmFyKCAtLWpjLWludCwgZmxleC1zdGFydCApICk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuXG4gIC0tYWktdjogZmxleC1zdGFydDtcbiAgLS1qYy12OiBmbGV4LXN0YXJ0O1xuICAtLWFpLWludDogdmFyKCAtLWFpLXYsIGluaXRpYWwgKTtcbiAgLS1qYy1pbnQ6IHZhciggLS1qYy12LCBpbml0aWFsICk7XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOm50aC1jaGlsZChuKSApJywgXG4gICAgJz4gKjpudGgtY2hpbGQobiknXG4gICl9IHtcbiAgICBcbiAgICAtLWdhcC1oLWludDogMHB4O1xuICAgIC0tZ2FwLXYtaW50OiB2YXIoIC0tZ2FwLCB2YXIoIC0tZ2FwLXYsIGluaXRpYWwgKSk7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bGFzdC1jaGlsZCApJywgXG4gICAgJz4gKjpsYXN0LWNoaWxkJ1xuICApfSB7XG4gICAgLS1nYXAtdi1pbnQ6IDBweDtcbiAgfVxufVxuXG5cbkBtaXhpbiBzY3ctY2VudGVyLWluaXRpYWwoJGlzU2xvdDogZmFsc2UpIHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG4gIFxuICAvKiBzY3cgZmxleCBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1hbGlnbi1pdGVtczogaW5pdGlhbDtcbiAgLS1qdXN0aWZ5LWNvbnRlbnQ6IGluaXRpYWw7XG4gIGFsaWduLWl0ZW1zOiB2YXIoIC0tYWxpZ24taXRlbXMgLCB2YXIoIC0tYWktaW50LCBmbGV4LXN0YXJ0ICkgKTtcbiAganVzdGlmeS1jb250ZW50OiB2YXIoIC0tanVzdGlmeS1jb250ZW50ICwgdmFyKCAtLWpjLWludCwgZmxleC1zdGFydCApICk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuXG4gIC0tYWktdjogY2VudGVyO1xuICAtLWpjLXY6IGNlbnRlcjtcbiAgLS1haS1pbnQ6IHZhciggLS1haS12LCBpbml0aWFsICk7XG4gIC0tamMtaW50OiB2YXIoIC0tamMtdiwgaW5pdGlhbCApO1xuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpudGgtY2hpbGQobikgKScsIFxuICAgICc+ICo6bnRoLWNoaWxkKG4pJ1xuICApfSB7XG4gICAgXG4gICAgLS1nYXAtaC1pbnQ6IDBweDtcbiAgICAtLWdhcC12LWludDogdmFyKCAtLWdhcCwgdmFyKCAtLWdhcC12LCBpbml0aWFsICkpO1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOmxhc3QtY2hpbGQgKScsIFxuICAgICc+ICo6bGFzdC1jaGlsZCdcbiAgKX0ge1xuICAgIC0tZ2FwLXYtaW50OiAwcHg7XG4gIH1cbn1cblxuXG5AbWl4aW4gc2N3LWZsb2F0LWluaXRpYWwoJGlzU2xvdDogZmFsc2UpIHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bnRoLWNoaWxkKG4pICknLCBcbiAgICAnPiAqOm50aC1jaGlsZChuKSdcbiAgKX0ge1xuICAgIFxuICAgIC0tZ2FwLWgtaW50OiAwcHg7XG4gICAgLS1nYXAtdi1pbnQ6IHZhciggLS1nYXAsIHZhciggLS1nYXAtdiwgaW5pdGlhbCApKTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbGVmdDtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpsYXN0LWNoaWxkICknLCBcbiAgICAnPiAqOmxhc3QtY2hpbGQnXG4gICl9IHtcbiAgICAtLWdhcC12LWludDogMHB4O1xuICB9XG59XG5cbkBtaXhpbiBzY3ctZWxlbWVudCB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5cbkBtaXhpbiBzY3ctc3RhY2soJGlzU2xvdDogZmFsc2UpIHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOm50aC1jaGlsZChuKSApJywgXG4gICAgJz4gKjpudGgtY2hpbGQobiknXG4gICl9IHtcbiAgICBcbiAgICAtLWdhcC1oLWludDogMHB4O1xuICAgIC0tZ2FwLXYtaW50OiB2YXIoIC0tZ2FwLCB2YXIoIC0tZ2FwLXYsIGluaXRpYWwgKSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bGFzdC1jaGlsZCApJywgXG4gICAgJz4gKjpsYXN0LWNoaWxkJ1xuICApfSB7XG4gICAgLS1nYXAtdi1pbnQ6IDBweDtcbiAgfVxufVxuXG5cbkBtaXhpbiBzY3ctbGF5b3V0KCRpc1Nsb3Q6IGZhbHNlKSB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpudGgtY2hpbGQobikgKScsIFxuICAgICc+ICo6bnRoLWNoaWxkKG4pJ1xuICApfSB7XG4gICAgXG4gICAgLS1nYXAtaC1pbnQ6IDBweDtcbiAgICAtLWdhcC12LWludDogdmFyKCAtLWdhcCwgdmFyKCAtLWdhcC12LCBpbml0aWFsICkpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOmxhc3QtY2hpbGQgKScsIFxuICAgICc+ICo6bGFzdC1jaGlsZCdcbiAgKX0ge1xuICAgIC0tZ2FwLXYtaW50OiAwcHg7XG4gIH1cbn1cblxuXG5AbWl4aW4gc2N3LWZsZXgtaCgkaXNTbG90OiBmYWxzZSkge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcbiAgXG4gIC8qIHNjdyBmbGV4IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLWFsaWduLWl0ZW1zOiBpbml0aWFsO1xuICAtLWp1c3RpZnktY29udGVudDogaW5pdGlhbDtcbiAgYWxpZ24taXRlbXM6IHZhciggLS1hbGlnbi1pdGVtcyAsIHZhciggLS1haS1pbnQsIGZsZXgtc3RhcnQgKSApO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHZhciggLS1qdXN0aWZ5LWNvbnRlbnQgLCB2YXIoIC0tamMtaW50LCBmbGV4LXN0YXJ0ICkgKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG5cbiAgLS1haS1oOiBmbGV4LXN0YXJ0O1xuICAtLWpjLWg6IGZsZXgtc3RhcnQ7XG4gIC0tYWktaW50OiB2YXIoIC0tYWktaCwgaW5pdGlhbCApO1xuICAtLWpjLWludDogdmFyKCAtLWpjLWgsIGluaXRpYWwgKTtcblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bnRoLWNoaWxkKG4pICknLCBcbiAgICAnPiAqOm50aC1jaGlsZChuKSdcbiAgKX0ge1xuICAgIFxuICAgIC0tZ2FwLWgtaW50OiB2YXIoIC0tZ2FwICwgdmFyKCAtLWdhcC1oLCBpbml0aWFsICkpO1xuICAgIC0tZ2FwLXYtaW50OiAwcHg7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bGFzdC1jaGlsZCApJywgXG4gICAgJz4gKjpsYXN0LWNoaWxkJ1xuICApfSB7XG4gICAgLS1nYXAtaC1pbnQ6IDBweDtcbiAgfVxufVxuXG5cbkBtaXhpbiBzY3ctZmxleC12KCRpc1Nsb3Q6IGZhbHNlKSB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuICBcbiAgLyogc2N3IGZsZXggZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tYWxpZ24taXRlbXM6IGluaXRpYWw7XG4gIC0tanVzdGlmeS1jb250ZW50OiBpbml0aWFsO1xuICBhbGlnbi1pdGVtczogdmFyKCAtLWFsaWduLWl0ZW1zICwgdmFyKCAtLWFpLWludCwgZmxleC1zdGFydCApICk7XG4gIGp1c3RpZnktY29udGVudDogdmFyKCAtLWp1c3RpZnktY29udGVudCAsIHZhciggLS1qYy1pbnQsIGZsZXgtc3RhcnQgKSApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcblxuICAtLWFpLXY6IGZsZXgtc3RhcnQ7XG4gIC0tamMtdjogZmxleC1zdGFydDtcbiAgLS1haS1pbnQ6IHZhciggLS1haS12LCBpbml0aWFsICk7XG4gIC0tamMtaW50OiB2YXIoIC0tamMtdiwgaW5pdGlhbCApO1xuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpudGgtY2hpbGQobikgKScsIFxuICAgICc+ICo6bnRoLWNoaWxkKG4pJ1xuICApfSB7XG4gICAgXG4gICAgLS1nYXAtaC1pbnQ6IDBweDtcbiAgICAtLWdhcC12LWludDogdmFyKCAtLWdhcCwgdmFyKCAtLWdhcC12LCBpbml0aWFsICkpO1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOmxhc3QtY2hpbGQgKScsIFxuICAgICc+ICo6bGFzdC1jaGlsZCdcbiAgKX0ge1xuICAgIC0tZ2FwLXYtaW50OiAwcHg7XG4gIH1cbn1cblxuXG5AbWl4aW4gc2N3LWNlbnRlcigkaXNTbG90OiBmYWxzZSkge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcbiAgXG4gIC8qIHNjdyBmbGV4IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLWFsaWduLWl0ZW1zOiBpbml0aWFsO1xuICAtLWp1c3RpZnktY29udGVudDogaW5pdGlhbDtcbiAgYWxpZ24taXRlbXM6IHZhciggLS1hbGlnbi1pdGVtcyAsIHZhciggLS1haS1pbnQsIGZsZXgtc3RhcnQgKSApO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHZhciggLS1qdXN0aWZ5LWNvbnRlbnQgLCB2YXIoIC0tamMtaW50LCBmbGV4LXN0YXJ0ICkgKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG5cbiAgLS1haS12OiBjZW50ZXI7XG4gIC0tamMtdjogY2VudGVyO1xuICAtLWFpLWludDogdmFyKCAtLWFpLXYsIGluaXRpYWwgKTtcbiAgLS1qYy1pbnQ6IHZhciggLS1qYy12LCBpbml0aWFsICk7XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOm50aC1jaGlsZChuKSApJywgXG4gICAgJz4gKjpudGgtY2hpbGQobiknXG4gICl9IHtcbiAgICBcbiAgICAtLWdhcC1oLWludDogMHB4O1xuICAgIC0tZ2FwLXYtaW50OiB2YXIoIC0tZ2FwLCB2YXIoIC0tZ2FwLXYsIGluaXRpYWwgKSk7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bGFzdC1jaGlsZCApJywgXG4gICAgJz4gKjpsYXN0LWNoaWxkJ1xuICApfSB7XG4gICAgLS1nYXAtdi1pbnQ6IDBweDtcbiAgfVxufVxuXG5cbkBtaXhpbiBzY3ctZmxvYXQoJGlzU2xvdDogZmFsc2UpIHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bnRoLWNoaWxkKG4pICknLCBcbiAgICAnPiAqOm50aC1jaGlsZChuKSdcbiAgKX0ge1xuICAgIFxuICAgIC0tZ2FwLWgtaW50OiAwcHg7XG4gICAgLS1nYXAtdi1pbnQ6IHZhciggLS1nYXAsIHZhciggLS1nYXAtdiwgaW5pdGlhbCApKTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbGVmdDtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpsYXN0LWNoaWxkICknLCBcbiAgICAnPiAqOmxhc3QtY2hpbGQnXG4gICl9IHtcbiAgICAtLWdhcC12LWludDogMHB4O1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2Nyb2xsLXkge1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG5cbkBtaXhpbiBzY3ctZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG5cbkBtaXhpbiBzY3ctZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cblxuQG1peGluIHNjdy1mbG9hdC1jbGVhci1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBsZWZ0O1xufVxuXG5cbkBtaXhpbiBzY3ctZmxvYXQtY2xlYXItcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIGNsZWFyOiByaWdodDtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC1jZW50ZXIge1xuICAtLWFpLWg6IGNlbnRlcjtcbiAgLS1qYy1oOiBjZW50ZXI7XG4gIC0tYWktdjogY2VudGVyO1xuICAtLWpjLXY6IGNlbnRlcjtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWNlbnRlci1jZW50ZXIge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LWNlbnRlcjtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC1jZW50ZXItbGVmdCB7XG4gIC0tYWktaDogY2VudGVyO1xuICAtLWpjLWg6IGZsZXgtc3RhcnQ7XG4gIC0tYWktdjogZmxleC1zdGFydDtcbiAgLS1qYy12OiBjZW50ZXI7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1sZWZ0LWNlbnRlciB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtY2VudGVyLWxlZnQ7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtY2VudGVyLXJpZ2h0IHtcbiAgLS1haS1oOiBjZW50ZXI7XG4gIC0tamMtaDogZmxleC1lbmQ7XG4gIC0tYWktdjogZmxleC1lbmQ7XG4gIC0tamMtdjogY2VudGVyO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtcmlnaHQtY2VudGVyIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1jZW50ZXItcmlnaHQ7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtdG9wIHtcbiAgLS1haS1oOiBmbGV4LXN0YXJ0O1xuICAtLWpjLWg6IGZsZXgtc3RhcnQ7XG4gIC0tYWktdjogZmxleC1zdGFydDtcbiAgLS1qYy12OiBmbGV4LXN0YXJ0O1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtdG9wLWxlZnQge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXRvcDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWxlZnQtdG9wIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC10b3A7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1sZWZ0IHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC10b3A7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtdG9wLWNlbnRlciB7XG4gIC0tYWktaDogZmxleC1zdGFydDtcbiAgLS1qYy1oOiBjZW50ZXI7XG4gIC0tYWktdjogY2VudGVyO1xuICAtLWpjLXY6IGZsZXgtc3RhcnQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1jZW50ZXItdG9wIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC10b3AtY2VudGVyO1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXRvcC1yaWdodCB7XG4gIC0tYWktaDogZmxleC1zdGFydDtcbiAgLS1qYy1oOiBmbGV4LWVuZDtcbiAgLS1haS12OiBmbGV4LWVuZDtcbiAgLS1qYy12OiBmbGV4LXN0YXJ0O1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtcmlnaHQtdG9wIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC10b3AtcmlnaHQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1yaWdodCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtdG9wLXJpZ2h0O1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWJvdHRvbSB7XG4gIC0tYWktaDogZmxleC1lbmQ7XG4gIC0tamMtaDogZmxleC1zdGFydDtcbiAgLS1haS12OiBmbGV4LXN0YXJ0O1xuICAtLWpjLXY6IGZsZXgtZW5kO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtYm90dG9tLWxlZnQge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LWJvdHRvbTtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWxlZnQtYm90dG9tIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1ib3R0b207XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtYm90dG9tLWNlbnRlciB7XG4gIC0tYWktaDogZmxleC1lbmQ7XG4gIC0tamMtaDogY2VudGVyO1xuICAtLWFpLXY6IGNlbnRlcjtcbiAgLS1qYy12OiBmbGV4LWVuZDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWNlbnRlci1ib3R0b20ge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LWJvdHRvbS1jZW50ZXI7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtYm90dG9tLXJpZ2h0IHtcbiAgLS1haS1oOiBmbGV4LWVuZDtcbiAgLS1qYy1oOiBmbGV4LWVuZDtcbiAgLS1haS12OiBmbGV4LWVuZDtcbiAgLS1qYy12OiBmbGV4LWVuZDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXJpZ2h0LWJvdHRvbSB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtYm90dG9tLXJpZ2h0O1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXN0cmV0Y2gge1xuICAtLWFpLWg6IHN0cmV0Y2g7XG4gIC0tamMtaDogZmxleC1zdGFydDtcbiAgLS1haS12OiBzdHJldGNoO1xuICAtLWpjLXY6IGZsZXgtc3RhcnQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1zdHJldGNoLWxlZnQge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXN0cmV0Y2g7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1sZWZ0LXN0cmV0Y2gge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXN0cmV0Y2g7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1zdHJldGNoLXRvcCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtc3RyZXRjaDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXRvcC1zdHJldGNoIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1zdHJldGNoO1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXN0cmV0Y2gtcmlnaHQge1xuICAtLWFpLWg6IHN0cmV0Y2g7XG4gIC0tamMtaDogZmxleC1lbmQ7XG4gIC0tYWktdjogc3RyZXRjaDtcbiAgLS1qYy12OiBmbGV4LWVuZDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXJpZ2h0LXN0cmV0Y2gge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXN0cmV0Y2gtcmlnaHQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1zdHJldGNoLWJvdHRvbSB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtc3RyZXRjaC1yaWdodDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWJvdHRvbS1zdHJldGNoIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1zdHJldGNoLXJpZ2h0O1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXN0cmV0Y2gtY2VudGVyIHtcbiAgLS1haS1oOiBzdHJldGNoO1xuICAtLWpjLWg6IGNlbnRlcjtcbiAgLS1haS12OiBzdHJldGNoO1xuICAtLWpjLXY6IGNlbnRlcjtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWNlbnRlci1zdHJldGNoIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1zdHJldGNoLWNlbnRlcjtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC1iYXNlbGluZSB7XG4gIC0tYWktaDogYmFzZWxpbmU7XG4gIC0tamMtaDogZmxleC1zdGFydDtcbiAgLS1haS12OiBmbGV4LXN0YXJ0O1xuICAtLWpjLXY6IGZsZXgtc3RhcnQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1iYXNlbGluZS1sZWZ0IHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1iYXNlbGluZTtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWxlZnQtYmFzZWxpbmUge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LWJhc2VsaW5lO1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWJhc2VsaW5lLXJpZ2h0IHtcbiAgLS1haS1oOiBiYXNlbGluZTtcbiAgLS1qYy1oOiBmbGV4LWVuZDtcbiAgLS1haS12OiBmbGV4LWVuZDtcbiAgLS1qYy12OiBmbGV4LXN0YXJ0O1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtcmlnaHQtYmFzZWxpbmUge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LWJhc2VsaW5lLXJpZ2h0O1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWJhc2VsaW5lLWNlbnRlciB7XG4gIC0tYWktaDogYmFzZWxpbmU7XG4gIC0tamMtaDogY2VudGVyO1xuICAtLWFpLXY6IGNlbnRlcjtcbiAgLS1qYy12OiBmbGV4LXN0YXJ0O1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtY2VudGVyLWJhc2VsaW5lIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1iYXNlbGluZS1jZW50ZXI7XG59XG5cblxuQG1peGluIHNjdy1maWxsLWNoaWxkcmVuIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAxO1xuICB9XG59XG5AbWl4aW4gc2N3LWNoaWxkcmVuLWZpbGwge1xuICBAaW5jbHVkZSBzY3ctZmlsbC1jaGlsZHJlbjtcbn1cblxuXG5AbWl4aW4gc2N3LWhpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuIl19 */`;var G=class extends L{constructor(){super(...arguments);this.ariaLabel="";this.ariaDisabled="false";this.isLink=!1;this.dynamic=!1;this.element="component"}disconnectedCallback(){super.disconnectedCallback(),this._lightDomMutationObserver&&this._lightDomMutationObserver.disconnect()}firstUpdated(g){super.firstUpdated(g),this.dynamic&&(this._lightDomMutationObserver=new l(this,()=>{this.domMutated()}))}domMutated(){}warn(g){this._lastWarning||(this._lastWarning=g,this.setAttribute("warning",g),this.setAttribute("title",`[ERROR]: ${g}`))}clearWarnings(){this._lastWarning=void 0,this.removeAttribute("warning"),this.removeAttribute("title")}render(){return Y`
19
+ <slot></slot>
20
+ `}};G.styles=d,Z([W({type:String,reflect:!0,attribute:"aria-label"})],G.prototype,"ariaLabel",2),Z([W({type:String,attribute:"aria-disabled"})],G.prototype,"ariaDisabled",2),Z([W({type:Boolean,reflect:!0,attribute:"is-link"})],G.prototype,"isLink",2),Z([W({type:Boolean})],G.prototype,"dynamic",2),Z([W({type:String,reflect:!0})],G.prototype,"element",2),Z([B()],G.prototype,"_lastWarning",2);export{W as a,B as b,j as c,G as d};
21
+ /**
22
+ * @license
23
+ * Copyright 2017 Google LLC
24
+ * SPDX-License-Identifier: BSD-3-Clause
25
+ */
26
+ /**
27
+ * @license
28
+ * Copyright 2021 Google LLC
29
+ * SPDX-License-Identifier: BSD-3-Clause
30
+ */
31
+ //# sourceMappingURL=chunk.KMM6APSP.js.map