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,247 @@
1
+ import{a as C,b as t}from"./chunk.NRK7TWEL.js";import{a as G}from"./chunk.QVCFAUL2.js";import{a as X}from"./chunk.25GCIBEO.js";import{a as c,d as W}from"./chunk.KMM6APSP.js";import{a as Z}from"./chunk.DEJTQKIS.js";import{g}from"./chunk.5YJY6NT6.js";var A=Z`
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
+
19
+ :host([size=medium]) {
20
+ display: block;
21
+ background-color: rgba(0, 0, 0, 0);
22
+ display: flex;
23
+ flex-flow: column nowrap;
24
+ justify-content: flex-start;
25
+ align-items: flex-start;
26
+ padding-left: 0px;
27
+ padding-right: 0px;
28
+ padding-top: 0px;
29
+ padding-bottom: 0px;
30
+ /*.image-box {
31
+ width: 100%;
32
+ padding-bottom: 36.4734299517%;
33
+ position: relative;
34
+ }*/
35
+ /*.image {
36
+ @include size-medium-image-mixins.box;
37
+
38
+ position: absolute;
39
+ inset: 0;
40
+ background-position: center;
41
+ background-size: cover;
42
+ }*/
43
+ /*.action {
44
+ @include size-medium-action-mixins.box;
45
+ @include size-medium-action-mixins.sizing;
46
+ }*/
47
+ }
48
+ :host([size=medium]) > *:not(:last-child) {
49
+ margin-bottom: calc(var(--scw-spacing-1) * 0.8);
50
+ --margin-bottom: calc( var( --scw-spacing-1 ) * 0.8 );
51
+ }
52
+ :host([size=medium]) .image-box {
53
+ height: 151px;
54
+ }
55
+ :host([size=medium]) .description {
56
+ text-align: LEFT;
57
+ font: var(--scw-type-text-font);
58
+ color: var(--scw-color-grey-02);
59
+ align-self: stretch;
60
+ }
61
+
62
+ :host([size=small]) {
63
+ display: block;
64
+ background-color: rgba(0, 0, 0, 0);
65
+ display: flex;
66
+ flex-flow: column nowrap;
67
+ justify-content: flex-start;
68
+ align-items: flex-start;
69
+ padding-left: 0px;
70
+ padding-right: 0px;
71
+ padding-top: 0px;
72
+ padding-bottom: 0px;
73
+ /*.image-box {
74
+ width: 100%;
75
+ padding-bottom: 88.9473684211%;
76
+ position: relative;
77
+ }*/
78
+ /*.image {
79
+ @include size-small-image-mixins.box;
80
+
81
+ position: absolute;
82
+ inset: 0;
83
+ background-position: center;
84
+ background-size: cover;
85
+ }*/
86
+ }
87
+ :host([size=small]) > *:not(:last-child) {
88
+ margin-bottom: calc(var(--scw-spacing-1) * 0.8);
89
+ --margin-bottom: calc( var( --scw-spacing-1 ) * 0.8 );
90
+ }
91
+ :host([size=small]) .image-box {
92
+ height: 169px;
93
+ }
94
+ :host([size=small]) .description {
95
+ display: none;
96
+ }
97
+ :host([size=small]) .action {
98
+ display: none;
99
+ }
100
+
101
+ :host .super-heading.mortgage {
102
+ text-align: LEFT;
103
+ font: var(--scw-type-text-bold-condensed-font);
104
+ color: var(--scw-color-mortgage-04);
105
+ align-self: stretch;
106
+ }
107
+ :host .super-heading.savings {
108
+ text-align: LEFT;
109
+ font: var(--scw-type-text-bold-condensed-font);
110
+ color: var(--scw-color-savings-04);
111
+ align-self: stretch;
112
+ }
113
+ :host .super-heading.student {
114
+ text-align: LEFT;
115
+ font: var(--scw-type-text-bold-condensed-font);
116
+ color: var(--scw-color-student-04);
117
+ align-self: stretch;
118
+ }
119
+ :host .super-heading.investments {
120
+ text-align: LEFT;
121
+ font: var(--scw-type-text-bold-condensed-font);
122
+ color: var(--scw-color-investments-04);
123
+ align-self: stretch;
124
+ }
125
+ :host .super-heading.checking {
126
+ text-align: LEFT;
127
+ font: var(--scw-type-text-bold-condensed-font);
128
+ color: var(--scw-color-checking-04);
129
+ align-self: stretch;
130
+ }
131
+ :host .super-heading.credit-cards {
132
+ text-align: LEFT;
133
+ font: var(--scw-type-text-bold-condensed-font);
134
+ color: var(--scw-color-credit-cards-04);
135
+ align-self: stretch;
136
+ }
137
+
138
+ :host {
139
+ display: block;
140
+ background-color: var(--scw-color, rgba(0, 0, 0, 0));
141
+ display: flex;
142
+ flex-flow: column nowrap;
143
+ justify-content: flex-start;
144
+ align-items: flex-start;
145
+ padding-left: 0px;
146
+ padding-right: 0px;
147
+ padding-top: 0px;
148
+ padding-bottom: 0px;
149
+ /*.image {
150
+ @include default-image-mixins.box;
151
+
152
+ position: absolute;
153
+ inset: 0;
154
+ background-position: center;
155
+ background-size: cover;
156
+ }*/
157
+ }
158
+ :host > *:not(:last-child) {
159
+ margin-bottom: calc(var(--scw-spacing-1) * 0.8);
160
+ --margin-bottom: calc( var( --scw-spacing-1 ) * 0.8 );
161
+ }
162
+ :host .image-box {
163
+ background-color: var(--scw-color-09, var(--scw-color-grey-09));
164
+ border-radius: 10px 10px 10px 10px;
165
+ align-self: stretch;
166
+ flex: 1;
167
+ flex: initial;
168
+ overflow: hidden;
169
+ height: 330px;
170
+ }
171
+ :host .heading {
172
+ background-color: rgba(0, 0, 0, 0);
173
+ align-self: stretch;
174
+ }
175
+ :host .super-heading {
176
+ text-align: LEFT;
177
+ font: var(--scw-type-text-bold-condensed-font);
178
+ color: var(--scw-color-03, var(--scw-color-primary-03));
179
+ align-self: stretch;
180
+ }
181
+ :host .description {
182
+ text-align: LEFT;
183
+ font: var(--scw-type-text-06-font);
184
+ color: var(--scw-color-02, var(--scw-color-grey-02));
185
+ align-self: stretch;
186
+ }
187
+ :host .action {
188
+ width: 83px;
189
+ height: 37px;
190
+ }
191
+
192
+ :host([action=none]) {
193
+ pointer-events: none;
194
+ }
195
+
196
+ :host([action=whole]) {
197
+ pointer-events: all;
198
+ }
199
+
200
+ :host([action=whole]:hover) {
201
+ cursor: pointer;
202
+ }
203
+
204
+ :host([action=whole]:focus-visible) {
205
+ outline: none;
206
+ box-shadow: var(--scw-effect-focus-shadow);
207
+ border-radius: 10px 10px 4px 4px;
208
+ }
209
+
210
+ :host([action=link]) {
211
+ pointer-events: none;
212
+ }
213
+ :host([action=link]) scw-link {
214
+ pointer-events: all;
215
+ }
216
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL1VzZXJzL3Njb3R0cm91c2UvV29ya3NwYWNlL3NjdS13ZWItY29tcG9uZW50cy13ZWJzaXRlcy9zY3Utd2ViLWNvbXBvbmVudHMtd2Vic2l0ZXMvc3JjL3Njdy1jYXJkL3Njc3MiLCJzb3VyY2VzIjpbIi4uLy4uL3Njdy1jb21wb25lbnQvc2Nzcy9zY3ctY29tcG9uZW50LnNjc3MiLCIuLi8uLi8uLi9kaXN0L3Rva2Vucy9zb3VyY2UvY3NzQXBpLnNjc3MiLCJzY3ctY2FyZC1tZWRpdW0uc2NzcyIsIi4uLy4uLy4uL2Rpc3QvdG9rZW5zL3NlZ21lbnRzL2NvbXAtc2N3LWNhcmQvX3NpemUtbWVkaXVtLW1peGlucy5zY3NzIiwiLi4vLi4vLi4vZGlzdC90b2tlbnMvc2VnbWVudHMvY29tcC1zY3ctY2FyZC9fc2l6ZS1tZWRpdW0taW1hZ2UtdmFycy5zY3NzIiwiLi4vLi4vLi4vZGlzdC90b2tlbnMvc2VnbWVudHMvY29tcC1zY3ctY2FyZC9fc2l6ZS1tZWRpdW0tZGVzY3JpcHRpb24tbWl4aW5zLnNjc3MiLCJzY3ctY2FyZC1zbWFsbC5zY3NzIiwiLi4vLi4vLi4vZGlzdC90b2tlbnMvc2VnbWVudHMvY29tcC1zY3ctY2FyZC9fc2l6ZS1zbWFsbC1taXhpbnMuc2NzcyIsIi4uLy4uLy4uL2Rpc3QvdG9rZW5zL3NlZ21lbnRzL2NvbXAtc2N3LWNhcmQvX3NpemUtc21hbGwtaW1hZ2UtdmFycy5zY3NzIiwic2N3LWNhcmQtY29sb3JzLnNjc3MiLCIuLi8uLi8uLi9kaXN0L3Rva2Vucy9zZWdtZW50cy9jb21wLXNjdy1jYXJkL19jb2xvci1tb3J0Z2FnZS1zdXBlci1oZWFkaW5nLW1peGlucy5zY3NzIiwiLi4vLi4vLi4vZGlzdC90b2tlbnMvc2VnbWVudHMvY29tcC1zY3ctY2FyZC9fY29sb3Itc2F2aW5ncy1zdXBlci1oZWFkaW5nLW1peGlucy5zY3NzIiwiLi4vLi4vLi4vZGlzdC90b2tlbnMvc2VnbWVudHMvY29tcC1zY3ctY2FyZC9fY29sb3Itc3R1ZGVudC1zdXBlci1oZWFkaW5nLW1peGlucy5zY3NzIiwiLi4vLi4vLi4vZGlzdC90b2tlbnMvc2VnbWVudHMvY29tcC1zY3ctY2FyZC9fY29sb3ItaW52ZXN0bWVudHMtc3VwZXItaGVhZGluZy1taXhpbnMuc2NzcyIsIi4uLy4uLy4uL2Rpc3QvdG9rZW5zL3NlZ21lbnRzL2NvbXAtc2N3LWNhcmQvX2NvbG9yLWNoZWNraW5nLXN1cGVyLWhlYWRpbmctbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9kaXN0L3Rva2Vucy9zZWdtZW50cy9jb21wLXNjdy1jYXJkL19jb2xvci1jcmVkaXQtY2FyZHMtc3VwZXItaGVhZGluZy1taXhpbnMuc2NzcyIsInNjdy1jYXJkLnNjc3MiLCIuLi8uLi8uLi9kaXN0L3Rva2Vucy9zZWdtZW50cy9jb21wLXNjdy1jYXJkL19kZWZhdWx0LW1peGlucy5zY3NzIiwiLi4vLi4vLi4vZGlzdC90b2tlbnMvc2VnbWVudHMvY29tcC1zY3ctY2FyZC9fZGVmYXVsdC1pbWFnZS1taXhpbnMuc2NzcyIsIi4uLy4uLy4uL2Rpc3QvdG9rZW5zL3NlZ21lbnRzL2NvbXAtc2N3LWNhcmQvX2RlZmF1bHQtaW1hZ2UtdmFycy5zY3NzIiwiLi4vLi4vLi4vZGlzdC90b2tlbnMvc2VnbWVudHMvY29tcC1zY3ctY2FyZC9fZGVmYXVsdC1oZWFkaW5nLW1peGlucy5zY3NzIiwiLi4vLi4vLi4vZGlzdC90b2tlbnMvc2VnbWVudHMvY29tcC1zY3ctY2FyZC9fZGVmYXVsdC1zdXBlci1oZWFkaW5nLW1peGlucy5zY3NzIiwiLi4vLi4vLi4vZGlzdC90b2tlbnMvc2VnbWVudHMvY29tcC1zY3ctY2FyZC9fZGVmYXVsdC1kZXNjcmlwdGlvbi1taXhpbnMuc2NzcyIsIi4uLy4uLy4uL2Rpc3QvdG9rZW5zL3NlZ21lbnRzL2NvbXAtc2N3LWNhcmQvX2RlZmF1bHQtYWN0aW9uLW1peGlucy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0FDMm90QkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7OztBRGpwdEJGO0VBQ0U7OztBRUFGO0VBQ0U7RUNFRTtFQXlCRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEMUJBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNRTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFhRjtBQUFBO0FBQUE7QUFBQTs7QUNRQTtFQUNNO0VBQ0E7O0FEaENOO0VBQ0UsUUVMSzs7QUZzQlA7RUd6QkE7RUFDQTtFQUlFO0VBRUY7OztBQ1JGO0VBQ0U7RUNJRTtFQXlCRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEM0JBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNRTtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FDc0JGO0VBQ007RUFDQTs7QURsQ047RUFDRSxRRUhLOztBRnFCUDtFQUNFOztBQUlGO0VBQ0U7OztBR3hCRjtFQ05BO0VBQ0E7RUFJRTtFQUVGOztBREdBO0VFVkE7RUFDQTtFQUlFO0VBRUY7O0FGT0E7RUdkQTtFQUNBO0VBSUU7RUFFRjs7QUhXQTtFSWxCQTtFQUNBO0VBSUU7RUFFRjs7QUplQTtFS3RCQTtFQUNBO0VBSUU7RUFFRjs7QUxtQkE7RU0xQkE7RUFDQTtFQUlFO0VBRUY7OztBQ0VGO0VBQ0U7RUNSRTtFQTJCRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FEVkU7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOztBQ1dGO0VBQ007RUFDQTs7QUR2Qk47RUVkRTtFQUlGO0VBQ0E7RUFDQTtFRmFFO0VBQ0E7RUFDQSxRR3BCSzs7QUhnQ1A7RUkvQkU7RUFFRjs7QUppQ0E7RUt2Q0E7RUFDQTtFQUVFO0VBSUY7O0FMb0NBO0VNM0NBO0VBQ0E7RUFFRTtFQUlGOztBTndDQTtFT3JDQTtFQUNBOzs7QVAwQ0Y7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtFZm8wYkE7RWVsMGJBLGVBQ0U7OztBQU1KO0VBQ0U7O0FBQ0E7RUFDRSIsInNvdXJjZXNDb250ZW50IjpbIkB1c2UgXCIuLi8uLi8uLi9kaXN0L3Rva2Vucy9zb3VyY2UvY3NzQXBpXCIgYXMgY3NzQXBpO1xuXG46aG9zdCB7XG4gIEBpbmNsdWRlIGNzc0FwaS5zY3ctZWxlbWVudDtcbn1cblxuOmhvc3QoW3dhcm5pbmddKSB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCByZWQgIWltcG9ydGFudDtcbn0iLCJcbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wcmltYXJ5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcHJpbWFyeS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcHJpbWFyeS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wcmltYXJ5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcHJpbWFyeS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcHJpbWFyeS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXByaW1hcnktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wcmltYXJ5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXByaW1hcnktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcHJpbWFyeS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcHJpbWFyeS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXByaW1hcnktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXByaW1hcnktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcHJpbWFyeS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXByaW1hcnktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXByaW1hcnktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wcmltYXJ5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcHJpbWFyeS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wcmltYXJ5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXByaW1hcnktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXByaW1hcnktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wcmltYXJ5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wcmltYXJ5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXByaW1hcnktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wcmltYXJ5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wcmltYXJ5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcHJpbWFyeS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXByaW1hcnktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcHJpbWFyeS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wcmltYXJ5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wcmltYXJ5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcHJpbWFyeS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcHJpbWFyeS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wcmltYXJ5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcHJpbWFyeS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcHJpbWFyeS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXByaW1hcnktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wcmltYXJ5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXByaW1hcnktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcHJpbWFyeS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcHJpbWFyeS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXByaW1hcnktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXByaW1hcnktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcHJpbWFyeS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXByaW1hcnktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXByaW1hcnktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wcmltYXJ5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcHJpbWFyeS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wcmltYXJ5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXByaW1hcnktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXByaW1hcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wcmltYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wcmltYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXByaW1hcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wcmltYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wcmltYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcHJpbWFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXByaW1hcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcHJpbWFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wcmltYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wcmltYXJ5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcHJpbWFyeS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcHJpbWFyeS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wcmltYXJ5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcHJpbWFyeS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcHJpbWFyeS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXByaW1hcnktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wcmltYXJ5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXByaW1hcnktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcHJpbWFyeS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcHJpbWFyeS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXByaW1hcnktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXByaW1hcnktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcHJpbWFyeS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXByaW1hcnktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXByaW1hcnktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wcmltYXJ5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcHJpbWFyeS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wcmltYXJ5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXByaW1hcnktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXByaW1hcnktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wcmltYXJ5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wcmltYXJ5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXByaW1hcnktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wcmltYXJ5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wcmltYXJ5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcHJpbWFyeS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXByaW1hcnktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcHJpbWFyeS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wcmltYXJ5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wcmltYXJ5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcHJpbWFyeS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcHJpbWFyeS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wcmltYXJ5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcHJpbWFyeS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcHJpbWFyeS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXByaW1hcnktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wcmltYXJ5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXByaW1hcnktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcHJpbWFyeS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcHJpbWFyeS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wcmltYXJ5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcHJpbWFyeS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcHJpbWFyeS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wcmltYXJ5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcHJpbWFyeS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wcmltYXJ5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXByaW1hcnktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXByaW1hcnktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXByaW1hcnktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wcmltYXJ5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXByaW1hcnktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wcmltYXJ5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wcmltYXJ5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXByaW1hcnktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wcmltYXJ5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXByaW1hcnktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcHJpbWFyeS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcHJpbWFyeS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcHJpbWFyeS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMDAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5LTAwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5LTAwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXktMDAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5LTAwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5LTAwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleS0wMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXktMDAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleS0wMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5LTAwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZ3JleSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZ3JleSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZ3JleSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMTAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0xMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5LTEwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTEwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5LTEwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMTAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXktMTAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTEwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5LTEwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMTAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5LTEwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMTAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleS0xMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0xMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXktMTAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTEwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleS0xMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0xMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5LTEwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMTAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1lcnJvciAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3IgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZXJyb3IgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3IgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZXJyb3IgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1lcnJvciAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZXJyb3IgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZXJyb3IgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWVycm9yICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1lcnJvciAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWVycm9yICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvciApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZXJyb3IgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvciApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZXJyb3ItbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWVycm9yLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZXJyb3ItbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWVycm9yLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWVycm9yLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1lcnJvci1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZXJyb3ItbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1lcnJvci1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWVycm9yLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWVycm9yLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWVycm9yLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZXJyb3ItZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWVycm9yLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWVycm9yLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZXJyb3ItZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZXJyb3ItZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZXJyb3ItZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWVycm9yLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1lcnJvci1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXdhcm5pbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci13YXJuaW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci13YXJuaW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXdhcm5pbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC13YXJuaW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS13YXJuaW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtd2FybmluZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXdhcm5pbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItd2FybmluZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci13YXJuaW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci13YXJuaW5nLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itd2FybmluZy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itd2FybmluZy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci13YXJuaW5nLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atd2FybmluZy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20td2FybmluZy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXdhcm5pbmctbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC13YXJuaW5nLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXdhcm5pbmctbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItd2FybmluZy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itd2FybmluZy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itd2FybmluZy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci13YXJuaW5nLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItd2FybmluZy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atd2FybmluZy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS13YXJuaW5nLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC13YXJuaW5nLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC13YXJuaW5nLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItd2FybmluZy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXdhcm5pbmctZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3VjY2VzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN1Y2Nlc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN1Y2Nlc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3VjY2VzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN1Y2Nlc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN1Y2Nlc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdWNjZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3VjY2VzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdWNjZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN1Y2Nlc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdWNjZXNzLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN1Y2Nlc3MtbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdWNjZXNzLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdWNjZXNzLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3VjY2Vzcy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN1Y2Nlc3MtbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3VjY2Vzcy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdWNjZXNzLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdWNjZXNzLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN1Y2Nlc3MtZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdWNjZXNzLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdWNjZXNzLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN1Y2Nlc3MtZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN1Y2Nlc3MtZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN1Y2Nlc3MtZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdWNjZXNzLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3VjY2Vzcy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbmZvcm1hdGlvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW5mb3JtYXRpb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW5mb3JtYXRpb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbmZvcm1hdGlvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW5mb3JtYXRpb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW5mb3JtYXRpb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWluZm9ybWF0aW9uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbmZvcm1hdGlvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWluZm9ybWF0aW9uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW5mb3JtYXRpb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW5mb3JtYXRpb24tbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWluZm9ybWF0aW9uLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWluZm9ybWF0aW9uLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbmZvcm1hdGlvbi1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW5mb3JtYXRpb24tbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbmZvcm1hdGlvbi1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWluZm9ybWF0aW9uLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW5mb3JtYXRpb24tZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWluZm9ybWF0aW9uLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWluZm9ybWF0aW9uLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW5mb3JtYXRpb24tZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW5mb3JtYXRpb24tZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW5mb3JtYXRpb24tZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWluZm9ybWF0aW9uLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbmZvcm1hdGlvbi1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWljb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaWNvbiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaWNvbiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pY29uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pY29uICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaWNvbiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pY29uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWljb24gKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaWNvbiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWljb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pY29uICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaWNvbiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pY29uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWljb24gKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaWNvbiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pY29uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWljb24gKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaWNvbiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaWNvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaWNvbiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaWNvbiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWljb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pY29uICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaWNvbiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaWNvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaWNvbiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pY29uICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pY29uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWljb24gKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pY29uICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zZWNvbmRhcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc2Vjb25kYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc2Vjb25kYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zZWNvbmRhcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc2Vjb25kYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc2Vjb25kYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXNlY29uZGFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zZWNvbmRhcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXNlY29uZGFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc2Vjb25kYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItbW9ydGdhZ2UtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLW1vcnRnYWdlLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLW1vcnRnYWdlLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbW9ydGdhZ2UtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLW1vcnRnYWdlLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLW1vcnRnYWdlLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1tb3J0Z2FnZS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtbW9ydGdhZ2UtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLW1vcnRnYWdlLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLW1vcnRnYWdlLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1tb3J0Z2FnZS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1tb3J0Z2FnZS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLW1vcnRnYWdlLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1tb3J0Z2FnZS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1tb3J0Z2FnZS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtbW9ydGdhZ2UtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LW1vcnRnYWdlLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItbW9ydGdhZ2UtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1tb3J0Z2FnZS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItbW9ydGdhZ2UtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItbW9ydGdhZ2UtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1tb3J0Z2FnZS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtbW9ydGdhZ2UtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tbW9ydGdhZ2UtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LW1vcnRnYWdlLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1tb3J0Z2FnZS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLW1vcnRnYWdlLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItbW9ydGdhZ2UtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItbW9ydGdhZ2UtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLW1vcnRnYWdlLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbW9ydGdhZ2UtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLW1vcnRnYWdlLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLW1vcnRnYWdlLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1tb3J0Z2FnZS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtbW9ydGdhZ2UtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLW1vcnRnYWdlLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1tb3J0Z2FnZS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1tb3J0Z2FnZS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLW1vcnRnYWdlLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1tb3J0Z2FnZS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1tb3J0Z2FnZS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtbW9ydGdhZ2UtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LW1vcnRnYWdlLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItbW9ydGdhZ2UtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1tb3J0Z2FnZSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItbW9ydGdhZ2UgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItbW9ydGdhZ2UgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1tb3J0Z2FnZSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtbW9ydGdhZ2UgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tbW9ydGdhZ2UgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LW1vcnRnYWdlICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1tb3J0Z2FnZSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLW1vcnRnYWdlICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItbW9ydGdhZ2UgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItbW9ydGdhZ2UtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLW1vcnRnYWdlLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbW9ydGdhZ2UtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLW1vcnRnYWdlLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLW1vcnRnYWdlLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1tb3J0Z2FnZS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtbW9ydGdhZ2UtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLW1vcnRnYWdlLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1tb3J0Z2FnZS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1tb3J0Z2FnZS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLW1vcnRnYWdlLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1tb3J0Z2FnZS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1tb3J0Z2FnZS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtbW9ydGdhZ2UtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LW1vcnRnYWdlLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItbW9ydGdhZ2UtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1tb3J0Z2FnZS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItbW9ydGdhZ2UtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItbW9ydGdhZ2UtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1tb3J0Z2FnZS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtbW9ydGdhZ2UtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tbW9ydGdhZ2UtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LW1vcnRnYWdlLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1tb3J0Z2FnZS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItbW9ydGdhZ2UtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItbW9ydGdhZ2UtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLW1vcnRnYWdlLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbW9ydGdhZ2UtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLW1vcnRnYWdlLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLW1vcnRnYWdlLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1tb3J0Z2FnZS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtbW9ydGdhZ2UtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLW1vcnRnYWdlLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItbW9ydGdhZ2UtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLW1vcnRnYWdlLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLW1vcnRnYWdlLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtbW9ydGdhZ2UtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLW1vcnRnYWdlLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtbW9ydGdhZ2UtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1tb3J0Z2FnZS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItbW9ydGdhZ2UtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItbW9ydGdhZ2UtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbW9ydGdhZ2UtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1tb3J0Z2FnZS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tbW9ydGdhZ2UtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1tb3J0Z2FnZS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LW1vcnRnYWdlLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbnZlc3RtZW50cy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW52ZXN0bWVudHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbnZlc3RtZW50cy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW52ZXN0bWVudHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW52ZXN0bWVudHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWludmVzdG1lbnRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbnZlc3RtZW50cy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW52ZXN0bWVudHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWludmVzdG1lbnRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW52ZXN0bWVudHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWludmVzdG1lbnRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWludmVzdG1lbnRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbnZlc3RtZW50cy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW52ZXN0bWVudHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWludmVzdG1lbnRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbnZlc3RtZW50cy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWludmVzdG1lbnRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbnZlc3RtZW50cy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbnZlc3RtZW50cy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW52ZXN0bWVudHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWludmVzdG1lbnRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbnZlc3RtZW50cy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW52ZXN0bWVudHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbnZlc3RtZW50cy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW52ZXN0bWVudHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW52ZXN0bWVudHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWludmVzdG1lbnRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbnZlc3RtZW50cy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW52ZXN0bWVudHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWludmVzdG1lbnRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW52ZXN0bWVudHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWludmVzdG1lbnRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWludmVzdG1lbnRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbnZlc3RtZW50cy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW52ZXN0bWVudHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWludmVzdG1lbnRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbnZlc3RtZW50cyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbnZlc3RtZW50cyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWludmVzdG1lbnRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbnZlc3RtZW50cyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbnZlc3RtZW50cyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW52ZXN0bWVudHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWludmVzdG1lbnRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW52ZXN0bWVudHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbnZlc3RtZW50cyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbnZlc3RtZW50cy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW52ZXN0bWVudHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbnZlc3RtZW50cy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW52ZXN0bWVudHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW52ZXN0bWVudHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWludmVzdG1lbnRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbnZlc3RtZW50cy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW52ZXN0bWVudHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWludmVzdG1lbnRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW52ZXN0bWVudHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWludmVzdG1lbnRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWludmVzdG1lbnRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbnZlc3RtZW50cy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW52ZXN0bWVudHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWludmVzdG1lbnRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbnZlc3RtZW50cy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWludmVzdG1lbnRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbnZlc3RtZW50cy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbnZlc3RtZW50cy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW52ZXN0bWVudHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWludmVzdG1lbnRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbnZlc3RtZW50cy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW52ZXN0bWVudHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbnZlc3RtZW50cy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW52ZXN0bWVudHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW52ZXN0bWVudHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWludmVzdG1lbnRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbnZlc3RtZW50cy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW52ZXN0bWVudHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW52ZXN0bWVudHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW52ZXN0bWVudHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbnZlc3RtZW50cy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW52ZXN0bWVudHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbnZlc3RtZW50cy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWludmVzdG1lbnRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbnZlc3RtZW50cy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbnZlc3RtZW50cy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbnZlc3RtZW50cy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWludmVzdG1lbnRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbnZlc3RtZW50cy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWludmVzdG1lbnRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW52ZXN0bWVudHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNyZWRpdC1jYXJkcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNyZWRpdC1jYXJkcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jcmVkaXQtY2FyZHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jcmVkaXQtY2FyZHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY3JlZGl0LWNhcmRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNyZWRpdC1jYXJkcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY3JlZGl0LWNhcmRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jcmVkaXQtY2FyZHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY3JlZGl0LWNhcmRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY3JlZGl0LWNhcmRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNyZWRpdC1jYXJkcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jcmVkaXQtY2FyZHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY3JlZGl0LWNhcmRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNyZWRpdC1jYXJkcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY3JlZGl0LWNhcmRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNyZWRpdC1jYXJkcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNyZWRpdC1jYXJkcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jcmVkaXQtY2FyZHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY3JlZGl0LWNhcmRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNyZWRpdC1jYXJkcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNyZWRpdC1jYXJkcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jcmVkaXQtY2FyZHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jcmVkaXQtY2FyZHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY3JlZGl0LWNhcmRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNyZWRpdC1jYXJkcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY3JlZGl0LWNhcmRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jcmVkaXQtY2FyZHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY3JlZGl0LWNhcmRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY3JlZGl0LWNhcmRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNyZWRpdC1jYXJkcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jcmVkaXQtY2FyZHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY3JlZGl0LWNhcmRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNyZWRpdC1jYXJkcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY3JlZGl0LWNhcmRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNyZWRpdC1jYXJkcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNyZWRpdC1jYXJkcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jcmVkaXQtY2FyZHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY3JlZGl0LWNhcmRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNyZWRpdC1jYXJkcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNyZWRpdC1jYXJkcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jcmVkaXQtY2FyZHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jcmVkaXQtY2FyZHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY3JlZGl0LWNhcmRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNyZWRpdC1jYXJkcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY3JlZGl0LWNhcmRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jcmVkaXQtY2FyZHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY3JlZGl0LWNhcmRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY3JlZGl0LWNhcmRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNyZWRpdC1jYXJkcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jcmVkaXQtY2FyZHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY3JlZGl0LWNhcmRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNyZWRpdC1jYXJkcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY3JlZGl0LWNhcmRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNyZWRpdC1jYXJkcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNyZWRpdC1jYXJkcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jcmVkaXQtY2FyZHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY3JlZGl0LWNhcmRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNyZWRpdC1jYXJkcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNyZWRpdC1jYXJkcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jcmVkaXQtY2FyZHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jcmVkaXQtY2FyZHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY3JlZGl0LWNhcmRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNyZWRpdC1jYXJkcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jcmVkaXQtY2FyZHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNyZWRpdC1jYXJkcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jcmVkaXQtY2FyZHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNyZWRpdC1jYXJkcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY3JlZGl0LWNhcmRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNyZWRpdC1jYXJkcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY3JlZGl0LWNhcmRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNyZWRpdC1jYXJkcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY3JlZGl0LWNhcmRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jcmVkaXQtY2FyZHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3R1ZGVudC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN0dWRlbnQtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN0dWRlbnQtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3R1ZGVudC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN0dWRlbnQtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN0dWRlbnQtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdHVkZW50LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3R1ZGVudC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdHVkZW50LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN0dWRlbnQtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN0dWRlbnQtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdHVkZW50LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdHVkZW50LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN0dWRlbnQtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdHVkZW50LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdHVkZW50LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3R1ZGVudC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN0dWRlbnQtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3R1ZGVudC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdHVkZW50LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdHVkZW50LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3R1ZGVudC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3R1ZGVudC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdHVkZW50LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3R1ZGVudC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3R1ZGVudC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN0dWRlbnQtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdHVkZW50LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN0dWRlbnQtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3R1ZGVudC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3R1ZGVudC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN0dWRlbnQtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN0dWRlbnQtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3R1ZGVudC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN0dWRlbnQtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN0dWRlbnQtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdHVkZW50LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3R1ZGVudC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdHVkZW50LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN0dWRlbnQtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN0dWRlbnQtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdHVkZW50LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdHVkZW50LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN0dWRlbnQtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdHVkZW50LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdHVkZW50LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3R1ZGVudC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN0dWRlbnQtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3R1ZGVudC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdHVkZW50LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdHVkZW50ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3R1ZGVudCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3R1ZGVudCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdHVkZW50ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3R1ZGVudCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3R1ZGVudCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN0dWRlbnQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdHVkZW50ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN0dWRlbnQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3R1ZGVudCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3R1ZGVudC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN0dWRlbnQtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN0dWRlbnQtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3R1ZGVudC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN0dWRlbnQtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN0dWRlbnQtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdHVkZW50LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3R1ZGVudC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdHVkZW50LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN0dWRlbnQtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN0dWRlbnQtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdHVkZW50LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdHVkZW50LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN0dWRlbnQtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdHVkZW50LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdHVkZW50LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3R1ZGVudC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN0dWRlbnQtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3R1ZGVudC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdHVkZW50LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdHVkZW50LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3R1ZGVudC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3R1ZGVudC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdHVkZW50LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3R1ZGVudC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3R1ZGVudC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN0dWRlbnQtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdHVkZW50LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN0dWRlbnQtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3R1ZGVudC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3R1ZGVudC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN0dWRlbnQtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN0dWRlbnQtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3R1ZGVudC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN0dWRlbnQtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN0dWRlbnQtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdHVkZW50LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3R1ZGVudC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdHVkZW50LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN0dWRlbnQtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN0dWRlbnQtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3R1ZGVudC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN0dWRlbnQtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN0dWRlbnQtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3R1ZGVudC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN0dWRlbnQtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3R1ZGVudC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdHVkZW50LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdHVkZW50LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdHVkZW50LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3R1ZGVudC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdHVkZW50LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3R1ZGVudC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3R1ZGVudC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdHVkZW50LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3R1ZGVudC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdHVkZW50LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN0dWRlbnQtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN0dWRlbnQtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN0dWRlbnQtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zYXZpbmdzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc2F2aW5ncy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc2F2aW5ncy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zYXZpbmdzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc2F2aW5ncy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc2F2aW5ncy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXNhdmluZ3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zYXZpbmdzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXNhdmluZ3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc2F2aW5ncy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc2F2aW5ncy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXNhdmluZ3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXNhdmluZ3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc2F2aW5ncy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXNhdmluZ3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXNhdmluZ3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zYXZpbmdzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc2F2aW5ncy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zYXZpbmdzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXNhdmluZ3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXNhdmluZ3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zYXZpbmdzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zYXZpbmdzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXNhdmluZ3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zYXZpbmdzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zYXZpbmdzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc2F2aW5ncy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXNhdmluZ3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc2F2aW5ncy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zYXZpbmdzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zYXZpbmdzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc2F2aW5ncy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc2F2aW5ncy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zYXZpbmdzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc2F2aW5ncy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc2F2aW5ncy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXNhdmluZ3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zYXZpbmdzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXNhdmluZ3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc2F2aW5ncy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc2F2aW5ncy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXNhdmluZ3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXNhdmluZ3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc2F2aW5ncy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXNhdmluZ3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXNhdmluZ3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zYXZpbmdzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc2F2aW5ncy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zYXZpbmdzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXNhdmluZ3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXNhdmluZ3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zYXZpbmdzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zYXZpbmdzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXNhdmluZ3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zYXZpbmdzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zYXZpbmdzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc2F2aW5ncyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXNhdmluZ3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc2F2aW5ncyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zYXZpbmdzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zYXZpbmdzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc2F2aW5ncy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc2F2aW5ncy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zYXZpbmdzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc2F2aW5ncy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc2F2aW5ncy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXNhdmluZ3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zYXZpbmdzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXNhdmluZ3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc2F2aW5ncy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc2F2aW5ncy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXNhdmluZ3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXNhdmluZ3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc2F2aW5ncy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXNhdmluZ3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXNhdmluZ3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zYXZpbmdzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc2F2aW5ncy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zYXZpbmdzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXNhdmluZ3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXNhdmluZ3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zYXZpbmdzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zYXZpbmdzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXNhdmluZ3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zYXZpbmdzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zYXZpbmdzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc2F2aW5ncy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXNhdmluZ3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc2F2aW5ncy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zYXZpbmdzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zYXZpbmdzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc2F2aW5ncy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc2F2aW5ncy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zYXZpbmdzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc2F2aW5ncy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc2F2aW5ncy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXNhdmluZ3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zYXZpbmdzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXNhdmluZ3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc2F2aW5ncy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc2F2aW5ncy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zYXZpbmdzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc2F2aW5ncy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc2F2aW5ncy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zYXZpbmdzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc2F2aW5ncy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zYXZpbmdzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXNhdmluZ3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXNhdmluZ3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXNhdmluZ3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zYXZpbmdzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zYXZpbmdzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zYXZpbmdzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXNhdmluZ3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zYXZpbmdzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXNhdmluZ3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc2F2aW5ncy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc2F2aW5ncy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc2F2aW5ncy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNraW5nLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jaGVja2luZy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jaGVja2luZy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNoZWNraW5nLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jaGVja2luZy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jaGVja2luZy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY2hlY2tpbmctMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNoZWNraW5nLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY2hlY2tpbmctMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jaGVja2luZy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jaGVja2luZy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY2hlY2tpbmctMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY2hlY2tpbmctMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jaGVja2luZy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY2hlY2tpbmctMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY2hlY2tpbmctMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNoZWNraW5nLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jaGVja2luZy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNoZWNraW5nLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY2hlY2tpbmctMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY2hlY2tpbmctMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNoZWNraW5nLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNoZWNraW5nLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY2hlY2tpbmctMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNoZWNraW5nLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNoZWNraW5nLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jaGVja2luZy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY2hlY2tpbmctMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jaGVja2luZy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNoZWNraW5nLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNraW5nLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jaGVja2luZy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jaGVja2luZy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNoZWNraW5nLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jaGVja2luZy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jaGVja2luZy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY2hlY2tpbmctMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNoZWNraW5nLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY2hlY2tpbmctMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jaGVja2luZy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jaGVja2luZy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY2hlY2tpbmctMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY2hlY2tpbmctMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jaGVja2luZy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY2hlY2tpbmctMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY2hlY2tpbmctMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNoZWNraW5nLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jaGVja2luZy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNoZWNraW5nLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY2hlY2tpbmctMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY2hlY2tpbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNoZWNraW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNoZWNraW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY2hlY2tpbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNoZWNraW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNoZWNraW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jaGVja2luZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY2hlY2tpbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jaGVja2luZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNoZWNraW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNraW5nLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jaGVja2luZy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jaGVja2luZy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNoZWNraW5nLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jaGVja2luZy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jaGVja2luZy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY2hlY2tpbmctMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNoZWNraW5nLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY2hlY2tpbmctMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jaGVja2luZy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jaGVja2luZy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY2hlY2tpbmctMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY2hlY2tpbmctMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jaGVja2luZy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY2hlY2tpbmctMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY2hlY2tpbmctMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNoZWNraW5nLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jaGVja2luZy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNoZWNraW5nLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY2hlY2tpbmctMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY2hlY2tpbmctMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNoZWNraW5nLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNoZWNraW5nLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY2hlY2tpbmctMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNoZWNraW5nLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNoZWNraW5nLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jaGVja2luZy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY2hlY2tpbmctMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jaGVja2luZy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNoZWNraW5nLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNraW5nLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jaGVja2luZy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jaGVja2luZy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNoZWNraW5nLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jaGVja2luZy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jaGVja2luZy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY2hlY2tpbmctMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNoZWNraW5nLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY2hlY2tpbmctMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jaGVja2luZy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jaGVja2luZy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNoZWNraW5nLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jaGVja2luZy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jaGVja2luZy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNoZWNraW5nLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jaGVja2luZy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNoZWNraW5nLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY2hlY2tpbmctMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY2hlY2tpbmctMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY2hlY2tpbmctMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNraW5nLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY2hlY2tpbmctMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNoZWNraW5nLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNoZWNraW5nLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY2hlY2tpbmctMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNoZWNraW5nLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY2hlY2tpbmctMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jaGVja2luZy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jaGVja2luZy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jaGVja2luZy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcmVkLXNob2VzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXJlZC1zaG9lcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmVkLXNob2VzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXJlZC1zaG9lcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXJlZC1zaG9lcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1yZWQtc2hvZXMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcmVkLXNob2VzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXJlZC1zaG9lcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1yZWQtc2hvZXMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJlZC1zaG9lcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1yZWQtc2hvZXMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1yZWQtc2hvZXMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcmVkLXNob2VzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXJlZC1zaG9lcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcmVkLXNob2VzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1yZWQtc2hvZXMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcmVkLXNob2VzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcmVkLXNob2VzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yZWQtc2hvZXMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcmVkLXNob2VzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcmVkLXNob2VzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXJlZC1zaG9lcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1yZWQtc2hvZXMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcmVkLXNob2VzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcmVkLXNob2VzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXJlZC1zaG9lcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmVkLXNob2VzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXJlZC1zaG9lcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXJlZC1zaG9lcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1yZWQtc2hvZXMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcmVkLXNob2VzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXJlZC1zaG9lcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1yZWQtc2hvZXMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJlZC1zaG9lcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1yZWQtc2hvZXMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1yZWQtc2hvZXMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcmVkLXNob2VzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXJlZC1zaG9lcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcmVkLXNob2VzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1yZWQtc2hvZXMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcmVkLXNob2VzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcmVkLXNob2VzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yZWQtc2hvZXMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcmVkLXNob2VzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcmVkLXNob2VzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXJlZC1zaG9lcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1yZWQtc2hvZXMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXJlZC1zaG9lcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcmVkLXNob2VzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcmVkLXNob2VzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXJlZC1zaG9lcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmVkLXNob2VzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXJlZC1zaG9lcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXJlZC1zaG9lcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1yZWQtc2hvZXMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcmVkLXNob2VzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXJlZC1zaG9lcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1yZWQtc2hvZXMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJlZC1zaG9lcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1yZWQtc2hvZXMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1yZWQtc2hvZXMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcmVkLXNob2VzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXJlZC1zaG9lcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcmVkLXNob2VzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1yZWQtc2hvZXMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcmVkLXNob2VzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcmVkLXNob2VzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yZWQtc2hvZXMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcmVkLXNob2VzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcmVkLXNob2VzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXJlZC1zaG9lcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1yZWQtc2hvZXMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcmVkLXNob2VzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcmVkLXNob2VzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXJlZC1zaG9lcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmVkLXNob2VzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXJlZC1zaG9lcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXJlZC1zaG9lcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1yZWQtc2hvZXMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcmVkLXNob2VzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXJlZC1zaG9lcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcmVkLXNob2VzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXJlZC1zaG9lcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJlZC1zaG9lcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcmVkLXNob2VzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXJlZC1zaG9lcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcmVkLXNob2VzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1yZWQtc2hvZXMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcmVkLXNob2VzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcmVkLXNob2VzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmVkLXNob2VzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1yZWQtc2hvZXMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcmVkLXNob2VzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1yZWQtc2hvZXMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXJlZC1zaG9lcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1idXNpbmVzcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItYnVzaW5lc3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItYnVzaW5lc3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1idXNpbmVzcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtYnVzaW5lc3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tYnVzaW5lc3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWJ1c2luZXNzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1idXNpbmVzcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWJ1c2luZXNzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItYnVzaW5lc3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItYnVzaW5lc3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWJ1c2luZXNzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWJ1c2luZXNzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYnVzaW5lc3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWJ1c2luZXNzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWJ1c2luZXNzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1idXNpbmVzcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtYnVzaW5lc3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1idXNpbmVzcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWJ1c2luZXNzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWJ1c2luZXNzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1idXNpbmVzcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1idXNpbmVzcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJ1c2luZXNzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1idXNpbmVzcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1idXNpbmVzcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtYnVzaW5lc3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWJ1c2luZXNzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItYnVzaW5lc3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1idXNpbmVzcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1idXNpbmVzcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItYnVzaW5lc3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItYnVzaW5lc3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1idXNpbmVzcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtYnVzaW5lc3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tYnVzaW5lc3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWJ1c2luZXNzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1idXNpbmVzcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItYnVzaW5lc3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItYnVzaW5lc3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWJ1c2luZXNzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYnVzaW5lc3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWJ1c2luZXNzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWJ1c2luZXNzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1idXNpbmVzcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtYnVzaW5lc3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1idXNpbmVzcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWJ1c2luZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1idXNpbmVzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1idXNpbmVzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJ1c2luZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1idXNpbmVzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1idXNpbmVzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtYnVzaW5lc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWJ1c2luZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItYnVzaW5lc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1idXNpbmVzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1idXNpbmVzcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItYnVzaW5lc3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItYnVzaW5lc3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1idXNpbmVzcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtYnVzaW5lc3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tYnVzaW5lc3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWJ1c2luZXNzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1idXNpbmVzcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItYnVzaW5lc3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItYnVzaW5lc3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWJ1c2luZXNzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYnVzaW5lc3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWJ1c2luZXNzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWJ1c2luZXNzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1idXNpbmVzcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtYnVzaW5lc3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1idXNpbmVzcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWJ1c2luZXNzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1idXNpbmVzcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1idXNpbmVzcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJ1c2luZXNzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1idXNpbmVzcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1idXNpbmVzcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtYnVzaW5lc3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWJ1c2luZXNzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItYnVzaW5lc3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1idXNpbmVzcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1idXNpbmVzcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItYnVzaW5lc3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItYnVzaW5lc3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1idXNpbmVzcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtYnVzaW5lc3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tYnVzaW5lc3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWJ1c2luZXNzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1idXNpbmVzcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItYnVzaW5lc3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItYnVzaW5lc3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1idXNpbmVzcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItYnVzaW5lc3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYnVzaW5lc3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1idXNpbmVzcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tYnVzaW5lc3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1idXNpbmVzcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWJ1c2luZXNzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1idXNpbmVzcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1idXNpbmVzcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1idXNpbmVzcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWJ1c2luZXNzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1idXNpbmVzcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWJ1c2luZXNzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtYnVzaW5lc3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItYnVzaW5lc3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItYnVzaW5lc3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXBlcnNvbmFsLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wZXJzb25hbC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wZXJzb25hbC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXBlcnNvbmFsLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wZXJzb25hbC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wZXJzb25hbC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcGVyc29uYWwtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXBlcnNvbmFsLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcGVyc29uYWwtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wZXJzb25hbC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wZXJzb25hbC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcGVyc29uYWwtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcGVyc29uYWwtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wZXJzb25hbC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcGVyc29uYWwtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcGVyc29uYWwtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXBlcnNvbmFsLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wZXJzb25hbC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXBlcnNvbmFsLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcGVyc29uYWwtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcGVyc29uYWwtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXBlcnNvbmFsLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXBlcnNvbmFsLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcGVyc29uYWwtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXBlcnNvbmFsLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXBlcnNvbmFsLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wZXJzb25hbC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcGVyc29uYWwtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wZXJzb25hbC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXBlcnNvbmFsLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXBlcnNvbmFsLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wZXJzb25hbC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wZXJzb25hbC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXBlcnNvbmFsLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wZXJzb25hbC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wZXJzb25hbC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcGVyc29uYWwtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXBlcnNvbmFsLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcGVyc29uYWwtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wZXJzb25hbC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wZXJzb25hbC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcGVyc29uYWwtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcGVyc29uYWwtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wZXJzb25hbC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcGVyc29uYWwtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcGVyc29uYWwtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXBlcnNvbmFsLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wZXJzb25hbC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcGVyc29uYWwtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcGVyc29uYWwgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXBlcnNvbmFsICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXBlcnNvbmFsICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcGVyc29uYWwgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXBlcnNvbmFsICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXBlcnNvbmFsICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wZXJzb25hbCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcGVyc29uYWwgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wZXJzb25hbCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXBlcnNvbmFsICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXBlcnNvbmFsLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wZXJzb25hbC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wZXJzb25hbC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXBlcnNvbmFsLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wZXJzb25hbC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wZXJzb25hbC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcGVyc29uYWwtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXBlcnNvbmFsLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcGVyc29uYWwtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wZXJzb25hbC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wZXJzb25hbC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcGVyc29uYWwtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcGVyc29uYWwtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wZXJzb25hbC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcGVyc29uYWwtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcGVyc29uYWwtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXBlcnNvbmFsLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wZXJzb25hbC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcGVyc29uYWwtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcGVyc29uYWwtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXBlcnNvbmFsLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcGVyc29uYWwtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXBlcnNvbmFsLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXBlcnNvbmFsLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wZXJzb25hbC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcGVyc29uYWwtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wZXJzb25hbC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXBlcnNvbmFsLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wZXJzb25hbC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wZXJzb25hbC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXBlcnNvbmFsLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wZXJzb25hbC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wZXJzb25hbC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcGVyc29uYWwtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXBlcnNvbmFsLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcGVyc29uYWwtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wZXJzb25hbC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wZXJzb25hbC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wZXJzb25hbC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wZXJzb25hbC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXBlcnNvbmFsLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wZXJzb25hbC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXBlcnNvbmFsLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcGVyc29uYWwtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcGVyc29uYWwtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcGVyc29uYWwtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXBlcnNvbmFsLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcGVyc29uYWwtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXBlcnNvbmFsLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXBlcnNvbmFsLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcGVyc29uYWwtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXBlcnNvbmFsLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcGVyc29uYWwtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wZXJzb25hbC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wZXJzb25hbC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wZXJzb25hbC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaGVsb2MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhlbG9jLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWhlbG9jLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaGVsb2MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWhlbG9jLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWhlbG9jLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1oZWxvYy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaGVsb2MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1oZWxvYy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWhlbG9jLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhlbG9jLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1oZWxvYy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1oZWxvYy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWhlbG9jLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1oZWxvYy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1oZWxvYy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaGVsb2MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWhlbG9jLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaGVsb2MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1oZWxvYy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1oZWxvYy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaGVsb2MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaGVsb2MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1oZWxvYy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaGVsb2MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taGVsb2MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWhlbG9jLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1oZWxvYy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWhlbG9jLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaGVsb2MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaGVsb2MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhlbG9jLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWhlbG9jLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaGVsb2MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWhlbG9jLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWhlbG9jLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1oZWxvYy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaGVsb2MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1oZWxvYy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWhlbG9jLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhlbG9jLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1oZWxvYy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1oZWxvYy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWhlbG9jLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1oZWxvYy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1oZWxvYy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaGVsb2MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWhlbG9jLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaGVsb2MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1oZWxvYy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1oZWxvYyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaGVsb2MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaGVsb2MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1oZWxvYyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaGVsb2MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taGVsb2MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWhlbG9jICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1oZWxvYyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWhlbG9jICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaGVsb2MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaGVsb2MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhlbG9jLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWhlbG9jLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaGVsb2MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWhlbG9jLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWhlbG9jLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1oZWxvYy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaGVsb2MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1oZWxvYy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWhlbG9jLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhlbG9jLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1oZWxvYy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1oZWxvYy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWhlbG9jLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1oZWxvYy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1oZWxvYy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaGVsb2MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWhlbG9jLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaGVsb2MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1oZWxvYy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1oZWxvYy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaGVsb2MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaGVsb2MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1oZWxvYy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaGVsb2MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taGVsb2MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWhlbG9jLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1oZWxvYy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWhlbG9jLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaGVsb2MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaGVsb2MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhlbG9jLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWhlbG9jLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaGVsb2MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWhlbG9jLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWhlbG9jLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1oZWxvYy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaGVsb2MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1oZWxvYy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWhlbG9jLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhlbG9jLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaGVsb2MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWhlbG9jLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWhlbG9jLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaGVsb2MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWhlbG9jLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaGVsb2MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1oZWxvYy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1oZWxvYy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1oZWxvYy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaGVsb2MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1oZWxvYy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaGVsb2MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaGVsb2MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1oZWxvYy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taGVsb2MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1oZWxvYy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWhlbG9jLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWhlbG9jLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWhlbG9jLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctdGV4dC0xMCB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC0xMC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtMDkgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtMDktZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LTA4IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LTA4LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC0wNyB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC0wNy1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtMDYgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtMDYtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LTA1IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dCB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtMDQgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtMDQtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LTAzIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LTAzLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC0wMiB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC0wMi1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtMDEgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtMDEtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtMTAgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC0xMC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC0wOSB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLTA5LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLTA4IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtMDgtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtMDcgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC0wNy1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC0wNiB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLTA2LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLTA1IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC0wNCB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLTA0LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLTAzIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtMDMtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtMDIgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC0wMi1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC0wMSB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLTAxLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLWNvbmRlbnNlZC0xMCB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC0xMC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC1jb25kZW5zZWQtMDkgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1jb25kZW5zZWQtMDktZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtY29uZGVuc2VkLTA4IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtY29uZGVuc2VkLTA4LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLWNvbmRlbnNlZC0wNyB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC0wNy1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC1jb25kZW5zZWQtMDYgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1jb25kZW5zZWQtMDYtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtY29uZGVuc2VkLTA1IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtY29uZGVuc2VkLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLWNvbmRlbnNlZCB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC1jb25kZW5zZWQtMDQgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1jb25kZW5zZWQtMDQtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtY29uZGVuc2VkLTAzIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtY29uZGVuc2VkLTAzLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLWNvbmRlbnNlZC0wMiB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC0wMi1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC1jb25kZW5zZWQtMDEgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1jb25kZW5zZWQtMDEtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy1lZmZlY3Qtc2hhZG93IHsgXG4gIGJveC1zaGFkb3c6IHZhciggLS1zY3ctZWZmZWN0LXNoYWRvdy1zaGFkb3cgKTsgXG59XG5cbkBtaXhpbiBzY3ctZWZmZWN0LWZvY3VzIHsgXG4gIGJveC1zaGFkb3c6IHZhciggLS1zY3ctZWZmZWN0LWZvY3VzLXNoYWRvdyApOyBcbn1cblxuQG1peGluIHNjdy1ncmFwaGljLWFwcGxlLWFwcC1zdG9yZSB7IFxuICAtLXN2Zy1uYW1lOiBhcHBsZS1hcHAtc3RvcmU7XG4gIC0tc3ZnLXNpemU6IDE1OTsgXG59XG5cbkBtaXhpbiBzY3ctZ3JhcGhpYy1sb2dvIHsgXG4gIC0tc3ZnLW5hbWU6IGxvZ287XG4gIC0tc3ZnLXNpemU6IDE0MzsgXG59XG5cbkBtaXhpbiBzY3ctZ3JhcGhpYy1uY3VhIHsgXG4gIC0tc3ZnLW5hbWU6IG5jdWE7XG4gIC0tc3ZnLXNpemU6IDEwODsgXG59XG5cbkBtaXhpbiBzY3ctZ3JhcGhpYy1laGwgeyBcbiAgLS1zdmctbmFtZTogZWhsO1xuICAtLXN2Zy1zaXplOiA1MzsgXG59XG5cbkBtaXhpbiBzY3ctZ3JhcGhpYy1nb29nbGUtcGxheS1zdG9yZSB7IFxuICAtLXN2Zy1uYW1lOiBnb29nbGUtcGxheS1zdG9yZTtcbiAgLS1zdmctc2l6ZTogMTU5OyBcbn1cblxuQG1peGluIHNjdy1zaXplLTBzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0wcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0wcyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMHMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0wcyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTBzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0wcyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTBzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0wcyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0wcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0wcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0wcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0wcyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0wcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTBzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTBzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMHMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0wcyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMHMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0wcyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMHMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0wcyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTAtM3Mge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0wLTNzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMC0zcyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0wLTNzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0wLTNzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0wLTNzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTAtM3Mge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTAtM3Mge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMC0zcyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTAtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0wLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0wLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0wLTNzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMC0zcyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTAtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0wLTNzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0wLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0wLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0wLTNzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0wLTNzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTAtM3Mge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTAtM3Mge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMC0zcyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMC0zcyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMC00cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTAtNHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0wLTRzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTAtNHMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTAtNHMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTAtNHMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMC00cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMC00cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0wLTRzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0wLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0wLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTAtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTAtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTAtNHMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0wLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0wLTRzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTAtNHMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0wLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0wLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTAtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTAtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTAtNHMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTAtNHMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMC00cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMC00cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0wLTRzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0wLTRzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0wLTZzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMC02cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTAtNnMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMC02cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMC02cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMC02cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0wLTZzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0wLTZzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTAtNnMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0wLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTAtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTAtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMC02cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTAtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTAtNnMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0wLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMC02cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTAtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTAtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMC02cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMC02cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0wLTZzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0wLTZzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTAtNnMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTAtNnMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTAtOHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0wLThzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMC04cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0wLThzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0wLThzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0wLThzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTAtOHMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTAtOHMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMC04cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTAtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0wLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0wLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0wLThzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMC04cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTAtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0wLThzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0wLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0wLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0wLThzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0wLThzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTAtOHMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTAtOHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMC04cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMC04cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMC05cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTAtOXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0wLTlzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTAtOXMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTAtOXMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTAtOXMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMC05cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMC05cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0wLTlzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0wLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0wLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTAtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTAtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTAtOXMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0wLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0wLTlzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTAtOXMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0wLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0wLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTAtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTAtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTAtOXMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTAtOXMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMC05cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMC05cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0wLTlzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0wLTlzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0xcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMXMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTFzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMXMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0xcyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMXMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0xcyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMXMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMXMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0xcyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0xcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0xcyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0xcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0xcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTFzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMXMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTFzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMXMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTFzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMXMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0xLTNzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMS0zcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTEtM3Mge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMS0zcyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMS0zcyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMS0zcyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0xLTNzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0xLTNzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTEtM3Mge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0xLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTEtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTEtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMS0zcyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTEtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTEtM3Mge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0xLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMS0zcyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTEtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTEtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMS0zcyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMS0zcyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0xLTNzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0xLTNzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTEtM3Mge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTEtM3Mge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTEtNHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0xLTRzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMS00cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0xLTRzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0xLTRzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0xLTRzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTEtNHMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTEtNHMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMS00cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTEtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0xLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0xLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0xLTRzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMS00cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTEtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0xLTRzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0xLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0xLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0xLTRzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0xLTRzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTEtNHMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTEtNHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMS00cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMS00cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMS02cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTEtNnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0xLTZzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTEtNnMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTEtNnMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTEtNnMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMS02cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMS02cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0xLTZzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0xLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0xLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTEtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTEtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTEtNnMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0xLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0xLTZzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTEtNnMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0xLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0xLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTEtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTEtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTEtNnMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTEtNnMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMS02cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMS02cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0xLTZzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0xLTZzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0xLThzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMS04cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTEtOHMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMS04cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMS04cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy10b3AtMS04cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0xLThzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0xLThzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTEtOHMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0xLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTEtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTEtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMS04cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTEtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTEtOHMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0xLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMS04cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTEtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTEtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMS04cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMS04cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0xLThzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0xLThzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTEtOHMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTEtOHMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTEtOXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0xLTlzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMS05cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0xLTlzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0xLTlzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0xLTlzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTEtOXMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTEtOXMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMS05cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTEtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0xLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0xLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0xLTlzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMS05cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTEtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0xLTlzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0xLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0xLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0xLTlzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0xLTlzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTEtOXMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTEtOXMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMS05cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMS05cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTJzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTJzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0ycyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTJzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMnMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTJzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMnMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTJzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0ycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0ycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTJzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMnMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMnMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0ycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0ycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0ycyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTJzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0ycyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTJzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0ycyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTJzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMi0zcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTItM3Mge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0yLTNzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTItM3Mge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTItM3Mge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTItM3Mge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMi0zcyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMi0zcyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0yLTNzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMi0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0yLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0yLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTItM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTItM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTItM3Mge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0yLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0yLTNzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMi0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTItM3Mge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0yLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0yLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTItM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTItM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTItM3Mge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTItM3Mge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMi0zcyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMi0zcyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0yLTNzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0yLTNzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0yLTRzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMi00cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTItNHMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMi00cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMi00cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMi00cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0yLTRzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0yLTRzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTItNHMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0yLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTItNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTItNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMi00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMi00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMi00cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTItNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTItNHMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0yLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMi00cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTItNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTItNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMi00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMi00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMi00cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMi00cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0yLTRzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0yLTRzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTItNHMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTItNHMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTItNnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0yLTZzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMi02cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0yLTZzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0yLTZzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0yLTZzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTItNnMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTItNnMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMi02cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTItNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMi02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMi02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0yLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0yLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0yLTZzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMi02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMi02cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTItNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0yLTZzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMi02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMi02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0yLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0yLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0yLTZzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0yLTZzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTItNnMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTItNnMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMi02cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMi02cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMi04cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTItOHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0yLThzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTItOHMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTItOHMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTItOHMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMi04cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMi04cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0yLThzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMi04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0yLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0yLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTItOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTItOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTItOHMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0yLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0yLThzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMi04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTItOHMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0yLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0yLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTItOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTItOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTItOHMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTItOHMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMi04cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMi04cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0yLThzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0yLThzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0yLTlzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMi05cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTItOXMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMi05cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMi05cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMi05cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0yLTlzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0yLTlzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTItOXMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0yLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTItOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTItOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMi05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMi05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMi05cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTItOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTItOXMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0yLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMi05cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTItOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTItOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMi05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMi05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMi05cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMi05cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0yLTlzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0yLTlzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTItOXMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTItOXMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTNzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0zcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0zcyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtM3Mge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0zcyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTNzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0zcyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTNzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0zcyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0zcyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTNzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTNzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtM3Mge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0zcyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtM3Mge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0zcyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtM3Mge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0zcyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTMtM3Mge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0zLTNzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMy0zcyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0zLTNzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0zLTNzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0zLTNzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTMtM3Mge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTMtM3Mge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMy0zcyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTMtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMy0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMy0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0zLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0zLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0zLTNzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMy0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMy0zcyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTMtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0zLTNzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMy0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMy0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0zLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0zLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0zLTNzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0zLTNzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTMtM3Mge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTMtM3Mge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMy0zcyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMy0zcyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMy00cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTMtNHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0zLTRzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTMtNHMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTMtNHMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTMtNHMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMy00cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMy00cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0zLTRzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMy00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0zLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0zLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTMtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTMtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTMtNHMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0zLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0zLTRzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMy00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTMtNHMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0zLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0zLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTMtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTMtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTMtNHMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTMtNHMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMy00cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMy00cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0zLTRzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0zLTRzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0zLTZzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMy02cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTMtNnMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMy02cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMy02cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMy02cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0zLTZzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0zLTZzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTMtNnMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0zLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTMtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTMtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMy02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMy02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMy02cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTMtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTMtNnMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0zLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMy02cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTMtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTMtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMy02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMy02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMy02cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMy02cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0zLTZzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0zLTZzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTMtNnMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTMtNnMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTMtOHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0zLThzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMy04cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0zLThzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0zLThzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0zLThzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTMtOHMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTMtOHMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMy04cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTMtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMy04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMy04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0zLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0zLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0zLThzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMy04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMy04cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTMtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0zLThzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMy04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMy04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0zLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0zLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0zLThzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0zLThzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTMtOHMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTMtOHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMy04cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMy04cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMy05cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTMtOXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0zLTlzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTMtOXMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTMtOXMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTMtOXMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMy05cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMy05cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0zLTlzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMy05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0zLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0zLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTMtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTMtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTMtOXMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0zLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0zLTlzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMy05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTMtOXMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0zLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0zLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTMtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTMtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTMtOXMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTMtOXMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMy05cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMy05cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0zLTlzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0zLTlzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS00cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtNHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtNHMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTRzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtNHMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC00cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tNHMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC00cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtNHMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtNHMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC00cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy00cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTRzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtNHMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTRzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tNHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTRzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtNHMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS01cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtNXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtNXMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTVzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtNXMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC01cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tNXMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC01cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtNXMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tNXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTVzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTVzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtNXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktNXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtNXMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtNXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC01cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS01cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy01cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC01cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC01cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTVzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTVzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTVzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtNXMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTVzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tNXMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTVzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtNXMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS02cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtNnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtNnMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTZzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtNnMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC02cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tNnMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC02cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtNnMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtNnMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC02cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy02cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTZzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtNnMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTZzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tNnMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTZzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtNnMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS03cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtN3Mge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtN3Mge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTdzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtN3Mge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC03cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tN3Mge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC03cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtN3Mge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tN3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTdzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTdzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtN3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktN3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtN3Mge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtN3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC03cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS03cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy03cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC03cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC03cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTdzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTdzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTdzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtN3Mge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTdzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tN3Mge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTdzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtN3Mge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS04cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtOHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtOHMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLThzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtOHMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC04cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tOHMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC04cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtOHMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtOHMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC04cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy04cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LThzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtOHMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLThzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tOHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLThzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1nYXAtOHMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS05cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtOXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtOXMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTlzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtOXMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC05cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tOXMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC05cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtOXMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtOXMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC05cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy05cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTlzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtOXMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTlzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tOXMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTlzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtOXMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0xMHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMTBzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0xMHMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0xMHMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMTBzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTEwcyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTEwcyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0xMHMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0xMHMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTEwcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTEwcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTEwcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMTBzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0xMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMTBzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0xMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTEwcyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0xMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0xMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0xMHMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMTBzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMTBzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTEwcyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTEwcyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0xMHMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMTFzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTExcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMTFzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMTFzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTExcyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0xMXMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0xMXMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMTFzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMTFzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0xMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0xMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0xMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTExcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTExcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTExcyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTExcyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0xMXMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTExcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTExcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMTFzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTExcyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTExcyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0xMXMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0xMXMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMTFzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTEycyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0xMnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTEycyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTEycyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0xMnMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMTJzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMTJzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTEycyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTEycyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0xMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0xMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0xMnMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTEycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0xMnMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTEycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMTJzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0xMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0xMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTEycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTEycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTEycyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0xMnMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0xMnMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMTJzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMTJzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTEycyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTAge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTAge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTAge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0wIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTAge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTAge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0wIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTAge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0wIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTAge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMC0zIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMC0zIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTAtMyB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMC0zIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTAtMyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMC0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMC0zIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTAtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMC0zIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMC0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0wLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTAtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMC0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0wLTQge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0wLTQge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMC00IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0wLTQge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMC00IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0wLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0wLTQge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMC00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0wLTQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0wLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTAtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMC00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0wLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTAtNiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTAtNiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0wLTYge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTAtNiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0wLTYge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTAtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTAtNiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0wLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTAtNiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTAtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMC02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0wLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTAtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMC04IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMC04IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTAtOCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMC04IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTAtOCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMC04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMC04IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTAtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMC04IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMC04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0wLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTAtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMC04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0wLTkge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0wLTkge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMC05IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0wLTkge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMC05IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0wLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0wLTkge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMC05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0wLTkge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0wLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTAtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMC05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0wLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTEge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTEge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTEge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0xIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTEge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTEge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0xIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTEge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0xIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTEge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMS0zIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMS0zIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTEtMyB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMS0zIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTEtMyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMS0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMS0zIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTEtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMS0zIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMS0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0xLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTEtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMS0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0xLTQge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0xLTQge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMS00IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0xLTQge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMS00IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0xLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0xLTQge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMS00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0xLTQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0xLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTEtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMS00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0xLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTEtNiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTEtNiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0xLTYge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTEtNiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0xLTYge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTEtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTEtNiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0xLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTEtNiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTEtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMS02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0xLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTEtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMS04IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMS04IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTEtOCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMS04IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTEtOCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMS04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMS04IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTEtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMS04IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMS04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0xLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTEtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMS04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0xLTkge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0xLTkge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMS05IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0xLTkge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMS05IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0xLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0xLTkge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMS05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0xLTkge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0xLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTEtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMS05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0xLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTIge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTIge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTIge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0yIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTIge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTIge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0yIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTIge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTIgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0yIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTIgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTIge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTIgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMi0zIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMi0zIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTItMyB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMi0zIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTItMyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMi0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMi0zIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTItMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMi0zIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMi0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0yLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTItMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMi0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0yLTQge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0yLTQge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMi00IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0yLTQge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMi00IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0yLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0yLTQge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMi00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0yLTQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0yLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTItNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMi00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0yLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTItNiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTItNiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0yLTYge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTItNiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0yLTYge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTItNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTItNiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0yLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTItNiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTItNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMi02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0yLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTItNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMi04IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMi04IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTItOCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMi04IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTItOCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMi04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMi04IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTItOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMi04IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMi04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0yLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTItOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMi04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0yLTkge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0yLTkge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMi05IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0yLTkge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMi05IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0yLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0yLTkge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMi05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0yLTkge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0yLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTItOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMi05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0yLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMyB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTMge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTMge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0zIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMy0zIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMy0zIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTMtMyB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMy0zIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTMtMyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMy0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMy0zIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTMtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMy0zIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMy0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0zLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTMtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMy0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0zLTQge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0zLTQge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMy00IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0zLTQge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMy00IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0zLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0zLTQge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMy00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0zLTQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0zLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTMtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMy00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0zLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTMtNiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTMtNiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0zLTYge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTMtNiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0zLTYge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTMtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTMtNiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0zLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTMtNiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTMtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMy02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0zLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTMtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMy04IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMy04IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTMtOCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMy04IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTMtOCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMy04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMy04IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTMtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMy04IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMy04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0zLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTMtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMy04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0zLTkge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0zLTkge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMy05IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0zLTkge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMy05IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0zLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0zLTkge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMy05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0zLTkge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0zLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTMtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMy05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0zLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTQge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtNCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtNCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTQge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTQge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTQge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC00IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtNSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC01IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC01IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC01ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtNSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTUgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtNSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTUge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtNSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtNSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtNSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtNSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtNSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTUge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtNSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtNSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC01IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTUgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTUge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtNSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTUgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtNSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtNSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC02IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTYge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTYge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC02IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC02IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC02IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtNiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTcge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtNyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtNyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtNyApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtNyB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtNyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTcge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTcge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtNyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC03IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTcgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTcge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTcgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTcge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTcgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC03IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtNyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTcge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTcgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtNyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtNyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtNyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC03IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTcgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTcge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtNyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTcgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtOCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC04IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC04IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtOCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtOCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtOCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTgge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC05IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTkge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTkge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC05IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC05IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC05IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtOSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTEwIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0xMCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTEwIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xMCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTEwIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMTAge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMTAge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTEwIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMTAge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMTAge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTEwIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMTAge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEwICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTEwIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEwICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMTEge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTExIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMTEge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTExICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMTEge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0xMSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMTEge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTExICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0xMSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0xMSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTExICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMTEge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTExICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTExICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0xMSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTExIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTExICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMTEge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0xMiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMTIge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0xMiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0xMiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTEyIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTEyIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0xMiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTEyIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTEyIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0xMiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTEyIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMTIge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0xMiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTAge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTAge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTAge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0wIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTAge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0wLTMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMC0zIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0wLTMge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0wLTMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTAtMyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTAtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0wLTMge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTAtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTAtMyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0wLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTAtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMC0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0wLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTAtNCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0wLTQge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTAtNCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTAtNCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMC00IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMC00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTAtNCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMC00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMC00IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTAtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMC00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0wLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTAtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMC02IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTAtNiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMC02IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMC02IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0wLTYge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0wLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMC02IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0wLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0wLTYge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMC02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0wLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTAtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMC02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0wLTgge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMC04IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0wLTgge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0wLTgge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTAtOCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTAtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0wLTgge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTAtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTAtOCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0wLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTAtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMC04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0wLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTAtOSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0wLTkge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTAtOSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTAtOSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMC05IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMC05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTAtOSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMC05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMC05IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTAtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMC05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0wLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTAtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTEge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTEge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTEge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0xIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTEge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0xLTMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMS0zIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0xLTMge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0xLTMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTEtMyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTEtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0xLTMge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTEtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTEtMyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0xLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTEtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMS0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0xLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTEtNCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0xLTQge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTEtNCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTEtNCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMS00IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMS00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTEtNCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMS00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMS00IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTEtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMS00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0xLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTEtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMS02IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTEtNiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMS02IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMS02IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0xLTYge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0xLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMS02IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0xLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0xLTYge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMS02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0xLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTEtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMS02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0xLTgge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMS04IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0xLTgge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0xLTgge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTEtOCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTEtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0xLTgge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTEtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTEtOCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0xLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTEtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMS04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0xLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTEtOSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0xLTkge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTEtOSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTEtOSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMS05IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMS05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTEtOSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMS05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMS05IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTEtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMS05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0xLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTEtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTIge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTIge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTIge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0yIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTIge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0yLTMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMi0zIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0yLTMge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0yLTMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTItMyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTItMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0yLTMge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTItMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTItMyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0yLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTItMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMi0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0yLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTItNCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0yLTQge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTItNCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTItNCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMi00IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMi00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTItNCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMi00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMi00IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTItNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMi00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0yLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTItNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMi02IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTItNiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMi02IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMi02IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0yLTYge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0yLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMi02IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0yLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0yLTYge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMi02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0yLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTItNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMi02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0yLTgge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMi04IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0yLTgge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0yLTgge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTItOCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTItOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0yLTgge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTItOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTItOCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0yLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTItOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMi04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0yLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTItOSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0yLTkge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTItOSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTItOSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMi05IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMi05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTItOSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMi05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMi05IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTItOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMi05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0yLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTItOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTMge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTMge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0zLTMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMy0zIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0zLTMge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0zLTMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTMtMyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTMtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0zLTMge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTMtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTMtMyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0zLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTMtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMy0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0zLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTMtNCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0zLTQge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTMtNCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTMtNCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMy00IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMy00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTMtNCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMy00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMy00IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTMtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMy00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0zLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTMtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMy02IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTMtNiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMy02IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMy02IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0zLTYge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0zLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMy02IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0zLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0zLTYge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMy02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0zLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTMtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMy02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0zLTgge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMy04IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0zLTgge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0zLTgge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTMtOCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTMtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0zLTgge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTMtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTMtOCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0zLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTMtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMy04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0zLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTMtOSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0zLTkge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTMtOSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTMtOSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMy05IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMy05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTMtOSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMy05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMy05IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTMtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMy05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0zLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTMtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctNCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctNCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTQge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctNCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTQge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctNCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctNCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy01IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctNSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy01IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctNSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy01IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctNSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy01IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy01IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctNSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy01IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy01IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTUge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctNSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy01IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTYge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTYge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctNiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy02IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTYge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy02IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTYge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTYge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctNyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctNyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTcge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctNyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctNyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctNyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTcge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctNyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctNyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTcge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctNyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctNyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy03IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTcge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctNyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy04IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy04IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctOCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy04IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctOCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy04IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy04IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTkge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTkge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctOSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy05IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTkge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy05IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTkge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTkge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMTAge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0xMCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0xMCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMTAge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMTAge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMTAge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMTAge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTEwIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMTAge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0xMCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMTAge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0xMSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTExIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTExIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0xMSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0xMSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMTEge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0xMSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0xMSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMTEge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0xMSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTExIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMTEge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0xMSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTEyIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMTIge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMTIge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTEyIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTEyIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0xMiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTEyIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTEyIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0xMiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTEyIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMTIge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0xMiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTEyIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG59XG5cbkBtaXhpbiBzY3ctZmlsbC0xIHtcbiAgZmxleDogMTtcbn1cblxuXG5AbWl4aW4gc2N3LWZpbGwtMiB7XG4gIGZsZXg6IDI7XG59XG5cblxuQG1peGluIHNjdy1maWxsLTMge1xuICBmbGV4OiAzO1xufVxuXG5cbkBtaXhpbiBzY3ctZmlsbC00IHtcbiAgZmxleDogNDtcbn1cblxuXG5AbWl4aW4gc2N3LWZpbGwtNSB7XG4gIGZsZXg6IDU7XG59XG5cblxuQG1peGluIHNjdy1maWxsLTYge1xuICBmbGV4OiA2O1xufVxuXG5cbkBtaXhpbiBzY3ctZmlsbC03IHtcbiAgZmxleDogNztcbn1cblxuXG5AbWl4aW4gc2N3LWZpbGwtOCB7XG4gIGZsZXg6IDg7XG59XG5cblxuQG1peGluIHNjdy1maWxsLTkge1xuICBmbGV4OiA5O1xufVxuXG5cbkBtaXhpbiBzY3ctZmlsbCB7XG4gIGZsZXg6IDE7XG59XG5cblxuQG1peGluIHNjdy1maWxsLWNvbnRhaW5lciB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctZWxlbWVudC1pbml0aWFsIHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG59XG5cblxuQG1peGluIHNjdy1zdGFjay1pbml0aWFsKCRpc1Nsb3Q6IGZhbHNlKSB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpudGgtY2hpbGQobikgKScsIFxuICAgICc+ICo6bnRoLWNoaWxkKG4pJ1xuICApfSB7XG4gICAgXG4gICAgLS1nYXAtaC1pbnQ6IDBweDtcbiAgICAtLWdhcC12LWludDogdmFyKCAtLWdhcCwgdmFyKCAtLWdhcC12LCBpbml0aWFsICkpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOmxhc3QtY2hpbGQgKScsIFxuICAgICc+ICo6bGFzdC1jaGlsZCdcbiAgKX0ge1xuICAgIC0tZ2FwLXYtaW50OiAwcHg7XG4gIH1cbn1cblxuXG5AbWl4aW4gc2N3LWxheW91dC1pbml0aWFsKCRpc1Nsb3Q6IGZhbHNlKSB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpudGgtY2hpbGQobikgKScsIFxuICAgICc+ICo6bnRoLWNoaWxkKG4pJ1xuICApfSB7XG4gICAgXG4gICAgLS1nYXAtaC1pbnQ6IDBweDtcbiAgICAtLWdhcC12LWludDogdmFyKCAtLWdhcCwgdmFyKCAtLWdhcC12LCBpbml0aWFsICkpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOmxhc3QtY2hpbGQgKScsIFxuICAgICc+ICo6bGFzdC1jaGlsZCdcbiAgKX0ge1xuICAgIC0tZ2FwLXYtaW50OiAwcHg7XG4gIH1cbn1cblxuXG5AbWl4aW4gc2N3LWZsZXgtaC1pbml0aWFsKCRpc1Nsb3Q6IGZhbHNlKSB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuICBcbiAgLyogc2N3IGZsZXggZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tYWxpZ24taXRlbXM6IGluaXRpYWw7XG4gIC0tanVzdGlmeS1jb250ZW50OiBpbml0aWFsO1xuICBhbGlnbi1pdGVtczogdmFyKCAtLWFsaWduLWl0ZW1zICwgdmFyKCAtLWFpLWludCwgZmxleC1zdGFydCApICk7XG4gIGp1c3RpZnktY29udGVudDogdmFyKCAtLWp1c3RpZnktY29udGVudCAsIHZhciggLS1qYy1pbnQsIGZsZXgtc3RhcnQgKSApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcblxuICAtLWFpLWg6IGZsZXgtc3RhcnQ7XG4gIC0tamMtaDogZmxleC1zdGFydDtcbiAgLS1haS1pbnQ6IHZhciggLS1haS1oLCBpbml0aWFsICk7XG4gIC0tamMtaW50OiB2YXIoIC0tamMtaCwgaW5pdGlhbCApO1xuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpudGgtY2hpbGQobikgKScsIFxuICAgICc+ICo6bnRoLWNoaWxkKG4pJ1xuICApfSB7XG4gICAgXG4gICAgLS1nYXAtaC1pbnQ6IHZhciggLS1nYXAgLCB2YXIoIC0tZ2FwLWgsIGluaXRpYWwgKSk7XG4gICAgLS1nYXAtdi1pbnQ6IDBweDtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpsYXN0LWNoaWxkICknLCBcbiAgICAnPiAqOmxhc3QtY2hpbGQnXG4gICl9IHtcbiAgICAtLWdhcC1oLWludDogMHB4O1xuICB9XG59XG5cblxuQG1peGluIHNjdy1mbGV4LXYtaW5pdGlhbCgkaXNTbG90OiBmYWxzZSkge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcbiAgXG4gIC8qIHNjdyBmbGV4IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLWFsaWduLWl0ZW1zOiBpbml0aWFsO1xuICAtLWp1c3RpZnktY29udGVudDogaW5pdGlhbDtcbiAgYWxpZ24taXRlbXM6IHZhciggLS1hbGlnbi1pdGVtcyAsIHZhciggLS1haS1pbnQsIGZsZXgtc3RhcnQgKSApO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHZhciggLS1qdXN0aWZ5LWNvbnRlbnQgLCB2YXIoIC0tamMtaW50LCBmbGV4LXN0YXJ0ICkgKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG5cbiAgLS1haS12OiBmbGV4LXN0YXJ0O1xuICAtLWpjLXY6IGZsZXgtc3RhcnQ7XG4gIC0tYWktaW50OiB2YXIoIC0tYWktdiwgaW5pdGlhbCApO1xuICAtLWpjLWludDogdmFyKCAtLWpjLXYsIGluaXRpYWwgKTtcblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bnRoLWNoaWxkKG4pICknLCBcbiAgICAnPiAqOm50aC1jaGlsZChuKSdcbiAgKX0ge1xuICAgIFxuICAgIC0tZ2FwLWgtaW50OiAwcHg7XG4gICAgLS1nYXAtdi1pbnQ6IHZhciggLS1nYXAsIHZhciggLS1nYXAtdiwgaW5pdGlhbCApKTtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpsYXN0LWNoaWxkICknLCBcbiAgICAnPiAqOmxhc3QtY2hpbGQnXG4gICl9IHtcbiAgICAtLWdhcC12LWludDogMHB4O1xuICB9XG59XG5cblxuQG1peGluIHNjdy1jZW50ZXItaW5pdGlhbCgkaXNTbG90OiBmYWxzZSkge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcbiAgXG4gIC8qIHNjdyBmbGV4IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLWFsaWduLWl0ZW1zOiBpbml0aWFsO1xuICAtLWp1c3RpZnktY29udGVudDogaW5pdGlhbDtcbiAgYWxpZ24taXRlbXM6IHZhciggLS1hbGlnbi1pdGVtcyAsIHZhciggLS1haS1pbnQsIGZsZXgtc3RhcnQgKSApO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHZhciggLS1qdXN0aWZ5LWNvbnRlbnQgLCB2YXIoIC0tamMtaW50LCBmbGV4LXN0YXJ0ICkgKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG5cbiAgLS1haS12OiBjZW50ZXI7XG4gIC0tamMtdjogY2VudGVyO1xuICAtLWFpLWludDogdmFyKCAtLWFpLXYsIGluaXRpYWwgKTtcbiAgLS1qYy1pbnQ6IHZhciggLS1qYy12LCBpbml0aWFsICk7XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOm50aC1jaGlsZChuKSApJywgXG4gICAgJz4gKjpudGgtY2hpbGQobiknXG4gICl9IHtcbiAgICBcbiAgICAtLWdhcC1oLWludDogMHB4O1xuICAgIC0tZ2FwLXYtaW50OiB2YXIoIC0tZ2FwLCB2YXIoIC0tZ2FwLXYsIGluaXRpYWwgKSk7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bGFzdC1jaGlsZCApJywgXG4gICAgJz4gKjpsYXN0LWNoaWxkJ1xuICApfSB7XG4gICAgLS1nYXAtdi1pbnQ6IDBweDtcbiAgfVxufVxuXG5cbkBtaXhpbiBzY3ctZmxvYXQtaW5pdGlhbCgkaXNTbG90OiBmYWxzZSkge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcblxuICBkaXNwbGF5OiBibG9jaztcblxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpudGgtY2hpbGQobikgKScsIFxuICAgICc+ICo6bnRoLWNoaWxkKG4pJ1xuICApfSB7XG4gICAgXG4gICAgLS1nYXAtaC1pbnQ6IDBweDtcbiAgICAtLWdhcC12LWludDogdmFyKCAtLWdhcCwgdmFyKCAtLWdhcC12LCBpbml0aWFsICkpO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBsZWZ0O1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOmxhc3QtY2hpbGQgKScsIFxuICAgICc+ICo6bGFzdC1jaGlsZCdcbiAgKX0ge1xuICAgIC0tZ2FwLXYtaW50OiAwcHg7XG4gIH1cbn1cblxuQG1peGluIHNjdy1lbGVtZW50IHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG59XG5cblxuQG1peGluIHNjdy1zdGFjaygkaXNTbG90OiBmYWxzZSkge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcblxuICBkaXNwbGF5OiBibG9jaztcblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bnRoLWNoaWxkKG4pICknLCBcbiAgICAnPiAqOm50aC1jaGlsZChuKSdcbiAgKX0ge1xuICAgIFxuICAgIC0tZ2FwLWgtaW50OiAwcHg7XG4gICAgLS1nYXAtdi1pbnQ6IHZhciggLS1nYXAsIHZhciggLS1nYXAtdiwgaW5pdGlhbCApKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpsYXN0LWNoaWxkICknLCBcbiAgICAnPiAqOmxhc3QtY2hpbGQnXG4gICl9IHtcbiAgICAtLWdhcC12LWludDogMHB4O1xuICB9XG59XG5cblxuQG1peGluIHNjdy1sYXlvdXQoJGlzU2xvdDogZmFsc2UpIHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOm50aC1jaGlsZChuKSApJywgXG4gICAgJz4gKjpudGgtY2hpbGQobiknXG4gICl9IHtcbiAgICBcbiAgICAtLWdhcC1oLWludDogMHB4O1xuICAgIC0tZ2FwLXYtaW50OiB2YXIoIC0tZ2FwLCB2YXIoIC0tZ2FwLXYsIGluaXRpYWwgKSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bGFzdC1jaGlsZCApJywgXG4gICAgJz4gKjpsYXN0LWNoaWxkJ1xuICApfSB7XG4gICAgLS1nYXAtdi1pbnQ6IDBweDtcbiAgfVxufVxuXG5cbkBtaXhpbiBzY3ctZmxleC1oKCRpc1Nsb3Q6IGZhbHNlKSB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuICBcbiAgLyogc2N3IGZsZXggZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tYWxpZ24taXRlbXM6IGluaXRpYWw7XG4gIC0tanVzdGlmeS1jb250ZW50OiBpbml0aWFsO1xuICBhbGlnbi1pdGVtczogdmFyKCAtLWFsaWduLWl0ZW1zICwgdmFyKCAtLWFpLWludCwgZmxleC1zdGFydCApICk7XG4gIGp1c3RpZnktY29udGVudDogdmFyKCAtLWp1c3RpZnktY29udGVudCAsIHZhciggLS1qYy1pbnQsIGZsZXgtc3RhcnQgKSApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcblxuICAtLWFpLWg6IGZsZXgtc3RhcnQ7XG4gIC0tamMtaDogZmxleC1zdGFydDtcbiAgLS1haS1pbnQ6IHZhciggLS1haS1oLCBpbml0aWFsICk7XG4gIC0tamMtaW50OiB2YXIoIC0tamMtaCwgaW5pdGlhbCApO1xuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpudGgtY2hpbGQobikgKScsIFxuICAgICc+ICo6bnRoLWNoaWxkKG4pJ1xuICApfSB7XG4gICAgXG4gICAgLS1nYXAtaC1pbnQ6IHZhciggLS1nYXAgLCB2YXIoIC0tZ2FwLWgsIGluaXRpYWwgKSk7XG4gICAgLS1nYXAtdi1pbnQ6IDBweDtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpsYXN0LWNoaWxkICknLCBcbiAgICAnPiAqOmxhc3QtY2hpbGQnXG4gICl9IHtcbiAgICAtLWdhcC1oLWludDogMHB4O1xuICB9XG59XG5cblxuQG1peGluIHNjdy1mbGV4LXYoJGlzU2xvdDogZmFsc2UpIHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG4gIFxuICAvKiBzY3cgZmxleCBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1hbGlnbi1pdGVtczogaW5pdGlhbDtcbiAgLS1qdXN0aWZ5LWNvbnRlbnQ6IGluaXRpYWw7XG4gIGFsaWduLWl0ZW1zOiB2YXIoIC0tYWxpZ24taXRlbXMgLCB2YXIoIC0tYWktaW50LCBmbGV4LXN0YXJ0ICkgKTtcbiAganVzdGlmeS1jb250ZW50OiB2YXIoIC0tanVzdGlmeS1jb250ZW50ICwgdmFyKCAtLWpjLWludCwgZmxleC1zdGFydCApICk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuXG4gIC0tYWktdjogZmxleC1zdGFydDtcbiAgLS1qYy12OiBmbGV4LXN0YXJ0O1xuICAtLWFpLWludDogdmFyKCAtLWFpLXYsIGluaXRpYWwgKTtcbiAgLS1qYy1pbnQ6IHZhciggLS1qYy12LCBpbml0aWFsICk7XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOm50aC1jaGlsZChuKSApJywgXG4gICAgJz4gKjpudGgtY2hpbGQobiknXG4gICl9IHtcbiAgICBcbiAgICAtLWdhcC1oLWludDogMHB4O1xuICAgIC0tZ2FwLXYtaW50OiB2YXIoIC0tZ2FwLCB2YXIoIC0tZ2FwLXYsIGluaXRpYWwgKSk7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bGFzdC1jaGlsZCApJywgXG4gICAgJz4gKjpsYXN0LWNoaWxkJ1xuICApfSB7XG4gICAgLS1nYXAtdi1pbnQ6IDBweDtcbiAgfVxufVxuXG5cbkBtaXhpbiBzY3ctY2VudGVyKCRpc1Nsb3Q6IGZhbHNlKSB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuICBcbiAgLyogc2N3IGZsZXggZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tYWxpZ24taXRlbXM6IGluaXRpYWw7XG4gIC0tanVzdGlmeS1jb250ZW50OiBpbml0aWFsO1xuICBhbGlnbi1pdGVtczogdmFyKCAtLWFsaWduLWl0ZW1zICwgdmFyKCAtLWFpLWludCwgZmxleC1zdGFydCApICk7XG4gIGp1c3RpZnktY29udGVudDogdmFyKCAtLWp1c3RpZnktY29udGVudCAsIHZhciggLS1qYy1pbnQsIGZsZXgtc3RhcnQgKSApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcblxuICAtLWFpLXY6IGNlbnRlcjtcbiAgLS1qYy12OiBjZW50ZXI7XG4gIC0tYWktaW50OiB2YXIoIC0tYWktdiwgaW5pdGlhbCApO1xuICAtLWpjLWludDogdmFyKCAtLWpjLXYsIGluaXRpYWwgKTtcblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bnRoLWNoaWxkKG4pICknLCBcbiAgICAnPiAqOm50aC1jaGlsZChuKSdcbiAgKX0ge1xuICAgIFxuICAgIC0tZ2FwLWgtaW50OiAwcHg7XG4gICAgLS1nYXAtdi1pbnQ6IHZhciggLS1nYXAsIHZhciggLS1nYXAtdiwgaW5pdGlhbCApKTtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpsYXN0LWNoaWxkICknLCBcbiAgICAnPiAqOmxhc3QtY2hpbGQnXG4gICl9IHtcbiAgICAtLWdhcC12LWludDogMHB4O1xuICB9XG59XG5cblxuQG1peGluIHNjdy1mbG9hdCgkaXNTbG90OiBmYWxzZSkge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcblxuICBkaXNwbGF5OiBibG9jaztcblxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpudGgtY2hpbGQobikgKScsIFxuICAgICc+ICo6bnRoLWNoaWxkKG4pJ1xuICApfSB7XG4gICAgXG4gICAgLS1nYXAtaC1pbnQ6IDBweDtcbiAgICAtLWdhcC12LWludDogdmFyKCAtLWdhcCwgdmFyKCAtLWdhcC12LCBpbml0aWFsICkpO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBsZWZ0O1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOmxhc3QtY2hpbGQgKScsIFxuICAgICc+ICo6bGFzdC1jaGlsZCdcbiAgKX0ge1xuICAgIC0tZ2FwLXYtaW50OiAwcHg7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zY3JvbGwteSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cblxuQG1peGluIHNjdy1mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cblxuQG1peGluIHNjdy1mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuXG5AbWl4aW4gc2N3LWZsb2F0LWNsZWFyLWxlZnQge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IGxlZnQ7XG59XG5cblxuQG1peGluIHNjdy1mbG9hdC1jbGVhci1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgY2xlYXI6IHJpZ2h0O1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWNlbnRlciB7XG4gIC0tYWktaDogY2VudGVyO1xuICAtLWpjLWg6IGNlbnRlcjtcbiAgLS1haS12OiBjZW50ZXI7XG4gIC0tamMtdjogY2VudGVyO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtY2VudGVyLWNlbnRlciB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtY2VudGVyO1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWNlbnRlci1sZWZ0IHtcbiAgLS1haS1oOiBjZW50ZXI7XG4gIC0tamMtaDogZmxleC1zdGFydDtcbiAgLS1haS12OiBmbGV4LXN0YXJ0O1xuICAtLWpjLXY6IGNlbnRlcjtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWxlZnQtY2VudGVyIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1jZW50ZXItbGVmdDtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC1jZW50ZXItcmlnaHQge1xuICAtLWFpLWg6IGNlbnRlcjtcbiAgLS1qYy1oOiBmbGV4LWVuZDtcbiAgLS1haS12OiBmbGV4LWVuZDtcbiAgLS1qYy12OiBjZW50ZXI7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1yaWdodC1jZW50ZXIge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LWNlbnRlci1yaWdodDtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC10b3Age1xuICAtLWFpLWg6IGZsZXgtc3RhcnQ7XG4gIC0tamMtaDogZmxleC1zdGFydDtcbiAgLS1haS12OiBmbGV4LXN0YXJ0O1xuICAtLWpjLXY6IGZsZXgtc3RhcnQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC10b3AtbGVmdCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtdG9wO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtbGVmdC10b3Age1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXRvcDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWxlZnQge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXRvcDtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC10b3AtY2VudGVyIHtcbiAgLS1haS1oOiBmbGV4LXN0YXJ0O1xuICAtLWpjLWg6IGNlbnRlcjtcbiAgLS1haS12OiBjZW50ZXI7XG4gIC0tamMtdjogZmxleC1zdGFydDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWNlbnRlci10b3Age1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXRvcC1jZW50ZXI7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtdG9wLXJpZ2h0IHtcbiAgLS1haS1oOiBmbGV4LXN0YXJ0O1xuICAtLWpjLWg6IGZsZXgtZW5kO1xuICAtLWFpLXY6IGZsZXgtZW5kO1xuICAtLWpjLXY6IGZsZXgtc3RhcnQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1yaWdodC10b3Age1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXRvcC1yaWdodDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXJpZ2h0IHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC10b3AtcmlnaHQ7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtYm90dG9tIHtcbiAgLS1haS1oOiBmbGV4LWVuZDtcbiAgLS1qYy1oOiBmbGV4LXN0YXJ0O1xuICAtLWFpLXY6IGZsZXgtc3RhcnQ7XG4gIC0tamMtdjogZmxleC1lbmQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1ib3R0b20tbGVmdCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtYm90dG9tO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtbGVmdC1ib3R0b20ge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LWJvdHRvbTtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC1ib3R0b20tY2VudGVyIHtcbiAgLS1haS1oOiBmbGV4LWVuZDtcbiAgLS1qYy1oOiBjZW50ZXI7XG4gIC0tYWktdjogY2VudGVyO1xuICAtLWpjLXY6IGZsZXgtZW5kO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtY2VudGVyLWJvdHRvbSB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtYm90dG9tLWNlbnRlcjtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC1ib3R0b20tcmlnaHQge1xuICAtLWFpLWg6IGZsZXgtZW5kO1xuICAtLWpjLWg6IGZsZXgtZW5kO1xuICAtLWFpLXY6IGZsZXgtZW5kO1xuICAtLWpjLXY6IGZsZXgtZW5kO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtcmlnaHQtYm90dG9tIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1ib3R0b20tcmlnaHQ7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtc3RyZXRjaCB7XG4gIC0tYWktaDogc3RyZXRjaDtcbiAgLS1qYy1oOiBmbGV4LXN0YXJ0O1xuICAtLWFpLXY6IHN0cmV0Y2g7XG4gIC0tamMtdjogZmxleC1zdGFydDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXN0cmV0Y2gtbGVmdCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtc3RyZXRjaDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWxlZnQtc3RyZXRjaCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtc3RyZXRjaDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXN0cmV0Y2gtdG9wIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1zdHJldGNoO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtdG9wLXN0cmV0Y2gge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXN0cmV0Y2g7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtc3RyZXRjaC1yaWdodCB7XG4gIC0tYWktaDogc3RyZXRjaDtcbiAgLS1qYy1oOiBmbGV4LWVuZDtcbiAgLS1haS12OiBzdHJldGNoO1xuICAtLWpjLXY6IGZsZXgtZW5kO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtcmlnaHQtc3RyZXRjaCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtc3RyZXRjaC1yaWdodDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXN0cmV0Y2gtYm90dG9tIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1zdHJldGNoLXJpZ2h0O1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtYm90dG9tLXN0cmV0Y2gge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXN0cmV0Y2gtcmlnaHQ7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtc3RyZXRjaC1jZW50ZXIge1xuICAtLWFpLWg6IHN0cmV0Y2g7XG4gIC0tamMtaDogY2VudGVyO1xuICAtLWFpLXY6IHN0cmV0Y2g7XG4gIC0tamMtdjogY2VudGVyO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtY2VudGVyLXN0cmV0Y2gge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXN0cmV0Y2gtY2VudGVyO1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWJhc2VsaW5lIHtcbiAgLS1haS1oOiBiYXNlbGluZTtcbiAgLS1qYy1oOiBmbGV4LXN0YXJ0O1xuICAtLWFpLXY6IGZsZXgtc3RhcnQ7XG4gIC0tamMtdjogZmxleC1zdGFydDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWJhc2VsaW5lLWxlZnQge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LWJhc2VsaW5lO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtbGVmdC1iYXNlbGluZSB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtYmFzZWxpbmU7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtYmFzZWxpbmUtcmlnaHQge1xuICAtLWFpLWg6IGJhc2VsaW5lO1xuICAtLWpjLWg6IGZsZXgtZW5kO1xuICAtLWFpLXY6IGZsZXgtZW5kO1xuICAtLWpjLXY6IGZsZXgtc3RhcnQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1yaWdodC1iYXNlbGluZSB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtYmFzZWxpbmUtcmlnaHQ7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtYmFzZWxpbmUtY2VudGVyIHtcbiAgLS1haS1oOiBiYXNlbGluZTtcbiAgLS1qYy1oOiBjZW50ZXI7XG4gIC0tYWktdjogY2VudGVyO1xuICAtLWpjLXY6IGZsZXgtc3RhcnQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1jZW50ZXItYmFzZWxpbmUge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LWJhc2VsaW5lLWNlbnRlcjtcbn1cblxuXG5AbWl4aW4gc2N3LWZpbGwtY2hpbGRyZW4ge1xuICA+ICoge1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cbkBtaXhpbiBzY3ctY2hpbGRyZW4tZmlsbCB7XG4gIEBpbmNsdWRlIHNjdy1maWxsLWNoaWxkcmVuO1xufVxuXG5cbkBtaXhpbiBzY3ctaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5AdXNlIFwiY29tcC1zY3ctY2FyZC9zaXplLW1lZGl1bS1taXhpbnNcIiBhcyBzaXplLW1lZGl1bS1taXhpbnM7XG5AdXNlIFwiY29tcC1zY3ctY2FyZC9zaXplLW1lZGl1bS1pbWFnZS1taXhpbnNcIiBhcyBzaXplLW1lZGl1bS1pbWFnZS1taXhpbnM7XG5AdXNlIFwiY29tcC1zY3ctY2FyZC9zaXplLW1lZGl1bS1pbWFnZS12YXJzXCIgYXMgc2l6ZS1tZWRpdW0taW1hZ2UtdmFycztcbkB1c2UgXCJjb21wLXNjdy1jYXJkL3NpemUtbWVkaXVtLWRlc2NyaXB0aW9uLW1peGluc1wiIGFzIHNpemUtbWVkaXVtLWRlc2NyaXB0aW9uLW1peGlucztcbi8vIEB1c2UgXCJjb21wLXNjdy1jYXJkL3NpemUtbWVkaXVtLWFjdGlvbi1taXhpbnNcIiBhcyBzaXplLW1lZGl1bS1hY3Rpb24tbWl4aW5zO1xuXG46aG9zdChbc2l6ZT1cIm1lZGl1bVwiXSkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgc2l6ZS1tZWRpdW0tbWl4aW5zLmJveDtcbiAgQGluY2x1ZGUgc2l6ZS1tZWRpdW0tbWl4aW5zLmZpZ21hLWF1dG9sYXlvdXQ7XG4gIC8vIG1heC13aWR0aDogNjAwcHg7XG5cbiAgLmltYWdlLWJveCB7XG4gICAgaGVpZ2h0OiBzaXplLW1lZGl1bS1pbWFnZS12YXJzLiRoZWlnaHQ7XG4gIH1cbiAgLyouaW1hZ2UtYm94IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogI3sgcGVyY2VudGFnZSggbWF0aC5kaXYoc2l6ZS1tZWRpdW0taW1hZ2UtdmFycy4kaGVpZ2h0LCBzaXplLW1lZGl1bS1pbWFnZS12YXJzLiR3aWR0aCkgKSB9O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfSovXG5cbiAgICAvKi5pbWFnZSB7XG4gICAgICBAaW5jbHVkZSBzaXplLW1lZGl1bS1pbWFnZS1taXhpbnMuYm94O1xuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBpbnNldDogMDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgfSovXG5cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICBAaW5jbHVkZSBzaXplLW1lZGl1bS1kZXNjcmlwdGlvbi1taXhpbnMudGV4dDtcbiAgfVxuXG4gIC8qLmFjdGlvbiB7XG4gICAgQGluY2x1ZGUgc2l6ZS1tZWRpdW0tYWN0aW9uLW1peGlucy5ib3g7XG4gICAgQGluY2x1ZGUgc2l6ZS1tZWRpdW0tYWN0aW9uLW1peGlucy5zaXppbmc7XG4gIH0qL1xufVxuXG4gIFxuIiwiXG5cblxuQG1peGluIGJveCAoXG4gICRiZ1RoZW1lVmFyOiBmYWxzZSwgXG4gICRib3JkZXJUaGVtZVZhcjogZmFsc2VcbikgeyBcbiAgQGlmICRiZ1RoZW1lVmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JGJnVGhlbWVWYXJ9ICwgcmdiYSgwLDAsMCwwKSApO1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuICB9IFxufVxuXG5AbWl4aW4gc2l6aW5nIHtcbiAgd2lkdGg6IDQxNHB4O1xuICBoZWlnaHQ6IDI4OHB4O1xufVxuXG5AbWl4aW4gd2lkdGgge1xuICB3aWR0aDogNDE0cHg7XG59XG5cbkBtaXhpbiBoZWlnaHQge1xuICBoZWlnaHQ6IDI4OHB4O1xufVxuXG5AbWl4aW4gcGFkZGluZyB7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwcHg7XG59XG5cbkBtaXhpbiBmaWdtYS1hdXRvbGF5b3V0IHsgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgJiA+ICo6bm90KDpsYXN0LWNoaWxkKSB7IFxuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMC44ICk7IFxuICAgICAgICAtLW1hcmdpbi1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAwLjggKTsgXG4gICAgICB9IFxufVxuXG5AbWl4aW4gYWJzb2x1dGUtbGF5b3V0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogNjkuNiApO1xuICB3aWR0aDogNDE0cHg7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgaGVpZ2h0OiAyODhweDsgXG59XG5cbkBtaXhpbiBodG1sLWF1dG9sYXlvdXQtbWFyZ2lucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiA2OS42ICk7XG4gIG1hcmdpbi1yaWdodDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDI3LjQgKTtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDM3OS42ICk7XG59XG5cbkBtaXhpbiBodG1sLWF1dG9sYXlvdXQtcGFkZGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogNjkuNiApO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMjcuNCApO1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAzNzkuNiApO1xufSIsIlxuXG4kYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICk7XG4kYmxlbmQtbW9kZTogTk9STUFMO1xuJGNvcm5lci1yYWRpdXMtdG9wLWxlZnQ6IDEwcHg7XG4kY29ybmVyLXJhZGl1cy10b3AtcmlnaHQ6IDEwcHg7XG4kY29ybmVyLXJhZGl1cy1ib3R0b20tcmlnaHQ6IDEwcHg7XG4kY29ybmVyLXJhZGl1cy1ib3R0b20tbGVmdDogMTBweDtcbiR3aWR0aDogNDE0cHg7XG4kaGVpZ2h0OiAxNTFweDtcbiRjb25zdHJhaW50LWhvcml6b250YWw6IE1JTjtcbiRjb25zdHJhaW50LXZlcnRpY2FsOiBNSU47XG4kY29uc3RyYWluLXByb3BvcnRpb25zOiBmYWxzZTtcbiRsYXlvdXQtY29udGV4dDogRkxFWDtcbiRsYXlvdXQtbW9kZTogVkVSVElDQUw7XG4kcHJpbWFyeS1heGlzLWFsaWduLWl0ZW1zOiBNSU47XG4kY291bnRlci1heGlzLWFsaWduLWl0ZW1zOiBNSU47XG4kaXRlbS1zcGFjaW5nOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMC44ICk7XG4kbGF5b3V0LWFsaWduOiBTVFJFVENIO1xuJGxheW91dC1ncm93OiAxO1xuJHRvcDogMHB4O1xuJHRvcC1wZXJjZW50OiAyNi4yMiU7XG4kYm90dG9tOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMTMuNyApO1xuJGxlZnQ6IDBweDtcbiRsZWZ0LXBlcmNlbnQ6IDUwJTtcbiRyaWdodDogMHB4O1xuJHBhZGRpbmctbGVmdDogMHB4O1xuJHBhZGRpbmctcmlnaHQ6IDBweDtcbiRwYWRkaW5nLXRvcDogMHB4O1xuJHBhZGRpbmctYm90dG9tOiAwcHg7XG4kbWFyZ2luLWJvdHRvbTogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDAuOCApOyIsIlxuXG5cbkBtaXhpbiB0ZXh0IChcbiAgJHRoZW1lVmFyOiBmYWxzZVxuKSB7IFxuICB0ZXh0LWFsaWduOiBMRUZUO1xuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1mb250ICk7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKTtcbiAgfVxuICBhbGlnbi1zZWxmOiBzdHJldGNoOyBcbn1cblxuQG1peGluIHNpemluZyB7XG4gIHdpZHRoOiA0MTRweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuXG5AbWl4aW4gd2lkdGgge1xuICB3aWR0aDogNDE0cHg7XG59XG5cbkBtaXhpbiBoZWlnaHQge1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbkBtaXhpbiBwYWRkaW5nIHtcbiAgcGFkZGluZy1sZWZ0OiBpbml0aWFsO1xuICBwYWRkaW5nLXJpZ2h0OiBpbml0aWFsO1xuICBwYWRkaW5nLXRvcDogaW5pdGlhbDtcbiAgcGFkZGluZy1ib3R0b206IGluaXRpYWw7XG59XG5cbkBtaXhpbiBhYnNvbHV0ZS1sYXlvdXQge1xuICAgXG59XG5cbkBtaXhpbiBodG1sLWF1dG9sYXlvdXQtbWFyZ2lucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIG1hcmdpbi10b3A6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAyMS45ICk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiA0LjUgKTtcbn1cblxuQG1peGluIGh0bWwtYXV0b2xheW91dC1wYWRkaW5nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLXRvcDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDIxLjkgKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiA0LjUgKTtcbn0iLCJAdXNlIFwic2FzczptYXRoXCI7XG5AdXNlIFwiY29tcC1zY3ctY2FyZC9zaXplLXNtYWxsLW1peGluc1wiIGFzIHNpemUtc21hbGwtbWl4aW5zO1xuQHVzZSBcImNvbXAtc2N3LWNhcmQvc2l6ZS1zbWFsbC1pbWFnZS1taXhpbnNcIiBhcyBzaXplLXNtYWxsLWltYWdlLW1peGlucztcbkB1c2UgXCJjb21wLXNjdy1jYXJkL3NpemUtc21hbGwtaW1hZ2UtdmFyc1wiIGFzIHNpemUtc21hbGwtaW1hZ2UtdmFycztcblxuOmhvc3QoW3NpemU9XCJzbWFsbFwiXSkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgc2l6ZS1zbWFsbC1taXhpbnMuYm94O1xuICBAaW5jbHVkZSBzaXplLXNtYWxsLW1peGlucy5maWdtYS1hdXRvbGF5b3V0O1xuICAvLyBtYXgtd2lkdGg6IDYwMHB4O1xuXG4gIC5pbWFnZS1ib3gge1xuICAgIGhlaWdodDogc2l6ZS1zbWFsbC1pbWFnZS12YXJzLiRoZWlnaHQ7XG4gIH1cblxuICAvKi5pbWFnZS1ib3gge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctYm90dG9tOiAjeyBwZXJjZW50YWdlKCBtYXRoLmRpdihzaXplLXNtYWxsLWltYWdlLXZhcnMuJGhlaWdodCwgc2l6ZS1zbWFsbC1pbWFnZS12YXJzLiR3aWR0aCkgKSB9O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfSovXG5cbiAgICAvKi5pbWFnZSB7XG4gICAgICBAaW5jbHVkZSBzaXplLXNtYWxsLWltYWdlLW1peGlucy5ib3g7XG5cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGluc2V0OiAwO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICB9Ki9cblxuICAuZGVzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLy8gQGluY2x1ZGUgc2l6ZS1zbWFsbC1kZXNjcmlwdGlvbi1taXhpbnMudGV4dDtcbiAgfVxuXG4gIC5hY3Rpb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLy8gQGluY2x1ZGUgc2l6ZS1zbWFsbC1hY3Rpb24tbWl4aW5zLmJveDtcbiAgICAvLyBAaW5jbHVkZSBzaXplLXNtYWxsLWFjdGlvbi1taXhpbnMuc2l6aW5nO1xuICB9XG59XG5cbiAgXG4iLCJcblxuXG5AbWl4aW4gYm94IChcbiAgJGJnVGhlbWVWYXI6IGZhbHNlLCBcbiAgJGJvcmRlclRoZW1lVmFyOiBmYWxzZVxuKSB7IFxuICBAaWYgJGJnVGhlbWVWYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skYmdUaGVtZVZhcn0gLCByZ2JhKDAsMCwwLDApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG4gIH0gXG59XG5cbkBtaXhpbiBzaXppbmcge1xuICB3aWR0aDogMTkwcHg7XG4gIGhlaWdodDogMjAxcHg7XG59XG5cbkBtaXhpbiB3aWR0aCB7XG4gIHdpZHRoOiAxOTBweDtcbn1cblxuQG1peGluIGhlaWdodCB7XG4gIGhlaWdodDogMjAxcHg7XG59XG5cbkBtaXhpbiBwYWRkaW5nIHtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbn1cblxuQG1peGluIGZpZ21hLWF1dG9sYXlvdXQgeyBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLXRvcDogMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAmID4gKjpub3QoOmxhc3QtY2hpbGQpIHsgXG4gICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAwLjggKTsgXG4gICAgICAgIC0tbWFyZ2luLWJvdHRvbTogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDAuOCApOyBcbiAgICAgIH0gXG59XG5cbkBtaXhpbiBhYnNvbHV0ZS1sYXlvdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAxMTUgKTtcbiAgd2lkdGg6IDE5MHB4O1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIGhlaWdodDogMjAxcHg7IFxufVxuXG5AbWl4aW4gaHRtbC1hdXRvbGF5b3V0LW1hcmdpbnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMTE1ICk7XG4gIG1hcmdpbi1yaWdodDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDQuNCApO1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMzg4LjMgKTtcbn1cblxuQG1peGluIGh0bWwtYXV0b2xheW91dC1wYWRkaW5nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAxMTUgKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDQuNCApO1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAzODguMyApO1xufSIsIlxuXG4kYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICk7XG4kYmxlbmQtbW9kZTogTk9STUFMO1xuJGNvcm5lci1yYWRpdXMtdG9wLWxlZnQ6IDEwcHg7XG4kY29ybmVyLXJhZGl1cy10b3AtcmlnaHQ6IDEwcHg7XG4kY29ybmVyLXJhZGl1cy1ib3R0b20tcmlnaHQ6IDEwcHg7XG4kY29ybmVyLXJhZGl1cy1ib3R0b20tbGVmdDogMTBweDtcbiR3aWR0aDogMTkwcHg7XG4kaGVpZ2h0OiAxNjlweDtcbiRjb25zdHJhaW50LWhvcml6b250YWw6IE1JTjtcbiRjb25zdHJhaW50LXZlcnRpY2FsOiBNSU47XG4kY29uc3RyYWluLXByb3BvcnRpb25zOiBmYWxzZTtcbiRsYXlvdXQtY29udGV4dDogRkxFWDtcbiRsYXlvdXQtbW9kZTogVkVSVElDQUw7XG4kcHJpbWFyeS1heGlzLWFsaWduLWl0ZW1zOiBNSU47XG4kY291bnRlci1heGlzLWFsaWduLWl0ZW1zOiBNSU47XG4kaXRlbS1zcGFjaW5nOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMC44ICk7XG4kbGF5b3V0LWFsaWduOiBTVFJFVENIO1xuJGxheW91dC1ncm93OiAxO1xuJHRvcDogMHB4O1xuJHRvcC1wZXJjZW50OiA0Mi4wNCU7XG4kYm90dG9tOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMy4yICk7XG4kbGVmdDogMHB4O1xuJGxlZnQtcGVyY2VudDogNTAlO1xuJHJpZ2h0OiAwcHg7XG4kcGFkZGluZy1sZWZ0OiAwcHg7XG4kcGFkZGluZy1yaWdodDogMHB4O1xuJHBhZGRpbmctdG9wOiAwcHg7XG4kcGFkZGluZy1ib3R0b206IDBweDtcbiRtYXJnaW4tYm90dG9tOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMC44ICk7IiwiQHVzZSBcImNvbXAtc2N3LWNhcmQvY29sb3ItbW9ydGdhZ2Utc3VwZXItaGVhZGluZy1taXhpbnNcIiBhcyBjb2xvci1tb3J0Z2FnZS1zdXBlci1oZWFkaW5nLW1peGlucztcbkB1c2UgXCJjb21wLXNjdy1jYXJkL2NvbG9yLXNhdmluZ3Mtc3VwZXItaGVhZGluZy1taXhpbnNcIiBhcyBjb2xvci1zYXZpbmdzLXN1cGVyLWhlYWRpbmctbWl4aW5zO1xuQHVzZSBcImNvbXAtc2N3LWNhcmQvY29sb3Itc3R1ZGVudC1zdXBlci1oZWFkaW5nLW1peGluc1wiIGFzIGNvbG9yLXN0dWRlbnQtc3VwZXItaGVhZGluZy1taXhpbnM7XG5AdXNlIFwiY29tcC1zY3ctY2FyZC9jb2xvci1pbnZlc3RtZW50cy1zdXBlci1oZWFkaW5nLW1peGluc1wiIGFzIGNvbG9yLWludmVzdG1lbnRzLXN1cGVyLWhlYWRpbmctbWl4aW5zO1xuQHVzZSBcImNvbXAtc2N3LWNhcmQvY29sb3ItY2hlY2tpbmctc3VwZXItaGVhZGluZy1taXhpbnNcIiBhcyBjb2xvci1jaGVja2luZy1zdXBlci1oZWFkaW5nLW1peGlucztcbkB1c2UgXCJjb21wLXNjdy1jYXJkL2NvbG9yLWNyZWRpdC1jYXJkcy1zdXBlci1oZWFkaW5nLW1peGluc1wiIGFzIGNvbG9yLWNyZWRpdC1jYXJkcy1zdXBlci1oZWFkaW5nLW1peGlucztcblxuOmhvc3Qge1xuICAvLy5zdXBlci1oZWFkaW5nIHtcbiAgICAvL0BpbmNsdWRlIGRlZmF1bHQtc3VwZXItaGVhZGluZy1taXhpbnMudGV4dDtcbiAgLy99XG5cbiAgLnN1cGVyLWhlYWRpbmcubW9ydGdhZ2Uge1xuICAgIEBpbmNsdWRlIGNvbG9yLW1vcnRnYWdlLXN1cGVyLWhlYWRpbmctbWl4aW5zLnRleHQ7XG4gIH1cblxuICAuc3VwZXItaGVhZGluZy5zYXZpbmdzIHtcbiAgICBAaW5jbHVkZSBjb2xvci1zYXZpbmdzLXN1cGVyLWhlYWRpbmctbWl4aW5zLnRleHQ7XG4gIH1cblxuICAuc3VwZXItaGVhZGluZy5zdHVkZW50IHtcbiAgICBAaW5jbHVkZSBjb2xvci1zdHVkZW50LXN1cGVyLWhlYWRpbmctbWl4aW5zLnRleHQ7XG4gIH1cblxuICAuc3VwZXItaGVhZGluZy5pbnZlc3RtZW50cyB7XG4gICAgQGluY2x1ZGUgY29sb3ItaW52ZXN0bWVudHMtc3VwZXItaGVhZGluZy1taXhpbnMudGV4dDtcbiAgfVxuXG4gIC5zdXBlci1oZWFkaW5nLmNoZWNraW5nIHtcbiAgICBAaW5jbHVkZSBjb2xvci1jaGVja2luZy1zdXBlci1oZWFkaW5nLW1peGlucy50ZXh0O1xuICB9XG5cbiAgLnN1cGVyLWhlYWRpbmcuY3JlZGl0LWNhcmRzIHtcbiAgICBAaW5jbHVkZSBjb2xvci1jcmVkaXQtY2FyZHMtc3VwZXItaGVhZGluZy1taXhpbnMudGV4dDs7XG4gIH1cbn0iLCJcblxuXG5AbWl4aW4gdGV4dCAoXG4gICR0aGVtZVZhcjogZmFsc2VcbikgeyBcbiAgdGV4dC1hbGlnbjogTEVGVDtcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1jb25kZW5zZWQtZm9udCApO1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKTtcbiAgfVxuICBhbGlnbi1zZWxmOiBzdHJldGNoOyBcbn1cblxuQG1peGluIHNpemluZyB7XG4gIHdpZHRoOiA2MzZweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuXG5AbWl4aW4gd2lkdGgge1xuICB3aWR0aDogNjM2cHg7XG59XG5cbkBtaXhpbiBoZWlnaHQge1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbkBtaXhpbiBwYWRkaW5nIHtcbiAgcGFkZGluZy1sZWZ0OiBpbml0aWFsO1xuICBwYWRkaW5nLXJpZ2h0OiBpbml0aWFsO1xuICBwYWRkaW5nLXRvcDogaW5pdGlhbDtcbiAgcGFkZGluZy1ib3R0b206IGluaXRpYWw7XG59XG5cbkBtaXhpbiBhYnNvbHV0ZS1sYXlvdXQge1xuICAgXG59XG5cbkBtaXhpbiBodG1sLWF1dG9sYXlvdXQtbWFyZ2lucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIG1hcmdpbi10b3A6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAzMy44ICk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAxMS43ICk7XG59XG5cbkBtaXhpbiBodG1sLWF1dG9sYXlvdXQtcGFkZGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy10b3A6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAzMy44ICk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMTEuNyApO1xufSIsIlxuXG5cbkBtaXhpbiB0ZXh0IChcbiAgJHRoZW1lVmFyOiBmYWxzZVxuKSB7IFxuICB0ZXh0LWFsaWduOiBMRUZUO1xuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC1mb250ICk7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKTtcbiAgfVxuICBhbGlnbi1zZWxmOiBzdHJldGNoOyBcbn1cblxuQG1peGluIHNpemluZyB7XG4gIHdpZHRoOiA2MzZweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuXG5AbWl4aW4gd2lkdGgge1xuICB3aWR0aDogNjM2cHg7XG59XG5cbkBtaXhpbiBoZWlnaHQge1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbkBtaXhpbiBwYWRkaW5nIHtcbiAgcGFkZGluZy1sZWZ0OiBpbml0aWFsO1xuICBwYWRkaW5nLXJpZ2h0OiBpbml0aWFsO1xuICBwYWRkaW5nLXRvcDogaW5pdGlhbDtcbiAgcGFkZGluZy1ib3R0b206IGluaXRpYWw7XG59XG5cbkBtaXhpbiBhYnNvbHV0ZS1sYXlvdXQge1xuICAgXG59XG5cbkBtaXhpbiBodG1sLWF1dG9sYXlvdXQtbWFyZ2lucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIG1hcmdpbi10b3A6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAzMy44ICk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAxMS43ICk7XG59XG5cbkBtaXhpbiBodG1sLWF1dG9sYXlvdXQtcGFkZGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy10b3A6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAzMy44ICk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMTEuNyApO1xufSIsIlxuXG5cbkBtaXhpbiB0ZXh0IChcbiAgJHRoZW1lVmFyOiBmYWxzZVxuKSB7IFxuICB0ZXh0LWFsaWduOiBMRUZUO1xuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC1mb250ICk7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKTtcbiAgfVxuICBhbGlnbi1zZWxmOiBzdHJldGNoOyBcbn1cblxuQG1peGluIHNpemluZyB7XG4gIHdpZHRoOiA2MzZweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuXG5AbWl4aW4gd2lkdGgge1xuICB3aWR0aDogNjM2cHg7XG59XG5cbkBtaXhpbiBoZWlnaHQge1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbkBtaXhpbiBwYWRkaW5nIHtcbiAgcGFkZGluZy1sZWZ0OiBpbml0aWFsO1xuICBwYWRkaW5nLXJpZ2h0OiBpbml0aWFsO1xuICBwYWRkaW5nLXRvcDogaW5pdGlhbDtcbiAgcGFkZGluZy1ib3R0b206IGluaXRpYWw7XG59XG5cbkBtaXhpbiBhYnNvbHV0ZS1sYXlvdXQge1xuICAgXG59XG5cbkBtaXhpbiBodG1sLWF1dG9sYXlvdXQtbWFyZ2lucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIG1hcmdpbi10b3A6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAzMS44ICk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAxMy43ICk7XG59XG5cbkBtaXhpbiBodG1sLWF1dG9sYXlvdXQtcGFkZGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy10b3A6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAzMS44ICk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMTMuNyApO1xufSIsIlxuXG5cbkBtaXhpbiB0ZXh0IChcbiAgJHRoZW1lVmFyOiBmYWxzZVxuKSB7IFxuICB0ZXh0LWFsaWduOiBMRUZUO1xuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC1mb250ICk7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApO1xuICB9XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7IFxufVxuXG5AbWl4aW4gc2l6aW5nIHtcbiAgd2lkdGg6IDYzNnB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbkBtaXhpbiB3aWR0aCB7XG4gIHdpZHRoOiA2MzZweDtcbn1cblxuQG1peGluIGhlaWdodCB7XG4gIGhlaWdodDogMjRweDtcbn1cblxuQG1peGluIHBhZGRpbmcge1xuICBwYWRkaW5nLWxlZnQ6IGluaXRpYWw7XG4gIHBhZGRpbmctcmlnaHQ6IGluaXRpYWw7XG4gIHBhZGRpbmctdG9wOiBpbml0aWFsO1xuICBwYWRkaW5nLWJvdHRvbTogaW5pdGlhbDtcbn1cblxuQG1peGluIGFic29sdXRlLWxheW91dCB7XG4gICBcbn1cblxuQG1peGluIGh0bWwtYXV0b2xheW91dC1tYXJnaW5zIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgbWFyZ2luLXRvcDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDMzLjggKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDExLjcgKTtcbn1cblxuQG1peGluIGh0bWwtYXV0b2xheW91dC1wYWRkaW5nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLXRvcDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDMzLjggKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAxMS43ICk7XG59IiwiXG5cblxuQG1peGluIHRleHQgKFxuICAkdGhlbWVWYXI6IGZhbHNlXG4pIHsgXG4gIHRleHQtYWxpZ246IExFRlQ7XG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtY29uZGVuc2VkLWZvbnQgKTtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICk7XG4gIH1cbiAgYWxpZ24tc2VsZjogc3RyZXRjaDsgXG59XG5cbkBtaXhpbiBzaXppbmcge1xuICB3aWR0aDogNjM2cHg7XG4gIGhlaWdodDogMjRweDtcbn1cblxuQG1peGluIHdpZHRoIHtcbiAgd2lkdGg6IDYzNnB4O1xufVxuXG5AbWl4aW4gaGVpZ2h0IHtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuXG5AbWl4aW4gcGFkZGluZyB7XG4gIHBhZGRpbmctbGVmdDogaW5pdGlhbDtcbiAgcGFkZGluZy1yaWdodDogaW5pdGlhbDtcbiAgcGFkZGluZy10b3A6IGluaXRpYWw7XG4gIHBhZGRpbmctYm90dG9tOiBpbml0aWFsO1xufVxuXG5AbWl4aW4gYWJzb2x1dGUtbGF5b3V0IHtcbiAgIFxufVxuXG5AbWl4aW4gaHRtbC1hdXRvbGF5b3V0LW1hcmdpbnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xuICBtYXJnaW4tdG9wOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMzMuOCApO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMTEuNyApO1xufVxuXG5AbWl4aW4gaHRtbC1hdXRvbGF5b3V0LXBhZGRpbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMzMuOCApO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDExLjcgKTtcbn0iLCJcblxuXG5AbWl4aW4gdGV4dCAoXG4gICR0aGVtZVZhcjogZmFsc2VcbikgeyBcbiAgdGV4dC1hbGlnbjogTEVGVDtcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1jb25kZW5zZWQtZm9udCApO1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApO1xuICB9XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7IFxufVxuXG5AbWl4aW4gc2l6aW5nIHtcbiAgd2lkdGg6IDYzNnB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbkBtaXhpbiB3aWR0aCB7XG4gIHdpZHRoOiA2MzZweDtcbn1cblxuQG1peGluIGhlaWdodCB7XG4gIGhlaWdodDogMjRweDtcbn1cblxuQG1peGluIHBhZGRpbmcge1xuICBwYWRkaW5nLWxlZnQ6IGluaXRpYWw7XG4gIHBhZGRpbmctcmlnaHQ6IGluaXRpYWw7XG4gIHBhZGRpbmctdG9wOiBpbml0aWFsO1xuICBwYWRkaW5nLWJvdHRvbTogaW5pdGlhbDtcbn1cblxuQG1peGluIGFic29sdXRlLWxheW91dCB7XG4gICBcbn1cblxuQG1peGluIGh0bWwtYXV0b2xheW91dC1tYXJnaW5zIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgbWFyZ2luLXRvcDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDMzLjggKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDExLjcgKTtcbn1cblxuQG1peGluIGh0bWwtYXV0b2xheW91dC1wYWRkaW5nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLXRvcDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDMzLjggKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAxMS43ICk7XG59IiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuQHVzZSBcIi4uLy4uLy4uL2Rpc3QvdG9rZW5zL3NvdXJjZS9jc3NBcGlcIiBhcyBjc3NBUGk7XG5AdXNlICcuLi8uLi9zY3ctY29tcG9uZW50L3Njc3Mvc2N3LWNvbXBvbmVudCc7XG5AdXNlIFwiY29tcC1zY3ctY2FyZC9kZWZhdWx0LW1peGluc1wiIGFzIGRlZmF1bHQtbWl4aW5zO1xuQHVzZSBcImNvbXAtc2N3LWNhcmQvZGVmYXVsdC1pbWFnZS1taXhpbnNcIiBhcyBkZWZhdWx0LWltYWdlLW1peGlucztcbkB1c2UgXCJjb21wLXNjdy1jYXJkL2RlZmF1bHQtaW1hZ2UtdmFyc1wiIGFzIGRlZmF1bHQtaW1hZ2UtdmFycztcbkB1c2UgXCJjb21wLXNjdy1jYXJkL2RlZmF1bHQtaGVhZGluZy1taXhpbnNcIiBhcyBkZWZhdWx0LWhlYWRpbmctbWl4aW5zO1xuQHVzZSBcImNvbXAtc2N3LWNhcmQvZGVmYXVsdC1kZXNjcmlwdGlvbi1taXhpbnNcIiBhcyBkZWZhdWx0LWRlc2NyaXB0aW9uLW1peGlucztcbkB1c2UgXCJjb21wLXNjdy1jYXJkL2RlZmF1bHQtYWN0aW9uLW1peGluc1wiIGFzIGRlZmF1bHQtYWN0aW9uLW1peGlucztcbkB1c2UgXCJjb21wLXNjdy1jYXJkL2RlZmF1bHQtc3VwZXItaGVhZGluZy1taXhpbnNcIiBhcyBkZWZhdWx0LXN1cGVyLWhlYWRpbmctbWl4aW5zO1xuQHVzZSAnLi9zY3ctY2FyZC1tZWRpdW0nO1xuQHVzZSAnLi9zY3ctY2FyZC1zbWFsbCc7XG5AdXNlICcuL3Njdy1jYXJkLWNvbG9ycyc7XG5AdXNlICcuLi8uLi91dGlscy90aGVtZXMvdGhlbWVWYXJzLnNjc3MnIGFzIHRoZW1lO1xuXG46aG9zdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBkZWZhdWx0LW1peGlucy5ib3godGhlbWUuJGNvbG9yLWJhc2UpO1xuICBAaW5jbHVkZSBkZWZhdWx0LW1peGlucy5maWdtYS1hdXRvbGF5b3V0O1xuICAvLyBtYXgtd2lkdGg6IDYwMHB4O1xuICBcblxuICAuaW1hZ2UtYm94IHtcbiAgICAvLyB3aWR0aDogMTAwJTtcbiAgICAvLyBwYWRkaW5nLWJvdHRvbTogI3sgcGVyY2VudGFnZSggbWF0aC5kaXYoZGVmYXVsdC1pbWFnZS12YXJzLiRoZWlnaHQsIGRlZmF1bHQtaW1hZ2UtdmFycy4kd2lkdGgpICkgfTtcbiAgICAvLyBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgZGVmYXVsdC1pbWFnZS1taXhpbnMuYm94KHRoZW1lLiRjb2xvci1iYXNlKTtcbiAgICBmbGV4OiBpbml0aWFsO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiBkZWZhdWx0LWltYWdlLXZhcnMuJGhlaWdodDtcbiAgfVxuXG4gICAgLyouaW1hZ2Uge1xuICAgICAgQGluY2x1ZGUgZGVmYXVsdC1pbWFnZS1taXhpbnMuYm94O1xuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBpbnNldDogMDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgfSovXG5cbiAgLmhlYWRpbmcge1xuICAgIEBpbmNsdWRlIGRlZmF1bHQtaGVhZGluZy1taXhpbnMuYm94KCk7XG4gIH1cblxuICAuc3VwZXItaGVhZGluZyB7XG4gICAgQGluY2x1ZGUgZGVmYXVsdC1zdXBlci1oZWFkaW5nLW1peGlucy50ZXh0KHRoZW1lLiRjb2xvci1iYXNlKTtcbiAgfVxuXG4gIC5kZXNjcmlwdGlvbiB7XG4gICAgQGluY2x1ZGUgZGVmYXVsdC1kZXNjcmlwdGlvbi1taXhpbnMudGV4dCh0aGVtZS4kY29sb3ItYmFzZSk7XG4gIH1cblxuICAuYWN0aW9uIHtcbiAgICAvLyBAaW5jbHVkZSBkZWZhdWx0LWFjdGlvbi1taXhpbnMuYm94O1xuICAgIEBpbmNsdWRlIGRlZmF1bHQtYWN0aW9uLW1peGlucy5zaXppbmc7XG4gIH1cbn1cblxuOmhvc3QoW2FjdGlvbj1ub25lXSkge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuOmhvc3QoW2FjdGlvbj13aG9sZV0pIHtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbn1cbjpob3N0KFthY3Rpb249d2hvbGVdOmhvdmVyKSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbjpob3N0KFthY3Rpb249d2hvbGVdOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgQGluY2x1ZGUgY3NzQVBpLnNjdy1lZmZlY3QtZm9jdXM7XG4gIGJvcmRlci1yYWRpdXM6IFxuICAgIGRlZmF1bHQtaW1hZ2UtdmFycy4kY29ybmVyLXJhZGl1cy10b3AtbGVmdFxuICAgIGRlZmF1bHQtaW1hZ2UtdmFycy4kY29ybmVyLXJhZGl1cy10b3AtcmlnaHRcbiAgICA0cHhcbiAgICA0cHggO1xufVxuXG46aG9zdChbYWN0aW9uPWxpbmtdKSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBzY3ctbGluayB7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgfVxufVxuIiwiXG5cblxuQG1peGluIGJveCAoXG4gICRiZ1RoZW1lVmFyOiBmYWxzZSwgXG4gICRib3JkZXJUaGVtZVZhcjogZmFsc2VcbikgeyBcbiAgQGlmICRiZ1RoZW1lVmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JGJnVGhlbWVWYXJ9ICwgcmdiYSgwLDAsMCwwKSApO1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuICB9IFxufVxuXG5AbWl4aW4gc2l6aW5nIHtcbiAgd2lkdGg6IDYzNnB4O1xuICBoZWlnaHQ6IDQ3OXB4O1xufVxuXG5AbWl4aW4gd2lkdGgge1xuICB3aWR0aDogNjM2cHg7XG59XG5cbkBtaXhpbiBoZWlnaHQge1xuICBoZWlnaHQ6IDQ3OXB4O1xufVxuXG5AbWl4aW4gcGFkZGluZyB7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwcHg7XG59XG5cbkBtaXhpbiBmaWdtYS1hdXRvbGF5b3V0IHsgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgJiA+ICo6bm90KDpsYXN0LWNoaWxkKSB7IFxuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMC44ICk7IFxuICAgICAgICAtLW1hcmdpbi1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAwLjggKTsgXG4gICAgICB9IFxufVxuXG5AbWl4aW4gYWJzb2x1dGUtbGF5b3V0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICB3aWR0aDogNjM2cHg7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgaGVpZ2h0OiA0NzlweDsgXG59XG5cbkBtaXhpbiBodG1sLWF1dG9sYXlvdXQtbWFyZ2lucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gIG1hcmdpbi1yaWdodDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDcyLjggKTtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDM2MC41ICk7XG59XG5cbkBtaXhpbiBodG1sLWF1dG9sYXlvdXQtcGFkZGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogNzIuOCApO1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAzNjAuNSApO1xufSIsIlxuXG5cbkBtaXhpbiBib3ggKFxuICAkYmdUaGVtZVZhcjogZmFsc2UsIFxuICAkYm9yZGVyVGhlbWVWYXI6IGZhbHNlXG4pIHsgXG4gIEBpZiAkYmdUaGVtZVZhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyRiZ1RoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApO1xuICB9XG4gIGJvcmRlci1yYWRpdXM6IDEwcHggMTBweCAxMHB4IDEwcHg7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIGZsZXg6IDE7IFxufVxuXG5AbWl4aW4gc2l6aW5nIHtcbiAgd2lkdGg6IDYzNnB4O1xuICBoZWlnaHQ6IDMzMHB4O1xufVxuXG5AbWl4aW4gd2lkdGgge1xuICB3aWR0aDogNjM2cHg7XG59XG5cbkBtaXhpbiBoZWlnaHQge1xuICBoZWlnaHQ6IDMzMHB4O1xufVxuXG5AbWl4aW4gcGFkZGluZyB7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwcHg7XG59XG5cbkBtaXhpbiBmaWdtYS1hdXRvbGF5b3V0IHsgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgJiA+ICo6bm90KDpsYXN0LWNoaWxkKSB7IFxuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMC44ICk7IFxuICAgICAgICAtLW1hcmdpbi1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAwLjggKTsgXG4gICAgICB9IFxufVxuXG5AbWl4aW4gYWJzb2x1dGUtbGF5b3V0IHtcbiAgIFxufVxuXG5AbWl4aW4gaHRtbC1hdXRvbGF5b3V0LW1hcmdpbnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAxNC45ICk7XG59XG5cbkBtaXhpbiBodG1sLWF1dG9sYXlvdXQtcGFkZGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAxNC45ICk7XG59IiwiXG5cbiRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKTtcbiRibGVuZC1tb2RlOiBOT1JNQUw7XG4kY29ybmVyLXJhZGl1cy10b3AtbGVmdDogMTBweDtcbiRjb3JuZXItcmFkaXVzLXRvcC1yaWdodDogMTBweDtcbiRjb3JuZXItcmFkaXVzLWJvdHRvbS1yaWdodDogMTBweDtcbiRjb3JuZXItcmFkaXVzLWJvdHRvbS1sZWZ0OiAxMHB4O1xuJHdpZHRoOiA2MzZweDtcbiRoZWlnaHQ6IDMzMHB4O1xuJGNvbnN0cmFpbnQtaG9yaXpvbnRhbDogTUlOO1xuJGNvbnN0cmFpbnQtdmVydGljYWw6IE1JTjtcbiRjb25zdHJhaW4tcHJvcG9ydGlvbnM6IGZhbHNlO1xuJGxheW91dC1jb250ZXh0OiBGTEVYO1xuJGxheW91dC1tb2RlOiBWRVJUSUNBTDtcbiRwcmltYXJ5LWF4aXMtYWxpZ24taXRlbXM6IE1JTjtcbiRjb3VudGVyLWF4aXMtYWxpZ24taXRlbXM6IE1JTjtcbiRpdGVtLXNwYWNpbmc6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAwLjggKTtcbiRsYXlvdXQtYWxpZ246IFNUUkVUQ0g7XG4kbGF5b3V0LWdyb3c6IDE7XG4kdG9wOiAwcHg7XG4kdG9wLXBlcmNlbnQ6IDM0LjQ1JTtcbiRib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAxNC45ICk7XG4kbGVmdDogMHB4O1xuJGxlZnQtcGVyY2VudDogNTAlO1xuJHJpZ2h0OiAwcHg7XG4kcGFkZGluZy1sZWZ0OiAwcHg7XG4kcGFkZGluZy1yaWdodDogMHB4O1xuJHBhZGRpbmctdG9wOiAwcHg7XG4kcGFkZGluZy1ib3R0b206IDBweDtcbiRtYXJnaW4tYm90dG9tOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMC44ICk7IiwiXG5cblxuQG1peGluIGJveCAoXG4gICRiZ1RoZW1lVmFyOiBmYWxzZSwgXG4gICRib3JkZXJUaGVtZVZhcjogZmFsc2VcbikgeyBcbiAgQGlmICRiZ1RoZW1lVmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JGJnVGhlbWVWYXJ9ICwgcmdiYSgwLDAsMCwwKSApO1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuICB9XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7IFxufVxuXG5AbWl4aW4gc2l6aW5nIHtcbiAgd2lkdGg6IDYzNnB4O1xuICBoZWlnaHQ6IDI5cHg7XG59XG5cbkBtaXhpbiB3aWR0aCB7XG4gIHdpZHRoOiA2MzZweDtcbn1cblxuQG1peGluIGhlaWdodCB7XG4gIGhlaWdodDogMjlweDtcbn1cblxuQG1peGluIHBhZGRpbmcge1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLXRvcDogMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xufVxuXG5AbWl4aW4gZmlnbWEtYXV0b2xheW91dCB7IFxuICAgXG59XG5cbkBtaXhpbiBhYnNvbHV0ZS1sYXlvdXQge1xuICAgXG59XG5cbkBtaXhpbiBodG1sLWF1dG9sYXlvdXQtbWFyZ2lucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIG1hcmdpbi10b3A6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAzNyApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gaHRtbC1hdXRvbGF5b3V0LXBhZGRpbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogMzcgKTtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59IiwiXG5cblxuQG1peGluIHRleHQgKFxuICAkdGhlbWVWYXI6IGZhbHNlXG4pIHsgXG4gIHRleHQtYWxpZ246IExFRlQ7XG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtY29uZGVuc2VkLWZvbnQgKTtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApO1xuICB9XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7IFxufVxuXG5AbWl4aW4gc2l6aW5nIHtcbiAgd2lkdGg6IDYzNnB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbkBtaXhpbiB3aWR0aCB7XG4gIHdpZHRoOiA2MzZweDtcbn1cblxuQG1peGluIGhlaWdodCB7XG4gIGhlaWdodDogMjRweDtcbn1cblxuQG1peGluIHBhZGRpbmcge1xuICBwYWRkaW5nLWxlZnQ6IGluaXRpYWw7XG4gIHBhZGRpbmctcmlnaHQ6IGluaXRpYWw7XG4gIHBhZGRpbmctdG9wOiBpbml0aWFsO1xuICBwYWRkaW5nLWJvdHRvbTogaW5pdGlhbDtcbn1cblxuQG1peGluIGFic29sdXRlLWxheW91dCB7XG4gICBcbn1cblxuQG1peGluIGh0bWwtYXV0b2xheW91dC1tYXJnaW5zIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgbWFyZ2luLXRvcDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDMzLjggKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDExLjcgKTtcbn1cblxuQG1peGluIGh0bWwtYXV0b2xheW91dC1wYWRkaW5nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLXRvcDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDMzLjggKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAxMS43ICk7XG59IiwiXG5cblxuQG1peGluIHRleHQgKFxuICAkdGhlbWVWYXI6IGZhbHNlXG4pIHsgXG4gIHRleHQtYWxpZ246IExFRlQ7XG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LTA2LWZvbnQgKTtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApO1xuICB9XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7IFxufVxuXG5AbWl4aW4gc2l6aW5nIHtcbiAgd2lkdGg6IDYzNnB4O1xuICBoZWlnaHQ6IDI3cHg7XG59XG5cbkBtaXhpbiB3aWR0aCB7XG4gIHdpZHRoOiA2MzZweDtcbn1cblxuQG1peGluIGhlaWdodCB7XG4gIGhlaWdodDogMjdweDtcbn1cblxuQG1peGluIHBhZGRpbmcge1xuICBwYWRkaW5nLWxlZnQ6IGluaXRpYWw7XG4gIHBhZGRpbmctcmlnaHQ6IGluaXRpYWw7XG4gIHBhZGRpbmctdG9wOiBpbml0aWFsO1xuICBwYWRkaW5nLWJvdHRvbTogaW5pdGlhbDtcbn1cblxuQG1peGluIGFic29sdXRlLWxheW91dCB7XG4gICBcbn1cblxuQG1peGluIGh0bWwtYXV0b2xheW91dC1tYXJnaW5zIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgbWFyZ2luLXRvcDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDQwLjcgKTtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDQuNSApO1xufVxuXG5AbWl4aW4gaHRtbC1hdXRvbGF5b3V0LXBhZGRpbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogNDAuNyApO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDQuNSApO1xufSIsIlxuXG5cbkBtaXhpbiBib3ggKFxuICAkYmdUaGVtZVZhcjogZmFsc2UsIFxuICAkYm9yZGVyVGhlbWVWYXI6IGZhbHNlXG4pIHsgXG4gIEBpZiAkYmdUaGVtZVZhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyRiZ1RoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApO1xuICB9XG4gIGJvcmRlci1yYWRpdXM6IDZweCA2cHggNnB4IDZweDsgXG59XG5cbkBtaXhpbiBzaXppbmcge1xuICB3aWR0aDogODNweDtcbiAgaGVpZ2h0OiAzN3B4O1xufVxuXG5AbWl4aW4gd2lkdGgge1xuICB3aWR0aDogODNweDtcbn1cblxuQG1peGluIGhlaWdodCB7XG4gIGhlaWdodDogMzdweDtcbn1cblxuQG1peGluIHBhZGRpbmcge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAxLjYgKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDEuNiApO1xuICBwYWRkaW5nLXRvcDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDAuNSApO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDAuNSApO1xufVxuXG5AbWl4aW4gZmlnbWEtYXV0b2xheW91dCB7IFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAxLjYgKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDEuNiApO1xuICBwYWRkaW5nLXRvcDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDAuNSApO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDAuNSApO1xuICAmID4gKjpub3QoOmxhc3QtY2hpbGQpIHsgXG4gICAgICAgIG1hcmdpbi1yaWdodDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDAuNCApOyBcbiAgICAgICAgLS1tYXJnaW4tcmlnaHQ6IGNhbGMoIHZhciggLS1zY3ctc3BhY2luZy0xICkgKiAwLjQgKTsgXG4gICAgICB9IFxufVxuXG5AbWl4aW4gYWJzb2x1dGUtbGF5b3V0IHtcbiAgIFxufVxuXG5AbWl4aW4gaHRtbC1hdXRvbGF5b3V0LW1hcmdpbnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIG1hcmdpbi1yaWdodDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDU1LjMgKTtcbiAgbWFyZ2luLXRvcDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDQ0LjIgKTtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG5AbWl4aW4gaHRtbC1hdXRvbGF5b3V0LXBhZGRpbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCB2YXIoIC0tc2N3LXNwYWNpbmctMSApICogNTUuMyApO1xuICBwYWRkaW5nLXRvcDogY2FsYyggdmFyKCAtLXNjdy1zcGFjaW5nLTEgKSAqIDQ0LjIgKTtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbn0iXX0= */`;var I=class extends W{constructor(){super();this.preload=!1;this.size="large";this.action="none";this.element="card",this.clickHandler=this.clickHandler.bind(this);let b=X();this.headerNodeName=C(`scw-${"heading"}${b}`),this.imageNodeName=C(`scw-${"image"}${b}`),this.linkNodeName=C(`scw-${"link"}${b}`)}static get styles(){return[super.styles,A]}clickHandler(b){b.stopPropagation(),this.click()}warn(b){this.heading=`error: ${b}`,W.prototype.warn.call(this,b)}renderImage(){if((this.src||this.srcset)&&this.alt)return t`
217
+ <scw-image
218
+ class="image-box"
219
+ src="${G(this.src)}"
220
+ srcset="${G(this.srcset)}"
221
+ alt="${this.alt}"
222
+ preload="${G(this.preload?"true":void 0)}"
223
+ object-fit="cover">
224
+ </scw-image>
225
+ `}renderButton(){return this.action==="link"?t`
226
+ <scw-link
227
+ aria-label="${this.linkLabel?this.linkLabel:"no label"}"
228
+ @click="${this.clickHandler}">
229
+ </scw-link>`:null}getSizeStringForHeader(){switch(this.size){case"large":return"h1";case"medium":return"h2";case"small":return"h3"}}renderBody(){return t`
230
+ ${this.renderImage()}
231
+ ${this.superHeading?t`
232
+ <div class="super-heading">
233
+ ${this.superHeading}
234
+ </div>`:""}
235
+ <scw-heading
236
+ style="--scw-color-04: var( --scw-color-grey-02 );"
237
+ dynamic class="heading"
238
+ aria-label="${G(this.heading)}"
239
+ size="${this.getSizeStringForHeader()}">
240
+ </scw-heading>
241
+ ${this.description?t`
242
+ <div class="description">
243
+ ${this.description}
244
+ </div>`:""}`}render(){return this.action==="whole"?this.renderBody():t`
245
+ ${this.renderBody()}
246
+ ${this.renderButton()}`}};g([c()],I.prototype,"src",2),g([c()],I.prototype,"srcset",2),g([c()],I.prototype,"alt",2),g([c()],I.prototype,"heading",2),g([c()],I.prototype,"superHeading",2),g([c()],I.prototype,"description",2),g([c()],I.prototype,"linkLabel",2),g([c({type:Boolean})],I.prototype,"preload",2),g([c({type:String,reflect:!0})],I.prototype,"size",2),g([c({type:String,reflect:!0})],I.prototype,"action",2);export{I as a};
247
+ //# sourceMappingURL=chunk.IFZE7CTS.js.map