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,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/scw-link-base/scss/scw-link-base.scss", "../../src/scw-link-base/ScwLinkBase.ts"],
4
+ "sourcesContent": ["import {css} from \"lit-element/lit-element.js\";\nexport default css`\n.scw-link-base {\n display: block;\n text-decoration: none;\n}\n.scw-link-base:focus-visible {\n outline: none;\n box-shadow: var(--scw-effect-focus-shadow);\n border-radius: 4px;\n}\n.scw-link-base:focus:not(:focus-visible) {\n outline: none;\n box-shadow: none;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL1VzZXJzL3Njb3R0cm91c2UvV29ya3NwYWNlL3NjdS13ZWItY29tcG9uZW50cy13ZWJzaXRlcy9zY3Utd2ViLWNvbXBvbmVudHMtd2Vic2l0ZXMvc3JjL3Njdy1saW5rLWJhc2Uvc2NzcyIsInNvdXJjZXMiOlsic2N3LWxpbmstYmFzZS5zY3NzIiwiLi4vLi4vLi4vZGlzdC90b2tlbnMvc291cmNlL2Nzc0FwaS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBO0VBQ0U7RUFDQTs7QUFFQTtFQUNFO0VDazRiRjtFRDkzYkU7O0FBR0Y7RUFDRTtFQUNBIiwic291cmNlc0NvbnRlbnQiOlsiQHVzZSBcIi4uLy4uLy4uL2Rpc3QvdG9rZW5zL3NvdXJjZS9jc3NBcGkuc2Nzc1wiIGFzIHNkcztcblxuXG4uc2N3LWxpbmstYmFzZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIC8vIHVzaW5nIGJveC1zaGFkb3cgc28gRFN5cyBjYW4gY29udHJvbCBsb29rXG4gICAgLy8gaHR0cHM6Ly9qb3lvZmNvZGUueHl6L2Nzcy1mb2N1cy1vdXRsaW5lXG4gICAgQGluY2x1ZGUgc2RzLnNjdy1lZmZlY3QtZm9jdXM7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICB9XG5cbiAgJjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cbiIsIlxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXByaW1hcnktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wcmltYXJ5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wcmltYXJ5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXByaW1hcnktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wcmltYXJ5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wcmltYXJ5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcHJpbWFyeS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXByaW1hcnktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcHJpbWFyeS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wcmltYXJ5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wcmltYXJ5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcHJpbWFyeS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcHJpbWFyeS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wcmltYXJ5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcHJpbWFyeS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcHJpbWFyeS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXByaW1hcnktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wcmltYXJ5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXByaW1hcnktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcHJpbWFyeS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcHJpbWFyeS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXByaW1hcnktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXByaW1hcnktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcHJpbWFyeS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXByaW1hcnktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXByaW1hcnktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wcmltYXJ5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcHJpbWFyeS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wcmltYXJ5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXByaW1hcnktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXByaW1hcnktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wcmltYXJ5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wcmltYXJ5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXByaW1hcnktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wcmltYXJ5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wcmltYXJ5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcHJpbWFyeS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXByaW1hcnktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcHJpbWFyeS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wcmltYXJ5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wcmltYXJ5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcHJpbWFyeS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcHJpbWFyeS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wcmltYXJ5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcHJpbWFyeS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcHJpbWFyeS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXByaW1hcnktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wcmltYXJ5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXByaW1hcnktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcHJpbWFyeS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcHJpbWFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXByaW1hcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXByaW1hcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcHJpbWFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXByaW1hcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXByaW1hcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wcmltYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcHJpbWFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wcmltYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXByaW1hcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXByaW1hcnktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wcmltYXJ5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wcmltYXJ5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXByaW1hcnktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wcmltYXJ5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wcmltYXJ5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcHJpbWFyeS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXByaW1hcnktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcHJpbWFyeS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wcmltYXJ5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wcmltYXJ5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcHJpbWFyeS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcHJpbWFyeS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wcmltYXJ5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcHJpbWFyeS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcHJpbWFyeS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXByaW1hcnktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wcmltYXJ5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXByaW1hcnktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcHJpbWFyeS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcHJpbWFyeS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXByaW1hcnktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXByaW1hcnktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcHJpbWFyeS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXByaW1hcnktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXByaW1hcnktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wcmltYXJ5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcHJpbWFyeS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wcmltYXJ5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXByaW1hcnktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXByaW1hcnktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wcmltYXJ5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wcmltYXJ5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXByaW1hcnktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wcmltYXJ5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wcmltYXJ5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcHJpbWFyeS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXByaW1hcnktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcHJpbWFyeS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wcmltYXJ5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wcmltYXJ5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXByaW1hcnktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wcmltYXJ5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wcmltYXJ5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXByaW1hcnktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wcmltYXJ5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXByaW1hcnktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcHJpbWFyeS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcHJpbWFyeS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcHJpbWFyeS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXByaW1hcnktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcHJpbWFyeS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXByaW1hcnktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXByaW1hcnktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcHJpbWFyeS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXByaW1hcnktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcHJpbWFyeS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wcmltYXJ5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wcmltYXJ5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXByaW1hcnktMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wcmltYXJ5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcHJpbWFyeS0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wcmltYXJ5LTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleS0wMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXktMDAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXktMDAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleS0wMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXktMDAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXktMDAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5LTAwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleS0wMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5LTAwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAwICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXktMDAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDAgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXktMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXktMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXktMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXktMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXktMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZ3JleSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZ3JleSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZ3JleSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZ3JleSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXktMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZ3JleS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZ3JleS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWdyZXktMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXktMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ncmV5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1ncmV5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWdyZXktMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ncmV5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1ncmV5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ncmV5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1ncmV5LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWdyZXktMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZ3JleS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZ3JleS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZ3JleS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWdyZXktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZ3JleS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXktMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZ3JleS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1ncmV5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1ncmV5LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZ3JleS0xMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTEwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWdyZXktMTAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMTAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWdyZXktMTAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0xMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZ3JleS0xMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMTAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWdyZXktMTAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0xMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWdyZXktMTAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0xMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1ncmV5LTEwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTEwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtZ3JleS0xMCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMTAgLCB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1ncmV5LTEwICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTEwICwgdmFyKCAtLXNjdy1jb2xvci1ncmV5LTEwICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWdyZXktMTAgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0xMCAsIHZhciggLS1zY3ctY29sb3ItZ3JleS0xMCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWdyZXktMTAgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWVycm9yICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvciApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1lcnJvciAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvciApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1lcnJvciAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWVycm9yICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1lcnJvciAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1lcnJvciAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtZXJyb3IgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWVycm9yICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItZXJyb3IgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZXJyb3IgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1lcnJvciAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvciApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1lcnJvci1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZXJyb3ItbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItZXJyb3ItbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1lcnJvci1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZXJyb3ItbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tZXJyb3ItbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWVycm9yLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1lcnJvci1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWVycm9yLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItZXJyb3ItbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItbGlnaHQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvci1saWdodCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItZXJyb3ItZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItZXJyb3ItZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1lcnJvci1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItZXJyb3ItZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtZXJyb3ItZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1lcnJvci1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1lcnJvci1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1lcnJvci1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItZXJyb3ItZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWVycm9yLWRhcmsgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWVycm9yLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1lcnJvci1kYXJrICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItZXJyb3ItZGFyayApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itd2FybmluZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXdhcm5pbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXdhcm5pbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItd2FybmluZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXdhcm5pbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXdhcm5pbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC13YXJuaW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtd2FybmluZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci13YXJuaW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXdhcm5pbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXdhcm5pbmctbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci13YXJuaW5nLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXdhcm5pbmctbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC13YXJuaW5nLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS13YXJuaW5nLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtd2FybmluZy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXdhcm5pbmctbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItd2FybmluZy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1saWdodCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci13YXJuaW5nLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctbGlnaHQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWxpZ2h0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci13YXJuaW5nLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci13YXJuaW5nLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXdhcm5pbmctZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci13YXJuaW5nLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC13YXJuaW5nLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXdhcm5pbmctZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXdhcm5pbmctZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci13YXJuaW5nLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXdhcm5pbmctZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci13YXJuaW5nLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXdhcm5pbmctZGFyayApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItd2FybmluZy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itd2FybmluZy1kYXJrICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdWNjZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3VjY2VzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3VjY2VzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdWNjZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3VjY2VzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3VjY2VzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN1Y2Nlc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdWNjZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN1Y2Nlc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3VjY2VzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2VzcyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3VjY2Vzcy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3VjY2Vzcy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN1Y2Nlc3MtbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN1Y2Nlc3MtbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdWNjZXNzLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3VjY2Vzcy1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdWNjZXNzLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWxpZ2h0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN1Y2Nlc3MtbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1saWdodCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtbGlnaHQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN1Y2Nlc3MtZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3VjY2Vzcy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN1Y2Nlc3MtZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN1Y2Nlc3MtZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3VjY2Vzcy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3VjY2Vzcy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLXN1Y2Nlc3MtZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3VjY2Vzcy1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN1Y2Nlc3MtZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3VjY2Vzcy1kYXJrICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdWNjZXNzLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdWNjZXNzLWRhcmsgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWluZm9ybWF0aW9uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbmZvcm1hdGlvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbmZvcm1hdGlvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWluZm9ybWF0aW9uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbmZvcm1hdGlvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbmZvcm1hdGlvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW5mb3JtYXRpb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWluZm9ybWF0aW9uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24gKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW5mb3JtYXRpb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbmZvcm1hdGlvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbmZvcm1hdGlvbi1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbmZvcm1hdGlvbi1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW5mb3JtYXRpb24tbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW5mb3JtYXRpb24tbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWluZm9ybWF0aW9uLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbmZvcm1hdGlvbi1saWdodCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tbGlnaHQgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWxpZ2h0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWluZm9ybWF0aW9uLWxpZ2h0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWxpZ2h0ICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW5mb3JtYXRpb24tbGlnaHQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1saWdodCAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tbGlnaHQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1saWdodCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW5mb3JtYXRpb24tZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW5mb3JtYXRpb24tZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW5mb3JtYXRpb24tZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbmZvcm1hdGlvbi1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tZGFyayAsIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbmZvcm1hdGlvbi1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LWRhcmsgLCB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbmZvcm1hdGlvbi1kYXJrICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW5mb3JtYXRpb24tZGFyayAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWluZm9ybWF0aW9uLWRhcmsgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWluZm9ybWF0aW9uLWRhcmsgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS1kYXJrICwgdmFyKCAtLXNjdy1jb2xvci1pbmZvcm1hdGlvbi1kYXJrICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW5mb3JtYXRpb24tZGFyayApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaWNvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pY29uICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pY29uICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWljb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWljb24gKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pY29uICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWljb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaWNvbiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pY29uICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaWNvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWljb24gKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pY29uICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWljb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaWNvbiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pY29uICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWljb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaWNvbiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pY29uICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pY29uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pY29uICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pY29uICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaWNvbiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWljb24gKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pY29uICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pY29uICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pY29uICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWljb24gKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWljb24gKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaWNvbiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWljb24gKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXNlY29uZGFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zZWNvbmRhcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zZWNvbmRhcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXNlY29uZGFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zZWNvbmRhcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zZWNvbmRhcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc2Vjb25kYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXNlY29uZGFyeSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNlY29uZGFyeSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc2Vjb25kYXJ5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zZWNvbmRhcnkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zZWNvbmRhcnkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2Vjb25kYXJ5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1tb3J0Z2FnZS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItbW9ydGdhZ2UtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItbW9ydGdhZ2UtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1tb3J0Z2FnZS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtbW9ydGdhZ2UtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tbW9ydGdhZ2UtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LW1vcnRnYWdlLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1tb3J0Z2FnZS0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLW1vcnRnYWdlLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItbW9ydGdhZ2UtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItbW9ydGdhZ2UtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLW1vcnRnYWdlLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLW1vcnRnYWdlLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbW9ydGdhZ2UtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLW1vcnRnYWdlLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLW1vcnRnYWdlLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1tb3J0Z2FnZS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtbW9ydGdhZ2UtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLW1vcnRnYWdlLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLW1vcnRnYWdlLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1tb3J0Z2FnZS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1tb3J0Z2FnZS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLW1vcnRnYWdlLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1tb3J0Z2FnZS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1tb3J0Z2FnZS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtbW9ydGdhZ2UtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LW1vcnRnYWdlLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItbW9ydGdhZ2UtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1tb3J0Z2FnZS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItbW9ydGdhZ2UtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItbW9ydGdhZ2UtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1tb3J0Z2FnZS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtbW9ydGdhZ2UtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tbW9ydGdhZ2UtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LW1vcnRnYWdlLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1tb3J0Z2FnZS0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItbW9ydGdhZ2UtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItbW9ydGdhZ2UtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLW1vcnRnYWdlLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbW9ydGdhZ2UtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLW1vcnRnYWdlLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLW1vcnRnYWdlLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1tb3J0Z2FnZS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtbW9ydGdhZ2UtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLW1vcnRnYWdlICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1tb3J0Z2FnZSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1tb3J0Z2FnZSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLW1vcnRnYWdlICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1tb3J0Z2FnZSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1tb3J0Z2FnZSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtbW9ydGdhZ2UgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LW1vcnRnYWdlICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItbW9ydGdhZ2UgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1tb3J0Z2FnZSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1tb3J0Z2FnZS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItbW9ydGdhZ2UtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItbW9ydGdhZ2UtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1tb3J0Z2FnZS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtbW9ydGdhZ2UtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tbW9ydGdhZ2UtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LW1vcnRnYWdlLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1tb3J0Z2FnZS0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItbW9ydGdhZ2UtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItbW9ydGdhZ2UtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLW1vcnRnYWdlLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbW9ydGdhZ2UtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLW1vcnRnYWdlLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLW1vcnRnYWdlLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1tb3J0Z2FnZS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtbW9ydGdhZ2UtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLW1vcnRnYWdlLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1tb3J0Z2FnZS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1tb3J0Z2FnZS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLW1vcnRnYWdlLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1tb3J0Z2FnZS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1tb3J0Z2FnZS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtbW9ydGdhZ2UtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LW1vcnRnYWdlLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItbW9ydGdhZ2UtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1tb3J0Z2FnZS0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1tb3J0Z2FnZS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItbW9ydGdhZ2UtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItbW9ydGdhZ2UtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1tb3J0Z2FnZS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtbW9ydGdhZ2UtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tbW9ydGdhZ2UtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LW1vcnRnYWdlLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1tb3J0Z2FnZS0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItbW9ydGdhZ2UtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItbW9ydGdhZ2UtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItbW9ydGdhZ2UtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbW9ydGdhZ2UtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1tb3J0Z2FnZS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tbW9ydGdhZ2UtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1tb3J0Z2FnZS0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LW1vcnRnYWdlLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLW1vcnRnYWdlLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1tb3J0Z2FnZS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1tb3J0Z2FnZS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1tb3J0Z2FnZS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLW1vcnRnYWdlLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1tb3J0Z2FnZS0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LW1vcnRnYWdlLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtbW9ydGdhZ2UtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItbW9ydGdhZ2UtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItbW9ydGdhZ2UtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLW1vcnRnYWdlLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItbW9ydGdhZ2UtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1tb3J0Z2FnZS0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWludmVzdG1lbnRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbnZlc3RtZW50cy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWludmVzdG1lbnRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbnZlc3RtZW50cy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbnZlc3RtZW50cy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW52ZXN0bWVudHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWludmVzdG1lbnRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbnZlc3RtZW50cy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW52ZXN0bWVudHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbnZlc3RtZW50cy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW52ZXN0bWVudHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW52ZXN0bWVudHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWludmVzdG1lbnRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbnZlc3RtZW50cy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW52ZXN0bWVudHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWludmVzdG1lbnRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW52ZXN0bWVudHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWludmVzdG1lbnRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWludmVzdG1lbnRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbnZlc3RtZW50cy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW52ZXN0bWVudHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWludmVzdG1lbnRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbnZlc3RtZW50cy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWludmVzdG1lbnRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbnZlc3RtZW50cy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbnZlc3RtZW50cy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW52ZXN0bWVudHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWludmVzdG1lbnRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbnZlc3RtZW50cy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW52ZXN0bWVudHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbnZlc3RtZW50cy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW52ZXN0bWVudHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW52ZXN0bWVudHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWludmVzdG1lbnRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbnZlc3RtZW50cy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW52ZXN0bWVudHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWludmVzdG1lbnRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWludmVzdG1lbnRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW52ZXN0bWVudHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWludmVzdG1lbnRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWludmVzdG1lbnRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbnZlc3RtZW50cyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW52ZXN0bWVudHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbnZlc3RtZW50cyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWludmVzdG1lbnRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWludmVzdG1lbnRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbnZlc3RtZW50cy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWludmVzdG1lbnRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbnZlc3RtZW50cy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbnZlc3RtZW50cy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW52ZXN0bWVudHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWludmVzdG1lbnRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbnZlc3RtZW50cy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaW52ZXN0bWVudHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbnZlc3RtZW50cy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW52ZXN0bWVudHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taW52ZXN0bWVudHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWludmVzdG1lbnRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbnZlc3RtZW50cy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaW52ZXN0bWVudHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWludmVzdG1lbnRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaW52ZXN0bWVudHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWludmVzdG1lbnRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWludmVzdG1lbnRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1pbnZlc3RtZW50cy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW52ZXN0bWVudHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWludmVzdG1lbnRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWludmVzdG1lbnRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbnZlc3RtZW50cy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWludmVzdG1lbnRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1pbnZlc3RtZW50cy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbnZlc3RtZW50cy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW52ZXN0bWVudHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWludmVzdG1lbnRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1pbnZlc3RtZW50cy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1pbnZlc3RtZW50cy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1pbnZlc3RtZW50cy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWludmVzdG1lbnRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1pbnZlc3RtZW50cy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWludmVzdG1lbnRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaW52ZXN0bWVudHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaW52ZXN0bWVudHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWludmVzdG1lbnRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWludmVzdG1lbnRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWludmVzdG1lbnRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaW52ZXN0bWVudHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWludmVzdG1lbnRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaW52ZXN0bWVudHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1pbnZlc3RtZW50cy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1pbnZlc3RtZW50cy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaW52ZXN0bWVudHMtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1pbnZlc3RtZW50cy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWludmVzdG1lbnRzLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY3JlZGl0LWNhcmRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNyZWRpdC1jYXJkcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY3JlZGl0LWNhcmRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNyZWRpdC1jYXJkcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNyZWRpdC1jYXJkcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jcmVkaXQtY2FyZHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY3JlZGl0LWNhcmRzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNyZWRpdC1jYXJkcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNyZWRpdC1jYXJkcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jcmVkaXQtY2FyZHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jcmVkaXQtY2FyZHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY3JlZGl0LWNhcmRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNyZWRpdC1jYXJkcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY3JlZGl0LWNhcmRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jcmVkaXQtY2FyZHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY3JlZGl0LWNhcmRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY3JlZGl0LWNhcmRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNyZWRpdC1jYXJkcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jcmVkaXQtY2FyZHMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY3JlZGl0LWNhcmRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNyZWRpdC1jYXJkcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY3JlZGl0LWNhcmRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNyZWRpdC1jYXJkcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNyZWRpdC1jYXJkcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jcmVkaXQtY2FyZHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY3JlZGl0LWNhcmRzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNyZWRpdC1jYXJkcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNyZWRpdC1jYXJkcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jcmVkaXQtY2FyZHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jcmVkaXQtY2FyZHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY3JlZGl0LWNhcmRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNyZWRpdC1jYXJkcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jcmVkaXQtY2FyZHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY3JlZGl0LWNhcmRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY3JlZGl0LWNhcmRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jcmVkaXQtY2FyZHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY3JlZGl0LWNhcmRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY3JlZGl0LWNhcmRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNyZWRpdC1jYXJkcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jcmVkaXQtY2FyZHMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY3JlZGl0LWNhcmRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNyZWRpdC1jYXJkcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY3JlZGl0LWNhcmRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNyZWRpdC1jYXJkcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNyZWRpdC1jYXJkcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jcmVkaXQtY2FyZHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY3JlZGl0LWNhcmRzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNyZWRpdC1jYXJkcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNyZWRpdC1jYXJkcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jcmVkaXQtY2FyZHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jcmVkaXQtY2FyZHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY3JlZGl0LWNhcmRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNyZWRpdC1jYXJkcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jcmVkaXQtY2FyZHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY3JlZGl0LWNhcmRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jcmVkaXQtY2FyZHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY3JlZGl0LWNhcmRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY3JlZGl0LWNhcmRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNyZWRpdC1jYXJkcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jcmVkaXQtY2FyZHMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY3JlZGl0LWNhcmRzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY3JlZGl0LWNhcmRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNyZWRpdC1jYXJkcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY3JlZGl0LWNhcmRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNyZWRpdC1jYXJkcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNyZWRpdC1jYXJkcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jcmVkaXQtY2FyZHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY3JlZGl0LWNhcmRzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNyZWRpdC1jYXJkcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY3JlZGl0LWNhcmRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNyZWRpdC1jYXJkcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY3JlZGl0LWNhcmRzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jcmVkaXQtY2FyZHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jcmVkaXQtY2FyZHMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY3JlZGl0LWNhcmRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY3JlZGl0LWNhcmRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY3JlZGl0LWNhcmRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jcmVkaXQtY2FyZHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY3JlZGl0LWNhcmRzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jcmVkaXQtY2FyZHMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNyZWRpdC1jYXJkcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY3JlZGl0LWNhcmRzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNyZWRpdC1jYXJkcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNyZWRpdC1jYXJkcy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jcmVkaXQtY2FyZHMtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdHVkZW50LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3R1ZGVudC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3R1ZGVudC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdHVkZW50LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3R1ZGVudC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3R1ZGVudC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN0dWRlbnQtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdHVkZW50LTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN0dWRlbnQtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3R1ZGVudC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3R1ZGVudC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN0dWRlbnQtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN0dWRlbnQtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3R1ZGVudC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN0dWRlbnQtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN0dWRlbnQtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdHVkZW50LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3R1ZGVudC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdHVkZW50LTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN0dWRlbnQtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN0dWRlbnQtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdHVkZW50LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdHVkZW50LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN0dWRlbnQtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdHVkZW50LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdHVkZW50LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3R1ZGVudC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN0dWRlbnQtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3R1ZGVudC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdHVkZW50LTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdHVkZW50LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3R1ZGVudC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3R1ZGVudC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdHVkZW50LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3R1ZGVudC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3R1ZGVudC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN0dWRlbnQtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdHVkZW50LTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN0dWRlbnQtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3R1ZGVudC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3R1ZGVudC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN0dWRlbnQtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN0dWRlbnQtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3R1ZGVudC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN0dWRlbnQtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN0dWRlbnQtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdHVkZW50LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3R1ZGVudC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdHVkZW50LTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN0dWRlbnQtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN0dWRlbnQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdHVkZW50ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdHVkZW50ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN0dWRlbnQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdHVkZW50ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdHVkZW50ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3R1ZGVudCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN0dWRlbnQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3R1ZGVudCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdHVkZW50ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdHVkZW50LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3R1ZGVudC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3R1ZGVudC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdHVkZW50LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3R1ZGVudC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3R1ZGVudC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN0dWRlbnQtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdHVkZW50LTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN0dWRlbnQtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3R1ZGVudC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3R1ZGVudC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN0dWRlbnQtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXN0dWRlbnQtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3R1ZGVudC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN0dWRlbnQtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXN0dWRlbnQtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdHVkZW50LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3R1ZGVudC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zdHVkZW50LTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN0dWRlbnQtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXN0dWRlbnQtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdHVkZW50LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdHVkZW50LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXN0dWRlbnQtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdHVkZW50LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdHVkZW50LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc3R1ZGVudC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN0dWRlbnQtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3R1ZGVudC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zdHVkZW50LTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdHVkZW50LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc3R1ZGVudC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3R1ZGVudC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdHVkZW50LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc3R1ZGVudC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3R1ZGVudC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN0dWRlbnQtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zdHVkZW50LTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN0dWRlbnQtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3R1ZGVudC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc3R1ZGVudC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zdHVkZW50LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc3R1ZGVudC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc3R1ZGVudC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zdHVkZW50LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc3R1ZGVudC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zdHVkZW50LTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXN0dWRlbnQtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXN0dWRlbnQtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXN0dWRlbnQtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zdHVkZW50LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zdHVkZW50LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zdHVkZW50LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXN0dWRlbnQtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zdHVkZW50LTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXN0dWRlbnQtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc3R1ZGVudC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc3R1ZGVudC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zdHVkZW50LTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc3R1ZGVudC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXN0dWRlbnQtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc3R1ZGVudC0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXNhdmluZ3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zYXZpbmdzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zYXZpbmdzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXNhdmluZ3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zYXZpbmdzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zYXZpbmdzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc2F2aW5ncy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXNhdmluZ3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc2F2aW5ncy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zYXZpbmdzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zYXZpbmdzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc2F2aW5ncy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc2F2aW5ncy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zYXZpbmdzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc2F2aW5ncy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc2F2aW5ncy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXNhdmluZ3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zYXZpbmdzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXNhdmluZ3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc2F2aW5ncy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc2F2aW5ncy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXNhdmluZ3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXNhdmluZ3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc2F2aW5ncy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXNhdmluZ3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXNhdmluZ3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zYXZpbmdzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc2F2aW5ncy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zYXZpbmdzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXNhdmluZ3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXNhdmluZ3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zYXZpbmdzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zYXZpbmdzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXNhdmluZ3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zYXZpbmdzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zYXZpbmdzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc2F2aW5ncy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXNhdmluZ3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc2F2aW5ncy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zYXZpbmdzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zYXZpbmdzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc2F2aW5ncy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc2F2aW5ncy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zYXZpbmdzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc2F2aW5ncy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc2F2aW5ncy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXNhdmluZ3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zYXZpbmdzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXNhdmluZ3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc2F2aW5ncy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc2F2aW5ncyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXNhdmluZ3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXNhdmluZ3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc2F2aW5ncyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXNhdmluZ3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXNhdmluZ3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zYXZpbmdzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc2F2aW5ncyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zYXZpbmdzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXNhdmluZ3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXNhdmluZ3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zYXZpbmdzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zYXZpbmdzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXNhdmluZ3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zYXZpbmdzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zYXZpbmdzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc2F2aW5ncy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXNhdmluZ3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc2F2aW5ncy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zYXZpbmdzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zYXZpbmdzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc2F2aW5ncy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3Itc2F2aW5ncy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zYXZpbmdzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc2F2aW5ncy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tc2F2aW5ncy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXNhdmluZ3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zYXZpbmdzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXNhdmluZ3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc2F2aW5ncy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3Itc2F2aW5ncy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXNhdmluZ3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXNhdmluZ3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItc2F2aW5ncy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXNhdmluZ3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXNhdmluZ3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1zYXZpbmdzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc2F2aW5ncy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zYXZpbmdzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXNhdmluZ3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXNhdmluZ3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1zYXZpbmdzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zYXZpbmdzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXNhdmluZ3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1zYXZpbmdzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zYXZpbmdzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc2F2aW5ncy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXNhdmluZ3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc2F2aW5ncy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zYXZpbmdzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1zYXZpbmdzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXNhdmluZ3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1zYXZpbmdzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1zYXZpbmdzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXNhdmluZ3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1zYXZpbmdzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXNhdmluZ3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtc2F2aW5ncy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItc2F2aW5ncy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItc2F2aW5ncy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXNhdmluZ3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3Itc2F2aW5ncy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXNhdmluZ3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXNhdmluZ3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3Atc2F2aW5ncy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXNhdmluZ3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtc2F2aW5ncy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1zYXZpbmdzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1zYXZpbmdzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXNhdmluZ3MtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1zYXZpbmdzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3Itc2F2aW5ncy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1zYXZpbmdzLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY2hlY2tpbmctMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNoZWNraW5nLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNoZWNraW5nLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY2hlY2tpbmctMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNoZWNraW5nLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNoZWNraW5nLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jaGVja2luZy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY2hlY2tpbmctMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jaGVja2luZy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNoZWNraW5nLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNraW5nLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jaGVja2luZy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jaGVja2luZy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNoZWNraW5nLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jaGVja2luZy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jaGVja2luZy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY2hlY2tpbmctMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNoZWNraW5nLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY2hlY2tpbmctMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jaGVja2luZy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jaGVja2luZy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY2hlY2tpbmctMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY2hlY2tpbmctMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jaGVja2luZy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY2hlY2tpbmctMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY2hlY2tpbmctMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNoZWNraW5nLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jaGVja2luZy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNoZWNraW5nLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY2hlY2tpbmctMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY2hlY2tpbmctMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNoZWNraW5nLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNoZWNraW5nLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY2hlY2tpbmctMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNoZWNraW5nLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNoZWNraW5nLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jaGVja2luZy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY2hlY2tpbmctMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jaGVja2luZy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNoZWNraW5nLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNraW5nLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jaGVja2luZy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jaGVja2luZy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNoZWNraW5nLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jaGVja2luZy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jaGVja2luZy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY2hlY2tpbmctMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNoZWNraW5nLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY2hlY2tpbmctMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jaGVja2luZy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jaGVja2luZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY2hlY2tpbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY2hlY2tpbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jaGVja2luZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY2hlY2tpbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY2hlY2tpbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNoZWNraW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jaGVja2luZyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNoZWNraW5nICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY2hlY2tpbmcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY2hlY2tpbmctMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNoZWNraW5nLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNoZWNraW5nLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY2hlY2tpbmctMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNoZWNraW5nLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNoZWNraW5nLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jaGVja2luZy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY2hlY2tpbmctMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jaGVja2luZy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNoZWNraW5nLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNraW5nLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jaGVja2luZy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1jaGVja2luZy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNoZWNraW5nLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jaGVja2luZy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1jaGVja2luZy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY2hlY2tpbmctMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNoZWNraW5nLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItY2hlY2tpbmctMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jaGVja2luZy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1jaGVja2luZy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY2hlY2tpbmctMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY2hlY2tpbmctMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jaGVja2luZy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY2hlY2tpbmctMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY2hlY2tpbmctMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWNoZWNraW5nLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jaGVja2luZy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNoZWNraW5nLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItY2hlY2tpbmctMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY2hlY2tpbmctMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWNoZWNraW5nLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNoZWNraW5nLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY2hlY2tpbmctMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWNoZWNraW5nLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNoZWNraW5nLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jaGVja2luZy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtY2hlY2tpbmctMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jaGVja2luZy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNoZWNraW5nLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNraW5nLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItY2hlY2tpbmctMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWNoZWNraW5nLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNoZWNraW5nLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtY2hlY2tpbmctMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWNoZWNraW5nLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtY2hlY2tpbmctMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1jaGVja2luZy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1jaGVja2luZy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1jaGVja2luZy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItY2hlY2tpbmctMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1jaGVja2luZy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItY2hlY2tpbmctMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY2hlY2tpbmctMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1jaGVja2luZy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tY2hlY2tpbmctMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1jaGVja2luZy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWNoZWNraW5nLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWNoZWNraW5nLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWNoZWNraW5nLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1jaGVja2luZy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWNoZWNraW5nLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItY2hlY2tpbmctMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1yZWQtc2hvZXMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcmVkLXNob2VzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcmVkLXNob2VzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yZWQtc2hvZXMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcmVkLXNob2VzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcmVkLXNob2VzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXJlZC1zaG9lcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1yZWQtc2hvZXMtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcmVkLXNob2VzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcmVkLXNob2VzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXJlZC1zaG9lcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmVkLXNob2VzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXJlZC1zaG9lcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXJlZC1zaG9lcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1yZWQtc2hvZXMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcmVkLXNob2VzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXJlZC1zaG9lcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1yZWQtc2hvZXMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJlZC1zaG9lcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1yZWQtc2hvZXMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1yZWQtc2hvZXMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcmVkLXNob2VzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXJlZC1zaG9lcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcmVkLXNob2VzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1yZWQtc2hvZXMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcmVkLXNob2VzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcmVkLXNob2VzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yZWQtc2hvZXMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcmVkLXNob2VzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcmVkLXNob2VzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXJlZC1zaG9lcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1yZWQtc2hvZXMtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcmVkLXNob2VzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcmVkLXNob2VzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXJlZC1zaG9lcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmVkLXNob2VzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXJlZC1zaG9lcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXJlZC1zaG9lcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1yZWQtc2hvZXMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcmVkLXNob2VzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXJlZC1zaG9lcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1yZWQtc2hvZXMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1yZWQtc2hvZXMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJlZC1zaG9lcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1yZWQtc2hvZXMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1yZWQtc2hvZXMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcmVkLXNob2VzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXJlZC1zaG9lcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcmVkLXNob2VzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1yZWQtc2hvZXMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1yZWQtc2hvZXMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcmVkLXNob2VzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcmVkLXNob2VzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yZWQtc2hvZXMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcmVkLXNob2VzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcmVkLXNob2VzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXJlZC1zaG9lcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1yZWQtc2hvZXMtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcmVkLXNob2VzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcmVkLXNob2VzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXJlZC1zaG9lcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmVkLXNob2VzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXJlZC1zaG9lcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXJlZC1zaG9lcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1yZWQtc2hvZXMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcmVkLXNob2VzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXJlZC1zaG9lcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1yZWQtc2hvZXMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1yZWQtc2hvZXMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJlZC1zaG9lcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1yZWQtc2hvZXMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1yZWQtc2hvZXMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcmVkLXNob2VzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXJlZC1zaG9lcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcmVkLXNob2VzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1yZWQtc2hvZXMtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1yZWQtc2hvZXMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcmVkLXNob2VzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcmVkLXNob2VzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yZWQtc2hvZXMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcmVkLXNob2VzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcmVkLXNob2VzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXJlZC1zaG9lcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1yZWQtc2hvZXMtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcmVkLXNob2VzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcmVkLXNob2VzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcmVkLXNob2VzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmVkLXNob2VzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1yZWQtc2hvZXMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcmVkLXNob2VzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1yZWQtc2hvZXMtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXJlZC1zaG9lcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXJlZC1zaG9lcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1yZWQtc2hvZXMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1yZWQtc2hvZXMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yZWQtc2hvZXMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXJlZC1zaG9lcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1yZWQtc2hvZXMtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXJlZC1zaG9lcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcmVkLXNob2VzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1yZWQtc2hvZXMtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcmVkLXNob2VzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcmVkLXNob2VzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcmVkLXNob2VzLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXJlZC1zaG9lcy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWJ1c2luZXNzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1idXNpbmVzcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1idXNpbmVzcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJ1c2luZXNzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1idXNpbmVzcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1idXNpbmVzcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtYnVzaW5lc3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWJ1c2luZXNzLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItYnVzaW5lc3MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1idXNpbmVzcy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAxICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1idXNpbmVzcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItYnVzaW5lc3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItYnVzaW5lc3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1idXNpbmVzcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtYnVzaW5lc3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tYnVzaW5lc3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWJ1c2luZXNzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1idXNpbmVzcy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWJ1c2luZXNzLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItYnVzaW5lc3MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItYnVzaW5lc3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWJ1c2luZXNzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWJ1c2luZXNzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYnVzaW5lc3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWJ1c2luZXNzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWJ1c2luZXNzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1idXNpbmVzcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtYnVzaW5lc3MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1idXNpbmVzcy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWJ1c2luZXNzLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDMgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWJ1c2luZXNzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1idXNpbmVzcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1idXNpbmVzcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJ1c2luZXNzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1idXNpbmVzcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1idXNpbmVzcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtYnVzaW5lc3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWJ1c2luZXNzLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItYnVzaW5lc3MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1idXNpbmVzcy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA0ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1idXNpbmVzcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItYnVzaW5lc3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItYnVzaW5lc3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1idXNpbmVzcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtYnVzaW5lc3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tYnVzaW5lc3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWJ1c2luZXNzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1idXNpbmVzcy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItYnVzaW5lc3MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItYnVzaW5lc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWJ1c2luZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWJ1c2luZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYnVzaW5lc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWJ1c2luZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWJ1c2luZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1idXNpbmVzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtYnVzaW5lc3MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1idXNpbmVzcyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWJ1c2luZXNzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWJ1c2luZXNzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1idXNpbmVzcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1idXNpbmVzcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJ1c2luZXNzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1idXNpbmVzcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1idXNpbmVzcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtYnVzaW5lc3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWJ1c2luZXNzLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItYnVzaW5lc3MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1idXNpbmVzcy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA2ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1idXNpbmVzcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItYnVzaW5lc3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItYnVzaW5lc3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1idXNpbmVzcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtYnVzaW5lc3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tYnVzaW5lc3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWJ1c2luZXNzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1idXNpbmVzcy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItYnVzaW5lc3MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wNyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItYnVzaW5lc3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWJ1c2luZXNzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYnVzaW5lc3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWJ1c2luZXNzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWJ1c2luZXNzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1idXNpbmVzcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtYnVzaW5lc3MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1idXNpbmVzcy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWJ1c2luZXNzLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDggKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWJ1c2luZXNzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1idXNpbmVzcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1idXNpbmVzcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJ1c2luZXNzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1idXNpbmVzcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1idXNpbmVzcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtYnVzaW5lc3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWJ1c2luZXNzLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItYnVzaW5lc3MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1idXNpbmVzcy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1idXNpbmVzcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1idXNpbmVzcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1idXNpbmVzcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWJ1c2luZXNzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1idXNpbmVzcy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWJ1c2luZXNzLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtYnVzaW5lc3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItYnVzaW5lc3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItYnVzaW5lc3MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWJ1c2luZXNzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItYnVzaW5lc3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWJ1c2luZXNzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJ1c2luZXNzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtYnVzaW5lc3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWJ1c2luZXNzLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtYnVzaW5lc3MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1idXNpbmVzcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1idXNpbmVzcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1idXNpbmVzcy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItYnVzaW5lc3MtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1idXNpbmVzcy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWJ1c2luZXNzLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcGVyc29uYWwtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXBlcnNvbmFsLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXBlcnNvbmFsLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcGVyc29uYWwtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXBlcnNvbmFsLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXBlcnNvbmFsLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wZXJzb25hbC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcGVyc29uYWwtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wZXJzb25hbC0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXBlcnNvbmFsLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAxICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDEgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXBlcnNvbmFsLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wZXJzb25hbC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wZXJzb25hbC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXBlcnNvbmFsLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wZXJzb25hbC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wZXJzb25hbC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcGVyc29uYWwtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXBlcnNvbmFsLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcGVyc29uYWwtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wZXJzb25hbC0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wZXJzb25hbC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcGVyc29uYWwtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcGVyc29uYWwtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wZXJzb25hbC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcGVyc29uYWwtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcGVyc29uYWwtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXBlcnNvbmFsLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wZXJzb25hbC0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXBlcnNvbmFsLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcGVyc29uYWwtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDMgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wMyApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcGVyc29uYWwtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXBlcnNvbmFsLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcGVyc29uYWwtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXBlcnNvbmFsLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXBlcnNvbmFsLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wZXJzb25hbC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcGVyc29uYWwtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wZXJzb25hbC0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA0ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDQgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXBlcnNvbmFsLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wZXJzb25hbC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wZXJzb25hbC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXBlcnNvbmFsLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wZXJzb25hbC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wZXJzb25hbC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcGVyc29uYWwtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXBlcnNvbmFsLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcGVyc29uYWwtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wZXJzb25hbC0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wZXJzb25hbCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcGVyc29uYWwgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcGVyc29uYWwgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wZXJzb25hbCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcGVyc29uYWwgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcGVyc29uYWwgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXBlcnNvbmFsICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wZXJzb25hbCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXBlcnNvbmFsICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcGVyc29uYWwgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcGVyc29uYWwtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXBlcnNvbmFsLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcGVyc29uYWwtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXBlcnNvbmFsLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXBlcnNvbmFsLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wZXJzb25hbC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcGVyc29uYWwtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wZXJzb25hbC0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA2ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDYgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXBlcnNvbmFsLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wZXJzb25hbC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1wZXJzb25hbC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXBlcnNvbmFsLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wZXJzb25hbC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1wZXJzb25hbC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcGVyc29uYWwtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXBlcnNvbmFsLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItcGVyc29uYWwtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wZXJzb25hbC0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wNyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA3ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1wZXJzb25hbC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcGVyc29uYWwtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcGVyc29uYWwtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1wZXJzb25hbC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcGVyc29uYWwtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcGVyc29uYWwtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LXBlcnNvbmFsLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wZXJzb25hbC0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItcGVyc29uYWwtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDggKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcGVyc29uYWwtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXBlcnNvbmFsLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcGVyc29uYWwtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLXBlcnNvbmFsLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXBlcnNvbmFsLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wZXJzb25hbC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtcGVyc29uYWwtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wZXJzb25hbC0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLXBlcnNvbmFsLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItcGVyc29uYWwtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLXBlcnNvbmFsLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXBlcnNvbmFsLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtcGVyc29uYWwtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLXBlcnNvbmFsLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtcGVyc29uYWwtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1wZXJzb25hbC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1wZXJzb25hbC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1wZXJzb25hbC0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5MiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItcGVyc29uYWwtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1wZXJzb25hbC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItcGVyc29uYWwtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcGVyc29uYWwtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1wZXJzb25hbC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20tcGVyc29uYWwtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1wZXJzb25hbC0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LXBlcnNvbmFsLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLXBlcnNvbmFsLTA5NSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1wZXJzb25hbC0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLXBlcnNvbmFsLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItcGVyc29uYWwtMDk1ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1oZWxvYy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaGVsb2MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaGVsb2MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1oZWxvYy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaGVsb2MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taGVsb2MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWhlbG9jLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1oZWxvYy0wMSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDEgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAxICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWhlbG9jLTAxICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAxICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaGVsb2MtMDEgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDEgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaGVsb2MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhlbG9jLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWhlbG9jLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaGVsb2MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWhlbG9jLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWhlbG9jLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1oZWxvYy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaGVsb2MtMDIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1oZWxvYy0wMiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWhlbG9jLTAyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhlbG9jLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1oZWxvYy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1oZWxvYy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWhlbG9jLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1oZWxvYy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1oZWxvYy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaGVsb2MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWhlbG9jLTAzICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wMyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDMgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaGVsb2MtMDMgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDMgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1oZWxvYy0wMyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTAzICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wMyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTAzICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1oZWxvYy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaGVsb2MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaGVsb2MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1oZWxvYy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaGVsb2MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taGVsb2MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWhlbG9jLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1oZWxvYy0wNCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDQgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA0ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWhlbG9jLTA0ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA0ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaGVsb2MtMDQgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDQgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNCApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaGVsb2MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhlbG9jLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWhlbG9jLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaGVsb2MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWhlbG9jLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWhlbG9jLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1oZWxvYy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaGVsb2MtMDUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1oZWxvYy0wNSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWhlbG9jLTA1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhlbG9jICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1oZWxvYyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1oZWxvYyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWhlbG9jICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1oZWxvYyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1oZWxvYyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaGVsb2MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWhlbG9jICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaGVsb2MgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0gLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1oZWxvYyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYyApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1oZWxvYy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaGVsb2MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaGVsb2MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1oZWxvYy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaGVsb2MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taGVsb2MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWhlbG9jLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1oZWxvYy0wNiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDYgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA2ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWhlbG9jLTA2ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA2ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaGVsb2MtMDYgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDYgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNiApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaGVsb2MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhlbG9jLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWNvbG9yLWhlbG9jLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaGVsb2MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWhlbG9jLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItYm90dG9tLWhlbG9jLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1oZWxvYy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaGVsb2MtMDcgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA3ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wNyApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1ob3Zlci1oZWxvYy0wNyAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wNyAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWhlbG9jLTA3ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDcgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA3ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDcgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhlbG9jLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICkgKTtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1oZWxvYy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1oZWxvYy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWhlbG9jLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1oZWxvYy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1oZWxvYy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWxlZnQtaGVsb2MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWhlbG9jLTA4ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOCAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDggKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaGVsb2MtMDggKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBjb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDggLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlci1oZWxvYy0wOCAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA4ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOCApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA4ICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1oZWxvYy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaGVsb2MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH0gQGVsc2Uge1xuICAgIC0tY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaGVsb2MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1oZWxvYy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci10b3AtaGVsb2MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taGVsb2MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWhlbG9jLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yaWdodC1oZWxvYy0wOSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWhlbG9jLTA5ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaGVsb2MtMDkgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgJjpob3ZlciB7XG4gICAgQGlmICR0aGVtZVZhciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaGVsb2MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKSApO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1iYWNrZ3JvdW5kLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1jb2xvci1oZWxvYy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfSBAZWxzZSB7XG4gICAgLS1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKTtcbiAgICBjb2xvcjogdmFyKCAtLWNvbG9yICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItY29sb3ItaGVsb2MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItaGVsb2MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXRvcC1oZWxvYy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1ib3R0b20taGVsb2MtMDkyICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItbGVmdC1oZWxvYy0wOTIgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJpZ2h0LWhlbG9jLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAjeyR0aGVtZVZhcn0tMDkyICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKSApO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhvdmVyLWhlbG9jLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTIgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5MiApICk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTIgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLWhlbG9jLTA5MiAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICAmOmhvdmVyIHtcbiAgICBAaWYgJHRoZW1lVmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5MiAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDkyICk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzY3ctYmFja2dyb3VuZC1jb2xvci1oZWxvYy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgLS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApICk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoIC0tYmFja2dyb3VuZC1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWJhY2tncm91bmQtY29sb3I6IHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLWJhY2tncm91bmQtY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWNvbG9yLWhlbG9jLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICAtLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApICk7XG4gICAgY29sb3I6IHZhciggLS1jb2xvciApO1xuICB9IEBlbHNlIHtcbiAgICAtLWNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApO1xuICAgIGNvbG9yOiB2YXIoIC0tY29sb3IgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1jb2xvci1oZWxvYy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1oZWxvYy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItdG9wLWhlbG9jLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICkgKTtcbiAgfSBAZWxzZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLWJvdHRvbS1oZWxvYy0wOTUgKCR0aGVtZVZhcjogZmFsc2UpIHtcbiAgQGlmICR0aGVtZVZhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1sZWZ0LWhlbG9jLTA5NSAoJHRoZW1lVmFyOiBmYWxzZSkge1xuICBAaWYgJHRoZW1lVmFyIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmlnaHQtaGVsb2MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gIEBpZiAkdGhlbWVWYXIge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoICN7JHRoZW1lVmFyfS0wOTUgLCB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApICk7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctY29sb3ItaG92ZXItaGVsb2MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgY29sb3I6IHZhciggI3skdGhlbWVWYXJ9LTA5NSAsIHZhciggLS1zY3ctY29sb3ItaGVsb2MtMDk1ICkgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGNvbG9yOiB2YXIoIC0tc2N3LWNvbG9yLWhlbG9jLTA5NSApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2N3LWJhY2tncm91bmQtY29sb3ItaG92ZXItaGVsb2MtMDk1ICgkdGhlbWVWYXI6IGZhbHNlKSB7XG4gICY6aG92ZXIge1xuICAgIEBpZiAkdGhlbWVWYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAjeyR0aGVtZVZhcn0tMDk1ICwgdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKSApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCAtLXNjdy1jb2xvci1oZWxvYy0wOTUgKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNjdy10ZXh0LTEwIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LTEwLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC0wOSB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC0wOS1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtMDggeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtMDgtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LTA3IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LTA3LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC0wNiB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC0wNi1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtMDUgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC0wNCB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC0wNC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtMDMgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtMDMtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LTAyIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LTAyLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC0wMSB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC0wMS1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC0xMCB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLTEwLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLTA5IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtMDktZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtMDggeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC0wOC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC0wNyB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLTA3LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLTA2IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtMDYtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtMDUgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZCB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLTA0IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtMDQtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtMDMgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC0wMy1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC0wMiB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLTAyLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLTAxIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtMDEtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtY29uZGVuc2VkLTEwIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtY29uZGVuc2VkLTEwLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLWNvbmRlbnNlZC0wOSB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC0wOS1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC1jb25kZW5zZWQtMDggeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1jb25kZW5zZWQtMDgtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtY29uZGVuc2VkLTA3IHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtY29uZGVuc2VkLTA3LWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLWNvbmRlbnNlZC0wNiB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC0wNi1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC1jb25kZW5zZWQtMDUgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1jb25kZW5zZWQtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtY29uZGVuc2VkIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtY29uZGVuc2VkLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLWNvbmRlbnNlZC0wNCB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC0wNC1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LXRleHQtYm9sZC1jb25kZW5zZWQtMDMgeyBcbiAgZm9udDogdmFyKCAtLXNjdy10eXBlLXRleHQtYm9sZC1jb25kZW5zZWQtMDMtZm9udCApOyBcbn1cblxuQG1peGluIHNjdy10ZXh0LWJvbGQtY29uZGVuc2VkLTAyIHsgXG4gIGZvbnQ6IHZhciggLS1zY3ctdHlwZS10ZXh0LWJvbGQtY29uZGVuc2VkLTAyLWZvbnQgKTsgXG59XG5cbkBtaXhpbiBzY3ctdGV4dC1ib2xkLWNvbmRlbnNlZC0wMSB7IFxuICBmb250OiB2YXIoIC0tc2N3LXR5cGUtdGV4dC1ib2xkLWNvbmRlbnNlZC0wMS1mb250ICk7IFxufVxuXG5AbWl4aW4gc2N3LWVmZmVjdC1zaGFkb3cgeyBcbiAgYm94LXNoYWRvdzogdmFyKCAtLXNjdy1lZmZlY3Qtc2hhZG93LXNoYWRvdyApOyBcbn1cblxuQG1peGluIHNjdy1lZmZlY3QtZm9jdXMgeyBcbiAgYm94LXNoYWRvdzogdmFyKCAtLXNjdy1lZmZlY3QtZm9jdXMtc2hhZG93ICk7IFxufVxuXG5AbWl4aW4gc2N3LWdyYXBoaWMtYXBwbGUtYXBwLXN0b3JlIHsgXG4gIC0tc3ZnLW5hbWU6IGFwcGxlLWFwcC1zdG9yZTtcbiAgLS1zdmctc2l6ZTogMTU5OyBcbn1cblxuQG1peGluIHNjdy1ncmFwaGljLWxvZ28geyBcbiAgLS1zdmctbmFtZTogbG9nbztcbiAgLS1zdmctc2l6ZTogMTQzOyBcbn1cblxuQG1peGluIHNjdy1ncmFwaGljLW5jdWEgeyBcbiAgLS1zdmctbmFtZTogbmN1YTtcbiAgLS1zdmctc2l6ZTogMTA4OyBcbn1cblxuQG1peGluIHNjdy1ncmFwaGljLWVobCB7IFxuICAtLXN2Zy1uYW1lOiBlaGw7XG4gIC0tc3ZnLXNpemU6IDUzOyBcbn1cblxuQG1peGluIHNjdy1ncmFwaGljLWdvb2dsZS1wbGF5LXN0b3JlIHsgXG4gIC0tc3ZnLW5hbWU6IGdvb2dsZS1wbGF5LXN0b3JlO1xuICAtLXN2Zy1zaXplOiAxNTk7IFxufVxuXG5AbWl4aW4gc2N3LXNpemUtMHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTBzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTBzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0wcyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTBzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMHMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTBzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMHMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTBzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0wcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0wcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTBzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMHMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMHMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0wcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0wcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0wcyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTBzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0wcyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTBzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0wcyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0wICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTBzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMC0zcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTAtM3Mge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0wLTNzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTAtM3Mge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTAtM3Mge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTAtM3Mge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMC0zcyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMC0zcyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0wLTNzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0wLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0wLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTAtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTAtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTAtM3Mge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0wLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0wLTNzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTAtM3Mge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0wLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0wLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTAtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTAtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTAtM3Mge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTAtM3Mge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMC0zcyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMC0zcyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0wLTNzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0wLTNzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0wLTRzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMC00cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTAtNHMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMC00cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMC00cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMC00cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0wLTRzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0wLTRzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTAtNHMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0wLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTAtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTAtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMC00cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTAtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTAtNHMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0wLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMC00cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTAtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTAtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMC00cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMC00cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0wLTRzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0wLTRzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTAtNHMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTAtNHMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMC00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTAtNnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0wLTZzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMC02cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0wLTZzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0wLTZzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0wLTZzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTAtNnMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTAtNnMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMC02cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTAtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0wLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0wLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0wLTZzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMC02cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTAtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0wLTZzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0wLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0wLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0wLTZzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0wLTZzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTAtNnMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTAtNnMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMC02cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMC02cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0wLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMC04cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTAtOHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0wLThzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTAtOHMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTAtOHMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTAtOHMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMC04cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMC04cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0wLThzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0wLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0wLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTAtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTAtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTAtOHMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0wLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0wLThzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTAtOHMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0wLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0wLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTAtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTAtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTAtOHMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTAtOHMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMC04cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMC04cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0wLThzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0wLThzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0wLTlzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMC05cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTAtOXMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMC05cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMC05cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMC05cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0wLTlzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0wLTlzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTAtOXMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0wLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTAtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTAtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMC05cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTAtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTAtOXMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0wLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMC05cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTAtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTAtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMC05cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMC05cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0wLTlzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0wLTlzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTAtOXMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTAtOXMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMC05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTFzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0xcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0xcyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMXMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0xcyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTFzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0xcyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTFzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0xcyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0xcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0xcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0xcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0xcyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0xcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTFzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTFzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMXMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0xcyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMXMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0xcyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMXMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMSApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0xcyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0xICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTEtM3Mge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0xLTNzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMS0zcyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0xLTNzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0xLTNzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0xLTNzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTEtM3Mge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTEtM3Mge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMS0zcyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTEtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0xLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0xLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0xLTNzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMS0zcyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTEtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0xLTNzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0xLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0xLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0xLTNzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0xLTNzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTEtM3Mge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTEtM3Mge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMS0zcyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMS0zcyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0xLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMS00cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTEtNHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0xLTRzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTEtNHMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTEtNHMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTEtNHMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMS00cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMS00cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0xLTRzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0xLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0xLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTEtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTEtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTEtNHMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0xLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0xLTRzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTEtNHMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0xLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0xLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTEtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTEtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTEtNHMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTEtNHMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMS00cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMS00cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0xLTRzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0xLTRzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0xLTZzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMS02cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTEtNnMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMS02cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMS02cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMS02cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0xLTZzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0xLTZzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTEtNnMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0xLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTEtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTEtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMS02cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTEtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTEtNnMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0xLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMS02cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTEtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTEtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMS02cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMS02cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0xLTZzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0xLTZzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTEtNnMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTEtNnMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMS02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTEtOHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0xLThzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMS04cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0xLThzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0xLThzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0xLThzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTEtOHMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTEtOHMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMS04cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTEtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0xLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0xLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0xLThzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMS04cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTEtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0xLThzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0xLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0xLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0xLThzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0xLThzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTEtOHMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTEtOHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMS04cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMS04cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0xLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMS05cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTEtOXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0xLTlzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTEtOXMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTEtOXMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTEtOXMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMS05cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMS05cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0xLTlzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0xLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0xLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTEtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTEtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTEtOXMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0xLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0xLTlzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTEtOXMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0xLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0xLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTEtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTEtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTEtOXMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTEtOXMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMS05cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMS05cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0xLTlzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0xLTlzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0ycyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMnMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTJzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMnMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0ycyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMnMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0ycyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMnMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMnMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0ycyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0ycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0ycyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0ycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0ycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTJzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMnMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTJzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMnMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTJzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTIgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMnMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0yLTNzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMi0zcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTItM3Mge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMi0zcyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMi0zcyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMi0zcyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0yLTNzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0yLTNzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTItM3Mge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0yLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTItM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTItM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMi0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMi0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMi0zcyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTItM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTItM3Mge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0yLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMi0zcyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTItM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTItM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMi0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMi0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMi0zcyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMi0zcyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0yLTNzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0yLTNzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTItM3Mge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTItM3Mge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMi0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTItNHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0yLTRzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMi00cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0yLTRzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0yLTRzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0yLTRzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTItNHMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTItNHMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMi00cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTItNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMi00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMi00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0yLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0yLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0yLTRzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMi00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMi00cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTItNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0yLTRzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMi00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMi00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0yLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0yLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0yLTRzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0yLTRzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTItNHMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTItNHMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMi00cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMi00cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0yLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMi02cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTItNnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0yLTZzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTItNnMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTItNnMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTItNnMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMi02cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMi02cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0yLTZzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMi02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0yLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0yLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTItNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTItNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTItNnMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0yLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0yLTZzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMi02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTItNnMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0yLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0yLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTItNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTItNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTItNnMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTItNnMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMi02cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMi02cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0yLTZzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0yLTZzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0yLThzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMi04cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTItOHMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMi04cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMi04cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy10b3AtMi04cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0yLThzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0yLThzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTItOHMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0yLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTItOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTItOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMi04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMi04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMi04cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTItOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTItOHMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0yLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMi04cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTItOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTItOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMi04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMi04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMi04cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMi04cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0yLThzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0yLThzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTItOHMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTItOHMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMi04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTItOXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0yLTlzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMi05cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0yLTlzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0yLTlzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0yLTlzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTItOXMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTItOXMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMi05cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTItOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMi05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMi05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0yLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0yLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0yLTlzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMi05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMi05cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTItOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0yLTlzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMi05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMi05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0yLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0yLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0yLTlzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0yLTlzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTItOXMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTItOXMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMi05cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMi05cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0yLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtM3Mge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTNzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTNzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0zcyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTNzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy10b3AtM3Mge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTNzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtM3Mge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTNzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTNzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtM3Mge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctM3Mge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0zcyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTNzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0zcyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTNzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0zcyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0zICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTNzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMy0zcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTMtM3Mge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0zLTNzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTMtM3Mge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTMtM3Mge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTMtM3Mge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMy0zcyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMy0zcyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0zLTNzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMy0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0zLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0zLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTMtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTMtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTMtM3Mge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0zLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0zLTNzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMy0zcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTMtM3Mge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0zLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0zLTNzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTMtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTMtM3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTMtM3Mge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTMtM3Mge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMy0zcyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMy0zcyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0zLTNzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0zLTNzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtMyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0zLTRzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMy00cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTMtNHMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMy00cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMy00cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMy00cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0zLTRzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0zLTRzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTMtNHMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0zLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTMtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTMtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMy00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMy00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMy00cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTMtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTMtNHMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0zLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMy00cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTMtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTMtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMy00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMy00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMy00cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMy00cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0zLTRzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0zLTRzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTMtNHMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTMtNHMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTMtNnMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0zLTZzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMy02cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0zLTZzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0zLTZzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0zLTZzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTMtNnMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTMtNnMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMy02cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTMtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMy02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMy02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0zLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0zLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0zLTZzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMy02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMy02cyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTMtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0zLTZzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMy02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMy02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0zLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0zLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0zLTZzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0zLTZzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTMtNnMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTMtNnMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMy02cyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMy02cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0zLTYgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMy04cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTMtOHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0zLThzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTMtOHMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTMtOHMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTMtOHMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMy04cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMy04cyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0zLThzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMy04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0zLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0zLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTMtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTMtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTMtOHMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0zLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0zLThzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMy04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTMtOHMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0zLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0zLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTMtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTMtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTMtOHMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTMtOHMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMy04cyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMy04cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0zLThzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0zLThzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0zLTlzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMy05cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTMtOXMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMy05cyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMy05cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMy05cyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0zLTlzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0zLTlzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTMtOXMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0zLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTMtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTMtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMy05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMy05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMy05cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTMtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTMtOXMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0zLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMy05cyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTMtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTMtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMy05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMy05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMy05cyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMy05cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0zLTlzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0zLTlzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTMtOXMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTMtOXMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTRzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC00cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC00cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtNHMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC00cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTRzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS00cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTRzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC00cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC00cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC00cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTRzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTRzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTRzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktNHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtNHMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC00cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtNHMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS00cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtNHMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctNCApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC00cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy00ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTVzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC01cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC01cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtNXMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC01cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTVzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS01cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTVzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC01cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi01cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtNXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtNXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC01cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS01cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC01cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC01cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTVzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTVzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTVzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTVzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTVzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtNXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktNXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtNXMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC01cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtNXMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTUgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS01cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtNXMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctNSApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC01cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy01ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTZzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC02cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC02cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtNnMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC02cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTZzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS02cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTZzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC02cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC02cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC02cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTZzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTZzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTZzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktNnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtNnMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC02cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtNnMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS02cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtNnMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctNiApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC02cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy02ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTdzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC03cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC03cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtN3Mge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC03cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTdzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS03cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTdzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC03cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi03cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtN3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtN3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC03cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS03cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC03cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC03cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTdzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTdzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTdzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTdzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTdzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtN3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktN3Mge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtN3Mge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC03cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtN3Mge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTcgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS03cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtN3Mge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctNyApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC03cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy03ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLThzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC04cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC04cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtOHMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC04cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLThzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS04cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LThzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC04cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC04cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC04cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLThzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLThzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LThzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktOHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtOHMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC04cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtOHMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS04cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtOHMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctOCApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC04cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy04ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTlzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC05cyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC05cyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtOXMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC05cyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTlzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS05cyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTlzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC05cyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC05cyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC05cyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTlzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTlzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTlzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktOXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtOXMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC05cyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtOXMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS05cyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtOXMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctOSApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC05cyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy05ICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1zaXplLTEwcyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC0xMHMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctaGVpZ2h0LTEwcyB7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLTEwcyB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLWhlaWdodC0xMHMge1xuICBtaW4taGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy10b3AtMTBzIHtcbiAgdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1ib3R0b20tMTBzIHtcbiAgYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LTEwcyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LTEwcyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tMTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbjogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtMTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtMTBzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWhlaWdodC0xMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teS0xMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC0xMHMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LTEwcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXRvcC0xMHMge1xuICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tYm90dG9tLTEwcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctMTBzIHtcbiAgcGFkZGluZzogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC0xMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC0xMHMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctaGVpZ2h0LTEwcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy15LTEwcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LTEwcyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC0xMHMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXRvcC0xMHMge1xuICBwYWRkaW5nLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1ib3R0b20tMTBzIHtcbiAgcGFkZGluZy1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LWJvcmRlci1yYWRpdXMtMTBzIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKCAtLXNjdy1zcGFjaW5nLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctZ2FwLTEwcyB7XG4gID4gKiB7XG4gICAgLS1nYXA6IHZhciggLS1zY3ctc3BhY2luZy0xMCApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctc2l6ZS0xMXMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gIGhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtMTFzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LWhlaWdodC0xMXMge1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC0xMXMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi1oZWlnaHQtMTFzIHtcbiAgbWluLWhlaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctdG9wLTExcyB7XG4gIHRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctYm90dG9tLTExcyB7XG4gIGJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC0xMXMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC0xMXMge1xuICByaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLTExcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW46IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLTExcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LTExcyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1oZWlnaHQtMTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXktMTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtMTFzIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC0xMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi10b3AtMTFzIHtcbiAgbWFyZ2luLXRvcDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWJvdHRvbS0xMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLTExcyB7XG4gIHBhZGRpbmc6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtMTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtMTFzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWhlaWdodC0xMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteS0xMXMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC0xMXMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtMTFzIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTExICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy10b3AtMTFzIHtcbiAgcGFkZGluZy10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctYm90dG9tLTExcyB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbn1cblxuQG1peGluIHNjdy1ib3JkZXItcmFkaXVzLTExcyB7XG4gIGJvcmRlci1yYWRpdXM6IHZhciggLS1zY3ctc3BhY2luZy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LWdhcC0xMXMge1xuICA+ICoge1xuICAgIC0tZ2FwOiB2YXIoIC0tc2N3LXNwYWNpbmctMTEgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNpemUtMTJzIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICBoZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLTEycyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1oZWlnaHQtMTJzIHtcbiAgaGVpZ2h0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtMTJzIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1taW4taGVpZ2h0LTEycyB7XG4gIG1pbi1oZWlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXRvcC0xMnMge1xuICB0b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LWJvdHRvbS0xMnMge1xuICBib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtMTJzIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtMTJzIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi0xMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC0xMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC0xMnMge1xuICAmLCAmOm50aC1jaGlsZChuKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4taGVpZ2h0LTEycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi15LTEycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LTEycyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtMTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1tYXJnaW4tdG9wLTEycyB7XG4gIG1hcmdpbi10b3A6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1ib3R0b20tMTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIG1hcmdpbi1ib3R0b206IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy0xMnMge1xuICBwYWRkaW5nOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLTEycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LTEycyB7XG4gICYsICY6bnRoLWNoaWxkKG4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xuICB9XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1oZWlnaHQtMTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXktMTJzIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtMTJzIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LTEycyB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctc3BhY2luZy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctdG9wLTEycyB7XG4gIHBhZGRpbmctdG9wOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWJvdHRvbS0xMnMge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctYm9yZGVyLXJhZGl1cy0xMnMge1xuICBib3JkZXItcmFkaXVzOiB2YXIoIC0tc2N3LXNwYWNpbmctMTIgKTtcbn1cblxuQG1peGluIHNjdy1nYXAtMTJzIHtcbiAgPiAqIHtcbiAgICAtLWdhcDogdmFyKCAtLXNjdy1zcGFjaW5nLTEyICk7XG4gIH1cbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0wIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0wIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTAgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTAge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTAge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0wIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTAge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0wLTMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0wLTMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMC0zIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0wLTMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMC0zIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0wLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0wLTMge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMC0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0wLTMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0wLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTAtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMC0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0wLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTAtNCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTAtNCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0wLTQge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTAtNCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0wLTQge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTAtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTAtNCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0wLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTAtNCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTAtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMC00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0wLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTAtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMC02IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMC02IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTAtNiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMC02IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTAtNiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMC02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMC02IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTAtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMC02IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMC02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0wLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTAtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMC02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0wLTgge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0wLTgge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMC04IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0wLTgge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMC04IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0wLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0wLTgge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMC04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0wLTgge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0wLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTAtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMC04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0wLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTAtOSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTAtOSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0wLTkge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTAtOSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0wLTkge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTAtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTAtOSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0wLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTAtOSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTAtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMC05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0wLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTAtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0wLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0xIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0xIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTEgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTEge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTEge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0xIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTEge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0xLTMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0xLTMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMS0zIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0xLTMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMS0zIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0xLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0xLTMge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMS0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0xLTMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0xLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTEtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMS0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0xLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTEtNCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTEtNCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0xLTQge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTEtNCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0xLTQge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTEtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTEtNCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0xLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTEtNCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTEtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMS00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0xLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTEtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMS02IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMS02IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTEtNiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMS02IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTEtNiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMS02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMS02IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTEtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMS02IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMS02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0xLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTEtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMS02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0xLTgge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0xLTgge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMS04IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0xLTgge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMS04IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0xLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0xLTgge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMS04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0xLTgge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0xLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTEtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMS04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0xLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTEtOSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTEtOSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0xLTkge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTEtOSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0xLTkge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTEtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTEtOSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0xLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTEtOSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTEtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMS05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0xLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTEtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0yIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0yIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTIgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTIge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTIge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0yIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTIge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0yLTMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0yLTMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMi0zIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0yLTMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMi0zIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0yLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0yLTMge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMi0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0yLTMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0yLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTItMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMi0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0yLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTItNCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTItNCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0yLTQge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTItNCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0yLTQge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTItNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTItNCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0yLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTItNCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTItNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMi00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0yLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTItNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMi02IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMi02IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTItNiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMi02IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTItNiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMi02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMi02IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTItNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMi02IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMi02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0yLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTItNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMi02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0yLTgge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0yLTgge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMi04IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0yLTgge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMi04IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0yLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0yLTgge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMi04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0yLTgge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0yLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTItOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMi04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTItOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0yLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTItOSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTItOSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0yLTkge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTItOSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0yLTkge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTItOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTItOSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0yLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTItOSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTItOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMi05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0yLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTItOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0yLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0zIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0zIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0zLTMge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0zLTMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMy0zIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0zLTMge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMy0zIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0zLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0zLTMge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMy0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0zLTMge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0zLTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTMtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMy0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0zLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTMtNCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTMtNCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0zLTQge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTMtNCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0zLTQge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTMtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTMtNCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0zLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTMtNCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTMtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMy00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0zLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTMtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMy02IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMy02IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTMtNiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMy02IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTMtNiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMy02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMy02IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTMtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMy02IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMy02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0zLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTMtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMy02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0zLTgge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0zLTgge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMy04IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0zLTgge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMy04IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0zLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0zLTgge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMy04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0zLTgge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0zLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTMtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMy04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0zLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTMtOSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTMtOSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0zLTkge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTMtOSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0zLTkge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTMtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTMtOSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0zLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTMtOSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTMtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMy05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0zLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTMtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0zLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtNCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC00IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC00IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtNCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtNCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtNCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC01IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTUgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTUge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTUgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTUge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTUgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC01IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtNSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC01IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTUgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtNSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC01IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC01IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtNSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTUgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC01IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTUgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTUge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTUgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtNSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtNSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtNSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC01IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTUgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC01ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTYge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtNiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtNiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTYge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTYge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTYge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC02IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtNiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtNiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtNyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC03IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC03IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC03ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtNyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTcgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtNyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTcge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtNyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtNyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtNyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtNyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtNyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTcge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtNyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtNyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC03IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTcgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTcge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtNyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTcgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtNyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC03ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtNyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC04IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTggKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTgge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTgge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC04IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtOCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC04IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTggKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC04IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtOCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTkge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtOSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtOSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTkge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTkge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtOSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTkge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTkgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC05IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2wtMTAge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sLTEwIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2wtMTAge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2wtMTAge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbC0xMCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2wtMTAge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbC0xMCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbC0xMCB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2wtMTAge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEwICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbC0xMCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sLTEwIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEwICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2wtMTAge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMTAgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbC0xMSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2wtMTEge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sLTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbC0xMSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbC0xMSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sLTExICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sLTExIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sLTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sLTExIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbC0xMSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sLTExIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sLTExIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbC0xMSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sLTExIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2wtMTEge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMTEgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTExICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sLTEyIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbC0xMiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sLTEyIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbC0xMiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sLTEyIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2wtMTIge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2wtMTIge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sLTEyIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2wtMTIge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2wtMTIge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sLTEyIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2wtMTIge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sLTEyICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbC0xMiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbC0xMiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sLTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sLTEyIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sLTEyICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2wtMTIgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0wIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0wIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0wIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0wIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0wIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0wIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0wIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTAge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0wIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTAtMyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0wLTMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTAtMyB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTAtMyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMC0zIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMC0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTAtMyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMC0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMC0zIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTAtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMC0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0wLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTAtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMC00IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTAtNCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMC00IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMC00IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0wLTQge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0wLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMC00IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0wLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0wLTQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMC00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0wLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTAtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMC00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0wLTYge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMC02IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0wLTYge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0wLTYge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTAtNiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTAtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0wLTYge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTAtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTAtNiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0wLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTAtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMC02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0wLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTAtOCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0wLTgge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTAtOCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTAtOCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMC04IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMC04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTAtOCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMC04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMC04IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTAtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMC04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0wLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTAtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMC05IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTAtOSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMC05IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMC05IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0wLTkge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0wLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMC05IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0wLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0wLTkge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMC05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0wLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTAtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTAtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMC05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMC05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0wLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0xIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMSApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0xIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMSB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0xIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMSB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0xIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0xIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0xIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0xIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTEge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0xIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMSApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTEtMyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0xLTMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTEtMyB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTEtMyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMS0zIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMS0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTEtMyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMS0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMS0zIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTEtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMS0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0xLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTEtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMS00IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTEtNCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMS00IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMS00IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0xLTQge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0xLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMS00IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0xLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0xLTQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMS00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0xLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTEtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMS00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0xLTYge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMS02IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0xLTYge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0xLTYge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTEtNiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTEtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0xLTYge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTEtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTEtNiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0xLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTEtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMS02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0xLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTEtOCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0xLTgge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTEtOCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTEtOCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMS04IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMS04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTEtOCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMS04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMS04IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTEtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMS04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0xLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTEtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMS05IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTEtOSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMS05IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMS05IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0xLTkge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0xLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMS05IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0xLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0xLTkge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMS05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0xLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTEtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMS05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMS05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0yIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0yIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0yIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0yIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0yIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0yIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0yIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTIge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0yIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTItMyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0yLTMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTItMyB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTItMyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMi0zIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMi0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTItMyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMi0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMi0zIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTItMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMi0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0yLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTItMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMi00IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTItNCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMi00IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMi00IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0yLTQge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0yLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMi00IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0yLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0yLTQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMi00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0yLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTItNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMi00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0yLTYge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMi02IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0yLTYge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0yLTYge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTItNiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTItNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0yLTYge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTItNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTItNiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0yLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTItNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMi02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0yLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTItOCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0yLTgge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTItOCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTItOCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMi04IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMi04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTItOCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMi04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMi04IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTItOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMi04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0yLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTItOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMi05IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTItOSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMi05IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMi05IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0yLTkge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0yLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMi05IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0yLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0yLTkge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMi05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0yLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTItOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTItOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMi05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMi05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0yLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0zIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0zIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMyB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0zIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0zIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0zIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTMge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTMtMyB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0zLTMge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTMtMyB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTMtMyB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMy0zIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMy0zIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTMtMyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMy0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMy0zIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTMtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMy0zIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0zLTMge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTMgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTMtMyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtMyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy0zICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMy00IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTMtNCB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMy00IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMy00IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0zLTQge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0zLTQge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMy00IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0zLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0zLTQge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMy00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0zLTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTMtNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMy00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy00ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTQgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0zLTYge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMy02IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0zLTYge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0zLTYge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTMtNiB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTMtNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0zLTYge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTMtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTMtNiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0zLTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTMtNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMy02IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0zLTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtNiApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTMtOCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0zLTgge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTMtOCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTMtOCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMy04IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMy04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTMtOCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMy04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMy04IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTMtOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMy04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0zLTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTggKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTMtOCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMy05IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTMtOSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMy05IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMy05IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0zLTkge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0zLTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMy05IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0zLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0zLTkge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMy05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0zLTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTMtOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTMtOSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMy05IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMy05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0zLTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy00IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctNCApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy00IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctNCB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy00IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctNCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy00IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctNCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy00IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy00IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy00ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTQge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctNCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTQgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy00IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTUge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTUge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctNSApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy01IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTUge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy01IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTUge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTUge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy01IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTUge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTUge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNSApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTUgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctNSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy01IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNSApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTUge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy01ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctNiB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctNiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTYge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctNiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctNiB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctNiApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTYge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctNiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTYge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctNiB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctNiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy02IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTYge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy02ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctNiB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTYgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy03IHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctNyApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy03IHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctNyB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy03IHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctNyB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy03IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNyApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy03IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctNyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy03IHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy03IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy03ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTcge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNyApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctNyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTcgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy03IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctNyApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctNyApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTgge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTgge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctOCApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy04IHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTgge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy04IHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTgge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy04IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTgge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTgge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctOCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTggKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctOCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy04IHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctOCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTgge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy04ICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctOSB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctOSB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTkge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctOSApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctOSB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctOSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTkge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctOSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTkge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctOSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctOSB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctOSApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy05IHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTkge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy05ICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctOSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTkgKTtcbn1cblxuQG1peGluIHNjdy13aWR0aC1jb2x2dy0xMCB7XG4gIHdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWluLXdpZHRoLWNvbHZ3LTEwIHtcbiAgbWluLXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWF4LXdpZHRoLWNvbHZ3LTEwIHtcbiAgbWF4LXdpZHRoOiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbGVmdC1jb2x2dy0xMCB7XG4gIGxlZnQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbn1cblxuQG1peGluIHNjdy1yaWdodC1jb2x2dy0xMCB7XG4gIHJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLWxlZnQtY29sdnctMTAge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1yaWdodC1jb2x2dy0xMCB7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctbGVmdC1jb2x2dy0xMCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctcmlnaHQtY29sdnctMTAge1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy13aWR0aC1jb2x2dy0xMCB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy14LWNvbHZ3LTEwIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4td2lkdGgtY29sdnctMTAge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTAgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4teC1jb2x2dy0xMCB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEwICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMCApO1xufVxuXG5AbWl4aW4gc2N3LXdpZHRoLWNvbHZ3LTExIHtcbiAgd2lkdGg6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbn1cblxuQG1peGluIHNjdy1taW4td2lkdGgtY29sdnctMTEge1xuICBtaW4td2lkdGg6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXgtd2lkdGgtY29sdnctMTEge1xuICBtYXgtd2lkdGg6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbn1cblxuQG1peGluIHNjdy1sZWZ0LWNvbHZ3LTExIHtcbiAgbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LXJpZ2h0LWNvbHZ3LTExIHtcbiAgcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tbGVmdC1jb2x2dy0xMSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXJpZ2h0LWNvbHZ3LTExIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1sZWZ0LWNvbHZ3LTExIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG59XG5cbkBtaXhpbiBzY3ctcGFkZGluZy1yaWdodC1jb2x2dy0xMSB7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXdpZHRoLWNvbHZ3LTExIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXgtY29sdnctMTEge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi13aWR0aC1jb2x2dy0xMSB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMSApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi14LWNvbHZ3LTExIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTEgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTExICk7XG59XG5cbkBtaXhpbiBzY3ctd2lkdGgtY29sdnctMTIge1xuICB3aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1pbi13aWR0aC1jb2x2dy0xMiB7XG4gIG1pbi13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1heC13aWR0aC1jb2x2dy0xMiB7XG4gIG1heC13aWR0aDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LWxlZnQtY29sdnctMTIge1xuICBsZWZ0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG59XG5cbkBtaXhpbiBzY3ctcmlnaHQtY29sdnctMTIge1xuICByaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LW1hcmdpbi1sZWZ0LWNvbHZ3LTEyIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbn1cblxuQG1peGluIHNjdy1tYXJnaW4tcmlnaHQtY29sdnctMTIge1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLWxlZnQtY29sdnctMTIge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbn1cblxuQG1peGluIHNjdy1wYWRkaW5nLXJpZ2h0LWNvbHZ3LTEyIHtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmctd2lkdGgtY29sdnctMTIge1xuICBwYWRkaW5nLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xufVxuXG5AbWl4aW4gc2N3LXBhZGRpbmcteC1jb2x2dy0xMiB7XG4gIHBhZGRpbmctbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXdpZHRoLWNvbHZ3LTEyIHtcbiAgbWFyZ2luLWxlZnQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tc2N3LWNvbHZ3LTEyICk7XG59XG5cbkBtaXhpbiBzY3ctbWFyZ2luLXgtY29sdnctMTIge1xuICBtYXJnaW4tbGVmdDogdmFyKCAtLXNjdy1jb2x2dy0xMiApO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1zY3ctY29sdnctMTIgKTtcbn1cblxuQG1peGluIHNjdy1maWxsLTEge1xuICBmbGV4OiAxO1xufVxuXG5cbkBtaXhpbiBzY3ctZmlsbC0yIHtcbiAgZmxleDogMjtcbn1cblxuXG5AbWl4aW4gc2N3LWZpbGwtMyB7XG4gIGZsZXg6IDM7XG59XG5cblxuQG1peGluIHNjdy1maWxsLTQge1xuICBmbGV4OiA0O1xufVxuXG5cbkBtaXhpbiBzY3ctZmlsbC01IHtcbiAgZmxleDogNTtcbn1cblxuXG5AbWl4aW4gc2N3LWZpbGwtNiB7XG4gIGZsZXg6IDY7XG59XG5cblxuQG1peGluIHNjdy1maWxsLTcge1xuICBmbGV4OiA3O1xufVxuXG5cbkBtaXhpbiBzY3ctZmlsbC04IHtcbiAgZmxleDogODtcbn1cblxuXG5AbWl4aW4gc2N3LWZpbGwtOSB7XG4gIGZsZXg6IDk7XG59XG5cblxuQG1peGluIHNjdy1maWxsIHtcbiAgZmxleDogMTtcbn1cblxuXG5AbWl4aW4gc2N3LWZpbGwtY29udGFpbmVyIHtcbiAgJiwgJjpudGgtY2hpbGQobikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gIH1cbn1cblxuQG1peGluIHNjdy1lbGVtZW50LWluaXRpYWwge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcblxuICBkaXNwbGF5OiBibG9jaztcbn1cblxuXG5AbWl4aW4gc2N3LXN0YWNrLWluaXRpYWwoJGlzU2xvdDogZmFsc2UpIHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOm50aC1jaGlsZChuKSApJywgXG4gICAgJz4gKjpudGgtY2hpbGQobiknXG4gICl9IHtcbiAgICBcbiAgICAtLWdhcC1oLWludDogMHB4O1xuICAgIC0tZ2FwLXYtaW50OiB2YXIoIC0tZ2FwLCB2YXIoIC0tZ2FwLXYsIGluaXRpYWwgKSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bGFzdC1jaGlsZCApJywgXG4gICAgJz4gKjpsYXN0LWNoaWxkJ1xuICApfSB7XG4gICAgLS1nYXAtdi1pbnQ6IDBweDtcbiAgfVxufVxuXG5cbkBtaXhpbiBzY3ctbGF5b3V0LWluaXRpYWwoJGlzU2xvdDogZmFsc2UpIHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOm50aC1jaGlsZChuKSApJywgXG4gICAgJz4gKjpudGgtY2hpbGQobiknXG4gICl9IHtcbiAgICBcbiAgICAtLWdhcC1oLWludDogMHB4O1xuICAgIC0tZ2FwLXYtaW50OiB2YXIoIC0tZ2FwLCB2YXIoIC0tZ2FwLXYsIGluaXRpYWwgKSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bGFzdC1jaGlsZCApJywgXG4gICAgJz4gKjpsYXN0LWNoaWxkJ1xuICApfSB7XG4gICAgLS1nYXAtdi1pbnQ6IDBweDtcbiAgfVxufVxuXG5cbkBtaXhpbiBzY3ctZmxleC1oLWluaXRpYWwoJGlzU2xvdDogZmFsc2UpIHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG4gIFxuICAvKiBzY3cgZmxleCBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1hbGlnbi1pdGVtczogaW5pdGlhbDtcbiAgLS1qdXN0aWZ5LWNvbnRlbnQ6IGluaXRpYWw7XG4gIGFsaWduLWl0ZW1zOiB2YXIoIC0tYWxpZ24taXRlbXMgLCB2YXIoIC0tYWktaW50LCBmbGV4LXN0YXJ0ICkgKTtcbiAganVzdGlmeS1jb250ZW50OiB2YXIoIC0tanVzdGlmeS1jb250ZW50ICwgdmFyKCAtLWpjLWludCwgZmxleC1zdGFydCApICk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuXG4gIC0tYWktaDogZmxleC1zdGFydDtcbiAgLS1qYy1oOiBmbGV4LXN0YXJ0O1xuICAtLWFpLWludDogdmFyKCAtLWFpLWgsIGluaXRpYWwgKTtcbiAgLS1qYy1pbnQ6IHZhciggLS1qYy1oLCBpbml0aWFsICk7XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOm50aC1jaGlsZChuKSApJywgXG4gICAgJz4gKjpudGgtY2hpbGQobiknXG4gICl9IHtcbiAgICBcbiAgICAtLWdhcC1oLWludDogdmFyKCAtLWdhcCAsIHZhciggLS1nYXAtaCwgaW5pdGlhbCApKTtcbiAgICAtLWdhcC12LWludDogMHB4O1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOmxhc3QtY2hpbGQgKScsIFxuICAgICc+ICo6bGFzdC1jaGlsZCdcbiAgKX0ge1xuICAgIC0tZ2FwLWgtaW50OiAwcHg7XG4gIH1cbn1cblxuXG5AbWl4aW4gc2N3LWZsZXgtdi1pbml0aWFsKCRpc1Nsb3Q6IGZhbHNlKSB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuICBcbiAgLyogc2N3IGZsZXggZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tYWxpZ24taXRlbXM6IGluaXRpYWw7XG4gIC0tanVzdGlmeS1jb250ZW50OiBpbml0aWFsO1xuICBhbGlnbi1pdGVtczogdmFyKCAtLWFsaWduLWl0ZW1zICwgdmFyKCAtLWFpLWludCwgZmxleC1zdGFydCApICk7XG4gIGp1c3RpZnktY29udGVudDogdmFyKCAtLWp1c3RpZnktY29udGVudCAsIHZhciggLS1qYy1pbnQsIGZsZXgtc3RhcnQgKSApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcblxuICAtLWFpLXY6IGZsZXgtc3RhcnQ7XG4gIC0tamMtdjogZmxleC1zdGFydDtcbiAgLS1haS1pbnQ6IHZhciggLS1haS12LCBpbml0aWFsICk7XG4gIC0tamMtaW50OiB2YXIoIC0tamMtdiwgaW5pdGlhbCApO1xuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpudGgtY2hpbGQobikgKScsIFxuICAgICc+ICo6bnRoLWNoaWxkKG4pJ1xuICApfSB7XG4gICAgXG4gICAgLS1nYXAtaC1pbnQ6IDBweDtcbiAgICAtLWdhcC12LWludDogdmFyKCAtLWdhcCwgdmFyKCAtLWdhcC12LCBpbml0aWFsICkpO1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOmxhc3QtY2hpbGQgKScsIFxuICAgICc+ICo6bGFzdC1jaGlsZCdcbiAgKX0ge1xuICAgIC0tZ2FwLXYtaW50OiAwcHg7XG4gIH1cbn1cblxuXG5AbWl4aW4gc2N3LWNlbnRlci1pbml0aWFsKCRpc1Nsb3Q6IGZhbHNlKSB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuICBcbiAgLyogc2N3IGZsZXggZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tYWxpZ24taXRlbXM6IGluaXRpYWw7XG4gIC0tanVzdGlmeS1jb250ZW50OiBpbml0aWFsO1xuICBhbGlnbi1pdGVtczogdmFyKCAtLWFsaWduLWl0ZW1zICwgdmFyKCAtLWFpLWludCwgZmxleC1zdGFydCApICk7XG4gIGp1c3RpZnktY29udGVudDogdmFyKCAtLWp1c3RpZnktY29udGVudCAsIHZhciggLS1qYy1pbnQsIGZsZXgtc3RhcnQgKSApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcblxuICAtLWFpLXY6IGNlbnRlcjtcbiAgLS1qYy12OiBjZW50ZXI7XG4gIC0tYWktaW50OiB2YXIoIC0tYWktdiwgaW5pdGlhbCApO1xuICAtLWpjLWludDogdmFyKCAtLWpjLXYsIGluaXRpYWwgKTtcblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bnRoLWNoaWxkKG4pICknLCBcbiAgICAnPiAqOm50aC1jaGlsZChuKSdcbiAgKX0ge1xuICAgIFxuICAgIC0tZ2FwLWgtaW50OiAwcHg7XG4gICAgLS1nYXAtdi1pbnQ6IHZhciggLS1nYXAsIHZhciggLS1nYXAtdiwgaW5pdGlhbCApKTtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpsYXN0LWNoaWxkICknLCBcbiAgICAnPiAqOmxhc3QtY2hpbGQnXG4gICl9IHtcbiAgICAtLWdhcC12LWludDogMHB4O1xuICB9XG59XG5cblxuQG1peGluIHNjdy1mbG9hdC1pbml0aWFsKCRpc1Nsb3Q6IGZhbHNlKSB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOm50aC1jaGlsZChuKSApJywgXG4gICAgJz4gKjpudGgtY2hpbGQobiknXG4gICl9IHtcbiAgICBcbiAgICAtLWdhcC1oLWludDogMHB4O1xuICAgIC0tZ2FwLXYtaW50OiB2YXIoIC0tZ2FwLCB2YXIoIC0tZ2FwLXYsIGluaXRpYWwgKSk7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IGxlZnQ7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bGFzdC1jaGlsZCApJywgXG4gICAgJz4gKjpsYXN0LWNoaWxkJ1xuICApfSB7XG4gICAgLS1nYXAtdi1pbnQ6IDBweDtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LWVsZW1lbnQge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcblxuICBkaXNwbGF5OiBibG9jaztcbn1cblxuXG5AbWl4aW4gc2N3LXN0YWNrKCRpc1Nsb3Q6IGZhbHNlKSB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpudGgtY2hpbGQobikgKScsIFxuICAgICc+ICo6bnRoLWNoaWxkKG4pJ1xuICApfSB7XG4gICAgXG4gICAgLS1nYXAtaC1pbnQ6IDBweDtcbiAgICAtLWdhcC12LWludDogdmFyKCAtLWdhcCwgdmFyKCAtLWdhcC12LCBpbml0aWFsICkpO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOmxhc3QtY2hpbGQgKScsIFxuICAgICc+ICo6bGFzdC1jaGlsZCdcbiAgKX0ge1xuICAgIC0tZ2FwLXYtaW50OiAwcHg7XG4gIH1cbn1cblxuXG5AbWl4aW4gc2N3LWxheW91dCgkaXNTbG90OiBmYWxzZSkge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcblxuICBkaXNwbGF5OiBibG9jaztcblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bnRoLWNoaWxkKG4pICknLCBcbiAgICAnPiAqOm50aC1jaGlsZChuKSdcbiAgKX0ge1xuICAgIFxuICAgIC0tZ2FwLWgtaW50OiAwcHg7XG4gICAgLS1nYXAtdi1pbnQ6IHZhciggLS1nYXAsIHZhciggLS1nYXAtdiwgaW5pdGlhbCApKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpsYXN0LWNoaWxkICknLCBcbiAgICAnPiAqOmxhc3QtY2hpbGQnXG4gICl9IHtcbiAgICAtLWdhcC12LWludDogMHB4O1xuICB9XG59XG5cblxuQG1peGluIHNjdy1mbGV4LWgoJGlzU2xvdDogZmFsc2UpIHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG4gIFxuICAvKiBzY3cgZmxleCBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1hbGlnbi1pdGVtczogaW5pdGlhbDtcbiAgLS1qdXN0aWZ5LWNvbnRlbnQ6IGluaXRpYWw7XG4gIGFsaWduLWl0ZW1zOiB2YXIoIC0tYWxpZ24taXRlbXMgLCB2YXIoIC0tYWktaW50LCBmbGV4LXN0YXJ0ICkgKTtcbiAganVzdGlmeS1jb250ZW50OiB2YXIoIC0tanVzdGlmeS1jb250ZW50ICwgdmFyKCAtLWpjLWludCwgZmxleC1zdGFydCApICk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuXG4gIC0tYWktaDogZmxleC1zdGFydDtcbiAgLS1qYy1oOiBmbGV4LXN0YXJ0O1xuICAtLWFpLWludDogdmFyKCAtLWFpLWgsIGluaXRpYWwgKTtcbiAgLS1qYy1pbnQ6IHZhciggLS1qYy1oLCBpbml0aWFsICk7XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOm50aC1jaGlsZChuKSApJywgXG4gICAgJz4gKjpudGgtY2hpbGQobiknXG4gICl9IHtcbiAgICBcbiAgICAtLWdhcC1oLWludDogdmFyKCAtLWdhcCAsIHZhciggLS1nYXAtaCwgaW5pdGlhbCApKTtcbiAgICAtLWdhcC12LWludDogMHB4O1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOmxhc3QtY2hpbGQgKScsIFxuICAgICc+ICo6bGFzdC1jaGlsZCdcbiAgKX0ge1xuICAgIC0tZ2FwLWgtaW50OiAwcHg7XG4gIH1cbn1cblxuXG5AbWl4aW4gc2N3LWZsZXgtdigkaXNTbG90OiBmYWxzZSkge1xuICBcbiAgLyogc2N3IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLW1hcmdpbi1yaWdodDogaW5pdGlhbDtcbiAgLS1tYXJnaW4tYm90dG9tOiBpbml0aWFsO1xuICAtLWdhcC1oLWludDogaW5pdGlhbDtcbiAgLS1nYXAtdi1pbnQ6IGluaXRpYWw7XG4gIG1hcmdpbi1yaWdodDogdmFyKCAtLW1hcmdpbi1yaWdodCwgdmFyKCAtLWdhcC1oLWludCwgaW5pdGlhbCApICk7XG4gIG1hcmdpbi1ib3R0b206IHZhciggLS1tYXJnaW4tYm90dG9tLCB2YXIoIC0tZ2FwLXYtaW50LCBpbml0aWFsICkgKTtcbiAgXG4gIC8qIHNjdyBmbGV4IGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtLWFsaWduLWl0ZW1zOiBpbml0aWFsO1xuICAtLWp1c3RpZnktY29udGVudDogaW5pdGlhbDtcbiAgYWxpZ24taXRlbXM6IHZhciggLS1hbGlnbi1pdGVtcyAsIHZhciggLS1haS1pbnQsIGZsZXgtc3RhcnQgKSApO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHZhciggLS1qdXN0aWZ5LWNvbnRlbnQgLCB2YXIoIC0tamMtaW50LCBmbGV4LXN0YXJ0ICkgKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG5cbiAgLS1haS12OiBmbGV4LXN0YXJ0O1xuICAtLWpjLXY6IGZsZXgtc3RhcnQ7XG4gIC0tYWktaW50OiB2YXIoIC0tYWktdiwgaW5pdGlhbCApO1xuICAtLWpjLWludDogdmFyKCAtLWpjLXYsIGluaXRpYWwgKTtcblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bnRoLWNoaWxkKG4pICknLCBcbiAgICAnPiAqOm50aC1jaGlsZChuKSdcbiAgKX0ge1xuICAgIFxuICAgIC0tZ2FwLWgtaW50OiAwcHg7XG4gICAgLS1nYXAtdi1pbnQ6IHZhciggLS1nYXAsIHZhciggLS1nYXAtdiwgaW5pdGlhbCApKTtcbiAgfVxuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpsYXN0LWNoaWxkICknLCBcbiAgICAnPiAqOmxhc3QtY2hpbGQnXG4gICl9IHtcbiAgICAtLWdhcC12LWludDogMHB4O1xuICB9XG59XG5cblxuQG1peGluIHNjdy1jZW50ZXIoJGlzU2xvdDogZmFsc2UpIHtcbiAgXG4gIC8qIHNjdyBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1tYXJnaW4tcmlnaHQ6IGluaXRpYWw7XG4gIC0tbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgLS1nYXAtaC1pbnQ6IGluaXRpYWw7XG4gIC0tZ2FwLXYtaW50OiBpbml0aWFsO1xuICBtYXJnaW4tcmlnaHQ6IHZhciggLS1tYXJnaW4tcmlnaHQsIHZhciggLS1nYXAtaC1pbnQsIGluaXRpYWwgKSApO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoIC0tbWFyZ2luLWJvdHRvbSwgdmFyKCAtLWdhcC12LWludCwgaW5pdGlhbCApICk7XG4gIFxuICAvKiBzY3cgZmxleCBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLS1hbGlnbi1pdGVtczogaW5pdGlhbDtcbiAgLS1qdXN0aWZ5LWNvbnRlbnQ6IGluaXRpYWw7XG4gIGFsaWduLWl0ZW1zOiB2YXIoIC0tYWxpZ24taXRlbXMgLCB2YXIoIC0tYWktaW50LCBmbGV4LXN0YXJ0ICkgKTtcbiAganVzdGlmeS1jb250ZW50OiB2YXIoIC0tanVzdGlmeS1jb250ZW50ICwgdmFyKCAtLWpjLWludCwgZmxleC1zdGFydCApICk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuXG4gIC0tYWktdjogY2VudGVyO1xuICAtLWpjLXY6IGNlbnRlcjtcbiAgLS1haS1pbnQ6IHZhciggLS1haS12LCBpbml0aWFsICk7XG4gIC0tamMtaW50OiB2YXIoIC0tamMtdiwgaW5pdGlhbCApO1xuXG4gICN7aWYoJGlzU2xvdCwgXG4gICAgJzo6c2xvdHRlZCggKjpudGgtY2hpbGQobikgKScsIFxuICAgICc+ICo6bnRoLWNoaWxkKG4pJ1xuICApfSB7XG4gICAgXG4gICAgLS1nYXAtaC1pbnQ6IDBweDtcbiAgICAtLWdhcC12LWludDogdmFyKCAtLWdhcCwgdmFyKCAtLWdhcC12LCBpbml0aWFsICkpO1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOmxhc3QtY2hpbGQgKScsIFxuICAgICc+ICo6bGFzdC1jaGlsZCdcbiAgKX0ge1xuICAgIC0tZ2FwLXYtaW50OiAwcHg7XG4gIH1cbn1cblxuXG5AbWl4aW4gc2N3LWZsb2F0KCRpc1Nsb3Q6IGZhbHNlKSB7XG4gIFxuICAvKiBzY3cgZWxlbWVudCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC0tbWFyZ2luLXJpZ2h0OiBpbml0aWFsO1xuICAtLW1hcmdpbi1ib3R0b206IGluaXRpYWw7XG4gIC0tZ2FwLWgtaW50OiBpbml0aWFsO1xuICAtLWdhcC12LWludDogaW5pdGlhbDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoIC0tbWFyZ2luLXJpZ2h0LCB2YXIoIC0tZ2FwLWgtaW50LCBpbml0aWFsICkgKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKCAtLW1hcmdpbi1ib3R0b20sIHZhciggLS1nYXAtdi1pbnQsIGluaXRpYWwgKSApO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG5cbiAgI3tpZigkaXNTbG90LCBcbiAgICAnOjpzbG90dGVkKCAqOm50aC1jaGlsZChuKSApJywgXG4gICAgJz4gKjpudGgtY2hpbGQobiknXG4gICl9IHtcbiAgICBcbiAgICAtLWdhcC1oLWludDogMHB4O1xuICAgIC0tZ2FwLXYtaW50OiB2YXIoIC0tZ2FwLCB2YXIoIC0tZ2FwLXYsIGluaXRpYWwgKSk7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IGxlZnQ7XG4gIH1cblxuICAje2lmKCRpc1Nsb3QsIFxuICAgICc6OnNsb3R0ZWQoICo6bGFzdC1jaGlsZCApJywgXG4gICAgJz4gKjpsYXN0LWNoaWxkJ1xuICApfSB7XG4gICAgLS1nYXAtdi1pbnQ6IDBweDtcbiAgfVxufVxuXG5AbWl4aW4gc2N3LXNjcm9sbC15IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuXG5AbWl4aW4gc2N3LWZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuXG5AbWl4aW4gc2N3LWZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5cbkBtaXhpbiBzY3ctZmxvYXQtY2xlYXItbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbGVmdDtcbn1cblxuXG5AbWl4aW4gc2N3LWZsb2F0LWNsZWFyLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBjbGVhcjogcmlnaHQ7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtY2VudGVyIHtcbiAgLS1haS1oOiBjZW50ZXI7XG4gIC0tamMtaDogY2VudGVyO1xuICAtLWFpLXY6IGNlbnRlcjtcbiAgLS1qYy12OiBjZW50ZXI7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1jZW50ZXItY2VudGVyIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1jZW50ZXI7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtY2VudGVyLWxlZnQge1xuICAtLWFpLWg6IGNlbnRlcjtcbiAgLS1qYy1oOiBmbGV4LXN0YXJ0O1xuICAtLWFpLXY6IGZsZXgtc3RhcnQ7XG4gIC0tamMtdjogY2VudGVyO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtbGVmdC1jZW50ZXIge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LWNlbnRlci1sZWZ0O1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWNlbnRlci1yaWdodCB7XG4gIC0tYWktaDogY2VudGVyO1xuICAtLWpjLWg6IGZsZXgtZW5kO1xuICAtLWFpLXY6IGZsZXgtZW5kO1xuICAtLWpjLXY6IGNlbnRlcjtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXJpZ2h0LWNlbnRlciB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtY2VudGVyLXJpZ2h0O1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXRvcCB7XG4gIC0tYWktaDogZmxleC1zdGFydDtcbiAgLS1qYy1oOiBmbGV4LXN0YXJ0O1xuICAtLWFpLXY6IGZsZXgtc3RhcnQ7XG4gIC0tamMtdjogZmxleC1zdGFydDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXRvcC1sZWZ0IHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC10b3A7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1sZWZ0LXRvcCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtdG9wO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtbGVmdCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtdG9wO1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXRvcC1jZW50ZXIge1xuICAtLWFpLWg6IGZsZXgtc3RhcnQ7XG4gIC0tamMtaDogY2VudGVyO1xuICAtLWFpLXY6IGNlbnRlcjtcbiAgLS1qYy12OiBmbGV4LXN0YXJ0O1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtY2VudGVyLXRvcCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtdG9wLWNlbnRlcjtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC10b3AtcmlnaHQge1xuICAtLWFpLWg6IGZsZXgtc3RhcnQ7XG4gIC0tamMtaDogZmxleC1lbmQ7XG4gIC0tYWktdjogZmxleC1lbmQ7XG4gIC0tamMtdjogZmxleC1zdGFydDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXJpZ2h0LXRvcCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtdG9wLXJpZ2h0O1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtcmlnaHQge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXRvcC1yaWdodDtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC1ib3R0b20ge1xuICAtLWFpLWg6IGZsZXgtZW5kO1xuICAtLWpjLWg6IGZsZXgtc3RhcnQ7XG4gIC0tYWktdjogZmxleC1zdGFydDtcbiAgLS1qYy12OiBmbGV4LWVuZDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWJvdHRvbS1sZWZ0IHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1ib3R0b207XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1sZWZ0LWJvdHRvbSB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtYm90dG9tO1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWJvdHRvbS1jZW50ZXIge1xuICAtLWFpLWg6IGZsZXgtZW5kO1xuICAtLWpjLWg6IGNlbnRlcjtcbiAgLS1haS12OiBjZW50ZXI7XG4gIC0tamMtdjogZmxleC1lbmQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1jZW50ZXItYm90dG9tIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1ib3R0b20tY2VudGVyO1xufVxuXG5cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWJvdHRvbS1yaWdodCB7XG4gIC0tYWktaDogZmxleC1lbmQ7XG4gIC0tamMtaDogZmxleC1lbmQ7XG4gIC0tYWktdjogZmxleC1lbmQ7XG4gIC0tamMtdjogZmxleC1lbmQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1yaWdodC1ib3R0b20ge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LWJvdHRvbS1yaWdodDtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC1zdHJldGNoIHtcbiAgLS1haS1oOiBzdHJldGNoO1xuICAtLWpjLWg6IGZsZXgtc3RhcnQ7XG4gIC0tYWktdjogc3RyZXRjaDtcbiAgLS1qYy12OiBmbGV4LXN0YXJ0O1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtc3RyZXRjaC1sZWZ0IHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1zdHJldGNoO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtbGVmdC1zdHJldGNoIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1zdHJldGNoO1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtc3RyZXRjaC10b3Age1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXN0cmV0Y2g7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC10b3Atc3RyZXRjaCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtc3RyZXRjaDtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC1zdHJldGNoLXJpZ2h0IHtcbiAgLS1haS1oOiBzdHJldGNoO1xuICAtLWpjLWg6IGZsZXgtZW5kO1xuICAtLWFpLXY6IHN0cmV0Y2g7XG4gIC0tamMtdjogZmxleC1lbmQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1yaWdodC1zdHJldGNoIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1zdHJldGNoLXJpZ2h0O1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtc3RyZXRjaC1ib3R0b20ge1xuICBAaW5jbHVkZSBzY3ctYWxpZ25tZW50LXN0cmV0Y2gtcmlnaHQ7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1ib3R0b20tc3RyZXRjaCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtc3RyZXRjaC1yaWdodDtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC1zdHJldGNoLWNlbnRlciB7XG4gIC0tYWktaDogc3RyZXRjaDtcbiAgLS1qYy1oOiBjZW50ZXI7XG4gIC0tYWktdjogc3RyZXRjaDtcbiAgLS1qYy12OiBjZW50ZXI7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1jZW50ZXItc3RyZXRjaCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtc3RyZXRjaC1jZW50ZXI7XG59XG5cblxuQG1peGluIHNjdy1hbGlnbm1lbnQtYmFzZWxpbmUge1xuICAtLWFpLWg6IGJhc2VsaW5lO1xuICAtLWpjLWg6IGZsZXgtc3RhcnQ7XG4gIC0tYWktdjogZmxleC1zdGFydDtcbiAgLS1qYy12OiBmbGV4LXN0YXJ0O1xufVxuQG1peGluIHNjdy1hbGlnbm1lbnQtYmFzZWxpbmUtbGVmdCB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtYmFzZWxpbmU7XG59XG5AbWl4aW4gc2N3LWFsaWdubWVudC1sZWZ0LWJhc2VsaW5lIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1iYXNlbGluZTtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC1iYXNlbGluZS1yaWdodCB7XG4gIC0tYWktaDogYmFzZWxpbmU7XG4gIC0tamMtaDogZmxleC1lbmQ7XG4gIC0tYWktdjogZmxleC1lbmQ7XG4gIC0tamMtdjogZmxleC1zdGFydDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LXJpZ2h0LWJhc2VsaW5lIHtcbiAgQGluY2x1ZGUgc2N3LWFsaWdubWVudC1iYXNlbGluZS1yaWdodDtcbn1cblxuXG5AbWl4aW4gc2N3LWFsaWdubWVudC1iYXNlbGluZS1jZW50ZXIge1xuICAtLWFpLWg6IGJhc2VsaW5lO1xuICAtLWpjLWg6IGNlbnRlcjtcbiAgLS1haS12OiBjZW50ZXI7XG4gIC0tamMtdjogZmxleC1zdGFydDtcbn1cbkBtaXhpbiBzY3ctYWxpZ25tZW50LWNlbnRlci1iYXNlbGluZSB7XG4gIEBpbmNsdWRlIHNjdy1hbGlnbm1lbnQtYmFzZWxpbmUtY2VudGVyO1xufVxuXG5cbkBtaXhpbiBzY3ctZmlsbC1jaGlsZHJlbiB7XG4gID4gKiB7XG4gICAgZmxleDogMTtcbiAgfVxufVxuQG1peGluIHNjdy1jaGlsZHJlbi1maWxsIHtcbiAgQGluY2x1ZGUgc2N3LWZpbGwtY2hpbGRyZW47XG59XG5cblxuQG1peGluIHNjdy1oaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiJdfQ== */`;\n", "import {html} from 'lit';\nimport {property, query} from 'lit/decorators.js';\nimport {ifDefined} from 'lit/directives/if-defined.js';\nimport ScwComponent from '../scw-component/ScwComponent';\nimport {Components} from '../utils/enums/Components';\nimport styles from './scss/scw-link-base.scss';\n\n/**\n * ScwLinkBase\n * @class\n * @tag scw-link-base\n *\n * @slot [default=\"<a href target />\"]\n (OPTIONAL) anchor (for SEO) will determine the label, href, and target.\n * @slot [default=\"<... />\"]\n (OPTIONAL) random content (paired with design=\"plain\") will wrap that\n content with a link.\n */\nexport default class ScwLinkBase extends ScwComponent {/**\n * styles\n */\n static get styles() {\n return [\n super.styles,\n styles,\n ];\n }\n\n // ============== ScwLinkBase =======================================\n /**\n * (ScwLinkBase)\n */\n @property({type: String, reflect: true})\n href : string | undefined;\n\n /**\n * (ScwLinkBase)\n */\n @property({type: String, reflect: true})\n target : '_blank' | '_parent' | '_self' | '_top' | undefined;\n\n @query('a.scw-link-base')\n linkAnchor: HTMLAnchorElement | undefined;\n\n /**\n * Constructor\n */\n constructor() {\n super();\n this.element = Components.linkBase;\n this.isLink = true;\n }\n\n /**\n * request update\n */\n updated() {\n if (this.ariaDisabled === 'true') {\n this.addEventListener('click', this.cancelEvent, {capture: true} );\n } else {\n this.removeEventListener('click', this.cancelEvent, {capture: true} );\n }\n }\n\n /**\n * cancel event\n * @param {Event} evt\n */\n cancelEvent(evt: Event) {\n evt.preventDefault();\n evt.stopImmediatePropagation();\n }\n\n /**\n * focus\n */\n focus(): void {\n if (this.linkAnchor) {\n this.linkAnchor.focus();\n }\n }\n\n /**\n * renderLink\n * @param {object} children\n * @param {string} styles\n * @return {object} component DOM\n */\n renderLink(children: object, styles?: string): object {\n if (this.ariaDisabled !== 'true') {\n return html`\n <a\n class=\"scw-link-base\"\n style=\"${ifDefined(styles)}\"\n href=\"${this.href ? this.href : 'javascript:'}\"\n target=\"${this.target ? this.target : '_self'}\"\n aria-label=\"${this.ariaLabel}\">\n ${children}\n </a>`;\n } else {\n // need a consistent container for styling\n return html`\n <div class=\"scw-link-base\"\n style=\"${ifDefined(styles)}\">\n ${children}\n </div>`;\n }\n }\n\n /**\n * render\n * @return {object} component DOM\n */\n render(): object {\n return this.renderLink(\n html`${this._lastWarning ? this._lastWarning : this.ariaLabel}`,\n );\n }\n}\n"],
5
+ "mappings": "sNACA,IAAOA,EAAQC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;692wBCiBf,IAAqBC,EAArB,cAAyCC,CAAa,CA6BpD,aAAc,CACZ,MAAM,EACN,KAAK,oBACL,KAAK,OAAS,EAChB,CA9BA,WAAW,QAAS,CAClB,MAAO,CACL,MAAM,OACNC,CACF,CACF,CA8BA,SAAU,CACJ,KAAK,eAAiB,OACxB,KAAK,iBAAiB,QAAS,KAAK,YAAa,CAAC,QAAS,EAAI,CAAE,EAEjE,KAAK,oBAAoB,QAAS,KAAK,YAAa,CAAC,QAAS,EAAI,CAAE,CAExE,CAMA,YAAYC,EAAY,CACtBA,EAAI,eAAe,EACnBA,EAAI,yBAAyB,CAC/B,CAKA,OAAc,CACR,KAAK,YACP,KAAK,WAAW,MAAM,CAE1B,CAQA,WAAWC,EAAkBC,EAAyB,CACpD,OAAI,KAAK,eAAiB,OACjBC;AAAA;AAAA;AAAA,mBAGMC,EAAUF,CAAM;AAAA,kBACjB,KAAK,KAAO,KAAK,KAAO;AAAA,oBACtB,KAAK,OAAS,KAAK,OAAS;AAAA,wBACxB,KAAK;AAAA,YACjBD;AAAA,cAICE;AAAA;AAAA,mBAEMC,EAAUF,CAAM;AAAA,YACvBD;AAAA,eAGV,CAMA,QAAiB,CACf,OAAO,KAAK,WACRE,IAAO,KAAK,aAAe,KAAK,aAAe,KAAK,WACxD,CACF,CACF,EArFIE,EAAA,CADDC,EAAS,CAAC,KAAM,OAAQ,QAAS,EAAI,CAAC,GAdpBT,EAejB,oBAMAQ,EAAA,CADDC,EAAS,CAAC,KAAM,OAAQ,QAAS,EAAI,CAAC,GApBpBT,EAqBjB,sBAGAQ,EAAA,CADDE,EAAM,iBAAiB,GAvBLV,EAwBjB",
6
+ "names": ["scw_link_base_default", "i", "ScwLinkBase", "ScwComponent", "scw_link_base_default", "evt", "children", "styles", "x", "l", "__decorateClass", "e", "i"]
7
+ }