ids-enterprise-wc 1.13.2 → 1.13.3

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 (872) hide show
  1. package/chunks/{ids-chunk-MFUR23HI-full.js → ids-chunk-23YOMOSJ-full.js} +3 -3
  2. package/chunks/{ids-chunk-DGMLW46Y-full.js → ids-chunk-24DUL2YK-full.js} +5 -5
  3. package/chunks/{ids-chunk-OLMQJDL2-full.js → ids-chunk-24RD6XEE-full.js} +15 -15
  4. package/chunks/{ids-chunk-6Z54ZTDT-full.js → ids-chunk-2CXVBEIH-full.js} +10 -10
  5. package/chunks/{ids-chunk-5OTOVBGB-full.js → ids-chunk-2KY5Y7EH-full.js} +10 -10
  6. package/chunks/{ids-chunk-HXIGU7Z3-full.js → ids-chunk-2RPNH5OY-full.js} +12 -12
  7. package/chunks/{ids-chunk-PZNDGTUV-full.js → ids-chunk-2SUZT7BS-full.js} +9 -9
  8. package/chunks/{ids-chunk-Q5HQNMUG-full.js → ids-chunk-2XVBZFEW-full.js} +9 -9
  9. package/chunks/{ids-chunk-23CS6FGU-full.js → ids-chunk-3FP4ZOFN-full.js} +6 -6
  10. package/chunks/{ids-chunk-DN6WAIN2-full.js → ids-chunk-3IPIY4RV-full.js} +11 -11
  11. package/chunks/{ids-chunk-B5T2BJQT-full.js → ids-chunk-3RXDM7Y3-full.js} +3 -3
  12. package/chunks/{ids-chunk-DSSMZQUN-full.js → ids-chunk-3W5OPDAR-full.js} +8 -8
  13. package/chunks/{ids-chunk-HMUTH62T-full.js → ids-chunk-3WQHV246-full.js} +2 -2
  14. package/chunks/{ids-chunk-7OMEBT6E-full.js → ids-chunk-3XI2VRJL-full.js} +3 -3
  15. package/chunks/{ids-chunk-34QYE6WM-full.js → ids-chunk-43PRY6V3-full.js} +6 -6
  16. package/chunks/{ids-chunk-5U22QPZJ-full.js → ids-chunk-44HOLFPQ-full.js} +9 -9
  17. package/chunks/{ids-chunk-6NUPE2DG-full.js → ids-chunk-44NSL2B6-full.js} +8 -8
  18. package/chunks/{ids-chunk-FV3FB6IO-full.js → ids-chunk-474MFA4O-full.js} +8 -8
  19. package/chunks/{ids-chunk-5IQFY2AG-full.js → ids-chunk-4EB2UK5J-full.js} +2 -2
  20. package/chunks/{ids-chunk-ABS2MHQA-full.js → ids-chunk-4FP2N5UG-full.js} +4 -4
  21. package/chunks/{ids-chunk-VL5NWPA5-full.js → ids-chunk-4G7XYQM5-full.js} +7 -7
  22. package/chunks/{ids-chunk-WAXIAWPC-full.js → ids-chunk-4JFJB3FG-full.js} +7 -6
  23. package/chunks/{ids-chunk-WAXIAWPC-full.js.map → ids-chunk-4JFJB3FG-full.js.map} +2 -2
  24. package/chunks/{ids-chunk-6EHWKLDJ-full.js → ids-chunk-4MGY364N-full.js} +2 -2
  25. package/chunks/{ids-chunk-ZDVPFO3F-full.js → ids-chunk-4QOM23NA-full.js} +3 -3
  26. package/chunks/{ids-chunk-7GVANS54-full.js → ids-chunk-4T5V5QXC-full.js} +2 -2
  27. package/chunks/{ids-chunk-GT5TV3H3-full.js → ids-chunk-4UZAA336-full.js} +4 -4
  28. package/chunks/{ids-chunk-I2ASBBR3-full.js → ids-chunk-536JFLJC-full.js} +512 -59
  29. package/chunks/ids-chunk-536JFLJC-full.js.map +7 -0
  30. package/chunks/{ids-chunk-VZUIMCGS-full.js → ids-chunk-5773OPHP-full.js} +8 -8
  31. package/chunks/{ids-chunk-2IPVCSKZ-full.js → ids-chunk-5AEWUUZC-full.js} +8 -8
  32. package/chunks/{ids-chunk-DX6QIRV5-full.js → ids-chunk-5D623WNY-full.js} +4 -4
  33. package/chunks/{ids-chunk-CAQHKU35-full.js → ids-chunk-5EAPKNQY-full.js} +6 -6
  34. package/chunks/{ids-chunk-HQGH2SX7-full.js → ids-chunk-5TO2W2O7-full.js} +4 -4
  35. package/chunks/{ids-chunk-6QHTWIKK-full.js → ids-chunk-5ZRKZ3EJ-full.js} +3 -3
  36. package/chunks/{ids-chunk-QLEWXFUK-full.js → ids-chunk-63ORR2QU-full.js} +10 -10
  37. package/chunks/{ids-chunk-JVEHC2GO-full.js → ids-chunk-655TBKNA-full.js} +14 -14
  38. package/chunks/{ids-chunk-MRMHPQZB-full.js → ids-chunk-65UUVQ66-full.js} +8 -8
  39. package/chunks/{ids-chunk-DF3WRLWW-full.js → ids-chunk-6BT5FXZK-full.js} +2 -2
  40. package/chunks/{ids-chunk-GBFDFO7X-full.js → ids-chunk-6DTSF453-full.js} +5 -5
  41. package/chunks/{ids-chunk-AIC67I3B-full.js → ids-chunk-6MNZABFL-full.js} +9 -9
  42. package/chunks/{ids-chunk-WZZIB47F-full.js → ids-chunk-6OLJBWEE-full.js} +18 -18
  43. package/chunks/{ids-chunk-BF5YJGL2-full.js → ids-chunk-6P2LSHBV-full.js} +2 -2
  44. package/chunks/{ids-chunk-ZMV3PJSQ-full.js → ids-chunk-6WAIBM2Q-full.js} +4 -4
  45. package/chunks/{ids-chunk-WCY3GOTO-full.js → ids-chunk-76M6QFAT-full.js} +2 -2
  46. package/chunks/{ids-chunk-LLYE4PCL-full.js → ids-chunk-76Y7W2LD-full.js} +8 -8
  47. package/chunks/{ids-chunk-PWDLFVVD-full.js → ids-chunk-7BGTL4DW-full.js} +12 -12
  48. package/chunks/{ids-chunk-6S5VBCIV-full.js → ids-chunk-7LP2QC4H-full.js} +5 -5
  49. package/chunks/{ids-chunk-PB3RBJQH-full.js → ids-chunk-7PE4H2NA-full.js} +4 -4
  50. package/chunks/{ids-chunk-2MO6NC45-full.js → ids-chunk-7U3KLPA7-full.js} +16 -16
  51. package/chunks/{ids-chunk-KZUU3WML-full.js → ids-chunk-A5RRTARU-full.js} +15 -15
  52. package/chunks/{ids-chunk-2RDPETVX-full.js → ids-chunk-ACV7BCRC-full.js} +5 -5
  53. package/chunks/{ids-chunk-MN26F63F-full.js → ids-chunk-AMFEGKA6-full.js} +7 -7
  54. package/chunks/{ids-chunk-3ACN345F-full.js → ids-chunk-B5GHODEX-full.js} +5 -5
  55. package/chunks/{ids-chunk-NQ6KLJHZ-full.js → ids-chunk-BAD4A2ZD-full.js} +12 -12
  56. package/chunks/{ids-chunk-BHGPHWWL-full.js → ids-chunk-BG6GF54T-full.js} +8 -8
  57. package/chunks/{ids-chunk-RD3CAEBZ-full.js → ids-chunk-BJLBSMB4-full.js} +10 -10
  58. package/chunks/{ids-chunk-CRDTRPEN-full.js → ids-chunk-BNLHKZTH-full.js} +2 -2
  59. package/chunks/{ids-chunk-TYDGSFPN-full.js → ids-chunk-BOUMAFEJ-full.js} +11 -11
  60. package/chunks/{ids-chunk-NRL6YHJO-full.js → ids-chunk-BQXFI2IX-full.js} +7 -7
  61. package/chunks/{ids-chunk-5VOOLEAX-full.js → ids-chunk-BUIIMG6I-full.js} +20 -20
  62. package/chunks/{ids-chunk-DAN35OCG-full.js → ids-chunk-BUSLDMGU-full.js} +8 -8
  63. package/chunks/{ids-chunk-HKJFW7XK-full.js → ids-chunk-BVVQPIMS-full.js} +11 -11
  64. package/chunks/{ids-chunk-PT3DFEPD-full.js → ids-chunk-BX6RDODK-full.js} +7 -7
  65. package/chunks/{ids-chunk-SCUDQYUW-full.js → ids-chunk-BZHEMUUE-full.js} +9 -4
  66. package/chunks/ids-chunk-BZHEMUUE-full.js.map +7 -0
  67. package/chunks/{ids-chunk-37YMXNRR-full.js → ids-chunk-C45WTB7C-full.js} +3 -3
  68. package/chunks/{ids-chunk-TQCSIR34-full.js → ids-chunk-C6G4A7ER-full.js} +5 -5
  69. package/chunks/{ids-chunk-PCR42BC7-full.js → ids-chunk-CG2UXD3A-full.js} +7 -7
  70. package/chunks/{ids-chunk-PCR42BC7-full.js.map → ids-chunk-CG2UXD3A-full.js.map} +2 -2
  71. package/chunks/{ids-chunk-CKBHGWJV-full.js → ids-chunk-CHRYLWHI-full.js} +7 -7
  72. package/chunks/{ids-chunk-74CZHSRC-full.js → ids-chunk-CINQIDRO-full.js} +10 -10
  73. package/chunks/{ids-chunk-7VSJQKQ3-full.js → ids-chunk-CQPG7G2Z-full.js} +2 -2
  74. package/chunks/{ids-chunk-M4TVM5IS-full.js → ids-chunk-CRYHODPP-full.js} +4 -4
  75. package/chunks/{ids-chunk-RFDLYMBY-full.js → ids-chunk-D3FPGVWN-full.js} +10 -10
  76. package/chunks/{ids-chunk-X65A3RHJ-full.js → ids-chunk-D523CBZB-full.js} +2 -2
  77. package/chunks/{ids-chunk-JQOEAS5Z-full.js → ids-chunk-DO5PEIJU-full.js} +11 -11
  78. package/chunks/{ids-chunk-HXVEIAAY-full.js → ids-chunk-DOTEXGMG-full.js} +5 -5
  79. package/chunks/{ids-chunk-FLX2COZP-full.js → ids-chunk-DS72I6YQ-full.js} +9 -9
  80. package/chunks/{ids-chunk-OEJBR76M-full.js → ids-chunk-DVLVMHPO-full.js} +7 -7
  81. package/chunks/{ids-chunk-2S5E5AIY-full.js → ids-chunk-DVWUTAHN-full.js} +9 -9
  82. package/chunks/{ids-chunk-LTWHCJTS-full.js → ids-chunk-E2GU4JTT-full.js} +9 -9
  83. package/chunks/{ids-chunk-UPYP6ZNN-full.js → ids-chunk-E7724OOW-full.js} +2 -2
  84. package/chunks/{ids-chunk-FUKJEPPE-full.js → ids-chunk-ECOKOO4I-full.js} +23 -23
  85. package/chunks/{ids-chunk-OIKOJE4V-full.js → ids-chunk-EHCO2WXK-full.js} +2 -2
  86. package/chunks/{ids-chunk-GRXCU67I-full.js → ids-chunk-EQ6GTJZE-full.js} +8 -8
  87. package/chunks/{ids-chunk-I7WT4BAD-full.js → ids-chunk-EQEYIHWM-full.js} +14 -14
  88. package/chunks/{ids-chunk-W64FIHYB-full.js → ids-chunk-EQFRFJZL-full.js} +3 -3
  89. package/chunks/{ids-chunk-IUYPHVAV-full.js → ids-chunk-ER5U55RZ-full.js} +6 -6
  90. package/chunks/{ids-chunk-UQHBV7QA-full.js → ids-chunk-EUMJGPX6-full.js} +7 -7
  91. package/chunks/{ids-chunk-GBJBXWW2-full.js → ids-chunk-F22BNY77-full.js} +3 -3
  92. package/chunks/{ids-chunk-2IV2T4WN-full.js → ids-chunk-F6KRGJOF-full.js} +6 -6
  93. package/chunks/{ids-chunk-36SP4BV6-full.js → ids-chunk-FED4HWAK-full.js} +4 -4
  94. package/chunks/{ids-chunk-K7FTGQ2E-full.js → ids-chunk-FGNPXRCT-full.js} +5 -5
  95. package/chunks/{ids-chunk-55HY2PLR-full.js → ids-chunk-FJ6CLV42-full.js} +4 -4
  96. package/chunks/{ids-chunk-QFCUUXL7-full.js → ids-chunk-FKDVLLAM-full.js} +4 -4
  97. package/chunks/{ids-chunk-6MD5X4G4-full.js → ids-chunk-FMGQY2FL-full.js} +4 -4
  98. package/chunks/{ids-chunk-EBYI6T7F-full.js → ids-chunk-FNNZ7WCH-full.js} +2 -2
  99. package/chunks/{ids-chunk-NGQ76EOS-full.js → ids-chunk-FYHE4J3E-full.js} +2 -2
  100. package/chunks/{ids-chunk-ZUVM4VU3-full.js → ids-chunk-GQE37MCK-full.js} +2 -2
  101. package/chunks/{ids-chunk-7FKK5PB2-full.js → ids-chunk-GRJXMLAA-full.js} +4 -4
  102. package/chunks/{ids-chunk-M2SIA6XU-full.js → ids-chunk-GY4CPTBB-full.js} +10 -10
  103. package/chunks/{ids-chunk-543DMEAP-full.js → ids-chunk-H2TX7XGU-full.js} +10 -10
  104. package/chunks/{ids-chunk-TFXOBXGZ-full.js → ids-chunk-HA4GQMAP-full.js} +10 -10
  105. package/chunks/{ids-chunk-DSQC4CQ6-full.js → ids-chunk-HAVT47XR-full.js} +5 -5
  106. package/chunks/{ids-chunk-BQOD7TDG-full.js → ids-chunk-HIKXEG6J-full.js} +23 -23
  107. package/chunks/{ids-chunk-J3BASKXU-full.js → ids-chunk-HL4NF3SZ-full.js} +12 -12
  108. package/chunks/{ids-chunk-TYXL3K44-full.js → ids-chunk-HSCBKGPG-full.js} +5 -5
  109. package/chunks/{ids-chunk-VFRVF6JJ-full.js → ids-chunk-HVIABMM5-full.js} +2 -2
  110. package/chunks/{ids-chunk-VWTJAFWA-full.js → ids-chunk-HX27OUZN-full.js} +13 -13
  111. package/chunks/{ids-chunk-LBSE4RZY-full.js → ids-chunk-HXKZXPZT-full.js} +15 -15
  112. package/chunks/{ids-chunk-R6DT6J7M-full.js → ids-chunk-IIFGHPSC-full.js} +6 -6
  113. package/chunks/{ids-chunk-Y2TFZ2T5-full.js → ids-chunk-INJAKMQT-full.js} +16 -16
  114. package/chunks/{ids-chunk-ZPLLMTPE-full.js → ids-chunk-IPHFA66F-full.js} +8 -8
  115. package/chunks/{ids-chunk-YFF3WQZW-full.js → ids-chunk-ISTLZRNT-full.js} +3 -3
  116. package/chunks/{ids-chunk-VGGWQ5BE-full.js → ids-chunk-ITE525L4-full.js} +10 -10
  117. package/chunks/{ids-chunk-NMILSQCH-full.js → ids-chunk-J5CIWKCT-full.js} +4 -4
  118. package/chunks/{ids-chunk-CXUGXPHV-full.js → ids-chunk-JCPCSYJ3-full.js} +2 -2
  119. package/chunks/{ids-chunk-SVUVNOHV-full.js → ids-chunk-JDTIF3YY-full.js} +9 -9
  120. package/chunks/{ids-chunk-N2ZGYOMH-full.js → ids-chunk-JF4TPWFS-full.js} +14 -14
  121. package/chunks/{ids-chunk-FVDI7K5P-full.js → ids-chunk-JPIVLL2H-full.js} +11 -11
  122. package/chunks/{ids-chunk-H3FYNTWI-full.js → ids-chunk-JSSL4NZO-full.js} +10 -10
  123. package/chunks/{ids-chunk-QQDMXJQW-full.js → ids-chunk-JSUWWQAI-full.js} +2 -2
  124. package/chunks/{ids-chunk-REPPCS5Y-full.js → ids-chunk-JTGLYQWH-full.js} +12 -12
  125. package/chunks/{ids-chunk-6YBUX6E2-full.js → ids-chunk-JV7UYR2E-full.js} +7 -7
  126. package/chunks/{ids-chunk-7PD5RBLF-full.js → ids-chunk-JZEP4QPB-full.js} +7 -7
  127. package/chunks/{ids-chunk-557INSAX-full.js → ids-chunk-K24A25UN-full.js} +3 -3
  128. package/chunks/{ids-chunk-3ET3C2CT-full.js → ids-chunk-K2TTOUEO-full.js} +16 -16
  129. package/chunks/{ids-chunk-USR5TIRI-full.js → ids-chunk-K2W2YHY3-full.js} +10 -10
  130. package/chunks/{ids-chunk-LTCXGP7G-full.js → ids-chunk-K2WUDECL-full.js} +3 -3
  131. package/chunks/{ids-chunk-7JPI44ST-full.js → ids-chunk-KDT7XWEU-full.js} +4 -4
  132. package/chunks/{ids-chunk-Q3E5P243-full.js → ids-chunk-KHROY5NZ-full.js} +2 -2
  133. package/chunks/{ids-chunk-X5XV2XEN-full.js → ids-chunk-KIKBAS3S-full.js} +4 -4
  134. package/chunks/{ids-chunk-SGEKV6VG-full.js → ids-chunk-KKBXWSGW-full.js} +4 -4
  135. package/chunks/{ids-chunk-GQC6VIBC-full.js → ids-chunk-KLF345LI-full.js} +3 -3
  136. package/chunks/{ids-chunk-6CLBJJVO-full.js → ids-chunk-KO5YPO3K-full.js} +9 -9
  137. package/chunks/{ids-chunk-4EF5KFC4-full.js → ids-chunk-KSBDEF2V-full.js} +6 -6
  138. package/chunks/{ids-chunk-3BKSN3MI-full.js → ids-chunk-KX3YBGML-full.js} +2 -2
  139. package/chunks/{ids-chunk-ARMFIRIG-full.js → ids-chunk-LB7VKRQT-full.js} +9 -9
  140. package/chunks/{ids-chunk-M6YBCIFU-full.js → ids-chunk-LCAFBMNX-full.js} +6 -6
  141. package/chunks/{ids-chunk-V4XTWZMG-full.js → ids-chunk-LEZ2JXU2-full.js} +9 -9
  142. package/chunks/{ids-chunk-GCB4THDI-full.js → ids-chunk-LLOYDBPH-full.js} +10 -10
  143. package/chunks/{ids-chunk-MM6J4L3H-full.js → ids-chunk-LQJ6TQB7-full.js} +10 -10
  144. package/chunks/{ids-chunk-D6UPV763-full.js → ids-chunk-LR27PTK6-full.js} +8 -8
  145. package/chunks/{ids-chunk-OHXEXITV-full.js → ids-chunk-LSDW3LRN-full.js} +13 -13
  146. package/chunks/{ids-chunk-FRMWXXEE-full.js → ids-chunk-LYQI3AL4-full.js} +2 -2
  147. package/chunks/{ids-chunk-D5PFB4Z5-full.js → ids-chunk-M4FGNMCL-full.js} +4 -4
  148. package/chunks/{ids-chunk-BE2WF4G7-full.js → ids-chunk-M6VUXDAI-full.js} +4 -4
  149. package/chunks/{ids-chunk-2W7SGFXN-full.js → ids-chunk-M725A3MN-full.js} +11 -11
  150. package/chunks/{ids-chunk-HLE7S7FA-full.js → ids-chunk-M75NTVIB-full.js} +13 -13
  151. package/chunks/{ids-chunk-KRG7ILWA-full.js → ids-chunk-MH5M2YW5-full.js} +13 -13
  152. package/chunks/{ids-chunk-WLH6FB7F-full.js → ids-chunk-MIPHQRHK-full.js} +2 -2
  153. package/chunks/{ids-chunk-OQF3KN66-full.js → ids-chunk-MJTYIXBN-full.js} +11 -11
  154. package/chunks/{ids-chunk-AHGM5SDK-full.js → ids-chunk-MOU7I6BI-full.js} +7 -7
  155. package/chunks/{ids-chunk-CEDZAYKW-full.js → ids-chunk-MZYZBHCN-full.js} +12 -12
  156. package/chunks/{ids-chunk-BDXWOLCO-full.js → ids-chunk-N6D3DXRK-full.js} +11 -11
  157. package/chunks/{ids-chunk-B6B76OKF-full.js → ids-chunk-N6DIYIIZ-full.js} +10 -10
  158. package/chunks/{ids-chunk-KO3KZWQZ-full.js → ids-chunk-NATNGT73-full.js} +16 -16
  159. package/chunks/{ids-chunk-46EIPFU7-full.js → ids-chunk-NDHBA4UL-full.js} +9 -9
  160. package/chunks/{ids-chunk-FH5ULEPX-full.js → ids-chunk-NHXQIZQH-full.js} +11 -11
  161. package/chunks/{ids-chunk-AD3Q5O4G-full.js → ids-chunk-NKXXYLTH-full.js} +10 -10
  162. package/chunks/{ids-chunk-TAX5HVWM-full.js → ids-chunk-NPVKP7XT-full.js} +13 -13
  163. package/chunks/{ids-chunk-P35OLURH-full.js → ids-chunk-NYP72F55-full.js} +4 -4
  164. package/chunks/{ids-chunk-PCCRONYR-full.js → ids-chunk-NZNXYHMY-full.js} +12 -12
  165. package/chunks/{ids-chunk-FRAN3EGT-full.js → ids-chunk-O4JXDQ7L-full.js} +2 -2
  166. package/chunks/{ids-chunk-HDKARTRS-full.js → ids-chunk-ODZMTEHZ-full.js} +11 -11
  167. package/chunks/{ids-chunk-EVC4SJNV-full.js → ids-chunk-OFTHMHNN-full.js} +6 -6
  168. package/chunks/{ids-chunk-5UFPYCKZ-full.js → ids-chunk-OKFF4JWL-full.js} +6 -6
  169. package/chunks/{ids-chunk-STUQC5EN-full.js → ids-chunk-OMTV2M33-full.js} +2 -2
  170. package/chunks/{ids-chunk-5OIJ7YEZ-full.js → ids-chunk-OPSZFUVF-full.js} +2 -2
  171. package/chunks/{ids-chunk-HT6B7AQL-full.js → ids-chunk-OQNHEF3V-full.js} +10 -10
  172. package/chunks/{ids-chunk-UGRNYFTT-full.js → ids-chunk-OQXHVGD2-full.js} +6 -6
  173. package/chunks/{ids-chunk-JRK44CJ3-full.js → ids-chunk-OVM5D5SP-full.js} +9 -9
  174. package/chunks/{ids-chunk-JW46WWBJ-full.js → ids-chunk-P33YXHEO-full.js} +8 -8
  175. package/chunks/{ids-chunk-7AJ5GVW7-full.js → ids-chunk-P5CEBCIG-full.js} +2 -2
  176. package/chunks/{ids-chunk-OKTKMUSU-full.js → ids-chunk-P5RXDTO2-full.js} +9 -9
  177. package/chunks/{ids-chunk-DK3GHAFJ-full.js → ids-chunk-PCQJIZDS-full.js} +9 -9
  178. package/chunks/{ids-chunk-Y5ZKF5IE-full.js → ids-chunk-PFEOOXOA-full.js} +5 -5
  179. package/chunks/{ids-chunk-GAPWBO6H-full.js → ids-chunk-PKQOR7IQ-full.js} +16 -16
  180. package/chunks/{ids-chunk-HQYUGX4E-full.js → ids-chunk-PLG7Q7HB-full.js} +8 -8
  181. package/chunks/{ids-chunk-GJSTSXB2-full.js → ids-chunk-PNTWGI4L-full.js} +8 -8
  182. package/chunks/{ids-chunk-YUBSYJOO-full.js → ids-chunk-PPUIANQC-full.js} +7 -7
  183. package/chunks/{ids-chunk-PEKEMDUM-full.js → ids-chunk-PPYV4K2W-full.js} +8 -8
  184. package/chunks/{ids-chunk-QMM5OYVU-full.js → ids-chunk-PVNFUH25-full.js} +12 -12
  185. package/chunks/{ids-chunk-PUXMBT6E-full.js → ids-chunk-QAKNY2K5-full.js} +14 -14
  186. package/chunks/{ids-chunk-24JQ5QSF-full.js → ids-chunk-QC3YTNFW-full.js} +7 -7
  187. package/chunks/{ids-chunk-3GC2IKUP-full.js → ids-chunk-QICYJWV2-full.js} +2 -2
  188. package/chunks/{ids-chunk-SGEKWQI2-full.js → ids-chunk-QL5BWGRT-full.js} +4 -4
  189. package/chunks/{ids-chunk-F5N5J5CC-full.js → ids-chunk-QLKPXSYP-full.js} +3 -3
  190. package/chunks/{ids-chunk-6LVGKX7B-full.js → ids-chunk-QZE2T6RN-full.js} +10 -10
  191. package/chunks/{ids-chunk-3ARK6C6L-full.js → ids-chunk-R5R3S57T-full.js} +10 -10
  192. package/chunks/{ids-chunk-XKMKXLO4-full.js → ids-chunk-RCM4V3XS-full.js} +8 -8
  193. package/chunks/{ids-chunk-XAFYLA5L-full.js → ids-chunk-REGZSNTP-full.js} +2 -2
  194. package/chunks/{ids-chunk-R77MGSM6-full.js → ids-chunk-RHPTKTWK-full.js} +4 -4
  195. package/chunks/{ids-chunk-CP2DVRB2-full.js → ids-chunk-RIQYX2LA-full.js} +8 -8
  196. package/chunks/{ids-chunk-DLW3AVBI-full.js → ids-chunk-RJ3MHPGT-full.js} +2 -2
  197. package/chunks/{ids-chunk-JKL7IJX6-full.js → ids-chunk-RL4PRWWL-full.js} +11 -11
  198. package/chunks/{ids-chunk-JV6JSALT-full.js → ids-chunk-RPTMFMI3-full.js} +6 -6
  199. package/chunks/{ids-chunk-S57C4KXG-full.js → ids-chunk-RQ6PWT3Z-full.js} +2 -2
  200. package/chunks/{ids-chunk-C4LSCZTQ-full.js → ids-chunk-RWT6NGYY-full.js} +10 -10
  201. package/chunks/{ids-chunk-CRVGWLIF-full.js → ids-chunk-S2YBQC3H-full.js} +10 -10
  202. package/chunks/{ids-chunk-YX25ZZ76-full.js → ids-chunk-S4S263F7-full.js} +2 -2
  203. package/chunks/{ids-chunk-4KOGV5S6-full.js → ids-chunk-S6DDPBLL-full.js} +3 -3
  204. package/chunks/{ids-chunk-5ELJINRK-full.js → ids-chunk-SIS75LAP-full.js} +3 -3
  205. package/chunks/{ids-chunk-R4JPV7M7-full.js → ids-chunk-SLXLD6RV-full.js} +2 -2
  206. package/chunks/{ids-chunk-QDN5ISE7-full.js → ids-chunk-SMEGSI22-full.js} +3 -3
  207. package/chunks/{ids-chunk-NLGNSKTC-full.js → ids-chunk-SN6G2IDB-full.js} +3 -3
  208. package/chunks/{ids-chunk-HFPGE2QH-full.js → ids-chunk-SNWJAFW7-full.js} +4 -4
  209. package/chunks/{ids-chunk-77AKSYNJ-full.js → ids-chunk-SQB7CQME-full.js} +54 -13
  210. package/chunks/ids-chunk-SQB7CQME-full.js.map +7 -0
  211. package/chunks/{ids-chunk-35ECJA2C-full.js → ids-chunk-SQLZPK2R-full.js} +7 -7
  212. package/chunks/{ids-chunk-ZSWWZ6G6-full.js → ids-chunk-SSUJH3Y5-full.js} +8 -8
  213. package/chunks/{ids-chunk-JAEPAADX-full.js → ids-chunk-T3XJHEYI-full.js} +9 -9
  214. package/chunks/{ids-chunk-WKPZKQEG-full.js → ids-chunk-T6FMTTEN-full.js} +7 -7
  215. package/chunks/{ids-chunk-MI3ZPCPG-full.js → ids-chunk-TBPYKVP7-full.js} +6 -6
  216. package/chunks/{ids-chunk-7TNTDIDY-full.js → ids-chunk-TQI4ELXN-full.js} +11 -11
  217. package/chunks/{ids-chunk-MTDK7HR3-full.js → ids-chunk-TSHFFNZO-full.js} +3 -3
  218. package/chunks/{ids-chunk-AXZ5KRXH-full.js → ids-chunk-TVJEUQNS-full.js} +12 -12
  219. package/chunks/{ids-chunk-7DA47KVV-full.js → ids-chunk-TX6JMJVN-full.js} +8 -8
  220. package/chunks/{ids-chunk-UF4RKEE3-full.js → ids-chunk-TZUZOXZB-full.js} +2 -2
  221. package/chunks/{ids-chunk-JD35FTUV-full.js → ids-chunk-U265PQZG-full.js} +4 -4
  222. package/chunks/{ids-chunk-HJMBIMJL-full.js → ids-chunk-U6RLOB64-full.js} +8 -8
  223. package/chunks/{ids-chunk-2OCOBBEL-full.js → ids-chunk-U7BHU6SJ-full.js} +4 -4
  224. package/chunks/{ids-chunk-5Q4SEIZ2-full.js → ids-chunk-UAAKNOSO-full.js} +10 -10
  225. package/chunks/{ids-chunk-6REFUPF7-full.js → ids-chunk-UEAPQQWV-full.js} +3 -3
  226. package/chunks/{ids-chunk-J3TAGWSR-full.js → ids-chunk-UFBUIJIQ-full.js} +11 -11
  227. package/chunks/{ids-chunk-KHQFTYMP-full.js → ids-chunk-UL2U74OZ-full.js} +4 -4
  228. package/chunks/{ids-chunk-OJS6LSJ5-full.js → ids-chunk-UOWXMCDY-full.js} +5 -5
  229. package/chunks/{ids-chunk-QB5HGA7R-full.js → ids-chunk-UQSTMH53-full.js} +11 -11
  230. package/chunks/{ids-chunk-723FQZWT-full.js → ids-chunk-URRI3K6F-full.js} +3 -3
  231. package/chunks/{ids-chunk-WFHTI5RR-full.js → ids-chunk-UYYBGIDV-full.js} +7 -7
  232. package/chunks/{ids-chunk-MPCOD3EM-full.js → ids-chunk-V27TW6FN-full.js} +8 -8
  233. package/chunks/{ids-chunk-QLUMF46I-full.js → ids-chunk-V6P4VFF2-full.js} +5 -5
  234. package/chunks/{ids-chunk-PZYPPC72-full.js → ids-chunk-VBASNVK6-full.js} +4 -4
  235. package/chunks/{ids-chunk-IIAUFD4V-full.js → ids-chunk-VF72DVER-full.js} +2 -2
  236. package/chunks/{ids-chunk-DP5MFD3X-full.js → ids-chunk-VFCMPAPU-full.js} +2 -2
  237. package/chunks/{ids-chunk-TL2ITBEY-full.js → ids-chunk-VKQC4E3U-full.js} +13 -13
  238. package/chunks/{ids-chunk-KWZFGVEC-full.js → ids-chunk-VLS32KDG-full.js} +9 -9
  239. package/chunks/{ids-chunk-25SFEGWW-full.js → ids-chunk-VOQPOVB4-full.js} +9 -9
  240. package/chunks/{ids-chunk-3KNBEAEJ-full.js → ids-chunk-VOXJBDTL-full.js} +2 -2
  241. package/chunks/{ids-chunk-SSR6EG35-full.js → ids-chunk-VSUCTRET-full.js} +8 -8
  242. package/chunks/{ids-chunk-Z3K2R6TK-full.js → ids-chunk-VZK3UNI2-full.js} +2 -2
  243. package/chunks/{ids-chunk-ANQ467A7-full.js → ids-chunk-W3QDSJFT-full.js} +5 -5
  244. package/chunks/{ids-chunk-2FNRNYV3-full.js → ids-chunk-W6JJZ2KW-full.js} +3 -3
  245. package/chunks/{ids-chunk-HZ45UVLK-full.js → ids-chunk-W6YDML3E-full.js} +9 -9
  246. package/chunks/{ids-chunk-5H5JOBKN-full.js → ids-chunk-WEXW4EDP-full.js} +10 -10
  247. package/chunks/{ids-chunk-KZFN5VAP-full.js → ids-chunk-WMENBLGN-full.js} +9 -9
  248. package/chunks/{ids-chunk-5IRPWSWQ-full.js → ids-chunk-WPVTQZTR-full.js} +14 -14
  249. package/chunks/{ids-chunk-VJXOS4VA-full.js → ids-chunk-WXVD2LPK-full.js} +5 -5
  250. package/chunks/{ids-chunk-MBUS3QJQ-full.js → ids-chunk-X4S7ZHSU-full.js} +5 -5
  251. package/chunks/{ids-chunk-NRPGTR55-full.js → ids-chunk-X53E2ROO-full.js} +3 -3
  252. package/chunks/{ids-chunk-CPSCG5KE-full.js → ids-chunk-XBFA4CMB-full.js} +21 -21
  253. package/chunks/{ids-chunk-J4UUXN3B-full.js → ids-chunk-XBJOS4RU-full.js} +7 -7
  254. package/chunks/{ids-chunk-LQZOVWLN-full.js → ids-chunk-XCC3IVSP-full.js} +6 -6
  255. package/chunks/{ids-chunk-4XS4C3E6-full.js → ids-chunk-XCOOWZNX-full.js} +4 -4
  256. package/chunks/{ids-chunk-7LLW7QR3-full.js → ids-chunk-XF5BZKK7-full.js} +9 -9
  257. package/chunks/{ids-chunk-JR6JZTUW-full.js → ids-chunk-XLF32LYM-full.js} +9 -9
  258. package/chunks/{ids-chunk-5O3AGRGM-full.js → ids-chunk-XPUSFXSJ-full.js} +6 -6
  259. package/chunks/{ids-chunk-MM4ZKSLE-full.js → ids-chunk-XTPN3SFT-full.js} +9 -9
  260. package/chunks/{ids-chunk-K5SHUKHM-full.js → ids-chunk-XVTFV3VO-full.js} +7 -7
  261. package/chunks/{ids-chunk-NWDJN63Z-full.js → ids-chunk-YEFBLJLV-full.js} +4 -4
  262. package/chunks/{ids-chunk-ZASVB3HI-full.js → ids-chunk-YHWCHT5S-full.js} +9 -9
  263. package/chunks/{ids-chunk-KBK3KHCB-full.js → ids-chunk-YIAQZ6Y7-full.js} +8 -8
  264. package/chunks/{ids-chunk-MZ52VCIX-full.js → ids-chunk-YJPG4OCQ-full.js} +7 -7
  265. package/chunks/{ids-chunk-UZTLN4RE-full.js → ids-chunk-YKQXHMXK-full.js} +5 -5
  266. package/chunks/{ids-chunk-4TI33B4L-full.js → ids-chunk-YLYKVFAO-full.js} +10 -10
  267. package/chunks/{ids-chunk-REOYW4U6-full.js → ids-chunk-YMXMNPBJ-full.js} +10 -10
  268. package/chunks/{ids-chunk-CZIQX2JT-full.js → ids-chunk-YO6YVMGK-full.js} +9 -9
  269. package/chunks/{ids-chunk-TP5FKJQJ-full.js → ids-chunk-YSP56VTK-full.js} +4 -4
  270. package/chunks/{ids-chunk-JWSN527Q-full.js → ids-chunk-YTWR6KLY-full.js} +19 -19
  271. package/chunks/{ids-chunk-4BAPDFDC-full.js → ids-chunk-YXGIOC6V-full.js} +16 -16
  272. package/chunks/{ids-chunk-L5KLUFSQ-full.js → ids-chunk-YYCLHLDU-full.js} +5 -5
  273. package/chunks/{ids-chunk-3J45QMCH-full.js → ids-chunk-Z3HRHZAF-full.js} +2 -2
  274. package/chunks/{ids-chunk-G4OSNQG5-full.js → ids-chunk-Z3LRPXYQ-full.js} +2 -2
  275. package/chunks/{ids-chunk-7JIZYB3J-full.js → ids-chunk-Z6OJ5LLZ-full.js} +14 -14
  276. package/chunks/{ids-chunk-CEP6272C-full.js → ids-chunk-ZCOQEWMU-full.js} +10 -10
  277. package/chunks/{ids-chunk-45MQWCYK-full.js → ids-chunk-ZIPMJTUT-full.js} +15 -15
  278. package/chunks/{ids-chunk-BZAXTYVK-full.js → ids-chunk-ZLQPGYZK-full.js} +2 -2
  279. package/chunks/{ids-chunk-7FA62T3P-full.js → ids-chunk-ZNGIX74C-full.js} +4 -4
  280. package/chunks/{ids-chunk-AADVH3X2-full.js → ids-chunk-ZPDNPX4P-full.js} +5 -5
  281. package/chunks/{ids-chunk-L4PUCI4E-full.js → ids-chunk-ZQRMWIXB-full.js} +2 -2
  282. package/components/ids-about/ids-about.js +47 -47
  283. package/components/ids-accordion/ids-accordion-common.js +3 -3
  284. package/components/ids-accordion/ids-accordion-header.js +20 -20
  285. package/components/ids-accordion/ids-accordion-panel.js +22 -22
  286. package/components/ids-accordion/ids-accordion-section.js +20 -20
  287. package/components/ids-accordion/ids-accordion.css +77 -137
  288. package/components/ids-accordion/ids-accordion.js +26 -26
  289. package/components/ids-action-panel/ids-action-panel.js +62 -62
  290. package/components/ids-action-sheet/ids-action-sheet.js +53 -53
  291. package/components/ids-alert/ids-alert.js +30 -30
  292. package/components/ids-app-menu/ids-app-menu-container.js +14 -14
  293. package/components/ids-app-menu/ids-app-menu.css +132 -23
  294. package/components/ids-app-menu/ids-app-menu.js +65 -65
  295. package/components/ids-area-chart/ids-area-chart.js +42 -42
  296. package/components/ids-axis-chart/ids-axis-chart.js +40 -40
  297. package/components/ids-axis-chart/ids-chart-colors.js +3 -3
  298. package/components/ids-axis-chart/ids-nice-scale.js +3 -3
  299. package/components/ids-axis-chart/ids-pattern-data.js +3 -3
  300. package/components/ids-badge/ids-badge.js +17 -17
  301. package/components/ids-bar-chart/ids-bar-chart.js +41 -41
  302. package/components/ids-block-grid/ids-block-grid-item.js +36 -36
  303. package/components/ids-block-grid/ids-block-grid.js +82 -82
  304. package/components/ids-box/ids-box.js +14 -14
  305. package/components/ids-breadcrumb/ids-breadcrumb.js +55 -55
  306. package/components/ids-button/ids-button-common.js +4 -4
  307. package/components/ids-button/ids-button.js +35 -35
  308. package/components/ids-calendar/ids-calendar-event.js +18 -18
  309. package/components/ids-calendar/ids-calendar.js +113 -113
  310. package/components/ids-card/ids-card-action.js +14 -14
  311. package/components/ids-card/ids-card.css +331 -4
  312. package/components/ids-card/ids-card.js +41 -41
  313. package/components/ids-checkbox/ids-checkbox-group.js +17 -17
  314. package/components/ids-checkbox/ids-checkbox.js +34 -34
  315. package/components/ids-color/ids-color.js +29 -29
  316. package/components/ids-color-picker/ids-color-picker.js +64 -64
  317. package/components/ids-container/ids-container.js +20 -20
  318. package/components/ids-counts/ids-counts.js +32 -32
  319. package/components/ids-data-grid/ids-data-grid-cell.js +17 -17
  320. package/components/ids-data-grid/ids-data-grid-column.d.ts +6 -0
  321. package/components/ids-data-grid/ids-data-grid-column.js +1 -1
  322. package/components/ids-data-grid/ids-data-grid-container-arguments.js +5 -5
  323. package/components/ids-data-grid/ids-data-grid-contextmenu.js +6 -6
  324. package/components/ids-data-grid/ids-data-grid-editors.js +111 -111
  325. package/components/ids-data-grid/ids-data-grid-empty-message.js +32 -32
  326. package/components/ids-data-grid/ids-data-grid-filters.js +104 -104
  327. package/components/ids-data-grid/ids-data-grid-formatters.js +61 -61
  328. package/components/ids-data-grid/ids-data-grid-header.d.ts +9 -1
  329. package/components/ids-data-grid/ids-data-grid-header.js +53 -53
  330. package/components/ids-data-grid/ids-data-grid-row.js +18 -18
  331. package/components/ids-data-grid/ids-data-grid-save-settings-mixin.js +6 -6
  332. package/components/ids-data-grid/ids-data-grid-search-mixin.js +5 -5
  333. package/components/ids-data-grid/ids-data-grid-settings.js +1 -1
  334. package/components/ids-data-grid/ids-data-grid-toolbar-mixin.js +4 -4
  335. package/components/ids-data-grid/ids-data-grid-tooltip-mixin.js +27 -27
  336. package/components/ids-data-grid/ids-data-grid.css +2 -2
  337. package/components/ids-data-grid/ids-data-grid.d.ts +54 -1
  338. package/components/ids-data-grid/ids-data-grid.js +161 -161
  339. package/components/ids-data-label/ids-data-label.js +29 -29
  340. package/components/ids-date-picker/ids-date-picker-common.js +4 -4
  341. package/components/ids-date-picker/ids-date-picker-popup.js +102 -102
  342. package/components/ids-date-picker/ids-date-picker.css +31 -185
  343. package/components/ids-date-picker/ids-date-picker.js +104 -104
  344. package/components/ids-date-picker/ids-month-year-picklist.js +31 -31
  345. package/components/ids-draggable/ids-draggable.js +18 -18
  346. package/components/ids-drawer/ids-drawer-attributes.js +3 -3
  347. package/components/ids-drawer/ids-drawer.js +22 -22
  348. package/components/ids-dropdown/ids-dropdown-attributes-mixin.js +7 -7
  349. package/components/ids-dropdown/ids-dropdown-common.js +4 -4
  350. package/components/ids-dropdown/ids-dropdown-list.js +31 -31
  351. package/components/ids-dropdown/ids-dropdown.js +74 -74
  352. package/components/ids-editor/ids-editor-clean-utils.js +8 -8
  353. package/components/ids-editor/ids-editor-formatters.js +3 -3
  354. package/components/ids-editor/ids-editor-handle-paste.js +9 -9
  355. package/components/ids-editor/ids-editor-selection-utils.js +7 -7
  356. package/components/ids-editor/ids-editor-shared.js +6 -6
  357. package/components/ids-editor/ids-editor-templates.js +3 -3
  358. package/components/ids-editor/ids-editor.js +99 -99
  359. package/components/ids-empty-message/ids-empty-message.js +31 -31
  360. package/components/ids-error-page/ids-error-page.js +47 -47
  361. package/components/ids-expandable-area/ids-exandable-area-attributes.js +3 -3
  362. package/components/ids-expandable-area/ids-expandable-area.js +18 -18
  363. package/components/ids-fieldset/ids-fieldset.js +17 -17
  364. package/components/ids-filter-field/ids-filter-field.js +18 -18
  365. package/components/ids-form/ids-form.js +18 -18
  366. package/components/ids-global/ids-global.js +11 -11
  367. package/components/ids-header/ids-header.js +19 -19
  368. package/components/ids-hidden/ids-hidden.js +15 -15
  369. package/components/ids-hierarchy/ids-hierarchy-item.js +18 -18
  370. package/components/ids-hierarchy/ids-hierarchy-legend-item.js +15 -15
  371. package/components/ids-hierarchy/ids-hierarchy-legend.js +13 -13
  372. package/components/ids-hierarchy/ids-hierarchy.css +5 -121
  373. package/components/ids-hierarchy/ids-hierarchy.js +17 -17
  374. package/components/ids-home-page/ids-home-page-attributes.js +3 -3
  375. package/components/ids-home-page/ids-home-page.js +60 -60
  376. package/components/ids-hyperlink/ids-hyperlink.js +30 -30
  377. package/components/ids-hyperlink/ids-link-list.js +14 -14
  378. package/components/ids-icon/ids-icon-attributes.js +3 -3
  379. package/components/ids-icon/ids-icon.js +21 -21
  380. package/components/ids-image/ids-image.js +31 -31
  381. package/components/ids-input/ids-autocomplete.js +41 -41
  382. package/components/ids-input/ids-input-attributes.js +3 -3
  383. package/components/ids-input/ids-input.js +60 -60
  384. package/components/ids-input-group/ids-input-group.js +16 -16
  385. package/components/ids-kpi/ids-kpi.js +24 -24
  386. package/components/ids-layout-flex/ids-layout-flex-item.js +14 -14
  387. package/components/ids-layout-flex/ids-layout-flex.css +459 -5
  388. package/components/ids-layout-flex/ids-layout-flex.js +15 -15
  389. package/components/ids-layout-flex/ids-scroll-container.js +14 -14
  390. package/components/ids-layout-grid/ids-layout-grid-cell.js +18 -18
  391. package/components/ids-layout-grid/ids-layout-grid-common.js +4 -4
  392. package/components/ids-layout-grid/ids-layout-grid.js +15 -15
  393. package/components/ids-line-chart/ids-line-chart.js +41 -41
  394. package/components/ids-list-box/ids-list-box-option.js +37 -37
  395. package/components/ids-list-box/ids-list-box.css +80 -56
  396. package/components/ids-list-box/ids-list-box.js +38 -38
  397. package/components/ids-list-builder/ids-list-builder.js +95 -95
  398. package/components/ids-list-view/ids-list-view-group-header.js +14 -14
  399. package/components/ids-list-view/ids-list-view-item.js +80 -80
  400. package/components/ids-list-view/ids-list-view-search-mixin.js +7 -7
  401. package/components/ids-list-view/ids-list-view.js +91 -91
  402. package/components/ids-loading-indicator/ids-loading-indicator-attributes.js +5 -5
  403. package/components/ids-loading-indicator/ids-loading-indicator.js +19 -19
  404. package/components/ids-locale/ids-locale-number-options.js +1 -1
  405. package/components/ids-locale/ids-locale.js +6 -6
  406. package/components/ids-lookup/ids-lookup.js +83 -83
  407. package/components/ids-mask/ids-mask-api.js +7 -7
  408. package/components/ids-mask/ids-mask-common.js +3 -3
  409. package/components/ids-mask/ids-mask-global.js +8 -8
  410. package/components/ids-mask/ids-masks.js +6 -6
  411. package/components/ids-masthead/ids-masthead.js +57 -57
  412. package/components/ids-media-gallery/ids-media-gallery.js +65 -65
  413. package/components/ids-media-gallery/ids-media-viewer.js +32 -32
  414. package/components/ids-menu/ids-menu-attributes.js +4 -4
  415. package/components/ids-menu/ids-menu-group.js +20 -20
  416. package/components/ids-menu/ids-menu-header.js +17 -17
  417. package/components/ids-menu/ids-menu-item.js +23 -23
  418. package/components/ids-menu/ids-menu.css +11 -332
  419. package/components/ids-menu/ids-menu.js +31 -31
  420. package/components/ids-menu-button/ids-menu-button-attributes.js +3 -3
  421. package/components/ids-menu-button/ids-menu-button.js +52 -52
  422. package/components/ids-message/ids-message-service.js +2 -2
  423. package/components/ids-message/ids-message.js +45 -45
  424. package/components/ids-modal/ids-modal-button.js +36 -36
  425. package/components/ids-modal/ids-modal-service.js +2 -2
  426. package/components/ids-modal/ids-modal.css +19 -97
  427. package/components/ids-modal/ids-modal.js +42 -42
  428. package/components/ids-modal/ids-overlay.js +17 -17
  429. package/components/ids-module-nav/ids-module-nav-bar.js +68 -68
  430. package/components/ids-module-nav/ids-module-nav-button.js +39 -39
  431. package/components/ids-module-nav/ids-module-nav-common.js +3 -3
  432. package/components/ids-module-nav/ids-module-nav-content.js +19 -19
  433. package/components/ids-module-nav/ids-module-nav-display-mode-mixin.js +4 -4
  434. package/components/ids-module-nav/ids-module-nav-item.js +25 -25
  435. package/components/ids-module-nav/ids-module-nav-settings.js +56 -56
  436. package/components/ids-module-nav/ids-module-nav-switcher.js +20 -20
  437. package/components/ids-module-nav/ids-module-nav-text-display-mixin.js +5 -5
  438. package/components/ids-module-nav/ids-module-nav-user.js +22 -22
  439. package/components/ids-module-nav/ids-module-nav.css +194 -2133
  440. package/components/ids-module-nav/ids-module-nav.js +97 -97
  441. package/components/ids-month-view/ids-month-view-attribute-mixin.js +6 -6
  442. package/components/ids-month-view/ids-month-view-common.js +3 -3
  443. package/components/ids-month-view/ids-month-view.js +47 -47
  444. package/components/ids-multiselect/ids-multiselect.js +88 -88
  445. package/components/ids-notification-banner/ids-notification-banner-service.js +42 -42
  446. package/components/ids-notification-banner/ids-notification-banner.js +42 -42
  447. package/components/ids-page-examples/ids-page-examples.js +1 -1
  448. package/components/ids-pager/ids-pager-attributes.js +3 -3
  449. package/components/ids-pager/ids-pager-button.js +39 -39
  450. package/components/ids-pager/ids-pager-dropdown.js +65 -65
  451. package/components/ids-pager/ids-pager-input.js +61 -61
  452. package/components/ids-pager/ids-pager-number-list.js +37 -37
  453. package/components/ids-pager/ids-pager.css +25 -28
  454. package/components/ids-pager/ids-pager.js +66 -66
  455. package/components/ids-personalize/ids-personalize.js +4 -4
  456. package/components/ids-pie-chart/ids-pie-chart.js +38 -38
  457. package/components/ids-popup/ids-picker-popup-common.js +3 -3
  458. package/components/ids-popup/ids-picker-popup.js +20 -20
  459. package/components/ids-popup/ids-popup-attributes.js +4 -4
  460. package/components/ids-popup/ids-popup.js +23 -23
  461. package/components/ids-popup-menu/ids-popup-menu.js +51 -51
  462. package/components/ids-process-indicator/ids-process-indicator-step.js +17 -17
  463. package/components/ids-process-indicator/ids-process-indicator.js +32 -32
  464. package/components/ids-progress-bar/ids-progress-bar.js +17 -17
  465. package/components/ids-progress-chart/ids-progress-chart.js +17 -17
  466. package/components/ids-radio/ids-radio-group.js +31 -31
  467. package/components/ids-radio/ids-radio.js +33 -33
  468. package/components/ids-rating/ids-rating.js +18 -18
  469. package/components/ids-scroll-view/ids-scroll-view.js +36 -36
  470. package/components/ids-search-field/ids-search-field.js +75 -75
  471. package/components/ids-segmented-control/ids-segmented-control.js +19 -19
  472. package/components/ids-separator/ids-separator.js +20 -20
  473. package/components/ids-skip-link/ids-skip-link.js +31 -31
  474. package/components/ids-slider/ids-slider.js +19 -19
  475. package/components/ids-spinbox/ids-spinbox.js +62 -62
  476. package/components/ids-splitter/ids-splitter-local-storage.js +19 -19
  477. package/components/ids-splitter/ids-splitter-pane.js +18 -18
  478. package/components/ids-splitter/ids-splitter.js +22 -22
  479. package/components/ids-stats/ids-stats.js +25 -25
  480. package/components/ids-step-chart/ids-step-chart.js +32 -32
  481. package/components/ids-swaplist/ids-swaplist.js +97 -97
  482. package/components/ids-swappable/ids-swappable-item.js +20 -20
  483. package/components/ids-swappable/ids-swappable.css +69 -19
  484. package/components/ids-swappable/ids-swappable.js +79 -79
  485. package/components/ids-swipe-action/ids-swipe-action.js +17 -17
  486. package/components/ids-switch/ids-switch.js +30 -30
  487. package/components/ids-tabs/ids-sub-tab-attributes.js +3 -3
  488. package/components/ids-tabs/ids-sub-tab.js +41 -41
  489. package/components/ids-tabs/ids-sub-tabs.js +44 -44
  490. package/components/ids-tabs/ids-tab-content.js +18 -18
  491. package/components/ids-tabs/ids-tab-divider.js +19 -19
  492. package/components/ids-tabs/ids-tab-more.js +55 -55
  493. package/components/ids-tabs/ids-tab.js +41 -41
  494. package/components/ids-tabs/ids-tabs-context.js +24 -24
  495. package/components/ids-tabs/ids-tabs.css +8 -344
  496. package/components/ids-tabs/ids-tabs.js +62 -62
  497. package/components/ids-tag/ids-tag-list.js +17 -17
  498. package/components/ids-tag/ids-tag.css +152 -8
  499. package/components/ids-tag/ids-tag.js +19 -19
  500. package/components/ids-text/ids-text.js +28 -28
  501. package/components/ids-textarea/ids-textarea.js +63 -63
  502. package/components/ids-theme-switcher/ids-theme-switcher.js +53 -53
  503. package/components/ids-time-picker/ids-time-picker-common.js +4 -4
  504. package/components/ids-time-picker/ids-time-picker-popup.js +79 -79
  505. package/components/ids-time-picker/ids-time-picker.css +50 -48
  506. package/components/ids-time-picker/ids-time-picker.js +81 -81
  507. package/components/ids-toast/ids-toast-message.js +43 -43
  508. package/components/ids-toast/ids-toast-shared.js +4 -4
  509. package/components/ids-toast/ids-toast.js +47 -47
  510. package/components/ids-toggle-button/ids-toggle-button.js +38 -38
  511. package/components/ids-toolbar/ids-toolbar-more-actions.js +54 -54
  512. package/components/ids-toolbar/ids-toolbar-section.js +17 -17
  513. package/components/ids-toolbar/ids-toolbar.css +110 -12
  514. package/components/ids-toolbar/ids-toolbar.js +55 -55
  515. package/components/ids-tooltip/ids-tooltip.js +25 -25
  516. package/components/ids-tree/ids-tree-node.js +37 -37
  517. package/components/ids-tree/ids-tree-shared.js +3 -3
  518. package/components/ids-tree/ids-tree.js +40 -40
  519. package/components/ids-treemap/ids-treemap.js +18 -18
  520. package/components/ids-trigger-field/ids-trigger-button.js +36 -36
  521. package/components/ids-trigger-field/ids-trigger-field.js +61 -61
  522. package/components/ids-upload/ids-upload.js +64 -64
  523. package/components/ids-upload-advanced/ids-upload-advanced-file.js +42 -42
  524. package/components/ids-upload-advanced/ids-upload-advanced-shared.js +4 -4
  525. package/components/ids-upload-advanced/ids-upload-advanced.js +62 -62
  526. package/components/ids-virtual-scroll/ids-virtual-scroll.js +17 -17
  527. package/components/ids-week-view/ids-week-view.js +105 -105
  528. package/components/ids-widget/ids-widget.js +58 -58
  529. package/components/ids-wizard/ids-wizard-step.js +14 -14
  530. package/components/ids-wizard/ids-wizard.js +30 -30
  531. package/core/ids-attributes.d.ts +6 -1
  532. package/core/ids-attributes.js +3 -3
  533. package/core/ids-data-source.js +4 -4
  534. package/core/ids-decorators.js +3 -3
  535. package/core/ids-element.js +12 -12
  536. package/custom-elements.json +865 -614
  537. package/enterprise-wc.all.iife.js +540 -40
  538. package/enterprise-wc.all.iife.js.map +2 -2
  539. package/enterprise-wc.js +277 -277
  540. package/mixins/ids-attachment-mixin/ids-attachment-mixin.js +5 -5
  541. package/mixins/ids-breakpoint-mixin/ids-breakpoint-mixin.js +5 -5
  542. package/mixins/ids-calendar-events-mixin/ids-calendar-events-mixin.js +5 -5
  543. package/mixins/ids-chart-legend-mixin/ids-chart-legend-mixin.js +6 -6
  544. package/mixins/ids-chart-selection-mixin/ids-chart-selection-mixin.js +5 -5
  545. package/mixins/ids-clearable-mixin/ids-clearable-mixin.js +5 -5
  546. package/mixins/ids-color-variant-mixin/ids-color-variant-mixin.js +5 -5
  547. package/mixins/ids-date-attribute-mixin/ids-date-attribute-mixin.js +6 -6
  548. package/mixins/ids-dirty-tracker-mixin/ids-dirty-tracker-mixin.js +5 -5
  549. package/mixins/ids-draggable-mixin/ids-draggable-mixin.js +6 -6
  550. package/mixins/ids-events-mixin/ids-events-common.js +3 -3
  551. package/mixins/ids-events-mixin/ids-events-mixin.js +6 -6
  552. package/mixins/ids-field-height-mixin/ids-field-height-mixin.js +5 -5
  553. package/mixins/ids-focus-capture-mixin/ids-focus-capture-mixin.js +6 -6
  554. package/mixins/ids-form-input-mixin/ids-form-input-mixin.js +5 -5
  555. package/mixins/ids-hide-focus-mixin/ids-hide-focus-mixin.js +5 -5
  556. package/mixins/ids-hitbox-mixin/ids-hitbox-mixin.js +5 -5
  557. package/mixins/ids-keyboard-mixin/ids-keyboard-mixin.js +3 -3
  558. package/mixins/ids-label-state-mixin/ids-label-state-common.js +5 -5
  559. package/mixins/ids-label-state-mixin/ids-label-state-mixin.js +7 -7
  560. package/mixins/ids-label-state-mixin/ids-label-state-parent-mixin.js +6 -6
  561. package/mixins/ids-loading-indicator-mixin/ids-loading-indicator-mixin.js +20 -20
  562. package/mixins/ids-locale-mixin/ids-locale-mixin.js +12 -12
  563. package/mixins/ids-mask-mixin/ids-mask-mixin.js +10 -10
  564. package/mixins/ids-orientation-mixin/ids-orientation-mixin.js +5 -5
  565. package/mixins/ids-pager-mixin/ids-pager-mixin.js +79 -79
  566. package/mixins/ids-popup-interactions-mixin/ids-popup-interactions-mixin.js +5 -5
  567. package/mixins/ids-popup-open-events-mixin/ids-popup-open-events-mixin.js +6 -6
  568. package/mixins/ids-scroll-effect-mixin/ids-scroll-effect-mixin.js +3 -3
  569. package/mixins/ids-selection-mixin/ids-selection-mixin.js +5 -5
  570. package/mixins/ids-tooltip-mixin/ids-tooltip-mixin.js +26 -26
  571. package/mixins/ids-validation-mixin/ids-validation-input-mixin.js +3 -3
  572. package/mixins/ids-validation-mixin/ids-validation-mixin.js +7 -7
  573. package/mixins/ids-xss-mixin/ids-xss-mixin.js +5 -5
  574. package/package.json +1 -1
  575. package/utils/ids-attribute-utils/ids-attribute-utils.js +4 -4
  576. package/utils/ids-breakpoint-utils/ids-breakpoint-utils.js +3 -3
  577. package/utils/ids-color-utils/ids-color-utils.js +3 -3
  578. package/utils/ids-copy-utils/ids-copy-utils.js +3 -3
  579. package/utils/ids-date-utils/ids-date-utils.js +4 -4
  580. package/utils/ids-debounce-utils/ids-debounce-utils.js +3 -3
  581. package/utils/ids-deep-clone-utils/ids-deep-clone-utils.js +3 -3
  582. package/utils/ids-deferred-utils/ids-deferred-utils.js +3 -3
  583. package/utils/ids-device-env-specs-utils/ids-device-env-specs-utils.js +4 -4
  584. package/utils/ids-dom-utils/ids-dom-utils.js +3 -3
  585. package/utils/ids-draggable-utils/ids-draggable-utils.js +3 -3
  586. package/utils/ids-event-path-utils/ids-event-path-utils.js +3 -3
  587. package/utils/ids-excel-exporter/ids-excel-exporter.js +8 -8
  588. package/utils/ids-excel-exporter/ids-excel-formatter.js +4 -4
  589. package/utils/ids-excel-exporter/ids-worksheet-templates.js +3 -3
  590. package/utils/ids-file-saver/ids-file-saver.js +3 -3
  591. package/utils/ids-number-utils/ids-number-utils.js +3 -3
  592. package/utils/ids-object-utils/ids-object-utils.js +3 -3
  593. package/utils/ids-string-utils/ids-string-utils.js +3 -3
  594. package/utils/ids-timer-utils/ids-timer-utils.js +3 -3
  595. package/utils/ids-xss-utils/ids-xss-utils.js +3 -3
  596. package/utils/ids-zip/ids-zip-entry.js +3 -3
  597. package/utils/ids-zip/ids-zip.js +4 -4
  598. package/vscode.html-custom-data.json +1 -1
  599. package/chunks/ids-chunk-77AKSYNJ-full.js.map +0 -7
  600. package/chunks/ids-chunk-I2ASBBR3-full.js.map +0 -7
  601. package/chunks/ids-chunk-SCUDQYUW-full.js.map +0 -7
  602. /package/chunks/{ids-chunk-MFUR23HI-full.js.map → ids-chunk-23YOMOSJ-full.js.map} +0 -0
  603. /package/chunks/{ids-chunk-DGMLW46Y-full.js.map → ids-chunk-24DUL2YK-full.js.map} +0 -0
  604. /package/chunks/{ids-chunk-OLMQJDL2-full.js.map → ids-chunk-24RD6XEE-full.js.map} +0 -0
  605. /package/chunks/{ids-chunk-6Z54ZTDT-full.js.map → ids-chunk-2CXVBEIH-full.js.map} +0 -0
  606. /package/chunks/{ids-chunk-5OTOVBGB-full.js.map → ids-chunk-2KY5Y7EH-full.js.map} +0 -0
  607. /package/chunks/{ids-chunk-HXIGU7Z3-full.js.map → ids-chunk-2RPNH5OY-full.js.map} +0 -0
  608. /package/chunks/{ids-chunk-PZNDGTUV-full.js.map → ids-chunk-2SUZT7BS-full.js.map} +0 -0
  609. /package/chunks/{ids-chunk-Q5HQNMUG-full.js.map → ids-chunk-2XVBZFEW-full.js.map} +0 -0
  610. /package/chunks/{ids-chunk-23CS6FGU-full.js.map → ids-chunk-3FP4ZOFN-full.js.map} +0 -0
  611. /package/chunks/{ids-chunk-DN6WAIN2-full.js.map → ids-chunk-3IPIY4RV-full.js.map} +0 -0
  612. /package/chunks/{ids-chunk-B5T2BJQT-full.js.map → ids-chunk-3RXDM7Y3-full.js.map} +0 -0
  613. /package/chunks/{ids-chunk-DSSMZQUN-full.js.map → ids-chunk-3W5OPDAR-full.js.map} +0 -0
  614. /package/chunks/{ids-chunk-HMUTH62T-full.js.map → ids-chunk-3WQHV246-full.js.map} +0 -0
  615. /package/chunks/{ids-chunk-7OMEBT6E-full.js.map → ids-chunk-3XI2VRJL-full.js.map} +0 -0
  616. /package/chunks/{ids-chunk-34QYE6WM-full.js.map → ids-chunk-43PRY6V3-full.js.map} +0 -0
  617. /package/chunks/{ids-chunk-5U22QPZJ-full.js.map → ids-chunk-44HOLFPQ-full.js.map} +0 -0
  618. /package/chunks/{ids-chunk-6NUPE2DG-full.js.map → ids-chunk-44NSL2B6-full.js.map} +0 -0
  619. /package/chunks/{ids-chunk-FV3FB6IO-full.js.map → ids-chunk-474MFA4O-full.js.map} +0 -0
  620. /package/chunks/{ids-chunk-5IQFY2AG-full.js.map → ids-chunk-4EB2UK5J-full.js.map} +0 -0
  621. /package/chunks/{ids-chunk-ABS2MHQA-full.js.map → ids-chunk-4FP2N5UG-full.js.map} +0 -0
  622. /package/chunks/{ids-chunk-VL5NWPA5-full.js.map → ids-chunk-4G7XYQM5-full.js.map} +0 -0
  623. /package/chunks/{ids-chunk-6EHWKLDJ-full.js.map → ids-chunk-4MGY364N-full.js.map} +0 -0
  624. /package/chunks/{ids-chunk-ZDVPFO3F-full.js.map → ids-chunk-4QOM23NA-full.js.map} +0 -0
  625. /package/chunks/{ids-chunk-7GVANS54-full.js.map → ids-chunk-4T5V5QXC-full.js.map} +0 -0
  626. /package/chunks/{ids-chunk-GT5TV3H3-full.js.map → ids-chunk-4UZAA336-full.js.map} +0 -0
  627. /package/chunks/{ids-chunk-VZUIMCGS-full.js.map → ids-chunk-5773OPHP-full.js.map} +0 -0
  628. /package/chunks/{ids-chunk-2IPVCSKZ-full.js.map → ids-chunk-5AEWUUZC-full.js.map} +0 -0
  629. /package/chunks/{ids-chunk-DX6QIRV5-full.js.map → ids-chunk-5D623WNY-full.js.map} +0 -0
  630. /package/chunks/{ids-chunk-CAQHKU35-full.js.map → ids-chunk-5EAPKNQY-full.js.map} +0 -0
  631. /package/chunks/{ids-chunk-HQGH2SX7-full.js.map → ids-chunk-5TO2W2O7-full.js.map} +0 -0
  632. /package/chunks/{ids-chunk-6QHTWIKK-full.js.map → ids-chunk-5ZRKZ3EJ-full.js.map} +0 -0
  633. /package/chunks/{ids-chunk-QLEWXFUK-full.js.map → ids-chunk-63ORR2QU-full.js.map} +0 -0
  634. /package/chunks/{ids-chunk-JVEHC2GO-full.js.map → ids-chunk-655TBKNA-full.js.map} +0 -0
  635. /package/chunks/{ids-chunk-MRMHPQZB-full.js.map → ids-chunk-65UUVQ66-full.js.map} +0 -0
  636. /package/chunks/{ids-chunk-DF3WRLWW-full.js.map → ids-chunk-6BT5FXZK-full.js.map} +0 -0
  637. /package/chunks/{ids-chunk-GBFDFO7X-full.js.map → ids-chunk-6DTSF453-full.js.map} +0 -0
  638. /package/chunks/{ids-chunk-AIC67I3B-full.js.map → ids-chunk-6MNZABFL-full.js.map} +0 -0
  639. /package/chunks/{ids-chunk-WZZIB47F-full.js.map → ids-chunk-6OLJBWEE-full.js.map} +0 -0
  640. /package/chunks/{ids-chunk-BF5YJGL2-full.js.map → ids-chunk-6P2LSHBV-full.js.map} +0 -0
  641. /package/chunks/{ids-chunk-ZMV3PJSQ-full.js.map → ids-chunk-6WAIBM2Q-full.js.map} +0 -0
  642. /package/chunks/{ids-chunk-WCY3GOTO-full.js.map → ids-chunk-76M6QFAT-full.js.map} +0 -0
  643. /package/chunks/{ids-chunk-LLYE4PCL-full.js.map → ids-chunk-76Y7W2LD-full.js.map} +0 -0
  644. /package/chunks/{ids-chunk-PWDLFVVD-full.js.map → ids-chunk-7BGTL4DW-full.js.map} +0 -0
  645. /package/chunks/{ids-chunk-6S5VBCIV-full.js.map → ids-chunk-7LP2QC4H-full.js.map} +0 -0
  646. /package/chunks/{ids-chunk-PB3RBJQH-full.js.map → ids-chunk-7PE4H2NA-full.js.map} +0 -0
  647. /package/chunks/{ids-chunk-2MO6NC45-full.js.map → ids-chunk-7U3KLPA7-full.js.map} +0 -0
  648. /package/chunks/{ids-chunk-KZUU3WML-full.js.map → ids-chunk-A5RRTARU-full.js.map} +0 -0
  649. /package/chunks/{ids-chunk-2RDPETVX-full.js.map → ids-chunk-ACV7BCRC-full.js.map} +0 -0
  650. /package/chunks/{ids-chunk-MN26F63F-full.js.map → ids-chunk-AMFEGKA6-full.js.map} +0 -0
  651. /package/chunks/{ids-chunk-3ACN345F-full.js.map → ids-chunk-B5GHODEX-full.js.map} +0 -0
  652. /package/chunks/{ids-chunk-NQ6KLJHZ-full.js.map → ids-chunk-BAD4A2ZD-full.js.map} +0 -0
  653. /package/chunks/{ids-chunk-BHGPHWWL-full.js.map → ids-chunk-BG6GF54T-full.js.map} +0 -0
  654. /package/chunks/{ids-chunk-RD3CAEBZ-full.js.map → ids-chunk-BJLBSMB4-full.js.map} +0 -0
  655. /package/chunks/{ids-chunk-CRDTRPEN-full.js.map → ids-chunk-BNLHKZTH-full.js.map} +0 -0
  656. /package/chunks/{ids-chunk-TYDGSFPN-full.js.map → ids-chunk-BOUMAFEJ-full.js.map} +0 -0
  657. /package/chunks/{ids-chunk-NRL6YHJO-full.js.map → ids-chunk-BQXFI2IX-full.js.map} +0 -0
  658. /package/chunks/{ids-chunk-5VOOLEAX-full.js.map → ids-chunk-BUIIMG6I-full.js.map} +0 -0
  659. /package/chunks/{ids-chunk-DAN35OCG-full.js.map → ids-chunk-BUSLDMGU-full.js.map} +0 -0
  660. /package/chunks/{ids-chunk-HKJFW7XK-full.js.map → ids-chunk-BVVQPIMS-full.js.map} +0 -0
  661. /package/chunks/{ids-chunk-PT3DFEPD-full.js.map → ids-chunk-BX6RDODK-full.js.map} +0 -0
  662. /package/chunks/{ids-chunk-37YMXNRR-full.js.map → ids-chunk-C45WTB7C-full.js.map} +0 -0
  663. /package/chunks/{ids-chunk-TQCSIR34-full.js.map → ids-chunk-C6G4A7ER-full.js.map} +0 -0
  664. /package/chunks/{ids-chunk-CKBHGWJV-full.js.map → ids-chunk-CHRYLWHI-full.js.map} +0 -0
  665. /package/chunks/{ids-chunk-74CZHSRC-full.js.map → ids-chunk-CINQIDRO-full.js.map} +0 -0
  666. /package/chunks/{ids-chunk-7VSJQKQ3-full.js.map → ids-chunk-CQPG7G2Z-full.js.map} +0 -0
  667. /package/chunks/{ids-chunk-M4TVM5IS-full.js.map → ids-chunk-CRYHODPP-full.js.map} +0 -0
  668. /package/chunks/{ids-chunk-RFDLYMBY-full.js.map → ids-chunk-D3FPGVWN-full.js.map} +0 -0
  669. /package/chunks/{ids-chunk-X65A3RHJ-full.js.map → ids-chunk-D523CBZB-full.js.map} +0 -0
  670. /package/chunks/{ids-chunk-JQOEAS5Z-full.js.map → ids-chunk-DO5PEIJU-full.js.map} +0 -0
  671. /package/chunks/{ids-chunk-HXVEIAAY-full.js.map → ids-chunk-DOTEXGMG-full.js.map} +0 -0
  672. /package/chunks/{ids-chunk-FLX2COZP-full.js.map → ids-chunk-DS72I6YQ-full.js.map} +0 -0
  673. /package/chunks/{ids-chunk-OEJBR76M-full.js.map → ids-chunk-DVLVMHPO-full.js.map} +0 -0
  674. /package/chunks/{ids-chunk-2S5E5AIY-full.js.map → ids-chunk-DVWUTAHN-full.js.map} +0 -0
  675. /package/chunks/{ids-chunk-LTWHCJTS-full.js.map → ids-chunk-E2GU4JTT-full.js.map} +0 -0
  676. /package/chunks/{ids-chunk-UPYP6ZNN-full.js.map → ids-chunk-E7724OOW-full.js.map} +0 -0
  677. /package/chunks/{ids-chunk-FUKJEPPE-full.js.map → ids-chunk-ECOKOO4I-full.js.map} +0 -0
  678. /package/chunks/{ids-chunk-OIKOJE4V-full.js.map → ids-chunk-EHCO2WXK-full.js.map} +0 -0
  679. /package/chunks/{ids-chunk-GRXCU67I-full.js.map → ids-chunk-EQ6GTJZE-full.js.map} +0 -0
  680. /package/chunks/{ids-chunk-I7WT4BAD-full.js.map → ids-chunk-EQEYIHWM-full.js.map} +0 -0
  681. /package/chunks/{ids-chunk-W64FIHYB-full.js.map → ids-chunk-EQFRFJZL-full.js.map} +0 -0
  682. /package/chunks/{ids-chunk-IUYPHVAV-full.js.map → ids-chunk-ER5U55RZ-full.js.map} +0 -0
  683. /package/chunks/{ids-chunk-UQHBV7QA-full.js.map → ids-chunk-EUMJGPX6-full.js.map} +0 -0
  684. /package/chunks/{ids-chunk-GBJBXWW2-full.js.map → ids-chunk-F22BNY77-full.js.map} +0 -0
  685. /package/chunks/{ids-chunk-2IV2T4WN-full.js.map → ids-chunk-F6KRGJOF-full.js.map} +0 -0
  686. /package/chunks/{ids-chunk-36SP4BV6-full.js.map → ids-chunk-FED4HWAK-full.js.map} +0 -0
  687. /package/chunks/{ids-chunk-K7FTGQ2E-full.js.map → ids-chunk-FGNPXRCT-full.js.map} +0 -0
  688. /package/chunks/{ids-chunk-55HY2PLR-full.js.map → ids-chunk-FJ6CLV42-full.js.map} +0 -0
  689. /package/chunks/{ids-chunk-QFCUUXL7-full.js.map → ids-chunk-FKDVLLAM-full.js.map} +0 -0
  690. /package/chunks/{ids-chunk-6MD5X4G4-full.js.map → ids-chunk-FMGQY2FL-full.js.map} +0 -0
  691. /package/chunks/{ids-chunk-EBYI6T7F-full.js.map → ids-chunk-FNNZ7WCH-full.js.map} +0 -0
  692. /package/chunks/{ids-chunk-NGQ76EOS-full.js.map → ids-chunk-FYHE4J3E-full.js.map} +0 -0
  693. /package/chunks/{ids-chunk-ZUVM4VU3-full.js.map → ids-chunk-GQE37MCK-full.js.map} +0 -0
  694. /package/chunks/{ids-chunk-7FKK5PB2-full.js.map → ids-chunk-GRJXMLAA-full.js.map} +0 -0
  695. /package/chunks/{ids-chunk-M2SIA6XU-full.js.map → ids-chunk-GY4CPTBB-full.js.map} +0 -0
  696. /package/chunks/{ids-chunk-543DMEAP-full.js.map → ids-chunk-H2TX7XGU-full.js.map} +0 -0
  697. /package/chunks/{ids-chunk-TFXOBXGZ-full.js.map → ids-chunk-HA4GQMAP-full.js.map} +0 -0
  698. /package/chunks/{ids-chunk-DSQC4CQ6-full.js.map → ids-chunk-HAVT47XR-full.js.map} +0 -0
  699. /package/chunks/{ids-chunk-BQOD7TDG-full.js.map → ids-chunk-HIKXEG6J-full.js.map} +0 -0
  700. /package/chunks/{ids-chunk-J3BASKXU-full.js.map → ids-chunk-HL4NF3SZ-full.js.map} +0 -0
  701. /package/chunks/{ids-chunk-TYXL3K44-full.js.map → ids-chunk-HSCBKGPG-full.js.map} +0 -0
  702. /package/chunks/{ids-chunk-VFRVF6JJ-full.js.map → ids-chunk-HVIABMM5-full.js.map} +0 -0
  703. /package/chunks/{ids-chunk-VWTJAFWA-full.js.map → ids-chunk-HX27OUZN-full.js.map} +0 -0
  704. /package/chunks/{ids-chunk-LBSE4RZY-full.js.map → ids-chunk-HXKZXPZT-full.js.map} +0 -0
  705. /package/chunks/{ids-chunk-R6DT6J7M-full.js.map → ids-chunk-IIFGHPSC-full.js.map} +0 -0
  706. /package/chunks/{ids-chunk-Y2TFZ2T5-full.js.map → ids-chunk-INJAKMQT-full.js.map} +0 -0
  707. /package/chunks/{ids-chunk-ZPLLMTPE-full.js.map → ids-chunk-IPHFA66F-full.js.map} +0 -0
  708. /package/chunks/{ids-chunk-YFF3WQZW-full.js.map → ids-chunk-ISTLZRNT-full.js.map} +0 -0
  709. /package/chunks/{ids-chunk-VGGWQ5BE-full.js.map → ids-chunk-ITE525L4-full.js.map} +0 -0
  710. /package/chunks/{ids-chunk-NMILSQCH-full.js.map → ids-chunk-J5CIWKCT-full.js.map} +0 -0
  711. /package/chunks/{ids-chunk-CXUGXPHV-full.js.map → ids-chunk-JCPCSYJ3-full.js.map} +0 -0
  712. /package/chunks/{ids-chunk-SVUVNOHV-full.js.map → ids-chunk-JDTIF3YY-full.js.map} +0 -0
  713. /package/chunks/{ids-chunk-N2ZGYOMH-full.js.map → ids-chunk-JF4TPWFS-full.js.map} +0 -0
  714. /package/chunks/{ids-chunk-FVDI7K5P-full.js.map → ids-chunk-JPIVLL2H-full.js.map} +0 -0
  715. /package/chunks/{ids-chunk-H3FYNTWI-full.js.map → ids-chunk-JSSL4NZO-full.js.map} +0 -0
  716. /package/chunks/{ids-chunk-QQDMXJQW-full.js.map → ids-chunk-JSUWWQAI-full.js.map} +0 -0
  717. /package/chunks/{ids-chunk-REPPCS5Y-full.js.map → ids-chunk-JTGLYQWH-full.js.map} +0 -0
  718. /package/chunks/{ids-chunk-6YBUX6E2-full.js.map → ids-chunk-JV7UYR2E-full.js.map} +0 -0
  719. /package/chunks/{ids-chunk-7PD5RBLF-full.js.map → ids-chunk-JZEP4QPB-full.js.map} +0 -0
  720. /package/chunks/{ids-chunk-557INSAX-full.js.map → ids-chunk-K24A25UN-full.js.map} +0 -0
  721. /package/chunks/{ids-chunk-3ET3C2CT-full.js.map → ids-chunk-K2TTOUEO-full.js.map} +0 -0
  722. /package/chunks/{ids-chunk-USR5TIRI-full.js.map → ids-chunk-K2W2YHY3-full.js.map} +0 -0
  723. /package/chunks/{ids-chunk-LTCXGP7G-full.js.map → ids-chunk-K2WUDECL-full.js.map} +0 -0
  724. /package/chunks/{ids-chunk-7JPI44ST-full.js.map → ids-chunk-KDT7XWEU-full.js.map} +0 -0
  725. /package/chunks/{ids-chunk-Q3E5P243-full.js.map → ids-chunk-KHROY5NZ-full.js.map} +0 -0
  726. /package/chunks/{ids-chunk-X5XV2XEN-full.js.map → ids-chunk-KIKBAS3S-full.js.map} +0 -0
  727. /package/chunks/{ids-chunk-SGEKV6VG-full.js.map → ids-chunk-KKBXWSGW-full.js.map} +0 -0
  728. /package/chunks/{ids-chunk-GQC6VIBC-full.js.map → ids-chunk-KLF345LI-full.js.map} +0 -0
  729. /package/chunks/{ids-chunk-6CLBJJVO-full.js.map → ids-chunk-KO5YPO3K-full.js.map} +0 -0
  730. /package/chunks/{ids-chunk-4EF5KFC4-full.js.map → ids-chunk-KSBDEF2V-full.js.map} +0 -0
  731. /package/chunks/{ids-chunk-3BKSN3MI-full.js.map → ids-chunk-KX3YBGML-full.js.map} +0 -0
  732. /package/chunks/{ids-chunk-ARMFIRIG-full.js.map → ids-chunk-LB7VKRQT-full.js.map} +0 -0
  733. /package/chunks/{ids-chunk-M6YBCIFU-full.js.map → ids-chunk-LCAFBMNX-full.js.map} +0 -0
  734. /package/chunks/{ids-chunk-V4XTWZMG-full.js.map → ids-chunk-LEZ2JXU2-full.js.map} +0 -0
  735. /package/chunks/{ids-chunk-GCB4THDI-full.js.map → ids-chunk-LLOYDBPH-full.js.map} +0 -0
  736. /package/chunks/{ids-chunk-MM6J4L3H-full.js.map → ids-chunk-LQJ6TQB7-full.js.map} +0 -0
  737. /package/chunks/{ids-chunk-D6UPV763-full.js.map → ids-chunk-LR27PTK6-full.js.map} +0 -0
  738. /package/chunks/{ids-chunk-OHXEXITV-full.js.map → ids-chunk-LSDW3LRN-full.js.map} +0 -0
  739. /package/chunks/{ids-chunk-FRMWXXEE-full.js.map → ids-chunk-LYQI3AL4-full.js.map} +0 -0
  740. /package/chunks/{ids-chunk-D5PFB4Z5-full.js.map → ids-chunk-M4FGNMCL-full.js.map} +0 -0
  741. /package/chunks/{ids-chunk-BE2WF4G7-full.js.map → ids-chunk-M6VUXDAI-full.js.map} +0 -0
  742. /package/chunks/{ids-chunk-2W7SGFXN-full.js.map → ids-chunk-M725A3MN-full.js.map} +0 -0
  743. /package/chunks/{ids-chunk-HLE7S7FA-full.js.map → ids-chunk-M75NTVIB-full.js.map} +0 -0
  744. /package/chunks/{ids-chunk-KRG7ILWA-full.js.map → ids-chunk-MH5M2YW5-full.js.map} +0 -0
  745. /package/chunks/{ids-chunk-WLH6FB7F-full.js.map → ids-chunk-MIPHQRHK-full.js.map} +0 -0
  746. /package/chunks/{ids-chunk-OQF3KN66-full.js.map → ids-chunk-MJTYIXBN-full.js.map} +0 -0
  747. /package/chunks/{ids-chunk-AHGM5SDK-full.js.map → ids-chunk-MOU7I6BI-full.js.map} +0 -0
  748. /package/chunks/{ids-chunk-CEDZAYKW-full.js.map → ids-chunk-MZYZBHCN-full.js.map} +0 -0
  749. /package/chunks/{ids-chunk-BDXWOLCO-full.js.map → ids-chunk-N6D3DXRK-full.js.map} +0 -0
  750. /package/chunks/{ids-chunk-B6B76OKF-full.js.map → ids-chunk-N6DIYIIZ-full.js.map} +0 -0
  751. /package/chunks/{ids-chunk-KO3KZWQZ-full.js.map → ids-chunk-NATNGT73-full.js.map} +0 -0
  752. /package/chunks/{ids-chunk-46EIPFU7-full.js.map → ids-chunk-NDHBA4UL-full.js.map} +0 -0
  753. /package/chunks/{ids-chunk-FH5ULEPX-full.js.map → ids-chunk-NHXQIZQH-full.js.map} +0 -0
  754. /package/chunks/{ids-chunk-AD3Q5O4G-full.js.map → ids-chunk-NKXXYLTH-full.js.map} +0 -0
  755. /package/chunks/{ids-chunk-TAX5HVWM-full.js.map → ids-chunk-NPVKP7XT-full.js.map} +0 -0
  756. /package/chunks/{ids-chunk-P35OLURH-full.js.map → ids-chunk-NYP72F55-full.js.map} +0 -0
  757. /package/chunks/{ids-chunk-PCCRONYR-full.js.map → ids-chunk-NZNXYHMY-full.js.map} +0 -0
  758. /package/chunks/{ids-chunk-FRAN3EGT-full.js.map → ids-chunk-O4JXDQ7L-full.js.map} +0 -0
  759. /package/chunks/{ids-chunk-HDKARTRS-full.js.map → ids-chunk-ODZMTEHZ-full.js.map} +0 -0
  760. /package/chunks/{ids-chunk-EVC4SJNV-full.js.map → ids-chunk-OFTHMHNN-full.js.map} +0 -0
  761. /package/chunks/{ids-chunk-5UFPYCKZ-full.js.map → ids-chunk-OKFF4JWL-full.js.map} +0 -0
  762. /package/chunks/{ids-chunk-STUQC5EN-full.js.map → ids-chunk-OMTV2M33-full.js.map} +0 -0
  763. /package/chunks/{ids-chunk-5OIJ7YEZ-full.js.map → ids-chunk-OPSZFUVF-full.js.map} +0 -0
  764. /package/chunks/{ids-chunk-HT6B7AQL-full.js.map → ids-chunk-OQNHEF3V-full.js.map} +0 -0
  765. /package/chunks/{ids-chunk-UGRNYFTT-full.js.map → ids-chunk-OQXHVGD2-full.js.map} +0 -0
  766. /package/chunks/{ids-chunk-JRK44CJ3-full.js.map → ids-chunk-OVM5D5SP-full.js.map} +0 -0
  767. /package/chunks/{ids-chunk-JW46WWBJ-full.js.map → ids-chunk-P33YXHEO-full.js.map} +0 -0
  768. /package/chunks/{ids-chunk-7AJ5GVW7-full.js.map → ids-chunk-P5CEBCIG-full.js.map} +0 -0
  769. /package/chunks/{ids-chunk-OKTKMUSU-full.js.map → ids-chunk-P5RXDTO2-full.js.map} +0 -0
  770. /package/chunks/{ids-chunk-DK3GHAFJ-full.js.map → ids-chunk-PCQJIZDS-full.js.map} +0 -0
  771. /package/chunks/{ids-chunk-Y5ZKF5IE-full.js.map → ids-chunk-PFEOOXOA-full.js.map} +0 -0
  772. /package/chunks/{ids-chunk-GAPWBO6H-full.js.map → ids-chunk-PKQOR7IQ-full.js.map} +0 -0
  773. /package/chunks/{ids-chunk-HQYUGX4E-full.js.map → ids-chunk-PLG7Q7HB-full.js.map} +0 -0
  774. /package/chunks/{ids-chunk-GJSTSXB2-full.js.map → ids-chunk-PNTWGI4L-full.js.map} +0 -0
  775. /package/chunks/{ids-chunk-YUBSYJOO-full.js.map → ids-chunk-PPUIANQC-full.js.map} +0 -0
  776. /package/chunks/{ids-chunk-PEKEMDUM-full.js.map → ids-chunk-PPYV4K2W-full.js.map} +0 -0
  777. /package/chunks/{ids-chunk-QMM5OYVU-full.js.map → ids-chunk-PVNFUH25-full.js.map} +0 -0
  778. /package/chunks/{ids-chunk-PUXMBT6E-full.js.map → ids-chunk-QAKNY2K5-full.js.map} +0 -0
  779. /package/chunks/{ids-chunk-24JQ5QSF-full.js.map → ids-chunk-QC3YTNFW-full.js.map} +0 -0
  780. /package/chunks/{ids-chunk-3GC2IKUP-full.js.map → ids-chunk-QICYJWV2-full.js.map} +0 -0
  781. /package/chunks/{ids-chunk-SGEKWQI2-full.js.map → ids-chunk-QL5BWGRT-full.js.map} +0 -0
  782. /package/chunks/{ids-chunk-F5N5J5CC-full.js.map → ids-chunk-QLKPXSYP-full.js.map} +0 -0
  783. /package/chunks/{ids-chunk-6LVGKX7B-full.js.map → ids-chunk-QZE2T6RN-full.js.map} +0 -0
  784. /package/chunks/{ids-chunk-3ARK6C6L-full.js.map → ids-chunk-R5R3S57T-full.js.map} +0 -0
  785. /package/chunks/{ids-chunk-XKMKXLO4-full.js.map → ids-chunk-RCM4V3XS-full.js.map} +0 -0
  786. /package/chunks/{ids-chunk-XAFYLA5L-full.js.map → ids-chunk-REGZSNTP-full.js.map} +0 -0
  787. /package/chunks/{ids-chunk-R77MGSM6-full.js.map → ids-chunk-RHPTKTWK-full.js.map} +0 -0
  788. /package/chunks/{ids-chunk-CP2DVRB2-full.js.map → ids-chunk-RIQYX2LA-full.js.map} +0 -0
  789. /package/chunks/{ids-chunk-DLW3AVBI-full.js.map → ids-chunk-RJ3MHPGT-full.js.map} +0 -0
  790. /package/chunks/{ids-chunk-JKL7IJX6-full.js.map → ids-chunk-RL4PRWWL-full.js.map} +0 -0
  791. /package/chunks/{ids-chunk-JV6JSALT-full.js.map → ids-chunk-RPTMFMI3-full.js.map} +0 -0
  792. /package/chunks/{ids-chunk-S57C4KXG-full.js.map → ids-chunk-RQ6PWT3Z-full.js.map} +0 -0
  793. /package/chunks/{ids-chunk-C4LSCZTQ-full.js.map → ids-chunk-RWT6NGYY-full.js.map} +0 -0
  794. /package/chunks/{ids-chunk-CRVGWLIF-full.js.map → ids-chunk-S2YBQC3H-full.js.map} +0 -0
  795. /package/chunks/{ids-chunk-YX25ZZ76-full.js.map → ids-chunk-S4S263F7-full.js.map} +0 -0
  796. /package/chunks/{ids-chunk-4KOGV5S6-full.js.map → ids-chunk-S6DDPBLL-full.js.map} +0 -0
  797. /package/chunks/{ids-chunk-5ELJINRK-full.js.map → ids-chunk-SIS75LAP-full.js.map} +0 -0
  798. /package/chunks/{ids-chunk-R4JPV7M7-full.js.map → ids-chunk-SLXLD6RV-full.js.map} +0 -0
  799. /package/chunks/{ids-chunk-QDN5ISE7-full.js.map → ids-chunk-SMEGSI22-full.js.map} +0 -0
  800. /package/chunks/{ids-chunk-NLGNSKTC-full.js.map → ids-chunk-SN6G2IDB-full.js.map} +0 -0
  801. /package/chunks/{ids-chunk-HFPGE2QH-full.js.map → ids-chunk-SNWJAFW7-full.js.map} +0 -0
  802. /package/chunks/{ids-chunk-35ECJA2C-full.js.map → ids-chunk-SQLZPK2R-full.js.map} +0 -0
  803. /package/chunks/{ids-chunk-ZSWWZ6G6-full.js.map → ids-chunk-SSUJH3Y5-full.js.map} +0 -0
  804. /package/chunks/{ids-chunk-JAEPAADX-full.js.map → ids-chunk-T3XJHEYI-full.js.map} +0 -0
  805. /package/chunks/{ids-chunk-WKPZKQEG-full.js.map → ids-chunk-T6FMTTEN-full.js.map} +0 -0
  806. /package/chunks/{ids-chunk-MI3ZPCPG-full.js.map → ids-chunk-TBPYKVP7-full.js.map} +0 -0
  807. /package/chunks/{ids-chunk-7TNTDIDY-full.js.map → ids-chunk-TQI4ELXN-full.js.map} +0 -0
  808. /package/chunks/{ids-chunk-MTDK7HR3-full.js.map → ids-chunk-TSHFFNZO-full.js.map} +0 -0
  809. /package/chunks/{ids-chunk-AXZ5KRXH-full.js.map → ids-chunk-TVJEUQNS-full.js.map} +0 -0
  810. /package/chunks/{ids-chunk-7DA47KVV-full.js.map → ids-chunk-TX6JMJVN-full.js.map} +0 -0
  811. /package/chunks/{ids-chunk-UF4RKEE3-full.js.map → ids-chunk-TZUZOXZB-full.js.map} +0 -0
  812. /package/chunks/{ids-chunk-JD35FTUV-full.js.map → ids-chunk-U265PQZG-full.js.map} +0 -0
  813. /package/chunks/{ids-chunk-HJMBIMJL-full.js.map → ids-chunk-U6RLOB64-full.js.map} +0 -0
  814. /package/chunks/{ids-chunk-2OCOBBEL-full.js.map → ids-chunk-U7BHU6SJ-full.js.map} +0 -0
  815. /package/chunks/{ids-chunk-5Q4SEIZ2-full.js.map → ids-chunk-UAAKNOSO-full.js.map} +0 -0
  816. /package/chunks/{ids-chunk-6REFUPF7-full.js.map → ids-chunk-UEAPQQWV-full.js.map} +0 -0
  817. /package/chunks/{ids-chunk-J3TAGWSR-full.js.map → ids-chunk-UFBUIJIQ-full.js.map} +0 -0
  818. /package/chunks/{ids-chunk-KHQFTYMP-full.js.map → ids-chunk-UL2U74OZ-full.js.map} +0 -0
  819. /package/chunks/{ids-chunk-OJS6LSJ5-full.js.map → ids-chunk-UOWXMCDY-full.js.map} +0 -0
  820. /package/chunks/{ids-chunk-QB5HGA7R-full.js.map → ids-chunk-UQSTMH53-full.js.map} +0 -0
  821. /package/chunks/{ids-chunk-723FQZWT-full.js.map → ids-chunk-URRI3K6F-full.js.map} +0 -0
  822. /package/chunks/{ids-chunk-WFHTI5RR-full.js.map → ids-chunk-UYYBGIDV-full.js.map} +0 -0
  823. /package/chunks/{ids-chunk-MPCOD3EM-full.js.map → ids-chunk-V27TW6FN-full.js.map} +0 -0
  824. /package/chunks/{ids-chunk-QLUMF46I-full.js.map → ids-chunk-V6P4VFF2-full.js.map} +0 -0
  825. /package/chunks/{ids-chunk-PZYPPC72-full.js.map → ids-chunk-VBASNVK6-full.js.map} +0 -0
  826. /package/chunks/{ids-chunk-IIAUFD4V-full.js.map → ids-chunk-VF72DVER-full.js.map} +0 -0
  827. /package/chunks/{ids-chunk-DP5MFD3X-full.js.map → ids-chunk-VFCMPAPU-full.js.map} +0 -0
  828. /package/chunks/{ids-chunk-TL2ITBEY-full.js.map → ids-chunk-VKQC4E3U-full.js.map} +0 -0
  829. /package/chunks/{ids-chunk-KWZFGVEC-full.js.map → ids-chunk-VLS32KDG-full.js.map} +0 -0
  830. /package/chunks/{ids-chunk-25SFEGWW-full.js.map → ids-chunk-VOQPOVB4-full.js.map} +0 -0
  831. /package/chunks/{ids-chunk-3KNBEAEJ-full.js.map → ids-chunk-VOXJBDTL-full.js.map} +0 -0
  832. /package/chunks/{ids-chunk-SSR6EG35-full.js.map → ids-chunk-VSUCTRET-full.js.map} +0 -0
  833. /package/chunks/{ids-chunk-Z3K2R6TK-full.js.map → ids-chunk-VZK3UNI2-full.js.map} +0 -0
  834. /package/chunks/{ids-chunk-ANQ467A7-full.js.map → ids-chunk-W3QDSJFT-full.js.map} +0 -0
  835. /package/chunks/{ids-chunk-2FNRNYV3-full.js.map → ids-chunk-W6JJZ2KW-full.js.map} +0 -0
  836. /package/chunks/{ids-chunk-HZ45UVLK-full.js.map → ids-chunk-W6YDML3E-full.js.map} +0 -0
  837. /package/chunks/{ids-chunk-5H5JOBKN-full.js.map → ids-chunk-WEXW4EDP-full.js.map} +0 -0
  838. /package/chunks/{ids-chunk-KZFN5VAP-full.js.map → ids-chunk-WMENBLGN-full.js.map} +0 -0
  839. /package/chunks/{ids-chunk-5IRPWSWQ-full.js.map → ids-chunk-WPVTQZTR-full.js.map} +0 -0
  840. /package/chunks/{ids-chunk-VJXOS4VA-full.js.map → ids-chunk-WXVD2LPK-full.js.map} +0 -0
  841. /package/chunks/{ids-chunk-MBUS3QJQ-full.js.map → ids-chunk-X4S7ZHSU-full.js.map} +0 -0
  842. /package/chunks/{ids-chunk-NRPGTR55-full.js.map → ids-chunk-X53E2ROO-full.js.map} +0 -0
  843. /package/chunks/{ids-chunk-CPSCG5KE-full.js.map → ids-chunk-XBFA4CMB-full.js.map} +0 -0
  844. /package/chunks/{ids-chunk-J4UUXN3B-full.js.map → ids-chunk-XBJOS4RU-full.js.map} +0 -0
  845. /package/chunks/{ids-chunk-LQZOVWLN-full.js.map → ids-chunk-XCC3IVSP-full.js.map} +0 -0
  846. /package/chunks/{ids-chunk-4XS4C3E6-full.js.map → ids-chunk-XCOOWZNX-full.js.map} +0 -0
  847. /package/chunks/{ids-chunk-7LLW7QR3-full.js.map → ids-chunk-XF5BZKK7-full.js.map} +0 -0
  848. /package/chunks/{ids-chunk-JR6JZTUW-full.js.map → ids-chunk-XLF32LYM-full.js.map} +0 -0
  849. /package/chunks/{ids-chunk-5O3AGRGM-full.js.map → ids-chunk-XPUSFXSJ-full.js.map} +0 -0
  850. /package/chunks/{ids-chunk-MM4ZKSLE-full.js.map → ids-chunk-XTPN3SFT-full.js.map} +0 -0
  851. /package/chunks/{ids-chunk-K5SHUKHM-full.js.map → ids-chunk-XVTFV3VO-full.js.map} +0 -0
  852. /package/chunks/{ids-chunk-NWDJN63Z-full.js.map → ids-chunk-YEFBLJLV-full.js.map} +0 -0
  853. /package/chunks/{ids-chunk-ZASVB3HI-full.js.map → ids-chunk-YHWCHT5S-full.js.map} +0 -0
  854. /package/chunks/{ids-chunk-KBK3KHCB-full.js.map → ids-chunk-YIAQZ6Y7-full.js.map} +0 -0
  855. /package/chunks/{ids-chunk-MZ52VCIX-full.js.map → ids-chunk-YJPG4OCQ-full.js.map} +0 -0
  856. /package/chunks/{ids-chunk-UZTLN4RE-full.js.map → ids-chunk-YKQXHMXK-full.js.map} +0 -0
  857. /package/chunks/{ids-chunk-4TI33B4L-full.js.map → ids-chunk-YLYKVFAO-full.js.map} +0 -0
  858. /package/chunks/{ids-chunk-REOYW4U6-full.js.map → ids-chunk-YMXMNPBJ-full.js.map} +0 -0
  859. /package/chunks/{ids-chunk-CZIQX2JT-full.js.map → ids-chunk-YO6YVMGK-full.js.map} +0 -0
  860. /package/chunks/{ids-chunk-TP5FKJQJ-full.js.map → ids-chunk-YSP56VTK-full.js.map} +0 -0
  861. /package/chunks/{ids-chunk-JWSN527Q-full.js.map → ids-chunk-YTWR6KLY-full.js.map} +0 -0
  862. /package/chunks/{ids-chunk-4BAPDFDC-full.js.map → ids-chunk-YXGIOC6V-full.js.map} +0 -0
  863. /package/chunks/{ids-chunk-L5KLUFSQ-full.js.map → ids-chunk-YYCLHLDU-full.js.map} +0 -0
  864. /package/chunks/{ids-chunk-3J45QMCH-full.js.map → ids-chunk-Z3HRHZAF-full.js.map} +0 -0
  865. /package/chunks/{ids-chunk-G4OSNQG5-full.js.map → ids-chunk-Z3LRPXYQ-full.js.map} +0 -0
  866. /package/chunks/{ids-chunk-7JIZYB3J-full.js.map → ids-chunk-Z6OJ5LLZ-full.js.map} +0 -0
  867. /package/chunks/{ids-chunk-CEP6272C-full.js.map → ids-chunk-ZCOQEWMU-full.js.map} +0 -0
  868. /package/chunks/{ids-chunk-45MQWCYK-full.js.map → ids-chunk-ZIPMJTUT-full.js.map} +0 -0
  869. /package/chunks/{ids-chunk-BZAXTYVK-full.js.map → ids-chunk-ZLQPGYZK-full.js.map} +0 -0
  870. /package/chunks/{ids-chunk-7FA62T3P-full.js.map → ids-chunk-ZNGIX74C-full.js.map} +0 -0
  871. /package/chunks/{ids-chunk-AADVH3X2-full.js.map → ids-chunk-ZPDNPX4P-full.js.map} +0 -0
  872. /package/chunks/{ids-chunk-L4PUCI4E-full.js.map → ids-chunk-ZQRMWIXB-full.js.map} +0 -0
@@ -1,92 +1,92 @@
1
1
  /*!
2
- * Enterprise Web Components v1.13.2 (chunk/code split version all components)
2
+ * Enterprise Web Components v1.13.3 (chunk/code split version all components)
3
3
  * Copyright (c) 2025 Infor
4
4
  */
5
5
  import {
6
6
  exportToCSV,
7
7
  exportToXLSX
8
- } from "./ids-chunk-4EF5KFC4-full.js";
8
+ } from "./ids-chunk-KSBDEF2V-full.js";
9
9
  import {
10
10
  ids_data_grid_tooltip_mixin_default
11
- } from "./ids-chunk-MN26F63F-full.js";
11
+ } from "./ids-chunk-AMFEGKA6-full.js";
12
12
  import {
13
13
  IdsDataGridFilters
14
- } from "./ids-chunk-WAXIAWPC-full.js";
14
+ } from "./ids-chunk-4JFJB3FG-full.js";
15
15
  import {
16
16
  IdsDataGridFormatters
17
- } from "./ids-chunk-GQC6VIBC-full.js";
17
+ } from "./ids-chunk-KLF345LI-full.js";
18
18
  import {
19
19
  IdsDataGridHeader
20
- } from "./ids-chunk-77AKSYNJ-full.js";
20
+ } from "./ids-chunk-SQB7CQME-full.js";
21
21
  import {
22
22
  IdsDataGridRow
23
- } from "./ids-chunk-MM4ZKSLE-full.js";
23
+ } from "./ids-chunk-XTPN3SFT-full.js";
24
24
  import {
25
25
  ids_data_grid_save_settings_mixin_default
26
- } from "./ids-chunk-L5KLUFSQ-full.js";
26
+ } from "./ids-chunk-YYCLHLDU-full.js";
27
27
  import {
28
28
  ids_data_grid_search_mixin_default
29
- } from "./ids-chunk-NMILSQCH-full.js";
29
+ } from "./ids-chunk-J5CIWKCT-full.js";
30
30
  import {
31
31
  ids_data_grid_toolbar_mixin_default
32
- } from "./ids-chunk-B5T2BJQT-full.js";
32
+ } from "./ids-chunk-3RXDM7Y3-full.js";
33
33
  import {
34
34
  IdsDataGridCell
35
- } from "./ids-chunk-PCR42BC7-full.js";
35
+ } from "./ids-chunk-CG2UXD3A-full.js";
36
36
  import {
37
37
  getContextmenuElem,
38
38
  setContextmenu
39
- } from "./ids-chunk-55HY2PLR-full.js";
39
+ } from "./ids-chunk-FJ6CLV42-full.js";
40
40
  import {
41
41
  containerArguments,
42
42
  containerTypes
43
- } from "./ids-chunk-4XS4C3E6-full.js";
43
+ } from "./ids-chunk-XCOOWZNX-full.js";
44
44
  import {
45
45
  eventPath,
46
46
  findInPath
47
- } from "./ids-chunk-6EHWKLDJ-full.js";
47
+ } from "./ids-chunk-4MGY364N-full.js";
48
48
  import {
49
49
  editors
50
- } from "./ids-chunk-IUYPHVAV-full.js";
50
+ } from "./ids-chunk-ER5U55RZ-full.js";
51
51
  import {
52
52
  IdsDataGridToggleEmptyMessage,
53
53
  emptyMessageTemplate,
54
54
  hideEmptyMessage,
55
55
  resetEmptyMessageElements,
56
56
  setEmptyMessage
57
- } from "./ids-chunk-HMUTH62T-full.js";
57
+ } from "./ids-chunk-3WQHV246-full.js";
58
58
  import {
59
59
  ids_pager_mixin_default
60
- } from "./ids-chunk-BE2WF4G7-full.js";
60
+ } from "./ids-chunk-M6VUXDAI-full.js";
61
61
  import {
62
62
  ids_data_source_default
63
- } from "./ids-chunk-NLGNSKTC-full.js";
63
+ } from "./ids-chunk-SN6G2IDB-full.js";
64
64
  import {
65
65
  ids_locale_mixin_default
66
- } from "./ids-chunk-R77MGSM6-full.js";
66
+ } from "./ids-chunk-RHPTKTWK-full.js";
67
67
  import {
68
68
  ids_keyboard_mixin_default
69
- } from "./ids-chunk-BF5YJGL2-full.js";
69
+ } from "./ids-chunk-6P2LSHBV-full.js";
70
70
  import {
71
71
  ids_events_mixin_default
72
- } from "./ids-chunk-DGMLW46Y-full.js";
72
+ } from "./ids-chunk-24DUL2YK-full.js";
73
73
  import {
74
74
  IdsElement
75
- } from "./ids-chunk-HFPGE2QH-full.js";
75
+ } from "./ids-chunk-SNWJAFW7-full.js";
76
76
  import {
77
77
  customElement,
78
78
  scss
79
- } from "./ids-chunk-FRMWXXEE-full.js";
79
+ } from "./ids-chunk-LYQI3AL4-full.js";
80
80
  import {
81
81
  ids_global_default
82
- } from "./ids-chunk-JV6JSALT-full.js";
82
+ } from "./ids-chunk-RPTMFMI3-full.js";
83
83
  import {
84
84
  isValidBooleanValue,
85
85
  stringToBool
86
- } from "./ids-chunk-3J45QMCH-full.js";
86
+ } from "./ids-chunk-Z3HRHZAF-full.js";
87
87
  import {
88
88
  attributes
89
- } from "./ids-chunk-SCUDQYUW-full.js";
89
+ } from "./ids-chunk-BZHEMUUE-full.js";
90
90
  import {
91
91
  __decorateClass,
92
92
  __privateAdd,
@@ -94,7 +94,7 @@ import {
94
94
  __privateMethod,
95
95
  __privateSet,
96
96
  __publicField
97
- } from "./ids-chunk-CXUGXPHV-full.js";
97
+ } from "./ids-chunk-JCPCSYJ3-full.js";
98
98
 
99
99
  // src/components/ids-data-grid/ids-data-grid.scss
100
100
  var ids_data_grid_default = `/* Ids Data Grid Component - Filter */
@@ -883,7 +883,7 @@ ids-data-grid-cell[column-offscreen-right] {
883
883
  .ids-data-grid-cell.is-uppercase {
884
884
  text-transform: uppercase;
885
885
  }
886
- .ids-data-grid-cell:focus, .ids-data-grid-cell.is-editing:not(.is-inline):focus-within, .ids-data-grid-cell.is-focused {
886
+ .ids-data-grid-cell:focus:not(.selected):not([tabindex="-1"]), .ids-data-grid-cell.is-editing:not(.is-inline):focus-within:not(.selected):not([tabindex="-1"]), .ids-data-grid-cell.is-focused:not(.selected):not([tabindex="-1"]) {
887
887
  box-shadow: var(--ids-shadow-20);
888
888
  outline: 1px solid var(--ids-color-border-focus);
889
889
  outline-offset: -1px;
@@ -2563,7 +2563,7 @@ ids-loading-indicator[stopped] {
2563
2563
  overflow: auto;
2564
2564
  max-height: var(--ids-modal-column-list-height);
2565
2565
  }
2566
- /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL3Jvb3QvZW50ZXJwcmlzZS9zcmMvY29tcG9uZW50cy9pZHMtZGF0YS1ncmlkIiwic291cmNlcyI6WyJpZHMtZGF0YS1ncmlkLWZpbHRlcnMuc2NzcyIsImlkcy1kYXRhLWdyaWQtaGVhZGVyLnNjc3MiLCJpZHMtZGF0YS1ncmlkLXJvdy5zY3NzIiwiaWRzLWRhdGEtZ3JpZC1jZWxsLnNjc3MiLCJpZHMtZGF0YS1ncmlkLWNvbW1vbi5zY3NzIiwiLi4vLi4vdGhlbWVzL21peGlucy9pZHMtaGlkZS1taXhpbi5zY3NzIiwiLi4vaWRzLXBvcHVwLW1lbnUvaWRzLXBvcHVwLW1lbnUuc2NzcyIsIi4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWNoZWNrYm94LW1peGluLnNjc3MiLCIuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1yYWRpby1taXhpbi5zY3NzIiwiaWRzLWRhdGEtZ3JpZC5zY3NzIiwiLi4vLi4vdGhlbWVzL21peGlucy9pZHMtY29yZS1taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBRUE7O0FBR0Y7RUFJRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBTUE7QUFBQTtBQUFBO0VBR0U7O0FBS047RUFDRTtFQUNBO0VBRUE7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOzs7QUMxRU47QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQU9BOztBQUxBO0VBQ0U7OztBQVFKO0VBQ0U7O0FBRUE7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBSUY7RUFDRTtFQUNBOzs7QUFLSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0E7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBRUU7O0FBR0Y7RUFFRTs7QUFHRjtFQUNFO0VBQ0E7O0FBSUE7RUFDRTs7QUFLSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJSjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBRUE7RUFDRTs7QUFJSjtFQUNFOztBQUlGO0VBQ0U7RUFDQTtFQUNBOztBQUlGO0VBQ0U7O0FBRUE7RUFDRTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTs7QUFJRTtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFLTjtFQUNFO0VBQ0E7O0FBR0E7RUFDRTs7O0FBS047RUFDRTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7OztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQUlGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBS0E7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUlKO0VBQ0U7O0FBRUE7RUFDRTs7O0FBS047RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7OztBQUlKO0VBQ0U7OztBQUdGO0FBQUE7RUFFRTs7O0FBR0Y7RUFDRTtFQUNBOzs7QUFLQTtBQUFBO0VBQ0U7OztBQU1GO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOzs7QUFNRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7O0FBS0o7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7O0FBS0o7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBTUE7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBS0E7RUFDRTs7QUFJSjtBQUFBO0VBRUU7O0FBS0E7RUFDRTs7O0FBTU47RUFDRTs7O0FBTUU7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUVBO0VBQ0U7O0FBR0Y7RUFDRTs7QUFJSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUlGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7OztBQVNGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBSUU7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7OztBQzlmVjtBQUNBO0VBQ0U7RUFDQTtFQUNBOztBQUVBO0VBRUU7O0FBR0Y7RUFDRTs7QUFLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtOO0VBQ0U7O0FBR0U7RUFLRTtFQUNBOztBQUxBO0VBQ0k7O0FBU1Y7RUFDRTs7QUFHRTtFQUtFO0VBQ0E7O0FBTEE7RUFDRTs7QUFTUjtFQUNFOztBQUdFO0VBS0U7RUFDQTs7QUFMQTtFQUNFOzs7QUFXVjtFQUNFO0VBQ0E7O0FBR0E7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBRUE7OztBQVFBO0VBQ0U7O0FBRUE7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFJSjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUVBO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7O0FBSUo7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUVBO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7O0FBSUo7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUVBO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7O0FBTUE7RUFDRTtFQUNBOztBQUtOO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOzs7QUFNTjtFQUNFOzs7QUFJRjtFQUNFO0VBQ0E7RUFDQTs7O0FBSUY7RUFDRTtFQUNBOzs7QUFLQTtFQUNFOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlKO0VBQ0U7RUFDQTs7QUFJRjtBQUFBO0VBRUU7OztBQVNNO0VBQ0k7O0FBU0o7RUFDSTs7QUFTSjtFQUNJOzs7QUN6UmQ7QUFDQTtFQUNFOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFLRTtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7O0FBS047RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHQTtFQUNFOztBQUlGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBSUY7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSUY7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTs7QUFNRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBS0o7RUFDRTs7QUFFQTtFQUNFOztBQUlKO0VBQ0U7O0FBRUE7RUFDRTs7QUFJSjtFQUNFOztBQUlGO0VBR0U7RUFDQTtFQUNBOztBQUtFO0VBQ0U7O0FBTUE7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFOztBQUtOO0VBR0U7O0FBRUE7RUFDRTs7QUFNRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFOztBQUVBO0VBQ0U7O0FBS047RUFDRTs7QUFNQTtFQUNFOztBQUdGO0VBQ0U7O0FBSUo7RUFDRTs7QUFFQTtFQUNFOztBQUtOO0VBQ0U7RUFDQTtFQUNBO0VBTUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVRBO0VBQ0U7O0FBWUo7RUFHRTs7QUFHRjtFQUNFOztBQUtBO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLSjtFQUNFOztBQUVBO0VBQ0U7O0FBS0o7RUFDRTs7QUFJRjtFQUNFOztBQUVBO0FBQUE7QUFBQTtFQUdFOztBQUtKO0VBQ0U7RUFDQTs7QUFJRjtFQUNFOztBQUVBO0VBQ0U7O0FBSUo7RUFDRTtFQUNBOztBQUlFO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQUtOO0VBQ0U7RUFDQTs7QUFHRjtFQ3BWQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FEa1ZJO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUVBO0VDbFdOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QURnV0U7RUFDRTtFQUNBOztBQUlBO0VBQ0U7RUFDQTs7QUFLTjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFpQk07RUFDRTtFQUNBOztBQUZGO0VBQ0U7RUFDQTs7QUFGRjtFQUNFO0VBQ0E7O0FBRkY7RUFDRTtFQUNBOzs7QUFhUjtFQUNFOztBQUlKO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFJQTtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLSjtFQUNFOztBQUlGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBRUE7O0FBSUE7RUFDRTs7QUFHRjtFQUNFOzs7QUFXRjtFQUNFOztBQUlKO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBRUE7RUFDRTtFQUNBOztBQUtKO0VBQ0U7O0FBSUY7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFJQTtFQUNFOzs7QUFXRjtFQUNFOztBQUlKO0VBQ0U7O0FBSUY7RUFDRTs7QUFJRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFJQTtFQUNFOzs7QUFXRjtFQUNFOztBQUtKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUVBO0VBQ0U7RUFDQTs7QUFLRjtFQUNFOzs7QUFXRjtFQUNFOzs7QUFRSjtFQUNFO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFOztBQUlKO0VBQ0U7OztBQUtKO0VBQ0U7RUFDQTtFQUNBOzs7QUFNRTtFQUNFOztBQU1GO0VBQ0U7RUFDQTs7QUFJRTtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFLTjtFQUNFOztBQUlBO0VBRUU7OztBQU9SO0VBQ0U7OztBRWh1QkY7RUFDRTs7O0FBSUE7RUFERjtJQUVJOzs7QUFXRjtFQURGO0lBRUk7OztBQVdGO0VBREY7SUFFSTs7O0FBV0Y7RUFERjtJQUVJOzs7QUFXRjtFQURGO0lBRUk7OztBQVdGO0VBREY7SUFFSTs7O0FBV0Y7RUFERjtJQUVJOzs7QUFXRjtFQURGO0lBRUk7OztBQVdGO0VBREY7SUFFSTs7O0FBV0Y7RUFERjtJQUVJOzs7QUFXRjtFQURGO0lBRUk7OztBQVdGO0VBREY7SUFFSTs7O0FBL0JGO0VDNUdGO0lENkdJOzs7O0FDeEdGO0VBQ0U7RUFDQTs7O0FDVEo7QUFBQTtBQUFBO0FBb0lBO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTs7RUFHRjtJQUNFOzs7QUNqS0o7QUFBQTtBQUFBO0FDV0E7RUFDRTtFQUVBOzs7QUFHRjtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQ25CQTtFQUNBO0VEdUJBO0VBQ0E7O0FBR0E7RUFDRTtFQUNBO0VBQ0E7O0FBS0E7QUFBQTtFQUVFOztBQUtGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFJSjtFRnhEQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRXlERTtFQUNBO0VBQ0E7RUFDQTs7QUFQQTtFQUNFOztBQVFGO0VGYkY7RUFDQTtFQUNBO0VFY0k7O0FBR0Y7RUYzREY7RUFDQTs7QUU2REk7RUZ6REo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRWtETTs7QUFHRjtFRmxCSjtFQUNBOztBRXNCRTtFRnJERjtFQUNBOztBRXVESTtFRm5ESjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VFNENNOztBQU1OO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VEMUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUNzR0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUR2R0Y7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FDa0dFO0VEckVGO0VBQ0E7RUFDQTtFQUNBOztBQ3NFRTtFRHpGRjtFQUNBOztBQzJGSTtFRHZGSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUNxRkk7RURqRUo7RUFDQTtFQUNBOztBQ3NFQTtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUlBO0VBQ0U7O0FBS047RUFDRTtFQUNBOztBQStFVTtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQVFOO0VMNVFSOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS3dRTTtFTG5SUjs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUs2UVE7RUx4UlY7RUsyUlk7O0FMelJaO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS2tSVTtFQUNFOztBQVFWO0VBQ0U7O0FBUUk7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBb0JBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQXJGRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQVFOO0VMNVFSOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS3dRTTtFTG5SUjs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUs2UVE7RUx4UlY7RUsyUlk7O0FMelJaO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS2tSVTtFQUNFOztBQVFWO0VBQ0U7O0FBUUk7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBb0JBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQXJGRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQVFOO0VMNVFSOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS3dRTTtFTG5SUjs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUs2UVE7RUx4UlY7RUsyUlk7O0FMelJaO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS2tSVTtFQUNFOztBQVFWO0VBQ0U7O0FBUUk7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBb0JBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQXJGRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQVFOO0VMNVFSOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS3dRTTtFTG5SUjs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUs2UVE7RUx4UlY7RUsyUlk7O0FMelJaO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS2tSVTtFQUNFOztBQVFWO0VBQ0U7O0FBUUk7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBb0JBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQXJGRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQVFOO0VMNVFSOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS3dRTTtFTG5SUjs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUs2UVE7RUx4UlY7RUsyUlk7O0FMelJaO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS2tSVTtFQUNFOztBQVFWO0VBQ0U7O0FBUUk7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBb0JBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQVVkO0VBQ0U7O0FBSUY7RUFDRTtFQUNBOztBQUVBO0VBQ0U7OztBQU1OO0VBQ0U7OztBQUlGO0VBQ0U7RUFDQTtFQUNBOzs7QUFJRjtFQUNFOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSUo7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBS0E7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7OztBQUlKO0VBQ0U7OztBQUdGO0VBQ0U7OztBQUlGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7O0FBS0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7OztBQUlKO0VBQ0U7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUVBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFFQTtFQUNBIiwic291cmNlc0NvbnRlbnQiOlsiLyogSWRzIERhdGEgR3JpZCBDb21wb25lbnQgLSBGaWx0ZXIgKi9cbi5pZHMtZGF0YS1ncmlkIHtcbiAgLS1pZHMtYnV0dG9uLWZvcm1hdHRlci1jb2xvci10ZXh0LWRlZmF1bHQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtZmlsdGVyLWljb24tY29sb3IpO1xuICAtLWlkcy1idXR0b24tZm9ybWF0dGVyLWNvbG9yLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWlkcy1kYXRhLWdyaWQtZmlsdGVyLWljb24tY29sb3ItYmFja2dyb3VuZC1ob3Zlcik7XG4gIC0taWRzLWJ1dHRvbi1mb3JtYXR0ZXItY29sb3ItdGV4dC1ob3ZlcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1maWx0ZXItaWNvbi1jb2xvci1ob3Zlcik7XG4gIC0taWRzLW1lbnUtaXRlbS13aWR0aC1taW46IDE5MHB4O1xuICAtLWlkcy10cmlnZ2VyLWZpZWxkLWJ1dHRvbi1pbnNldC1pbmxpbmUtc3RhcnQ6IDA7XG5cbiAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtZmlsdGVyLXdyYXBwZXIgaWRzLWRyb3Bkb3duIHtcbiAgICAtLWlkcy10cmlnZ2VyLWZpZWxkLWJ1dHRvbi1pbnNldC1pbmxpbmUtc3RhcnQ6IC0xcHg7XG5cbiAgICBwYWRkaW5nLXRvcDogM3B4O1xuICB9XG5cbiAgJltkYXRhLXJvdy1oZWlnaHQ9J21kJ10gaWRzLWRyb3Bkb3duLFxuICAmW2RhdGEtcm93LWhlaWdodD0nc20nXSBpZHMtZHJvcGRvd24sXG4gICZbZGF0YS1yb3ctaGVpZ2h0PSd4cyddIGlkcy1kcm9wZG93bixcbiAgJltkYXRhLXJvdy1oZWlnaHQ9J3h4cyddIGlkcy1kcm9wZG93biB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICA6OnNsb3R0ZWQoW3Nsb3RePSdmaWx0ZXItJ10pIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gdmFyKC0taWRzLXNwYWNlLXNtKSk7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbC1maWx0ZXItd3JhcHBlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLXhzKTtcbiAgICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS14cyk7XG4gICAgcGFkZGluZy1ibG9jay1lbmQ6IHZhcigtLWlkcy1zcGFjZS14cyk7XG5cbiAgICAmLmhpZGRlbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGlkcy1kcm9wZG93bltjb21wYWN0XSBpZHMtbGlzdC1ib3gtb3B0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogdW5zZXQ7XG4gICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pZHMtc2l6ZS0yMCk7XG4gICAgfVxuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwuaXMtdXBwZXJjYXNlIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbC1maWx0ZXItd3JhcHBlciB7XG4gICAgICBpZHMtbGlzdC1ib3gtb3B0aW9uLFxuICAgICAgaWRzLWRyb3Bkb3duOjpwYXJ0KHRyaWdnZXJmaWVsZC1pbnB1dCksXG4gICAgICBpZHMtaW5wdXQ6OnBhcnQoaW5wdXQpIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBbZGF0YS1maWx0ZXItY29uZGl0aW9ucy1idXR0b25dIHtcbiAgICAtLWlkcy1idXR0b24taWNvbi1jb21wYWN0LWhlaWdodDogMjBweDtcbiAgICAtLWlkcy1idXR0b24taWNvbi1jb21wYWN0LXdpZHRoOiAzNnB4O1xuXG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IDJweDtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IC0ycHg7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcblxuICAgIGlkcy1pY29uIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDNweDtcbiAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAtM3B4O1xuICAgIH1cblxuICAgIGlkcy1pY29uLWJ1dHRvbiB7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIElkcyBEYXRhIEdyaWQgQ29tcG9uZW50IC0gSGVhZGVyICovXG4uaWRzLWRhdGEtZ3JpZC1oZWFkZXIge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgei1pbmRleDogMTsgLy8gSGlnaGVyIHRoYW4gYm9keSBjb2x1bW5zOyB6LWluZGV4IGhpZ2hlciB0aGFuIDIgd2lsbCBicmVhayBpZHMtbG9hZGluZy1pbmRpY2F0b3IncyBvdmVybGF5XG5cbiAgJi5pcy1mcm96ZW4ge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAvLyBGaWx0ZXIgYnV0dG9uIGhlaWdodFxuICAtLWlkcy1idXR0b24tZm9ybWF0dGVyLXNpemU6IDI4cHg7XG59XG5cbi8vIEhlYWRlciBDaGVja2JveFxuLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgd2lkdGg6IDIwcHg7XG5cbiAgJltkaXNhYmxlZD0ndHJ1ZSddIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveFtkaXNhYmxlZD0ndHJ1ZSddIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBvcGFjaXR5OiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1jaGVja2JveC1vcGFjaXR5LWRpc2FibGVkKTtcbiAgfVxuXG5cbiAgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3g6bm90KC5jaGVja2VkKTpub3QoLmluZGV0ZXJtaW5hdGUpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1jaGVja2JveC1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNoZWNrYm94LWNvbG9yLWJvcmRlcik7XG4gIH1cbn1cblxuLy8gSGVhZGVyIENlbGwgQXJlYVxuLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwge1xuICBib3JkZXItaW5saW5lLXN0YXJ0OiAxcHggc29saWQgdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXItY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLWJsb2NrLWVuZDogMXB4IHNvbGlkIHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNvbG9yLWJvcmRlcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNvbG9yLWJhY2tncm91bmQtZGVmYXVsdCk7XG4gIG1pbi1oZWlnaHQ6IDI4cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAvLyBIaWRlIGZpcnN0IGJvcmRlclxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOiB2YXIoLS1pZHMtYm9yZGVyLXdpZHRoLW5vbmUpO1xuICB9XG5cbiAgJjpob3Zlci5pcy1hY3Rpb25hYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1jb2xvci1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgfVxuXG4gICYuYWxpZ24tY2VudGVyIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWNvbnRlbnQsXG4gICYuYWxpZ24tY2VudGVyIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWZpbHRlci13cmFwcGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudCxcbiAgJi5hbGlnbi1yaWdodCAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbC1maWx0ZXItd3JhcHBlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlzLXNvcnRhYmxlIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy1sZyk7XG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDVweDtcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtZmlsdGVyLXdyYXBwZXIge1xuICAgIGlkcy1tZW51LWJ1dHRvbiB7XG4gICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2UtM3hzKTtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNpemluZyBDZWxsc1xuICAucmVzaXplciB7XG4gICAgY3Vyc29yOiB2YXIoLS1pZHMtY3Vyc29yLXJlc2l6ZSk7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogY2FsYygxMDAlIC0gNHB4KTtcbiAgICB0b3A6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICB3aWR0aDogNnB4O1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAvLyBSZW9yZGVyYWJsZSBDZWxsc1xuICAucmVvcmRlcmVyIHtcbiAgICBjdXJzb3I6IHZhcigtLWlkcy1jdXJzb3ItbW92ZSk7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGhlaWdodDogMzRweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldC1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS14cyk7XG4gICAgdG9wOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgd2lkdGg6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xuXG4gICAgaWRzLWljb24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNvbG9yLWljb24pO1xuICAgICAgaW5zZXQtaW5saW5lLXN0YXJ0OiBjYWxjKC0xICogdmFyKC0taWRzLXNwYWNlLXhzKSk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0b3A6IGNhbGMoNTAlIC0gOXB4KTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0IC5yZW9yZGVyZXIge1xuICAgIGluc2V0LWlubGluZS1lbmQ6IDVweDtcbiAgICBpbnNldC1pbmxpbmUtc3RhcnQ6IGluaXRpYWw7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQgLnJlc2l6ZXIge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGNhbGMoMTAwJSAtIDZweCk7IC8vIFByZXZlbnRzIHVubmVlZGVkIHNjcm9sbGJhclxuICB9XG5cbiAgJi5kcmFnZ2luZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXItZHJhZy1iYWNrZ3JvdW5kLWNvbG9yKSAhaW1wb3J0YW50OyAvLyB0aGlzIGltcG9ydGFudCBpcyBuZWVkZWQgZm9yIGRyYWcgc3R5bGVzIHRvIHdvcmtcbiAgICBib3JkZXItaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGVmdDogLTEwMDBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgd2lkdGg6IDExMHB4O1xuICB9XG5cbiAgJi5hY3RpdmUtZHJhZy1jb2x1bW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNvbG9yLWJhY2tncm91bmQtZGVmYXVsdC1wbGFjZWhvbGRlci1kcmFnZ2luZyk7XG5cbiAgICAuc29ydC1pbmRpY2F0b3Ige1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIC5yZW9yZGVyZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBSZW9yZGVyYWJsZSBDZWxsc1xuICAmLmZyb3plbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXItY29sb3ItYmFja2dyb3VuZC1kZWZhdWx0KTtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAvLyBDaGFuZ2UgYm9yZGVycyBmb3IgZnJvemVuIGNvbHVtbiBzY3JvbGxpbmdcbiAgJi5mcm96ZW4tbGFzdCB7XG4gICAgYm9yZGVyLWlubGluZS1lbmQ6IDFweCBzb2xpZCB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1jb2xvci1ib3JkZXIpO1xuXG4gICAgKyAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbCB7XG4gICAgICBib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOiB2YXIoLS1pZHMtYm9yZGVyLXdpZHRoLW5vbmUpO1xuICAgIH1cbiAgfVxuXG4gICYuZnJvemVuLWxlZnQge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgbGVmdDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAvLyBEeW5hbWljYWxseSBhZGRlZCB3aWR0aHNcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIDEwIHtcbiAgICAgICY6bnRoLW9mLXR5cGUoI3skaX0pIHtcbiAgICAgICAgbGVmdDogdmFyKC0taWRzLWRhdGEtZ3JpZC1mcm96ZW4tY29sdW1uLWxlZnQtd2lkdGgtI3skaX0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZnJvemVuLXJpZ2h0IHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHJpZ2h0OiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG5cbiAgICAvLyBXaWVyZCBjZW50ZXJpbmcgYnVnIChmcm96ZW4gcmlnaHQpXG4gICAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICB9XG4gIH1cbn1cblxuLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWxnLXBhZGRpbmcpO1xuICBmb250LXdlaWdodDogdmFyKC0taWRzLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgZm9udC1zaXplOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1jb2xvci10ZXh0KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIHNtYWxsIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0taWRzLWZvbnQtd2VpZ2h0LW5vcm1hbCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZvbnQtc2l6ZS1zbSk7XG4gIH1cbn1cblxuLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWljb24ge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1jb2xvci10ZXh0KTtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG59XG5cbi8vIEhlYWRlciBzb3J0IHN0eWxlc1xuLnNvcnQtaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiA0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiB2YXIoLS1pZHMtc3BhY2UtbGcpO1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiA1cHg7XG4gIHdpZHRoOiAxOHB4O1xufVxuXG4vLyBTb3J0IEhvdmVyIHN0YXRlc1xuLmlzLXNvcnRhYmxlIHtcbiAgLnNvcnQtaW5kaWNhdG9yIGlkcy1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXItY29sb3ItaWNvbi11bnNvcnRlZCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgdmFyKC0taWRzLW1vdGlvbi1lYXNlKSAwcztcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiB2YXIoLS1pZHMtc3BhY2UtMnhzKTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTEwcHg7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgLnNvcnQtaW5kaWNhdG9yIGlkcy1pY29uIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbi5oZWFkZXItZXhwYW5kZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtaGVpZ2h0OiAxOHB4O1xuICBjdXJzb3I6IHZhcigtLWlkcy1jdXJzb3ItcG9pbnRlcik7XG4gIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1leHBhbmRlci1jb2xvcik7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS0xMik7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWV4cGFuZGVyLWNvbG9yLWFjdGl2ZSk7XG4gIH1cbn1cblxuW2RhdGEtcm93LWhlaWdodD0neHhzJ10gLmhlYWRlci1leHBhbmRlciB7XG4gIHRvcDogdmFyKC0taWRzLXNwYWNlLTN4cyk7XG59XG5cbjpob3N0KFtzaG93LWhlYWRlci1leHBhbmRlcl0pIC5oZWFkZXItZXhwYW5kZXIsXG4uY29sdW1uLWhlYWRlci1leHBhbmRlciAuaGVhZGVyLWV4cGFuZGVyIHtcbiAgZGlzcGxheTogdW5zZXQ7XG59XG5cbi5oYXMtc2VsZWN0aW9uY2hlY2tib3ggLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbn1cblxuLmlzLXNvcnRhYmxlLFxuLmhhcy1oZWFkZXJpY29uIHtcbiAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgIHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICB9XG59XG5cbi8vIEFzY2VuZGluZyBzb3J0XG5bYXJpYS1zb3J0PSdhc2NlbmRpbmcnXSAuaXMtc29ydGFibGUgLnNvcnQtaW5kaWNhdG9yIGlkcy1pY29uIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNvbG9yLWljb24tc29ydGVkKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi8vIERlc2NlbmRpbmcgc29ydFxuW2FyaWEtc29ydD0nZGVzY2VuZGluZyddIC5pcy1zb3J0YWJsZSAuc29ydC1pbmRpY2F0b3IgaWRzLWljb24ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXItY29sb3ItaWNvbi1zb3J0ZWQpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy8gRHJhZyBhcnJvd3MgZm9yIHNvcnRpbmdcbi5pZHMtZGF0YS1ncmlkLXNvcnQtYXJyb3dzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAzNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGxlZnQ6IC01cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAwO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wOiA1cHggc29saWQgdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXItZHJhZy1hcnJvdy1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgICB0b3A6IC02cHg7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkIHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWRyYWctYXJyb3ctY29sb3ItYmFja2dyb3VuZCk7XG4gICAgYm90dG9tOiAtOXB4O1xuICB9XG59XG5cbi8vIFN0YW5kYWxvbmUgQ3NzXG50ci5pZHMtZGF0YS1ncmlkLWhlYWRlciB7XG4gIHBvc2l0aW9uOiBpbml0aWFsO1xufVxuXG50aC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cblxuLy8gTGlzdCBTdHlsZSBGZWF0dXJlXG4uaWRzLWRhdGEtZ3JpZC5pcy1saXN0LXN0eWxlIHtcbiAgLy8gQ2hhbmdlIEhlYWRlciBDb2xvclxuICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1saXN0LWhlYWRlci1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtbGlzdC1oZWFkZXItY29sb3ItYm9yZGVyKTtcbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICBjb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1saXN0LWhlYWRlci1jb2xvci10ZXh0KTtcbiAgfVxuXG4gIC8vIENoYW5nZSBTb3J0IEljb24gQ29sb3JzXG4gIC5pcy1zb3J0YWJsZSB7XG4gICAgaWRzLWljb24ge1xuICAgICAgY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNvbG9yLWljb24tdW5zb3J0ZWQpO1xuICAgIH1cbiAgfVxuXG4gIFthcmlhLXNvcnQ9J2Rlc2NlbmRpbmcnXSAuaXMtc29ydGFibGUgaWRzLWljb246bGFzdC1jaGlsZCxcbiAgW2FyaWEtc29ydD0nYXNjZW5kaW5nJ10gLmlzLXNvcnRhYmxlIGlkcy1pY29uOmZpcnN0LWNoaWxkICB7XG4gICAgY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtbGlzdC1oZWFkZXItY29sb3ItaWNvbi11bnNvcnRlZClcbiAgfVxuXG4gIC8vIENoYW5nZSBIZWFkZXIgQ2hlY2tib3hcbiAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveDpub3QoLmNoZWNrZWQpOm5vdCguaW5kZXRlcm1pbmF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWxpc3QtaGVhZGVyLWNoZWNrYm94LWNvbG9yLWJhY2tncm91bmQpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBVc2VkIGZvciBGcm96ZW4gQ29sdW1uc1xuLmlkcy1kYXRhLWdyaWQtYm9keSB7XG4gIG1pbi13aWR0aDogZml0LWNvbnRlbnQ7XG59XG5cbi8vIEFkanVzdCBmb3IgUm93IEhlaWdodHMgKGxhcmdlIGlzIGRlZmF1bHQpXG4uaWRzLWRhdGEtZ3JpZCB7XG4gICZbZGF0YS1yb3ctaGVpZ2h0PSdtZCddIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItdGV4dCB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1tZC1wYWRkaW5nKTtcbiAgICB9XG5cbiAgICAucmVvcmRlcmVyIGlkcy1pY29uIHtcbiAgICAgIGluc2V0LWlubGluZS1zdGFydDogLTExcHg7XG4gICAgfVxuXG4gICAgLnNvcnQtaW5kaWNhdG9yIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IC04cHg7XG4gICAgfVxuXG4gICAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwuYWxpZ24tcmlnaHQgLnJlb3JkZXJlciB7XG4gICAgICBpbnNldC1pbmxpbmUtZW5kOiAzcHg7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXJvdy1oZWlnaHQ9J3NtJ10ge1xuICAgIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLXNtLXBhZGRpbmcpO1xuICAgIH1cblxuICAgIC5yZW9yZGVyZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuc29ydC1pbmRpY2F0b3Ige1xuICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogLTRweDtcbiAgICB9XG4gIH1cblxuICAmW2RhdGEtcm93LWhlaWdodD0neHMnXSB7XG4gICAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgICAgcGFkZGluZzogdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXIteHMtcGFkZGluZyk7XG4gICAgfVxuXG4gICAgLnJlb3JkZXJlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5zb3J0LWluZGljYXRvciB7XG4gICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAtMnB4O1xuICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IC0ycHg7XG4gICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IC0zcHg7XG4gICAgfVxuXG4gICAgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1pZHMtc3BhY2UtM3hzKTtcbiAgICB9XG5cbiAgICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbC5hbGlnbi1yaWdodCAuaXMtc29ydGFibGUgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmcteHMpO1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDVweDtcbiAgICB9XG4gIH1cblxuICAmW2RhdGEtcm93LWhlaWdodD0neHhzJ10ge1xuICAgIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLXh4cy1wYWRkaW5nKTtcbiAgICB9XG5cbiAgICAucmVvcmRlcmVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNvcnQtaW5kaWNhdG9yIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogLTFweDtcbiAgICAgIGhlaWdodDogMjJweDtcblxuICAgICAgPiBpZHMtaWNvbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHRvcDogM3B4O1xuICAgICAgfVxuXG4gICAgICBpZHMtaWNvbjpsYXN0LWNoaWxkIHtcbiAgICAgICAgdG9wOiAtMTFweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYWxpZ24tcmlnaHQgLnNvcnQtaW5kaWNhdG9yIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICB9XG5cbiAgICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItdGV4dCAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy10b3A6IDNweDtcbiAgICB9XG5cbiAgICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbC5hbGlnbi1yaWdodCAuaXMtc29ydGFibGUgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiAzcHg7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogM3B4O1xuICAgIH1cblxuICAgIC8vIEZpbHRlciBBZGp1c3RtZW50c1xuICAgIGlkcy1pbnB1dCxcbiAgICBpZHMtdHJpZ2dlci1maWVsZCxcbiAgICBpZHMtZHJvcGRvd24ge1xuICAgICAgLS1pZHMtaW5wdXQtaGVpZ2h0LTEwOiAyNHB4O1xuICAgIH1cblxuICAgIGlkcy1kcm9wZG93biB7XG4gICAgICAtLWlkcy1pbnB1dC1mb250LXNpemUtc206IHZhcigtLWlkcy1pbnB1dC1mb250LXNpemUteHMpO1xuICAgIH1cblxuICAgIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWZpbHRlci13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiBjYWxjKHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14eHMpICsgMnB4KTtcbiAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogY2FsYyh2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmcteHhzKSArIDJweCk7XG4gICAgICBwYWRkaW5nLWJsb2NrLWVuZDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXh4cyAtIDFweCk7XG4gICAgfVxuICB9XG59XG5cbi8vIEhhbmRsZSBSVExcbjpob3N0KFtkaXI9J3J0bCddKSB7XG4gIC8vIE5lZ2F0ZSByaWdodCBhbGlnbm1lbnRcbiAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwge1xuICAgICYuYWxpZ24tcmlnaHQgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudCB7XG4gICAgICBkaXJlY3Rpb246IGx0cjtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6IHZhcigtLWlkcy1ib3JkZXItd2lkdGgtbm9uZSk7XG4gICAgfVxuXG4gICAgJi5mcm96ZW4tbGVmdCB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgcmlnaHQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcblxuICAgICAgLy8gRHluYW1pY2FsbHkgYWRkZWQgd2lkdGhzXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIDEwIHtcbiAgICAgICAgJjpudGgtb2YtdHlwZSgjeyRpfSkge1xuICAgICAgICAgIHJpZ2h0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZyb3plbi1jb2x1bW4tbGVmdC13aWR0aC0jeyRpfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIElkcyBEYXRhIEdyaWQgQ29tcG9uZW50IC0gUm93cyAqL1xuLmlkcy1kYXRhLWdyaWQtcm93IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNvbHVtbi13aWR0aHMpOyAvLyBGaWxsZWQgaW4gZHluYW1pY2FsbHlcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi5zZWxlY3RlZDpub3QoLm1peGVkKSAuaWRzLWRhdGEtZ3JpZC1jZWxsLFxuICAmLmFjdGl2YXRlZCAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1iYWNrZ3JvdW5kLXNlbGVjdGVkKTtcbiAgfVxuXG4gICZbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbcGFydCo9J3Jvdy0nXSB7XG4gICAgJjpub3QoLnNlbGVjdGVkKSB7XG4gICAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItd2lkdGg6IDVweDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBtYXJnaW46IDJweDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZbcGFydD0ncm93LW5ldyddIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1iYWNrZ3JvdW5kLW5ldyk7XG5cbiAgICAmOm5vdCguc2VsZWN0ZWQpIHtcbiAgICAgIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1ib3JkZXItbmV3KSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1ib3JkZXItbmV3KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWNvbG9yLWJhY2tncm91bmQtbmV3KTtcbiAgICAgICAgY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtY2VsbC1jb2xvci10ZXh0LXN0YXRlcy1kZWZhdWx0KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW3BhcnQ9J3Jvdy1yZW1vdmVkJ10ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWNvbG9yLWJhY2tncm91bmQtcmVtb3ZlZCk7XG5cbiAgICAmOm5vdCguc2VsZWN0ZWQpIHtcbiAgICAgIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYm9yZGVyLXJlbW92ZWQpIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWNvbG9yLWJvcmRlci1yZW1vdmVkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWNvbG9yLWJhY2tncm91bmQtcmVtb3ZlZCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItdGV4dC1zdGF0ZXMtZGVmYXVsdCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJltwYXJ0PSdyb3ctZXJyb3InXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYmFja2dyb3VuZC1lcnJvcik7XG5cbiAgICAmOm5vdCguc2VsZWN0ZWQpIHtcbiAgICAgIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYm9yZGVyLWVycm9yKSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1ib3JkZXItZXJyb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYmFja2dyb3VuZC1lcnJvcik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItdGV4dC1zdGF0ZXMtZGVmYXVsdCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEdyb3VwZWQgUm93c1xuLmlkcy1kYXRhLWdyaWQtcm93LmlzLWdyb3VwLXJvdyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWdyb3VwZWQtY29sb3ItYmFja2dyb3VuZCk7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcblxuXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1ncm91cGVkLWNvbG9yLXRleHQsIHJlZCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWdyb3VwZWQtZm9udC13ZWlnaHQsIDYwMCk7XG4gICAgYm9yZGVyLWlubGluZS1zdGFydDogMDtcbiAgfVxuXG4gIGlkcy1idXR0b24ge1xuICAgIC0taWRzLWJ1dHRvbi10ZXJ0aWFyeS1jb2xvci1iYWNrZ3JvdW5kLWhvdmVyOiB0cmFuc3BhcmVudDtcbiAgICAtLWlkcy1idXR0b24tdGVydGlhcnktY29sb3ItYm9yZGVyLWhvdmVyOiB0cmFuc3BhcmVudDtcblxuICAgIHBhZGRpbmc6IDAgMnB4O1xuICB9XG59XG5cbi8vIFJvdyBIZWlnaHQgRmVhdHVyZSB3aXRoIEZvcm1hdHRlcnMgc3BhY2luZ1xuLmlkcy1kYXRhLWdyaWQge1xuICAvLyBMYXJnZSBieSBkZWZhdWx0XG4gICZbZGF0YS1yb3ctaGVpZ2h0PSdtZCddIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAgIGhlaWdodDogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctaGVpZ2h0LW1kKTtcblxuICAgICAgLnRleHQtZWxsaXBzaXMsXG4gICAgICBpZHMtYmFkZ2Uge1xuICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLW1kKTtcbiAgICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctbWQpO1xuICAgICAgfVxuXG4gICAgICBpZHMtaHlwZXJsaW5rIHtcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctbWQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pZHMtZGF0YS1ncmlkLWNlbGw6bm90KC5hbGlnbi1jZW50ZXIpIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWNvbnRlbnQ6bm90KC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIpIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctbWQpO1xuICAgICAgdHJhbnNpdGlvbjogcGFkZGluZyB2YXIoLS1pZHMtbW90aW9uLWR1cmF0aW9uKSB2YXIoLS1pZHMtbW90aW9uLWVhc2UpO1xuICAgIH1cblxuICAgIC5pZHMtZGF0YS1ncmlkLWNlbGw6bm90KC5hbGlnbi1jZW50ZXIpIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsOmhvdmVyIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWNvbnRlbnQ6bm90KC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIpLmlzLXJlb3JkZXJhYmxlIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctbWQpO1xuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1yb3ctaGVpZ2h0PSdzbSddIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAgIGhlaWdodDogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctaGVpZ2h0LXNtKTtcblxuICAgICAgLnRleHQtZWxsaXBzaXMsXG4gICAgICBpZHMtYmFkZ2Uge1xuICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXNtKTtcbiAgICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctc20pO1xuICAgICAgfVxuXG4gICAgICBpZHMtaHlwZXJsaW5rIHtcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctc20pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pZHMtZGF0YS1ncmlkLWNlbGw6bm90KC5hbGlnbi1jZW50ZXIpIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWNvbnRlbnQ6bm90KC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIpIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctc20pO1xuICAgICAgdHJhbnNpdGlvbjogcGFkZGluZyB2YXIoLS1pZHMtbW90aW9uLWR1cmF0aW9uKSB2YXIoLS1pZHMtbW90aW9uLWVhc2UpO1xuICAgIH1cblxuICAgIC5pZHMtZGF0YS1ncmlkLWNlbGw6bm90KC5hbGlnbi1jZW50ZXIpIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsOmhvdmVyIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWNvbnRlbnQ6bm90KC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIpLmlzLXJlb3JkZXJhYmxlIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctc20pO1xuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1yb3ctaGVpZ2h0PSd4cyddIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAgIGhlaWdodDogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctaGVpZ2h0LXhzKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWRzLWRhdGEtZ3JpZC1mb250LXNpemUtc20pO1xuXG4gICAgICAudGV4dC1lbGxpcHNpcyxcbiAgICAgIGlkcy1iYWRnZSB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmcteHMpO1xuICAgICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14cyk7XG4gICAgICB9XG5cbiAgICAgIGlkcy1oeXBlcmxpbmsge1xuICAgICAgICBtYXJnaW46IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmlkcy1kYXRhLWdyaWQtY2VsbDpub3QoLmFsaWduLWNlbnRlcikgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudDpub3QoLnZlcnRpY2FsLWFsaWduLWNlbnRlcikgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14cyk7XG4gICAgICB0cmFuc2l0aW9uOiBwYWRkaW5nIHZhcigtLWlkcy1tb3Rpb24tZHVyYXRpb24pIHZhcigtLWlkcy1tb3Rpb24tZWFzZSk7XG4gICAgfVxuXG4gICAgLmlkcy1kYXRhLWdyaWQtY2VsbDpub3QoLmFsaWduLWNlbnRlcikgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGw6aG92ZXIgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudDpub3QoLnZlcnRpY2FsLWFsaWduLWNlbnRlcikuaXMtcmVvcmRlcmFibGUgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14cyk7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXJvdy1oZWlnaHQ9J3h4cyddIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAgIGhlaWdodDogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctaGVpZ2h0LXh4cyk7XG4gICAgICBmb250LXNpemU6IHZhcigtLWlkcy1kYXRhLWdyaWQtZm9udC1zaXplLXNtKTtcblxuICAgICAgLnRleHQtZWxsaXBzaXMsXG4gICAgICBpZHMtYmFkZ2Uge1xuICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXh4cyk7XG4gICAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXh4cyk7XG4gICAgICB9XG5cbiAgICAgIGlkcy1oeXBlcmxpbmsge1xuICAgICAgICBtYXJnaW46IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14eHMpO1xuICAgICAgfVxuXG4gICAgICAvLyBPbiAneHhzJyByb3cgaGVpZ2h0LCBpbmxpbmUtZWRpdGFibGUgY2VsbHMgaGF2ZSBhIHNsaWdodGx5IHdpZGVyXG4gICAgICAvLyBwYWRkaW5nIGFwcGVhcmFuY2UgdG8gYWNjb21tb2RhdGUgdGhlIGlubGluZSBkaXNwbGF5XG4gICAgICAmLmlzLWlubGluZSB7XG4gICAgICAgIC50ZXh0LWVsbGlwc2lzIHtcbiAgICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXhzKTtcbiAgICAgICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14cyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsOm5vdCguYWxpZ24tY2VudGVyKSAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbC1jb250ZW50Om5vdCgudmVydGljYWwtYWxpZ24tY2VudGVyKSAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItdGV4dCB7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXh4cyk7XG4gICAgICB0cmFuc2l0aW9uOiBwYWRkaW5nIHZhcigtLWlkcy1tb3Rpb24tZHVyYXRpb24pIHZhcigtLWlkcy1tb3Rpb24tZWFzZSk7XG4gICAgfVxuXG4gICAgLmlkcy1kYXRhLWdyaWQtY2VsbDpub3QoLmFsaWduLWNlbnRlcikgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGw6aG92ZXIgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudDpub3QoLnZlcnRpY2FsLWFsaWduLWNlbnRlcikuaXMtcmVvcmRlcmFibGUgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14eHMpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSb3cgQWx0ZXJuYXRlIFJvdyBTZXR0aW5nIEZlYXR1cmVcbi5pZHMtZGF0YS1ncmlkLmFsdC1yb3ctc2hhZGluZyBpZHMtZGF0YS1ncmlkLXJvdzpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1hbHRlcm5hdGluZy1jb2xvci1iYWNrZ3JvdW5kKTtcbn1cblxuLy8gRXhwYW5kYWJsZSBSb3dcbi5pZHMtZGF0YS1ncmlkLWV4cGFuZGFibGUtcm93IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWlkcy1kYXRhLWdyaWQtY2VsbC1jb2xvci1ib3JkZXIpO1xuICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICBwYWRkaW5nOiB2YXIoLS1pZHMtc3BhY2UteHMpO1xufVxuXG4vLyBTdGFuZGFsb25lIENzc1xudHIuaWRzLWRhdGEtZ3JpZC1yb3cge1xuICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gIGhlaWdodDogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctaGVpZ2h0LWxnKTtcbn1cblxuLy8gUm93IE5hdmlnYXRpb24gU3R5bGVzXG4uaWRzLWRhdGEtZ3JpZC5yb3ctbmF2aWdhdGlvbiAuaWRzLWRhdGEtZ3JpZC1yb3cge1xuICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LXNoYWRvdy1mb2N1cyk7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGw6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIC8vIEZpeGVzIGFuIGlzc3VlIHdoZXJlIGh5cGVybGlua3MgaW4gcm93LW5hdmlnYXRpb24gbW9kZSBjYW5ub3QgYmUgZGlyZWN0bHkgY2xpY2tlZFxuICBpZHMtaHlwZXJsaW5rLFxuICAuaWRzLWh5cGVybGluayB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDFweCk7XG4gIH1cbn1cblxuOmhvc3QoW2Rpcj0ncnRsJ10pIHtcbiAgLmlkcy1kYXRhLWdyaWQtcm93IHtcbiAgICAmW3BhcnQ9J3Jvdy1uZXcnXSB7XG4gICAgICAmOm5vdCguc2VsZWN0ZWQpIHtcbiAgICAgICAgLmlkcy1kYXRhLWdyaWQtY2VsbCB7XG4gICAgICAgICAgJjpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1ib3JkZXItbmV3KSB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1ib3JkZXItbmV3KSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW3BhcnQ9J3Jvdy1yZW1vdmVkJ10ge1xuICAgICAgJjpub3QoLnNlbGVjdGVkKSB7XG4gICAgICAgIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgICAgICAgICY6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYm9yZGVyLXJlbW92ZWQpIHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWNvbG9yLWJvcmRlci1yZW1vdmVkKSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW3BhcnQ9J3Jvdy1lcnJvciddIHtcbiAgICAgICY6bm90KC5zZWxlY3RlZCkge1xuICAgICAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAgICAgICAmOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWNvbG9yLWJvcmRlci1lcnJvcikgdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYm9yZGVyLWVycm9yKSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIElkcyBEYXRhIEdyaWQgQ29tcG9uZW50IC0gQ2VsbHMgKi9cbmlkcy1kYXRhLWdyaWQtY2VsbFtjb2x1bW4tb25zY3JlZW5dIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuaWRzLWRhdGEtZ3JpZC1jZWxsW2NvbHVtbi1vZmZzY3JlZW5dIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuaWRzLWRhdGEtZ3JpZC1jZWxsW2NvbHVtbi1vZmZzY3JlZW4tbGVmdF0ge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG5pZHMtZGF0YS1ncmlkLWNlbGxbY29sdW1uLW9mZnNjcmVlbi1yaWdodF0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5pZHMtZGF0YS1ncmlkLXJvdzpub3QoLnNlbGVjdGVkKTpub3QoW3BhcnQqPSdyb3ctJ10pIHtcbiAgLmlkcy1kYXRhLWdyaWQtY2VsbCB7XG4gICAgJi5mcm96ZW4tbGVmdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNvbG9yLWJhY2tncm91bmQpO1xuICAgIH1cblxuICAgICYuZnJvemVuLXJpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtY29sb3ItYmFja2dyb3VuZCk7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgLmlkcy1kYXRhLWdyaWQtY2VsbC5mcm96ZW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYmFja2dyb3VuZC1ob3Zlcik7XG4gICAgfVxuICB9XG59XG5cbi5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAvLyBCb3JkZXIgYW5kIEJhY2tncm91bmQgYW5kIFNpemluZ1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItaW5saW5lLXN0YXJ0OiAxcHggc29saWQ7XG4gIGJvcmRlci1ibG9jay1lbmQ6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItYm9yZGVyKTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItdGV4dC1kZWZhdWx0KTtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gSGlkZSBmaXJzdC9sYXN0IGJvcmRlclxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOiB2YXIoLS1pZHMtYm9yZGVyLXdpZHRoLW5vbmUpO1xuICB9XG5cbiAgLy8gUmVzZXQgYmFkZ2UgbWFyZ2luIHRvIGNlbnRlciBpdCB2ZXJ0aWNhbGx5XG4gIGlkcy1iYWRnZTo6cGFydChiYWRnZSkge1xuICAgIG1hcmdpbi1ibG9jay1lbmQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICB9XG5cbiAgaWRzLWJhZGdlIHtcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLXNtKTtcbiAgICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS1zbSk7XG4gIH1cblxuICAvLyBTbyB0aGUgY29sb3IgaXMgdGhlIHNhbWUgYXMgdGhlIGVkaXRvclxuICBpZHMtaWNvbltpY29uPSdkcm9wZG93biddIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLXRyaWdnZXItZmllbGQtaWNvbi1jb2xvcilcbiAgfVxuXG4gIGlkcy1oeXBlcmxpbmsge1xuICAgIG1hcmdpbjogdmFyKC0taWRzLXNwYWNlLXNtKTtcbiAgICB3aWR0aDogLW1vei1hdmFpbGFibGU7XG4gICAgd2lkdGg6IC13ZWJraXQtZmlsbC1hdmFpbGFibGU7XG4gICAgd2lkdGg6IGZpbGwtYXZhaWxhYmxlO1xuICB9XG5cbiAgLnRleHQtZWxsaXBzaXMge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2Utc20pO1xuICAgIHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLXNtKTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgfVxuXG4gIC8vIFRleHQgQWxpZ25tZW50XG4gIGlkcy1pY29uIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgKyBzcGFuIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1pZHMtc3BhY2UtMnhzKTtcbiAgICB9XG4gIH1cblxuICAvLyBUZXh0IEFsaWdubWVudFxuICAmLmFsaWduLWNlbnRlciB7XG4gICAgJiA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBtYXJnaW46IHZhcigtLWlkcy1zcGFjZS1ub25lKSBhdXRvO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQge1xuICAgICYgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGF1dG87XG4gICAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgIH1cblxuICAgIGlkcy1pbnB1dCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBSZWFkb25seSBhbmQgZGlzYWJsZWQgQ2VsbHNcbiAgJi5pcy1yZWFkb25seTpub3QoLmV4Y2x1ZGUtcmVhZG9ubHktc3R5bGUpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItYmFja2dyb3VuZC1yZWFkb25seSk7XG5cbiAgICAuZWRpdG9yLWNlbGwtaWNvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYuaXMtZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItdGV4dC1kaXNhYmxlZCk7XG5cbiAgICAuZWRpdG9yLWNlbGwtaWNvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYuaXMtdXBwZXJjYXNlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5cbiAgLy8gRm9jdXMgU3RhdGVcbiAgJjpmb2N1cyxcbiAgJi5pcy1lZGl0aW5nOm5vdCguaXMtaW5saW5lKTpmb2N1cy13aXRoaW4sXG4gICYuaXMtZm9jdXNlZCB7XG4gICAgYm94LXNoYWRvdzogdmFyKC0taWRzLXNoYWRvdy0yMCk7XG4gICAgb3V0bGluZTogMXB4IHNvbGlkIHZhcigtLWlkcy1jb2xvci1ib3JkZXItZm9jdXMpO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xuICB9XG5cbiAgJi5pcy1lZGl0YWJsZSB7XG4gICAgJi5pcy1yZWFkb25seTpub3QoLmV4Y2x1ZGUtcmVhZG9ubHktc3R5bGUpIHtcbiAgICAgIC50ZXh0LWVsbGlwc2lzOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtY2VsbC1jb2xvci1iYWNrZ3JvdW5kLXJlYWRvbmx5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWlubGluZSB7XG4gICAgICAmLmZvcm1hdHRlci10cmVlIHtcbiAgICAgICAgLmlkcy1kYXRhLWdyaWQtdHJlZS1jb250YWluZXIge1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pZHMtZGF0YS1ncmlkLXRyZWUtZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAudGV4dC1lbGxpcHNpcyB7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0LWVsbGlwc2lzOjphZnRlciB7XG4gICAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IC04cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWRzLWljb24uZWRpdG9yLWNlbGwtaWNvbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICBtYXJnaW4taW5saW5lLWVuZDogMTVweDtcblxuICAgICAgICAmW2ljb249J2Ryb3Bkb3duJ10ge1xuICAgICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAxMnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1sb29rdXAsXG4gICAgJi5pcy1kYXRlcGlja2VyLFxuICAgICYuaXMtdGltZXBpY2tlciB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgIC50ZXh0LWVsbGlwc2lzIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1kYXRlcGlja2VyLFxuICAgICYuaXMtdGltZXBpY2tlciB7XG4gICAgICBpZHMtdHJpZ2dlci1maWVsZCB7XG4gICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IC0xcHg7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtbG9va3VwIHtcbiAgICAgIGlkcy1sb29rdXAge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBpZHMtbG9va3VwOjpwYXJ0KGNvbnRhaW5lciksXG4gICAgICBpZHMtbG9va3VwOjpwYXJ0KGZpZWxkLWNvbnRhaW5lcikge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtY29sb3ItdHJhbnNwYXJlbnQpO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZWRpdG9yLWNlbGwtaWNvbiB7XG4gICAgICBtYXJnaW4taW5saW5lLWVuZDogMTBweDtcbiAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTN4cyk7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAmLnNob3ctY2VsbC1pY29uLWFsd2F5cyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlkcy10cmlnZ2VyLWJ1dHRvbjo6cGFydChidXR0b24pIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgIC8vIGlzLWJvcmRlcmxlc3M6aG92ZXJcbiAgICAmOm5vdCguaXMtaW5saW5lKTpub3QoLmlzLWludmFsaWQpOmZvY3VzLFxuICAgICY6bm90KC5pcy1pbmxpbmUpOm5vdCguaXMtaW52YWxpZCk6aG92ZXIge1xuICAgICAgLmVkaXRvci1jZWxsLWljb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuXG4gICAgICBpZHMtYWxlcnQge1xuICAgICAgICBtYXJnaW4taW5saW5lOiBjYWxjKDEwMCUgLSA0OHB4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWVkaXRhYmxlLmlzLWludmFsaWQge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICBpZHMtYWxlcnQge1xuICAgICAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLXhzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmlzLWVkaXRpbmcgaWRzLWNoZWNrYm94IHtcbiAgICAtLWlkcy1jaGVja2JveC1tYXJnaW4taW5saW5lLWVuZDogMDtcbiAgICAtLWlkcy1jaGVja2JveC1zaGFkb3ctZm9jdXM6IDAgMCAwIDJweCB0cmFuc3BhcmVudCwgMCAwIDAgM3B4IHRyYW5zcGFyZW50O1xuICAgIC0taWRzLWNoZWNrYm94LWNvbG9yLWJvcmRlci1mb2N1czogdmFyKC0taWRzLWNoZWNrYm94LWJvcmRlcik7XG5cbiAgICAmW2NoZWNrZWRdIHtcbiAgICAgIC0taWRzLWNoZWNrYm94LWNvbG9yLWJvcmRlci1mb2N1czogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJhY2tncm91bmQtc2VsZWN0ZWQpO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDZweDtcbiAgICB0b3A6IDNweDtcbiAgfVxuXG4gIC8vIEVkaXRpbmcgd2l0aCBwb3B1cHNcbiAgJi5pcy1lZGl0aW5nLmlzLWxvb2t1cCxcbiAgJi5pcy1lZGl0aW5nLmlzLWRhdGVwaWNrZXIsXG4gICYuaXMtZWRpdGluZy5pcy10aW1lcGlja2VyIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gICYuaXMtZWRpdGluZy5pcy1pbmxpbmUgaWRzLWlucHV0IHtcbiAgICB6LWluZGV4OiA5OTtcbiAgfVxuXG4gIC8vIERyb3Bkb3duIEVkaXRhYmxlIENlbGxcbiAgJi5pcy1lZGl0YWJsZS5pcy1kcm9wZG93biB7XG4gICAgLmRyb3Bkb3duLWNlbGwtdmFsdWUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJi5pcy1lZGl0aW5nOm5vdCguaXMtaW5saW5lKSB7XG4gICAgICBib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERyb3Bkb3duIEVkaXRpbmcgSW5saW5lXG4gICYuaXMtZWRpdGluZy5pcy1kcm9wZG93bi5pcy1pbmxpbmUge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICBpZHMtZHJvcGRvd24ge1xuICAgICAgcGFkZGluZzogMCB2YXIoLS1pZHMtc3BhY2UtMnhzKTtcbiAgICB9XG4gIH1cblxuICAvLyBUZXh0IEVkaXRhYmxlIENlbGxcbiAgJi5mb3JtYXR0ZXItdGV4dCB7XG4gICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgfVxuXG4gIC8vIEVkaXRpbmcgVXBwZXJjYXNlXG4gICYuaXMtZWRpdGluZy5pcy11cHBlcmNhc2Uge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICBpZHMtbGlzdC1ib3gtb3B0aW9uLFxuICAgIGlkcy1kcm9wZG93bjo6cGFydCh0cmlnZ2VyZmllbGQtaW5wdXQpLFxuICAgIGlkcy1pbnB1dDo6cGFydChpbnB1dCkge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gIH1cblxuICAvLyBGcm96ZW4gQ2VsbHNcbiAgJi5mcm96ZW4ge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgei1pbmRleDogMTsgLy8gei1pbmRleCBoaWdoZXIgdGhhbiAyIHdpbGwgYnJlYWsgaWRzLWxvYWRpbmctaW5kaWNhdG9yJ3Mgb3ZlcmxheVxuICB9XG5cbiAgLy8gQ2hhbmdlIGJvcmRlcnMgZm9yIHNjcm9sbGluZ1xuICAmLmZyb3plbi1sYXN0IHtcbiAgICBib3JkZXItaW5saW5lLWVuZDogMXB4IHNvbGlkIHZhcigtLWlkcy1kYXRhLWdyaWQtY2VsbC1jb2xvci1ib3JkZXIpO1xuXG4gICAgKyAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAgIGJvcmRlci1pbmxpbmUtc3RhcnQtd2lkdGg6IHZhcigtLWlkcy1ib3JkZXItd2lkdGgtbm9uZSk7XG4gICAgfVxuICB9XG5cbiAgJi5mcm96ZW4tbGVmdCB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICBsZWZ0OiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG5cbiAgICAvLyBEeW5hbWljYWxseSBhZGRlZCB3aWR0aHNcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIDEwIHtcbiAgICAgICY6bnRoLW9mLXR5cGUoI3skaX0pIHtcbiAgICAgICAgbGVmdDogdmFyKC0taWRzLWRhdGEtZ3JpZC1mcm96ZW4tY29sdW1uLWxlZnQtd2lkdGgtI3skaX0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZnJvemVuLXJpZ2h0IHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHJpZ2h0OiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gIH1cblxuICAmLmlzLWRpcnR5OjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGlkcy1kYXRhLWdyaWQtY2VsbC1kaXJ0eS10cmFja2VyLWljb247XG4gIH1cblxuICAmLmlzLWRpcnR5LmlzLWlubGluZSB7XG4gICAgJi5mb3JtYXR0ZXItdHJlZSB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgfVxuXG4gICAgICAuaWRzLWRhdGEtZ3JpZC10cmVlLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIEBpbmNsdWRlIGlkcy1kYXRhLWdyaWQtY2VsbC1kaXJ0eS10cmFja2VyLWljb247XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWRyb3Bkb3duOjpiZWZvcmUge1xuICAgICAgbWFyZ2luLWlubGluZTogNnB4O1xuICAgICAgaW5zZXQtYmxvY2stc3RhcnQ6IDZweDtcbiAgICB9XG5cbiAgICBpZHMtaW5wdXQge1xuICAgICAgJjo6cGFydChkaXJ0eS10cmFja2VyLWljb24pIHtcbiAgICAgICAgLS1pZHMtaWNvbi1oZWlnaHQtZGVmYXVsdDogMTJweCAhaW1wb3J0YW50O1xuICAgICAgICAtLWlkcy1pY29uLXdpZHRoLWRlZmF1bHQ6IDEycHggIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmlzLWRpcnR5LmlzLWRyb3Bkb3duLmlzLWVkaXRpbmc6bm90KC5pcy1pbmxpbmUpOjpiZWZvcmUge1xuICAgIGluc2V0LWJsb2NrLXN0YXJ0OiAzcHg7XG4gICAgbWFyZ2luLWlubGluZTogM3B4O1xuICB9XG5cbiAgJi5pcy1pbnZhbGlkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItYmFja2dyb3VuZC1lcnJvcik7XG4gIH1cblxuICBpZHMtYWxlcnQge1xuICAgIG1hcmdpbi10b3A6IDNweDtcbiAgfVxuXG4gIGlkcy10YWcge1xuICAgIC0taWRzLXRhZy1tYXJnaW4taW5saW5lLWVuZDogMDtcbiAgfVxuXG4gIGlkcy1wcm9ncmVzcy1iYXIge1xuICAgIG1hcmdpbjogdmFyKC0taWRzLXByb2dyZXNzLWJhci1ncmlkLWNlbGwtbWFyZ2luKTtcbiAgfVxuXG4gICYuaXMtZWRpdGluZyB7XG4gICAgJGljb24tc3R5bGVzOiAoXG4gICAgICAndGltZXBpY2tlcic6ICdjbG9jaycsXG4gICAgICAnZGF0ZXBpY2tlcic6ICdjYWxlbmRhcidcbiAgICApO1xuXG4gICAgJGZpZWxkLWhlaWdodHM6IChcbiAgICAgICd4cyc6ICgtNXB4LCAxcHgpLFxuICAgICAgJ3NtJzogKHZhcigtLWlkcy1zcGFjZS0zeHMpLCAxcHgpXG4gICAgKTtcblxuICAgIEBlYWNoICRjbGFzcywgJGljb24gaW4gJGljb24tc3R5bGVzIHtcbiAgICAgICYuaXMtI3skY2xhc3N9IHtcbiAgICAgICAgQGVhY2ggJGhlaWdodCwgJHZhbHVlcyBpbiAkZmllbGQtaGVpZ2h0cyB7XG4gICAgICAgICAgLmlkcy10cmlnZ2VyLWZpZWxkLXNsb3QtdHJpZ2dlci1lbmRbaWNvbj0nI3skaWNvbn0nXVtmaWVsZC1oZWlnaHQ9JyN7JGhlaWdodH0nXSB7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lLWVuZDogbnRoKCR2YWx1ZXMsIDEpO1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiBudGgoJHZhbHVlcywgMik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUm93IGhlaWdodDogJ3h4cydcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuW2RhdGEtcm93LWhlaWdodD0neHhzJ10ge1xuICAuZm9ybWF0dGVyLXByb2dyZXNzIHtcbiAgICBpZHMtcHJvZ3Jlc3MtYmFyIHtcbiAgICAgIG1hcmdpbjogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXh4cyk7XG4gICAgfVxuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5pcy1kaXJ0eTo6YmVmb3JlIHtcbiAgICBib3JkZXItd2lkdGg6IDRweDtcbiAgICBpbnNldC1ibG9jay1zdGFydDogMXB4O1xuICAgIGluc2V0LWlubGluZS1zdGFydDogLTFweDtcbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwuaXMtZGlydHkuaXMtaW5saW5lOjpiZWZvcmUge1xuICAgIG1hcmdpbi1pbmxpbmU6IDNweDtcbiAgICB0b3A6IDNweDtcbiAgfVxuXG4gIGlkcy1idXR0b24ge1xuICAgIC0taWRzLWJ1dHRvbi1pY29uLXBhZGRpbmc6IHZhcigtLWlkcy1zcGFjZS0zeHMpO1xuICB9XG5cbiAgaWRzLWJhZGdlIHtcbiAgICAtLWlkcy1iYWRnZS1mb250LWxpbmUtaGVpZ2h0OiBjYWxjKHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWhlaWdodC14eHMpIC0gOHB4KTtcbiAgfVxuXG4gIGlkcy10YWcge1xuICAgIC0taWRzLXRhZy1oZWlnaHQ6IGNhbGModmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctaGVpZ2h0LXh4cykgLSA2cHgpO1xuICB9XG5cbiAgaWRzLWlucHV0LFxuICBpZHMtdHJpZ2dlci1maWVsZCB7XG4gICAgLS1pZHMtc3BhY2UtM3hzOiAwO1xuICAgIC0taWRzLWlucHV0LWZvbnQtc2l6ZS1zbTogdmFyKC0taWRzLWRhdGEtZ3JpZC1mb250LXNpemUtc20pO1xuICB9XG5cbiAgaWRzLWlucHV0IHtcbiAgICAmOjpwYXJ0KGRpcnR5LXRyYWNrZXItaWNvbikge1xuICAgICAgLS1pZHMtaWNvbi1oZWlnaHQtZGVmYXVsdDogMTBweCAhaW1wb3J0YW50O1xuICAgICAgLS1pZHMtaWNvbi13aWR0aC1kZWZhdWx0OiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjo6cGFydChpbnB1dCkge1xuICAgICAgaGVpZ2h0OiBjYWxjKHZhcigtLWlkcy1pbnB1dC1oZWlnaHQtMTApIC0gNHB4KTtcbiAgICB9XG4gIH1cblxuICAvLyBBZGp1c3Qgbm9uIGlubGluZSBlZGl0b3JcbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5pcy1lZGl0YWJsZSAuZWRpdG9yLWNlbGwtaWNvbiB7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS0zeHMpO1xuICB9XG5cbiAgLy8gQWRqdXN0IGRyb3Bkb3duIGVkaXRvclxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmlzLWVkaXRhYmxlLmlzLWlubGluZSBpZHMtaWNvbi5lZGl0b3ItY2VsbC1pY29uIHtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmlzLWVkaXRhYmxlLmlzLWlubGluZSB7XG4gICAgLS1pZHMtYnV0dG9uLXRlcnRpYXJ5LWNvbG9yLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWlkcy1jb2xvci10cmFuc3BhcmVudCk7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmlzLWVkaXRpbmcuaXMtZHJvcGRvd24uaXMtaW5saW5lIGlkcy1kcm9wZG93biB7XG4gICAgcGFkZGluZzogdmFyKC0taWRzLXNwYWNlLW5vbmUpIHZhcigtLWlkcy1zcGFjZS00eHMpO1xuXG4gICAgLS1pZHMtaW5wdXQtZm9udC1zaXplLXNtOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZvbnQtc2l6ZS1zbSk7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveC1jb250YWluZXI6bm90KC5pcy1zZWxlY3Rpb24tY2hlY2tib3gpIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmcteHhzKTtcbiAgICB9XG5cbiAgICAmLmlzLWVkaXRhYmxlLmlzLWVkaXRhYmxlLmlzLWludmFsaWQgaWRzLWFsZXJ0IHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtc3BhY2UtNHhzKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBSb3cgaGVpZ2h0OiAneHMnXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuW2RhdGEtcm93LWhlaWdodD0neHMnXSB7XG4gIC5mb3JtYXR0ZXItcHJvZ3Jlc3Mge1xuICAgIGlkcy1wcm9ncmVzcy1iYXIge1xuICAgICAgbWFyZ2luOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmcteHMpO1xuICAgIH1cbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwuaXMtZGlydHk6OmJlZm9yZSB7XG4gICAgYm9yZGVyLXdpZHRoOiA0cHg7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmlzLWRpcnR5LmlzLWlubGluZTo6YmVmb3JlIHtcbiAgICBtYXJnaW4taW5saW5lOiAzcHg7XG4gICAgdG9wOiAzcHg7XG4gIH1cblxuICBpZHMtYnV0dG9uIHtcbiAgICAtLWlkcy1idXR0b24taWNvbi1wYWRkaW5nOiAzcHg7XG4gIH1cblxuICBpZHMtYmFkZ2Uge1xuICAgIC0taWRzLWJhZGdlLWZvbnQtbGluZS1oZWlnaHQ6IGNhbGModmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctaGVpZ2h0LXhzKSAtIDEycHgpO1xuICB9XG5cbiAgaWRzLXRhZyB7XG4gICAgLS1pZHMtdGFnLWhlaWdodDogY2FsYyh2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1oZWlnaHQteHhzKSAtIDRweCk7XG4gIH1cblxuICBpZHMtaW5wdXQge1xuICAgIC0taWRzLWlucHV0LWZvbnQtc2l6ZS1zbTogdmFyKC0taWRzLWRhdGEtZ3JpZC1mb250LXNpemUtc20pO1xuXG4gICAgJjo6cGFydChkaXJ0eS10cmFja2VyLWljb24pIHtcbiAgICAgIC0taWRzLWljb24taGVpZ2h0LWRlZmF1bHQ6IDEycHggIWltcG9ydGFudDtcbiAgICAgIC0taWRzLWljb24td2lkdGgtZGVmYXVsdDogMTJweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFkanVzdCBub24gaW5saW5lIGVkaXRvclxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmlzLWVkaXRhYmxlIC5lZGl0b3ItY2VsbC1pY29uIHtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLTN4cyk7XG4gIH1cblxuICAvLyBBZGp1c3QgZHJvcGRvd24gZWRpdG9yXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwuaXMtZWRpdGFibGUuaXMtaW5saW5lIGlkcy1pY29uLmVkaXRvci1jZWxsLWljb24ge1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtc3BhY2UtMnhzKTtcbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwuaXMtZWRpdGFibGUuaXMtaW5saW5lIHtcbiAgICAtLWlkcy1idXR0b24tdGVydGlhcnktY29sb3ItYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0taWRzLWNvbG9yLXRyYW5zcGFyZW50KTtcbiAgICAtLWlkcy1pbnB1dC1mb250LXNpemUtc206IHZhcigtLWlkcy1kYXRhLWdyaWQtZm9udC1zaXplLXNtKTtcbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwuaXMtZWRpdGluZy5pcy1kcm9wZG93bi5pcy1pbmxpbmUgaWRzLWRyb3Bkb3duIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSkgdmFyKC0taWRzLXNwYWNlLTN4cyk7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveC1jb250YWluZXI6bm90KC5pcy1zZWxlY3Rpb24tY2hlY2tib3gpIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmcteHMpO1xuICAgIH1cbiAgfVxufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJvdyBoZWlnaHQ6ICdzbSdcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5bZGF0YS1yb3ctaGVpZ2h0PSdzbSddIHtcbiAgLmZvcm1hdHRlci1wcm9ncmVzcyB7XG4gICAgaWRzLXByb2dyZXNzLWJhciB7XG4gICAgICBtYXJnaW46IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy1zbSk7XG4gICAgfVxuICB9XG5cbiAgaWRzLWJ1dHRvbiB7XG4gICAgLS1pZHMtYnV0dG9uLWljb24tcGFkZGluZzogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gIH1cblxuICAvLyBBZGp1c3Qgbm9uIGlubGluZSBlZGl0b3JcbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5pcy1lZGl0YWJsZSAuZWRpdG9yLWNlbGwtaWNvbiB7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IDZweDtcbiAgfVxuXG4gIC8vIEFkanVzdCBkcm9wZG93biBlZGl0b3JcbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5pcy1lZGl0YWJsZS5pcy1pbmxpbmUgaWRzLWljb24uZWRpdG9yLWNlbGwtaWNvbiB7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IDVweDtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmlzLWVkaXRhYmxlLmlzLWlubGluZSB7XG4gICAgLS1pZHMtYnV0dG9uLXRlcnRpYXJ5LWNvbG9yLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWlkcy1jb2xvci10cmFuc3BhcmVudCk7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveC1jb250YWluZXI6bm90KC5pcy1zZWxlY3Rpb24tY2hlY2tib3gpIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctc20pO1xuICAgIH1cbiAgfVxufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJvdyBoZWlnaHQ6ICdtZCdcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5bZGF0YS1yb3ctaGVpZ2h0PSdtZCddIHtcbiAgLmZvcm1hdHRlci1wcm9ncmVzcyB7XG4gICAgaWRzLXByb2dyZXNzLWJhciB7XG4gICAgICBtYXJnaW46IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy1tZCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQWRqdXN0IGRyb3Bkb3duIGVkaXRvclxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmlzLWVkaXRhYmxlIC5lZGl0b3ItY2VsbC1pY29uIHtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogN3B4O1xuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5pcy1lZGl0YWJsZS5pcy1pbmxpbmUgaWRzLWljb24uZWRpdG9yLWNlbGwtaWNvbiB7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy1zbSk7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmlzLWVkaXRhYmxlLmlzLWlubGluZSB7XG4gICAgLS1pZHMtYnV0dG9uLXRlcnRpYXJ5LWNvbG9yLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWlkcy1jb2xvci10cmFuc3BhcmVudCk7XG5cbiAgICA6OnNsb3R0ZWQoaWRzLXRyaWdnZXItYnV0dG9uKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDEwMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgIC5pZHMtZGF0YS1ncmlkLWNoZWNrYm94LWNvbnRhaW5lcjpub3QoLmlzLXNlbGVjdGlvbi1jaGVja2JveCkge1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy1tZCk7XG4gICAgfVxuICB9XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUm93IGhlaWdodDogJ2xnJ1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbltkYXRhLXJvdy1oZWlnaHQ9J2xnJ10ge1xuICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveC1jb250YWluZXI6bm90KC5pcy1zZWxlY3Rpb24tY2hlY2tib3gpIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctbGcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBMaXN0IFN0eWxlIEZlYXR1cmVcbi5pZHMtZGF0YS1ncmlkLmlzLWxpc3Qtc3R5bGUge1xuICAvLyBDaGFuZ2UgQ2VsbCBCb3JkZXJzL0JHXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgIGJvcmRlci1pbmxpbmUtc3RhcnQtd2lkdGg6IHZhcigtLWlkcy1ib3JkZXItd2lkdGgtbm9uZSk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWlkcy1kYXRhLWdyaWQtbGlzdC1jZWxsLWNvbG9yLWJvcmRlcik7XG5cbiAgICAmLmlzLXJlYWRvbmx5Om5vdCguZXhjbHVkZS1yZWFkb25seS1zdHlsZSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1jZWxsLWNvbG9yLWJhY2tncm91bmQtcmVhZG9ubHkpXG4gICAgfVxuXG4gICAgJi5pcy1kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1jZWxsLWNvbG9yLXRleHQtZGlzYWJsZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWJvZHkgLmlkcy1kYXRhLWdyaWQtcm93OmZpcnN0LWNoaWxkIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLy8gU3RhbmRhbG9uZSBDc3NcbnRkLmlkcy1kYXRhLWdyaWQtY2VsbCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2Utc20pO1xuICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS1zbSk7XG59XG5cbi8vIEhhbmRsZSBSVExcbjpob3N0KFtkaXI9J3J0bCddKSB7XG4gIC5pZHMtZGF0YS1ncmlkLmlzLWxpc3Qtc3R5bGUge1xuICAgIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgICAgYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6IHZhcigtLWlkcy1ib3JkZXItd2lkdGgtbm9uZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTmVnYXRlIEJvcmRlcnNcbiAgLmlkcy1kYXRhLWdyaWQtY2VsbCB7XG4gICAgJi5mcm96ZW4tbGVmdCB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgcmlnaHQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcblxuICAgICAgLy8gRHluYW1pY2FsbHkgYWRkZWQgd2lkdGhzXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIDEwIHtcbiAgICAgICAgJjpudGgtb2YtdHlwZSgjeyRpfSkge1xuICAgICAgICAgIHJpZ2h0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZyb3plbi1jb2x1bW4tbGVmdC13aWR0aC0jeyRpfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6IHZhcigtLWlkcy1ib3JkZXItd2lkdGgtbm9uZSk7XG4gICAgfVxuXG4gICAgJi5pcy1kaXJ0eSB7XG4gICAgICAuaWRzLWRhdGEtZ3JpZC10cmVlLWZpZWxkLWNvbnRhaW5lcjo6YmVmb3JlLFxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtZGlydHktaW5kaWNhdG9yLWNvbG9yLWJhY2tncm91bmQtZGlydHkpICB2YXIoLS1pZHMtaW5wdXQtZGlydHktaW5kaWNhdG9yLWNvbG9yLWJhY2tncm91bmQtZGlydHkpIHRyYW5zcGFyZW50ICB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRml4IHNsb3R0ZWQgdHJpZ2dlciBidXR0b24gbWFyZ2lucyB3aGVuIG5lc3RlZCB3aXRoaW4gY2VsbHNcbi5pZHMtdHJpZ2dlci1maWVsZC1zbG90LXRyaWdnZXItZW5kIHtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gR2VuZXJhdGVzIGEgcHNldWRvLWVsZW1lbnQgaW4gdGhlIGZvcm0gb2YgYW4gXCJvdXRsaW5lXCJcbi8vIGluIGEgY2VsbCB0aGF0IHJlcHJlc2VudHMgdGhlIFwiaW5saW5lLCBlZGl0YWJsZVwiIHN0YXRlLlxuQG1peGluIGlkcy1kYXRhLWdyaWQtaW5saW5lLWVkaXRhYmxlLW91dGxpbmUoJG1hcmdpbikge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlkcy1pbnB1dC1jb2xvci1ib3JkZXItZGVmYXVsdCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWRzLWJvcmRlci1yYWRpdXMtMnhzKTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIG1hcmdpbjogI3skbWFyZ2lufXB4O1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gI3skbWFyZ2luICogMn1weCk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRtYXJnaW4gKiAyfXB4KTtcbiAgfVxufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEdlbmVyYXRlcyBhIHBzZXVkby1lbGVtZW50IHJlcHJlc2VudGluZyB0aGUgZGlydHkgdHJhY2tlclxuLy8gaWNvbiBpbiBhIGNlbGwgdGhhdCdzIGJlZW4gZWRpdGVkLlxuQG1peGluIGlkcy1kYXRhLWdyaWQtY2VsbC1kaXJ0eS10cmFja2VyLWljb24ge1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1pbnB1dC1kaXJ0eS1pbmRpY2F0b3ItY29sb3ItYmFja2dyb3VuZC1kaXJ0eSkgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdmFyKC0taWRzLWlucHV0LWRpcnR5LWluZGljYXRvci1jb2xvci1iYWNrZ3JvdW5kLWRpcnR5KTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA1cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1pbmxpbmU6IHZhcigtLWlkcy1zcGFjZS0zeHMpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2UtM3hzKTtcbiAgei1pbmRleDogMTtcbn1cbiIsIkBpbXBvcnQgJy4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWNvcmUtbWl4aW5zJztcblxuLy8gSW5jbHVkZXMgSGlkZGVuIENsYXNzZXMgYW5kIE1peGlucyBmb3IgaGlkaW5nIGVsZW1lbnRzIGF0IGJyZWFrcG9pbnRzXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oaWRlLXh4bC1kb3duIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQteHhsKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gaGlkZS14eGwtZG93biB7XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXh4bCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhpZGUteHhsLXVwIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteHhsKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gaGlkZS14eGwtdXAge1xuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14eGwpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5oaWRlLXhsLWRvd24ge1xuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC14bCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGhpZGUteGwtZG93biB7XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXhsKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGlkZS14bC11cCB7XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50LXhsKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gaGlkZS14bC11cCB7XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50LXhsKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGlkZS1sZy1kb3duIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQtbGcpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBoaWRlLWxnLWRvd24ge1xuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1sZykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhpZGUtbGctdXAge1xuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sZykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGhpZGUtbGctdXAge1xuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sZykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhpZGUtbWQtZG93biB7XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50LW1kKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gaGlkZS1tZC1kb3duIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQtbWQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5oaWRlLW1kLXVwIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBoaWRlLW1kLXVwIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5oaWRlLXNtLWRvd24ge1xuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1zbSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGhpZGUtc20tZG93biB7XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXNtKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGlkZS1zbS11cCB7XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gaGlkZS1zbS11cCB7XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGlkZS14cy1kb3duIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQteHMpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBoaWRlLXhzLWRvd24ge1xuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC14cykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhpZGUteHMtdXAge1xuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14cykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGhpZGUteHMtdXAge1xuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14cykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGJyZWFrcG9pbnQteHMtZG93biB7XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXhzKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIkB1c2UgJy4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWhpZGUtbWl4aW4uc2NzcycgYXMgaGlkZTtcblxuOmhvc3QoLmhpZGUtc20tZG93bikge1xuICBAaW5jbHVkZSBoaWRlLmhpZGUtc20tZG93bigpO1xufVxuXG4uaWRzLXBvcHVwLW1lbnUge1xuICAmOm5vdChbaGlkZGVuXSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHotaW5kZXg6IHZhcigtLWlkcy16LWluZGV4LTYwKTtcbiAgfVxufVxuIiwiLyoqXG4gKiBDaGVja2JveCBNaXhpbnMuXG4gKi9cbkB1c2UgJ3Nhc3M6bGlzdCc7XG5AdXNlICcuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1jb3JlLW1peGlucycgYXMgbWl4aW5zO1xuXG4vLyBVbmNoZWNrZWRcbkBtaXhpbiBjaGVja2JveC11bmNoZWNrZWQoKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyOiB2YXIoLS1pZHMtY2hlY2tib3gtYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taWRzLWNoZWNrYm94LWJvcmRlci1yYWRpdXMpO1xuICBoZWlnaHQ6IDE0cHg7XG4gIHdpZHRoOiAxNHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDNweDtcbn1cblxuQG1peGluIGNoZWNrYm94LXVuY2hlY2tlZC1lcnJvciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJvcmRlci1lcnJvcik7XG59XG5cbi8vIENoZWNrZWRcbkBtaXhpbiBjaGVja2JveC1jaGVja2VkKCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtY2hlY2tib3gtY29sb3ItYmFja2dyb3VuZC1zZWxlY3RlZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJvcmRlci1zZWxlY3RlZCk7XG59XG5cbkBtaXhpbiBjaGVja2JveC1jaGVja2VkLWFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiB2YXIoLS1pZHMtZm9udC1zaXplLTJ4cykgc29saWQgdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJvcmRlci1zZWxlY3RlZC1hZnRlcik7XG4gIGJvcmRlci13aWR0aDogdmFyKC0taWRzLWNoZWNrYm94LWJvcmRlci13aWR0aC1zZWxlY3RlZC1hZnRlcik7XG4gIGFuaW1hdGlvbjogY2hlY2sgMC4xNXM7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgY29udGVudDogJyc7XG4gIGhlaWdodDogMTBweDtcbiAgbGVmdDogNHB4O1xuICB0b3A6IDA7XG4gIHdpZHRoOiA0cHg7XG59XG5cbi8vIEluZGV0ZXJtaW5hdGVcbkBtaXhpbiBjaGVja2JveC1pbmRldGVybWluYXRlKCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtY2hlY2tib3gtY29sb3ItYmFja2dyb3VuZC1pbmRldGVybWluYXRlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtY2hlY2tib3gtY29sb3ItYm9yZGVyLWluZGV0ZXJtaW5hdGUpO1xufVxuXG5AbWl4aW4gY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1hZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYW5pbWF0aW9uOiBjaGVja2luZGV0ZXJtaW5hdGUgMC4xNXM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pZHMtY2hlY2tib3gtY29sb3ItYm9yZGVyLWluZGV0ZXJtaW5hdGUtYWZ0ZXIpO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWlkcy1jaGVja2JveC1ib3JkZXItd2lkdGgtaW5kZXRlcm1pbmF0ZSk7XG4gIGNvbnRlbnQ6ICcnO1xuICBoZWlnaHQ6IDZweDtcbiAgbGVmdDogMnB4O1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgd2lkdGg6IDEwcHg7XG59XG5cbi8vIERpc2FibGVkXG5AbWl4aW4gY2hlY2tib3gtZGlzYWJsZWQtdW5jaGVja2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJhY2tncm91bmQtZGlzYWJsZWQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItZGlzYWJsZWQpO1xuICBjdXJzb3I6IHZhcigtLWlkcy1jdXJzb3ItZGVmYXVsdCk7XG59XG5cbkBtaXhpbiBjaGVja2JveC1kaXNhYmxlZC11bmNoZWNrZWQtZXJyb3Ige1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItZm9jdXMtZXJyb3IpO1xufVxuXG5AbWl4aW4gY2hlY2tib3gtZGlzYWJsZWQtY2hlY2tlZCgpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJhY2tncm91bmQtc2VsZWN0ZWQtZGlzYWJsZWQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItc2VsZWN0ZWQtZGlzYWJsZWQpO1xufVxuXG5AbWl4aW4gY2hlY2tib3gtZGlzYWJsZWQtdGV4dCB7XG4gIGN1cnNvcjogdmFyKC0taWRzLWN1cnNvci1kZWZhdWx0KTtcbiAgY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci10ZXh0LWRpc2FibGVkKTtcbn1cblxuLy8gRm9jdXNcbkBtaXhpbiBjaGVja2JveC1mb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJvcmRlci1mb2N1cyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLWlkcy1jaGVja2JveC1zaGFkb3ctZm9jdXMpO1xufVxuXG5AbWl4aW4gY2hlY2tib3gtZm9jdXMtZXJyb3Ige1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItZm9jdXMtZXJyb3IpO1xuICBib3gtc2hhZG93OiB2YXIoLS1pZHMtY2hlY2tib3gtc2hhZG93LWZvY3VzLWVycm9yKTtcbn1cblxuLy8gQ29sb3JlZFxuJGNvbG9yLW5hbWVzOiAnZ3JlZW4nICdwdXJwbGUnICdibHVlJyAnb3JhbmdlJyAncmVkJztcbiRjb2xvci12YXJzOiAtLWlkcy1jb2xvci1ncmVlbi03MCAtLWlkcy1jb2xvci1wdXJwbGUtNzAgLS1pZHMtY29sb3ItYmx1ZS03MCAtLWlkcy1jb2xvci1vcmFuZ2UtNzAgLS1pZHMtY29sb3ItcmVkLTcwO1xuXG5AbWl4aW4gY2hlY2tib3gtY29sb3JlZCgpIHtcbiAgQGVhY2ggJG5hbWUgaW4gJGNvbG9yLW5hbWVzIHtcbiAgICAkaTogbGlzdC5pbmRleCgkY29sb3ItbmFtZXMsICRuYW1lKTtcbiAgICAkY29sb3I6IHZhcigje2xpc3QubnRoKCRjb2xvci12YXJzLCAkaSl9KTtcblxuICAgICZbY29sb3I9JyN7JG5hbWV9J10gaW5wdXRbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgICB+IC5jaGVja21hcmsge1xuICAgICAgICBAaW5jbHVkZSBjaGVja2JveC1jb2xvcmVkLWJveCgkY29sb3IpO1xuICAgICAgfVxuXG4gICAgICAmOmRpc2FibGVkIH4gLmNoZWNrbWFyayB7XG4gICAgICAgIEBpbmNsdWRlIGNoZWNrYm94LWRpc2FibGVkLXVuY2hlY2tlZCgpO1xuICAgICAgfVxuXG4gICAgICAmOmRpc2FibGVkOmNoZWNrZWQgfiAuY2hlY2ttYXJrIHtcbiAgICAgICAgQGluY2x1ZGUgY2hlY2tib3gtZGlzYWJsZWQtY2hlY2tlZCgpO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIH4gLmNoZWNrbWFyayB7XG4gICAgICAgIEBpbmNsdWRlIGNoZWNrYm94LWNvbG9yZWQtYm94LWZvY3VzKCRjb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBjaGVja2JveC1jb2xvcmVkLWJveCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcbn1cblxuQG1peGluIGNoZWNrYm94LWNvbG9yZWQtYm94LWZvY3VzKCRjb2xvcikge1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcbn1cblxuLy8gQW5pbWF0aW9uc1xuQGtleWZyYW1lcyBjaGVjayB7XG4gIDAlIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDhweDtcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIDUwJSB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiA4cHg7XG4gICAgd2lkdGg6IDRweDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBsZWZ0OiA0cHg7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiA0cHg7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBjaGVja2luZGV0ZXJtaW5hdGUge1xuICAwJSB7XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICB3aWR0aDogMTBweDtcbiAgfVxufVxuIiwiLyoqXG4gKiBSYWRpbyBNaXhpbnMuXG4gKi9cbkB1c2UgJ3Nhc3M6bGlzdCc7XG5AdXNlICcuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1jb3JlLW1peGlucycgYXMgbWl4aW5zO1xuXG4vLyBVbmNoZWNrZWRcbkBtaXhpbiByYWRpby11bmNoZWNrZWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlkcy1yYWRpby1jb2xvci1ib3JkZXItZGVmYXVsdCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWlkcy1yYWRpby1ib3JkZXItcmFkaXVzKTtcbiAgaGVpZ2h0OiAxNHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDNweDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhcigtLWlkcy1tb3Rpb24tZHVyYXRpb24pIHZhcigtLWlkcy1tb3Rpb24tZWFzZSk7XG4gIHdpZHRoOiAxNHB4O1xufVxuXG5AbWl4aW4gcmFkaW8tdW5jaGVja2VkLWFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtcmFkaW8tY29sb3ItYmFja2dyb3VuZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlkcy1yYWRpby1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taWRzLXJhZGlvLWJvcmRlci1yYWRpdXMpO1xuICBjb250ZW50OiAnJztcbiAgaGVpZ2h0OiAwO1xuICBsZWZ0OiA2cHg7XG4gIHRvcDogNnB4O1xuICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0taWRzLW1vdGlvbi1kdXJhdGlvbikgdmFyKC0taWRzLW1vdGlvbi1lYXNlKTtcbiAgd2lkdGg6IDA7XG59XG5cbkBtaXhpbiByYWRpby11bmNoZWNrZWQtZXJyb3ItY2lyY2xlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtY29sb3ItZXJyb3ItZGVmYXVsdCk7XG59XG5cbkBtaXhpbiByYWRpby11bmNoZWNrZWQtZXJyb3ItbGFiZWwtdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1pZHMtY29sb3ItZXJyb3ItZGVmYXVsdCk7XG59XG5cbi8vIENoZWNrZWRcbkBtaXhpbiByYWRpby1jaGVja2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLXJhZGlvLWNvbG9yLWJhY2tncm91bmQtc2VsZWN0ZWQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1yYWRpby1jb2xvci1ib3JkZXItc2VsZWN0ZWQpO1xufVxuXG5AbWl4aW4gcmFkaW8tY2hlY2tlZC1hZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1yYWRpby1pbm5lci1jb2xvci1iYWNrZ3JvdW5kLXNlbGVjdGVkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtcmFkaW8taW5uZXItY29sb3ItYmFja2dyb3VuZC1zZWxlY3RlZCk7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBoZWlnaHQ6IDRweDtcbiAgbGVmdDogM3B4O1xuICB0b3A6IDNweDtcbiAgd2lkdGg6IDRweDtcbn1cblxuLy8gRGlzYWJsZWRcbkBtaXhpbiByYWRpby1kaXNhYmxlZC11bmNoZWNrZWQge1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1yYWRpby1jb2xvci1ib3JkZXItZGlzYWJsZWQpO1xuICBjdXJzb3I6IHZhcigtLWlkcy1jdXJzb3ItZGVmYXVsdCk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG9wYWNpdHk6IHZhcigtLWlkcy1yYWRpby1kaXNhYmxlZC1vcGFjaXR5KTtcbn1cblxuQG1peGluIHJhZGlvLWRpc2FibGVkLXVuY2hlY2tlZC1lcnJvci1jaXJjbGUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1yYWRpby1jb2xvci1ib3JkZXItZGlzYWJsZWQpO1xufVxuXG5AbWl4aW4gcmFkaW8tZGlzYWJsZWQtdW5jaGVja2VkLWVycm9yLWxhYmVsLXRleHQge1xuICBjb2xvcjogdmFyKC0taWRzLXJhZGlvLWNvbG9yLWJvcmRlci1kaXNhYmxlZCk7XG59XG5cbkBtaXhpbiByYWRpby1kaXNhYmxlZC1jaGVja2VkKCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtcmFkaW8tY29sb3ItYmFja2dyb3VuZC1zZWxlY3RlZC1kaXNhYmxlZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLXJhZGlvLWNvbG9yLWJvcmRlci1zZWxlY3RlZC1kaXNhYmxlZCk7XG4gIG9wYWNpdHk6IHZhcigtLWlkcy1yYWRpby1kaXNhYmxlZC1vcGFjaXR5KTtcbn1cblxuQG1peGluIHJhZGlvLWRpc2FibGVkLXRleHQge1xuICBjdXJzb3I6IHZhcigtLWlkcy1jdXJzb3ItZGVmYXVsdCk7XG4gIGNvbG9yOiB2YXIoLS1pZHMtcmFkaW8tY29sb3ItdGV4dC1kaXNhYmxlZCk7XG4gIG9wYWNpdHk6IHZhcigtLWlkcy1yYWRpby1kaXNhYmxlZC1vcGFjaXR5KTtcbn1cblxuLy8gRm9jdXNcbkBtaXhpbiByYWRpby1mb2N1cyB7XG4gIGJveC1zaGFkb3c6IHZhcigtLWlkcy1yYWRpby1zaGFkb3cpO1xufVxuXG5AbWl4aW4gcmFkaW8tZm9jdXMtbm90LWhpZGUtZm9jdXMge1xuICBib3gtc2hhZG93OiB2YXIoLS1pZHMtcmFkaW8tc2hhZG93LWZvY3VzKTtcbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcbkB1c2UgJy4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWNvcmUtbWl4aW5zJyBhcyBtaXhpbnM7XG5AaW1wb3J0ICcuL2lkcy1kYXRhLWdyaWQtY29tbW9uJztcbkBpbXBvcnQgJy4vaWRzLWRhdGEtZ3JpZC1maWx0ZXJzJztcbkBpbXBvcnQgJy4vaWRzLWRhdGEtZ3JpZC1oZWFkZXInO1xuQGltcG9ydCAnLi9pZHMtZGF0YS1ncmlkLXJvdyc7XG5AaW1wb3J0ICcuL2lkcy1kYXRhLWdyaWQtY2VsbCc7XG5AaW1wb3J0ICcuLi8uLi9jb21wb25lbnRzL2lkcy1wb3B1cC1tZW51L2lkcy1wb3B1cC1tZW51JztcbkBpbXBvcnQgJy4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWNoZWNrYm94LW1peGluJztcbkBpbXBvcnQgJy4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLXJhZGlvLW1peGluJztcblxuOmhvc3Qge1xuICAtLWlkcy1kYXRhLWdyaWQtY29sdW1uLXdpZHRoczogcmVwZWF0KDEsIG1pbm1heCgxMTBweCwgMWZyKSk7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaWRzLWRhdGEtZ3JpZCB7XG4gIC8vIE91dHNpZGUgYm9yZGVyIGFuZCBCYWNrZ3JvdW5kIGFuZCBzaXppbmdcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taWRzLWRhdGEtZ3JpZC1jZWxsLWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWlkcy1ib3JkZXItcmFkaXVzLTJ4cyk7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG92ZXJmbG93OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcblxuICAvLyBOZWVkZWQgc28gc3RpY2t5IGhlYWRlciB3b3JrcyBpbiBzYWZhcmlcbiAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLy8gRm9udCBJbmZvXG4gIEBpbmNsdWRlIG1peGlucy5hbnRpYWxpYXNlZCgpO1xuXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1pZHMtZm9udC1mYW1pbHktZGVmYXVsdCksIHZhcigtLWlkcy1mb250LWZhbWlseS1zeXN0ZW0tc2Fucyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0taWRzLWZvbnQtc2l6ZS1zbSk7XG5cbiAgLy8gU2VsZWN0aW9uIENoZWNrYm94XG4gIC5pZHMtZGF0YS1ncmlkLWNoZWNrYm94LWNvbnRhaW5lciB7XG4gICAgY3Vyc29yOiB2YXIoLS1pZHMtY3Vyc29yLXBvaW50ZXIpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBDaGVja2JveCBhbGlnbm1lbnRzXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwuYWxpZ24tbGVmdCB7XG4gICAgLmlkcy1kYXRhLWdyaWQtdHJlZS1jb250YWluZXIsXG4gICAgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgfVxuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5hbGlnbi1jZW50ZXIge1xuICAgIC5pZHMtZGF0YS1ncmlkLWNoZWNrYm94LWNvbnRhaW5lciB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmFsaWduLXJpZ2h0IHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgfVxuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3gge1xuICAgIEBpbmNsdWRlIGNoZWNrYm94LXVuY2hlY2tlZCgpO1xuXG4gICAgJi5lZGl0YWJsZSB7XG4gICAgICBjdXJzb3I6IHZhcigtLWlkcy1jdXJzb3ItcG9pbnRlcik7XG4gICAgfVxuXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY2hlY2tib3gtY29sb3ItYm9yZGVyKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgIHRvcDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBjaGVja2JveC1kaXNhYmxlZC11bmNoZWNrZWQoKTtcblxuICAgICAgb3BhY2l0eTogMC40O1xuICAgIH1cblxuICAgICYuY2hlY2tlZCB7XG4gICAgICBAaW5jbHVkZSBjaGVja2JveC1jaGVja2VkKCk7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgY2hlY2tib3gtY2hlY2tlZC1hZnRlcigpO1xuXG4gICAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIEBpbmNsdWRlIGNoZWNrYm94LWRpc2FibGVkLWNoZWNrZWQoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmluZGV0ZXJtaW5hdGUge1xuICAgICAgQGluY2x1ZGUgY2hlY2tib3gtaW5kZXRlcm1pbmF0ZSgpO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGNoZWNrYm94LWluZGV0ZXJtaW5hdGUtYWZ0ZXIoKTtcblxuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2VsZWN0aW9uIFJhZGlvXG4gIC5pZHMtZGF0YS1ncmlkLXJhZGlvLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLXJhZGlvIHtcbiAgICBAaW5jbHVkZSByYWRpby11bmNoZWNrZWQoKTtcblxuICAgIGN1cnNvcjogdmFyKC0taWRzLWN1cnNvci1wb2ludGVyKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgIHRvcDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgcmFkaW8tdW5jaGVja2VkLWFmdGVyKCk7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSByYWRpby1kaXNhYmxlZC11bmNoZWNrZWQoKTtcbiAgICB9XG5cbiAgICAmLmNoZWNrZWQge1xuICAgICAgQGluY2x1ZGUgcmFkaW8tY2hlY2tlZCgpO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIHJhZGlvLWNoZWNrZWQtYWZ0ZXIoKTtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIEBpbmNsdWRlIHJhZGlvLWRpc2FibGVkLWNoZWNrZWQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBUcmVlIEdyaWRcbiAgLmlkcy1kYXRhLWdyaWQtY2VsbCAuaWRzLWRhdGEtZ3JpZC10cmVlLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBpZHMtYnV0dG9uICsgLmlkcy1kYXRhLWdyaWQtdHJlZS1maWVsZC1jb250YWluZXIgLnRleHQtZWxsaXBzaXMge1xuICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgIH1cblxuICAgIGlkcy1idXR0b24ge1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xuICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgfVxuXG4gICAgaWRzLWJ1dHRvbi5leHBhbmQtYnV0dG9uIHtcbiAgICAgIC0taWRzLWJ1dHRvbi10ZXJ0aWFyeS1jb2xvci1iYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1pZHMtY29sb3ItdHJhbnNwYXJlbnQpO1xuICAgICAgLS1pZHMtYnV0dG9uLXRlcnRpYXJ5LWNvbG9yLWJvcmRlci1ob3ZlcjogdmFyKC0taWRzLWNvbG9yLXRyYW5zcGFyZW50KTtcbiAgICAgIC0taWRzLWJ1dHRvbi10ZXJ0aWFyeS1jb2xvci1iYWNrZ3JvdW5kLXByZXNzZWQ6IHZhcigtLWlkcy1jb2xvci10cmFuc3BhcmVudCk7XG4gICAgICAtLWlkcy1idXR0b24tdGVydGlhcnktY29sb3ItYm9yZGVyLXByZXNzZWQ6IHZhcigtLWlkcy1jb2xvci10cmFuc3BhcmVudCk7XG4gICAgfVxuXG4gICAgLnRleHQtZWxsaXBzaXMge1xuICAgICAgaWRzLWh5cGVybGluayB7XG4gICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsIC5pZHMtZGF0YS1ncmlkLXRyZWUtZmllbGQtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBNYXBzIHVzZWQgZm9yIGFsdGVyaW5nIGFsaWdubWVudHMgb2YgZWRpdGFibGUgZ3JpZCBjZWxscyBpbiBkaWZmZXJlbnQgc2NlbmFyaW9zLlxuICAvLyBUaGVzZSBydWxlcyBhcmUgYmFzZWQgb24gcm93LWhlaWdodCwgd2hpY2ggaXMgZGVmaW5lZCBhdCB0aGUgYC5pZHMtZGF0YS1ncmlkYCBlbGVtZW50IGxldmVsLlxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICRyb3ctaGVpZ2h0LWlubGluZS10cmVlLWdyaWQtYnV0dG9uLXdpZHRoczogKFxuICAgICd4eHMnOiAzMCxcbiAgICAneHMnOiAzMixcbiAgICAnc20nOiAzNCxcbiAgICAnbWQnOiA0MCxcbiAgICAnbGcnOiA0MFxuICApO1xuXG4gICRyb3ctaGVpZ2h0LXBhZGRpbmctb2Zmc2V0czogKFxuICAgICd4eHMnOiAxMixcbiAgICAneHMnOiAxMCxcbiAgICAnc20nOiA4LFxuICAgICdtZCc6IDMsXG4gICAgJ2xnJzogM1xuICApO1xuXG4gICRyb3ctaGVpZ2h0LWRpcnR5LWluZGljYXRvci1vZmZzZXRzOiAoXG4gICAgJ3h4cyc6IDEsXG4gICAgJ3hzJzogMSxcbiAgICAnc20nOiAxLFxuICAgICdtZCc6IDIsXG4gICAgJ2xnJzogMlxuICApO1xuXG4gICRyb3ctaGVpZ2h0LWlubGluZS1kaXJ0eS1pbmRpY2F0b3Itb2Zmc2V0czogKFxuICAgICd4eHMnOiAzLFxuICAgICd4cyc6IDQsXG4gICAgJ3NtJzogNSxcbiAgICAnbWQnOiA2LFxuICAgICdsZyc6IDZcbiAgKTtcblxuICAkcm93LWhlaWdodC1pbmRlbnRzOiAoXG4gICAgJ3h4cyc6IDEyLFxuICAgICd4cyc6IDEzLFxuICAgICdzbSc6IDE1LFxuICAgICdtZCc6IDE3LFxuICAgICdsZyc6IDE3XG4gICk7XG5cbiAgJHJvdy1oZWlnaHQtb3V0bGluZS1wYWRkaW5nOiAoXG4gICAgJ3h4cyc6IDEsXG4gICAgJ3hzJzogMixcbiAgICAnc20nOiAzLFxuICAgICdtZCc6IDQsXG4gICAgJ2xnJzogNFxuICApO1xuXG4gICRyb3ctaGVpZ2h0LW91dGxpbmUtb2Zmc2V0czogKFxuICAgICd4eHMnOiAxLFxuICAgICd4cyc6IDIsXG4gICAgJ3NtJzogNSxcbiAgICAnbWQnOiA4LFxuICAgICdsZyc6IDEyXG4gICk7XG5cbiAgQGVhY2ggJHJvd0hlaWdodCwgJG9mZnNldCBpbiAkcm93LWhlaWdodC1wYWRkaW5nLW9mZnNldHMge1xuICAgIC8vIFRoZXNlIHZhbHVlcyBhcmUgZGlmZmVyZW50IGZvciBlYWNoIFJvdyBIZWlnaHRcbiAgICAkYnV0dG9uLXdpZHRoOiBtYXAuZ2V0KCRyb3ctaGVpZ2h0LWlubGluZS10cmVlLWdyaWQtYnV0dG9uLXdpZHRocywgJHJvd0hlaWdodCk7XG4gICAgJGluZGVudDogbWFwLmdldCgkcm93LWhlaWdodC1pbmRlbnRzLCAkcm93SGVpZ2h0KTtcbiAgICAkZGlydHktaW5kaWNhdG9yLW9mZnNldDogbWFwLmdldCgkcm93LWhlaWdodC1kaXJ0eS1pbmRpY2F0b3Itb2Zmc2V0cywgJHJvd0hlaWdodCk7XG4gICAgJGlubGluZS1kaXJ0eS1pbmRpY2F0b3Itb2Zmc2V0OiBtYXAuZ2V0KCRyb3ctaGVpZ2h0LWlubGluZS1kaXJ0eS1pbmRpY2F0b3Itb2Zmc2V0cywgJHJvd0hlaWdodCk7XG4gICAgJG91dGxpbmUtb2Zmc2V0OiBtYXAuZ2V0KCRyb3ctaGVpZ2h0LW91dGxpbmUtb2Zmc2V0cywgJHJvd0hlaWdodCk7XG4gICAgJG91dGxpbmUtcGFkZGluZzogbWFwLmdldCgkcm93LWhlaWdodC1vdXRsaW5lLXBhZGRpbmcsICRyb3dIZWlnaHQpO1xuXG4gICAgJltkYXRhLXJvdy1oZWlnaHQ9JyN7JHJvd0hlaWdodH0nXSB7XG4gICAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgIC8vIFRvcC1sZXZlbCBncmlkIGFsaWdubWVudHMgdGhhdCBkZXBlbmQgc29sZWx5IG9uIHJvdyBoZWlnaHRcbiAgICAgIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgICAgICAmLmlzLWRpcnR5IHtcbiAgICAgICAgICAmOm5vdCguaXMtaW5saW5lKSB7XG4gICAgICAgICAgICAmLmZvcm1hdHRlci10ZXh0IHtcbiAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBpbnNldC1ibG9jay1zdGFydDogI3skZGlydHktaW5kaWNhdG9yLW9mZnNldH1weDtcbiAgICAgICAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAjeyRkaXJ0eS1pbmRpY2F0b3Itb2Zmc2V0fXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5pcy1pbmxpbmUge1xuICAgICAgICAgICAgJi5mb3JtYXR0ZXItdGV4dCB7XG4gICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgaW5zZXQtYmxvY2stc3RhcnQ6ICN7JGlubGluZS1kaXJ0eS1pbmRpY2F0b3Itb2Zmc2V0fXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6ICN7JGlubGluZS1kaXJ0eS1pbmRpY2F0b3Itb2Zmc2V0fXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gTTMgcmVxdWlyZW1lbnQgdG8gbm90IGFmZmVjdCBzcGVjaWZpYyBjZWxscyBieSByZWFkb25seSBmbGFnIChodHRwczovL2luZm9yLmF0bGFzc2lhbi5uZXQvYnJvd3NlL0lEUy04ODc0KVxuICAgICAgICAgJi5pcy1yZWFkb25seS5leGNsdWRlLXJlYWRvbmx5LXN0eWxlIHtcbiAgICAgICAgICAmOm5vdCguZm9ybWF0dGVyLXRyZWUpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGlkcy1kYXRhLWdyaWQtaW5saW5lLWVkaXRhYmxlLW91dGxpbmUoJG91dGxpbmUtcGFkZGluZyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGVmaW5lcyB0aGUgcG9zaXRpb24gb2YgdGhlIFwiaW5saW5lLWVkaXRcIiBzdHlsZSdzIG91dGxpbmVcbiAgICAgICAgJi5pcy1lZGl0YWJsZS5pcy1pbmxpbmUge1xuICAgICAgICAgICY6bm90KC5mb3JtYXR0ZXItdHJlZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgaWRzLWRhdGEtZ3JpZC1pbmxpbmUtZWRpdGFibGUtb3V0bGluZSgkb3V0bGluZS1wYWRkaW5nKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmZvcm1hdHRlci10cmVlIHtcbiAgICAgICAgICAgIC50ZXh0LWVsbGlwc2lzIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgaWRzLWRhdGEtZ3JpZC1pbmxpbmUtZWRpdGFibGUtb3V0bGluZSgkb3V0bGluZS1wYWRkaW5nKTtcblxuICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gI3skb3V0bGluZS1vZmZzZXQgKyA0fXB4KTtcblxuICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IC0jeyRvdXRsaW5lLW9mZnNldH1weDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBSZW1vdmUgc3RhcnQgcGFkZGluZyBmcm9tIHRyZWUtZ3JpZC1jb250YWluZWQgYC50ZXh0LWVsbGlwc2lzYCBlbGVtZW50c1xuICAgICAgLmlkcy1kYXRhLWdyaWQtdHJlZS1maWVsZC1jb250YWluZXIgLnRleHQtZWxsaXBzaXMge1xuICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgICAgfVxuXG4gICAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgIC8vIEV4cGFuZGFibGUgZ3JpZC90cmVlIGdyaWQgbmVzdGVkIGFsaWdubWVudCBydWxlc1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA4IHtcbiAgICAgICAgW2FyaWEtbGV2ZWw9JyN7JGl9J10gLmlkcy1kYXRhLWdyaWQtY2VsbCB7XG4gICAgICAgICAgQGlmICRpID09IDEge1xuICAgICAgICAgICAgLmlkcy1kYXRhLWdyaWQtdHJlZS1maWVsZC1jb250YWluZXIge1xuICAgICAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAjeyRidXR0b24td2lkdGh9cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlkcy1idXR0b24ge1xuICAgICAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlkcy1idXR0b24gKyAuaWRzLWRhdGEtZ3JpZC10cmVlLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIC5pZHMtZGF0YS1ncmlkLXRyZWUtZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogI3skYnV0dG9uLXdpZHRoICsgKCRpbmRlbnQgKiAoJGkgLSAxKSkgKyAoJG9mZnNldCl9cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlkcy1idXR0b24ge1xuICAgICAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAjeygkaW5kZW50ICogKCRpIC0gMSkpICsgJG9mZnNldH1weDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWRzLWJ1dHRvbiArIC5pZHMtZGF0YS1ncmlkLXRyZWUtZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAgICAgIC8vIERpcnR5LXRyYWNrZXIgcnVsZXMgZGVwZW5kZW50IG9uIGBhcmlhLWxldmVsYCBuZXN0aW5nXG4gICAgICAgICAgJi5pcy1kaXJ0eSB7XG4gICAgICAgICAgICAmLmlzLWlubGluZSB7XG4gICAgICAgICAgICAgIC5pZHMtZGF0YS1ncmlkLXRyZWUtZmllbGQtY29udGFpbmVyOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGluc2V0LWJsb2NrLXN0YXJ0OiAjeyRpbmxpbmUtZGlydHktaW5kaWNhdG9yLW9mZnNldH1weDtcbiAgICAgICAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAjeyRpbmxpbmUtZGlydHktaW5kaWNhdG9yLW9mZnNldH1weDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpc3QgU3R5bGUgRmVhdHVyZVxuICAmLmlzLWxpc3Qtc3R5bGUge1xuICAgIGJvcmRlci13aWR0aDogdmFyKC0taWRzLWJvcmRlci13aWR0aC1ub25lKTtcbiAgfVxuXG4gIC8vIFVzZWQgZm9yIHJvdyBzdGFydFxuICAmLndhaXRpbmctbG9hZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuaWRzLWRhdGEtZ3JpZC1ib2R5IHtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG4gIH1cbn1cblxuLy8gVXNlZCBmb3IgRnJvemVuIENvbHVtbnNcbi5pZHMtZGF0YS1ncmlkLWJvZHkge1xuICBtaW4td2lkdGg6IGZpdC1jb250ZW50O1xufVxuXG4vLyBTdGFuZGFsb25lIENzcyBCb3JkZXJzXG50YWJsZS5pZHMtZGF0YS1ncmlkIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIG91dGxpbmU6IDFweCBzb2xpZCB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItYm9yZGVyKTtcbiAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XG59XG5cbi8vIEVtcHR5IE1lc3NhZ2Vcbi5pZHMtZGF0YS1ncmlkLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmlkcy1kYXRhLWdyaWQtdG9vbGJhciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDZweCB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgfVxufVxuXG5pZHMtZW1wdHktbWVzc2FnZTpub3QoW2hpZGRlbl0pLFxuOjpzbG90dGVkKGlkcy1lbXB0eS1tZXNzYWdlOm5vdChbaGlkZGVuXSkpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdG9wOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1pZHMtc3BhY2Utc20pO1xufVxuXG4vLyBBZGp1c3QgZm9yIGZpbHRlciByb3dcbmlkcy1lbXB0eS1tZXNzYWdlLmhhcy1maWx0ZXItcm93Om5vdChbaGlkZGVuXSkge1xuICAmLmZpbHRlci1yb3ctc2l6ZS14eHMge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogMjRweDtcbiAgfVxuXG4gICYuZmlsdGVyLXJvdy1zaXplLXhzIHtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDM0cHg7XG4gIH1cblxuICAmLmZpbHRlci1yb3ctc2l6ZS1zbSB7XG4gICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAzNHB4O1xuICB9XG5cbiAgJi5maWx0ZXItcm93LXNpemUtbWQge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogMzRweDtcbiAgfVxuXG4gICYuZmlsdGVyLXJvdy1zaXplLWxnIHtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDI2cHg7XG4gIH1cblxuICAmLmhhcy1wYWdlciB7XG4gICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxNHB4O1xuICB9XG59XG5cbjo6c2xvdHRlZChpZHMtZW1wdHktbWVzc2FnZS5oYXMtZmlsdGVyLXJvdzpub3QoW2hpZGRlbl0pKSB7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMTRweDtcbn1cblxuLmhhcy1lbXB0eS1tZXNzYWdlIC5pZHMtZGF0YS1ncmlkIHtcbiAgbWluLWhlaWdodDogdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWlnaHQtbWluKTtcbn1cblxuLy8gTG9hZGluZyBJbmRpY2F0b3Jcbmlkcy1sb2FkaW5nLWluZGljYXRvciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRvcDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuXG4gICZbc3RvcHBlZF0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuOmhvc3QoOm5vdChbZGlzYWJsZS1yb3ctaGlnaGxpZ2h0XSkpIGlkcy1kYXRhLWdyaWQtcm93OmhvdmVyOm5vdChbcGFydCo9J3Jvdy0nXSk6bm90KC5zZWxlY3RlZCkge1xuICBpZHMtZGF0YS1ncmlkLWNlbGwsXG4gIGlkcy1kYXRhLWdyaWQtY2VsbC5pcy1yZWFkb25seTpub3QoLmV4Y2x1ZGUtcmVhZG9ubHktc3R5bGUpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgfVxuXG4gIGlkcy1kYXRhLWdyaWQtY2VsbC5pcy1pbnZhbGlkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItYmFja2dyb3VuZC1lcnJvci1ob3Zlcik7XG4gIH1cbn1cblxuI2RhdGFncmlkLW1vZGFsIHtcbiAgLS1pZHMtbW9kYWwtY29udGVudC1wYWRkaW5nOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gIC0taWRzLW1vZGFsLWhlYWRlci1wYWRkaW5nOiB2YXIoLS1pZHMtc3BhY2Utc20pIHZhcigtLWlkcy1zcGFjZS1zbSkgdmFyKC0taWRzLXNwYWNlLXhzKSB2YXIoLS1pZHMtc3BhY2Utc20pO1xuICAtLWlkcy1wb3B1cC1maXQtaGVpZ2h0OiA0MDBweDtcblxuICBpZHMtc3dhcHBhYmxlLWl0ZW0ge1xuICAgIC0taWRzLXN3YXBwYWJsZS1pdGVtLWNvbG9yLWJhY2tncm91bmQtc2VsZWN0ZWQ6IHZhcigtLWlkcy1jb2xvci1hY2NlbnQtYmx1ZS13ZWFrZXN0KTtcbiAgICAtLWlkcy1zd2FwcGFibGUtaXRlbS1jb2xvci10ZXh0LXNlbGVjdGVkOiB2YXIoLS1pZHMtY29sb3ItZm9yZWdyb3VuZC1kZWZhdWx0LWRlZmF1bHQpO1xuXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtbW9kYWwtcm93LWhlaWdodCk7XG4gIH1cblxuICAjZGF0YWdyaWQtbW9kYWwtdGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGNhbGModmFyKC0taWRzLXNwYWNlLTA0KSAqIC0xKTtcbiAgfVxuXG4gIGlkcy1zZWFyY2gtZmllbGQge1xuICAgIC0taWRzLWlucHV0LWNvbG9yLWJhY2tncm91bmQtZGVmYXVsdDogdmFyKC0taWRzLWNvbG9yLWFjY2VudC1uZXV0cmFsLXdlYWtlc3QpO1xuICAgIC0taWRzLXNlYXJjaC1maWVsZC1jb2xvci1iYWNrZ3JvdW5kLWRlZmF1bHQ6IHZhcigtLWlkcy1jb2xvci1hY2NlbnQtbmV1dHJhbC13ZWFrZXN0KTtcbiAgICAtLWlkcy1pbnB1dC1jb2xvci1ib3JkZXItZGVmYXVsdDogdmFyKC0taWRzLWNvbG9yLWFjY2VudC1uZXV0cmFsLXdlYWspO1xuICAgIC0taWRzLWlucHV0LWNvbG9yLWJvcmRlci1ob3ZlcjogdmFyKC0taWRzLWNvbG9yLWFjY2VudC1uZXV0cmFsLXdlYWspO1xuICAgIC0taWRzLWlucHV0LWNvbG9yLWJvcmRlci1mb2N1czogdmFyKC0taWRzLWNvbG9yLWFjY2VudC1uZXV0cmFsLXdlYWspO1xuICAgIC0taWRzLWlucHV0LWNvbG9yLWJvcmRlci1zaGFkb3c6IG5vbmU7XG4gICAgLS1pZHMtc2VhcmNoLWZpZWxkLWJvcmRlci1yYWRpdXM6IHZhcigtLWlkcy1ib3JkZXItcmFkaXVzLW5vbmUpO1xuICAgIC0taWRzLXNlYXJjaC1maWVsZC1ib3JkZXItd2lkdGg6IHZhcigtLWlkcy1ib3JkZXItd2lkdGgtc20pIHZhcigtLWlkcy1ib3JkZXItd2lkdGgtbm9uZSk7XG5cbiAgICBtYXJnaW4tYm90dG9tOiAtOHB4O1xuICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0taWRzLXNwYWNlLTA4KSAqIC0xKTtcbiAgICBtaW4td2lkdGg6IDMzMHB4O1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIGlkcy10ZXh0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIGlkcy1zd2l0Y2gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IHZhcigtLWlkcy1zcGFjZS0zeHMpO1xuICB9XG5cbiAgaWRzLXN3YXBwYWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuZGF0YWdyaWQtbW9kYWwtY29sdW1uLWxpc3Qge1xuICAgIC0taWRzLW1vZGFsLWNvbHVtbi1saXN0LWhlaWdodDogY2FsYygxMDAlIC0gMTRweCk7XG5cbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiB2YXIoLS1pZHMtbW9kYWwtY29sdW1uLWxpc3QtaGVpZ2h0KTtcbiAgfVxuXG59XG4iLCIvLyBCcmVha3BvaW50cyAtIHRoaXMgY2FudCBiZSB0b2tlbnNcbiRicmVha3BvaW50LXh4bDogMTQ0MHB4O1xuJGJyZWFrcG9pbnQteGw6IDEyODBweDtcbiRicmVha3BvaW50LWxnOiAxMDI0cHg7XG4kYnJlYWtwb2ludC1tZDogODQwcHg7XG4kYnJlYWtwb2ludC1zbTogNjAwcHg7XG4kYnJlYWtwb2ludC14czogMzIwcHg7XG5cbi8vIFNldHMgVGV4dCBBbnRpYWxpYXNpbmdcbkBtaXhpbiBhbnRpYWxpYXNlZCB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4kdHJhbnNpdGlvbi1sZW5ndGg6IHZhcigtLWlkcy1tb3Rpb24tZHVyYXRpb24pO1xuJHRyYW5zaXRpb24tZWFzZTogdmFyKC0taWRzLW1vdGlvbi1lYXNlKTtcblxuLy8gdmVuZG9yIHByZWZpeGVkIHRyYW5zaXRpb25zIGZvciByZWd1bGFyIGF0dHJpYnV0ZXMgKG5vbi12ZW5kb3IgcHJlZml4ZWQpXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbnMtbGlzdC4uLikge1xuICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlcyB7XG4gICAgI3skcHJlZml4fXRyYW5zaXRpb246ICR0cmFuc2l0aW9ucy1saXN0O1xuICB9XG59XG5cbi8vIG1ha2UgdGhlIHRleHQgaW52aXNpYmxlIHZpc3VhbGx5IGJ1dCByZWFkYWJsZSBieSBzY3JlZW4gcmVhZGVyc1xuQG1peGluIGF1ZGlibGUoKSB7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cblxuLy8gQ2FsY3VsYXRlIHNpemUgaW5jbHVkaW5nIGJvcmRlcnMgKG5vdCBleGNsdWRpbmcpXG5AbWl4aW4gYm9yZGVyLWJveCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59Il19 */`;
2566
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL3Jvb3QvZW50ZXJwcmlzZS9zcmMvY29tcG9uZW50cy9pZHMtZGF0YS1ncmlkIiwic291cmNlcyI6WyJpZHMtZGF0YS1ncmlkLWZpbHRlcnMuc2NzcyIsImlkcy1kYXRhLWdyaWQtaGVhZGVyLnNjc3MiLCJpZHMtZGF0YS1ncmlkLXJvdy5zY3NzIiwiaWRzLWRhdGEtZ3JpZC1jZWxsLnNjc3MiLCJpZHMtZGF0YS1ncmlkLWNvbW1vbi5zY3NzIiwiLi4vLi4vdGhlbWVzL21peGlucy9pZHMtaGlkZS1taXhpbi5zY3NzIiwiLi4vaWRzLXBvcHVwLW1lbnUvaWRzLXBvcHVwLW1lbnUuc2NzcyIsIi4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWNoZWNrYm94LW1peGluLnNjc3MiLCIuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1yYWRpby1taXhpbi5zY3NzIiwiaWRzLWRhdGEtZ3JpZC5zY3NzIiwiLi4vLi4vdGhlbWVzL21peGlucy9pZHMtY29yZS1taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBRUE7O0FBR0Y7RUFJRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBTUE7QUFBQTtBQUFBO0VBR0U7O0FBS047RUFDRTtFQUNBO0VBRUE7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOzs7QUMxRU47QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQU9BOztBQUxBO0VBQ0U7OztBQVFKO0VBQ0U7O0FBRUE7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBSUY7RUFDRTtFQUNBOzs7QUFLSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0E7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBRUU7O0FBR0Y7RUFFRTs7QUFHRjtFQUNFO0VBQ0E7O0FBSUE7RUFDRTs7QUFLSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJSjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7O0FBRUE7RUFDRTs7QUFJSjtFQUNFOztBQUlGO0VBQ0U7RUFDQTtFQUNBOztBQUlGO0VBQ0U7O0FBRUE7RUFDRTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTs7QUFJRTtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFLTjtFQUNFO0VBQ0E7O0FBR0E7RUFDRTs7O0FBS047RUFDRTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7OztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQUlGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBS0E7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUlKO0VBQ0U7O0FBRUE7RUFDRTs7O0FBS047RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7OztBQUlKO0VBQ0U7OztBQUdGO0FBQUE7RUFFRTs7O0FBR0Y7RUFDRTtFQUNBOzs7QUFLQTtBQUFBO0VBQ0U7OztBQU1GO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOzs7QUFNRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7O0FBS0o7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7O0FBS0o7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBTUE7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBS0E7RUFDRTs7QUFJSjtBQUFBO0VBRUU7O0FBS0E7RUFDRTs7O0FBTU47RUFDRTs7O0FBTUU7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTtFQUNBOztBQUVBO0VBQ0U7O0FBR0Y7RUFDRTs7QUFJSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUlGO0FBQUE7QUFBQTtFQUdFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7OztBQVNGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBSUU7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7OztBQzlmVjtBQUNBO0VBQ0U7RUFDQTtFQUNBOztBQUVBO0VBRUU7O0FBR0Y7RUFDRTs7QUFLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtOO0VBQ0U7O0FBR0U7RUFLRTtFQUNBOztBQUxBO0VBQ0k7O0FBU1Y7RUFDRTs7QUFHRTtFQUtFO0VBQ0E7O0FBTEE7RUFDRTs7QUFTUjtFQUNFOztBQUdFO0VBS0U7RUFDQTs7QUFMQTtFQUNFOzs7QUFXVjtFQUNFO0VBQ0E7O0FBR0E7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBO0VBRUE7OztBQVFBO0VBQ0U7O0FBRUE7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFJSjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFOztBQUVBO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7O0FBSUo7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUVBO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7O0FBSUo7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTtFQUNBOztBQUVBO0FBQUE7RUFFRTtFQUNBOztBQUdGO0VBQ0U7O0FBTUE7RUFDRTtFQUNBOztBQUtOO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOzs7QUFNTjtFQUNFOzs7QUFJRjtFQUNFO0VBQ0E7RUFDQTs7O0FBSUY7RUFDRTtFQUNBOzs7QUFLQTtFQUNFOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlKO0VBQ0U7RUFDQTs7QUFJRjtBQUFBO0VBRUU7OztBQVNNO0VBQ0k7O0FBU0o7RUFDSTs7QUFTSjtFQUNJOzs7QUN6UmQ7QUFDQTtFQUNFOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFLRTtFQUNFOztBQUdGO0VBQ0U7O0FBS0Y7RUFDRTs7O0FBS047RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHQTtFQUNFOztBQUlGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBSUY7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSUY7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTs7QUFNRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBS0o7RUFDRTs7QUFFQTtFQUNFOztBQUlKO0VBQ0U7O0FBRUE7RUFDRTs7QUFJSjtFQUNFOztBQU9BO0VBQ0U7RUFDQTtFQUNBOztBQU1BO0VBQ0U7O0FBTUE7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0Y7RUFDRTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFOztBQUtOO0VBR0U7O0FBRUE7RUFDRTs7QUFNRjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFOztBQUVBO0VBQ0U7O0FBS047RUFDRTs7QUFNQTtFQUNFOztBQUdGO0VBQ0U7O0FBSUo7RUFDRTs7QUFFQTtFQUNFOztBQUtOO0VBQ0U7RUFDQTtFQUNBO0VBTUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQVRBO0VBQ0U7O0FBWUo7RUFHRTs7QUFHRjtFQUNFOztBQUtBO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLSjtFQUNFOztBQUVBO0VBQ0U7O0FBS0o7RUFDRTs7QUFJRjtFQUNFOztBQUVBO0FBQUE7QUFBQTtFQUdFOztBQUtKO0VBQ0U7RUFDQTs7QUFJRjtFQUNFOztBQUVBO0VBQ0U7O0FBSUo7RUFDRTtFQUNBOztBQUlFO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQUtOO0VBQ0U7RUFDQTs7QUFHRjtFQ3RWQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FEb1ZJO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUVBO0VDcFdOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QURrV0U7RUFDRTtFQUNBOztBQUlBO0VBQ0U7RUFDQTs7QUFLTjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFpQk07RUFDRTtFQUNBOztBQUZGO0VBQ0U7RUFDQTs7QUFGRjtFQUNFO0VBQ0E7O0FBRkY7RUFDRTtFQUNBOzs7QUFhUjtFQUNFOztBQUlKO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtBQUFBO0VBRUU7RUFDQTs7QUFJQTtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFLSjtFQUNFOztBQUlGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBRUE7O0FBSUE7RUFDRTs7QUFHRjtFQUNFOzs7QUFXRjtFQUNFOztBQUlKO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBRUE7RUFDRTtFQUNBOztBQUtKO0VBQ0U7O0FBSUY7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFJQTtFQUNFOzs7QUFXRjtFQUNFOztBQUlKO0VBQ0U7O0FBSUY7RUFDRTs7QUFJRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFJQTtFQUNFOzs7QUFXRjtFQUNFOztBQUtKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUVBO0VBQ0U7RUFDQTs7QUFLRjtFQUNFOzs7QUFXRjtFQUNFOzs7QUFRSjtFQUNFO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFOztBQUlKO0VBQ0U7OztBQUtKO0VBQ0U7RUFDQTtFQUNBOzs7QUFNRTtFQUNFOztBQU1GO0VBQ0U7RUFDQTs7QUFJRTtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFERjtFQUNFOztBQURGO0VBQ0U7O0FBREY7RUFDRTs7QUFLTjtFQUNFOztBQUlBO0VBRUU7OztBQU9SO0VBQ0U7OztBRWx1QkY7RUFDRTs7O0FBSUE7RUFERjtJQUVJOzs7QUFXRjtFQURGO0lBRUk7OztBQVdGO0VBREY7SUFFSTs7O0FBV0Y7RUFERjtJQUVJOzs7QUFXRjtFQURGO0lBRUk7OztBQVdGO0VBREY7SUFFSTs7O0FBV0Y7RUFERjtJQUVJOzs7QUFXRjtFQURGO0lBRUk7OztBQVdGO0VBREY7SUFFSTs7O0FBV0Y7RUFERjtJQUVJOzs7QUFXRjtFQURGO0lBRUk7OztBQVdGO0VBREY7SUFFSTs7O0FBL0JGO0VDNUdGO0lENkdJOzs7O0FDeEdGO0VBQ0U7RUFDQTs7O0FDVEo7QUFBQTtBQUFBO0FBb0lBO0VBQ0U7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOztFQUdGO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7OztBQUlKO0VBQ0U7SUFDRTs7RUFHRjtJQUNFOzs7QUNqS0o7QUFBQTtBQUFBO0FDV0E7RUFDRTtFQUVBOzs7QUFHRjtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQ25CQTtFQUNBO0VEdUJBO0VBQ0E7O0FBR0E7RUFDRTtFQUNBO0VBQ0E7O0FBS0E7QUFBQTtFQUVFOztBQUtGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFJSjtFRnhEQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRXlERTtFQUNBO0VBQ0E7RUFDQTs7QUFQQTtFQUNFOztBQVFGO0VGYkY7RUFDQTtFQUNBO0VFY0k7O0FBR0Y7RUYzREY7RUFDQTs7QUU2REk7RUZ6REo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFRWtETTs7QUFHRjtFRmxCSjtFQUNBOztBRXNCRTtFRnJERjtFQUNBOztBRXVESTtFRm5ESjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VFNENNOztBQU1OO0VBQ0U7RUFDQTtFQUNBOztBQUdGO0VEMUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUNzR0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUR2R0Y7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FDa0dFO0VEckVGO0VBQ0E7RUFDQTtFQUNBOztBQ3NFRTtFRHpGRjtFQUNBOztBQzJGSTtFRHZGSjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUNxRkk7RURqRUo7RUFDQTtFQUNBOztBQ3NFQTtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUlBO0VBQ0U7O0FBS047RUFDRTtFQUNBOztBQStFVTtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQVFOO0VMNVFSOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS3dRTTtFTG5SUjs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUs2UVE7RUx4UlY7RUsyUlk7O0FMelJaO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS2tSVTtFQUNFOztBQVFWO0VBQ0U7O0FBUUk7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBb0JBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQXJGRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQVFOO0VMNVFSOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS3dRTTtFTG5SUjs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUs2UVE7RUx4UlY7RUsyUlk7O0FMelJaO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS2tSVTtFQUNFOztBQVFWO0VBQ0U7O0FBUUk7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBb0JBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQXJGRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQVFOO0VMNVFSOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS3dRTTtFTG5SUjs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUs2UVE7RUx4UlY7RUsyUlk7O0FMelJaO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS2tSVTtFQUNFOztBQVFWO0VBQ0U7O0FBUUk7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBb0JBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQXJGRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQVFOO0VMNVFSOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS3dRTTtFTG5SUjs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUs2UVE7RUx4UlY7RUsyUlk7O0FMelJaO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS2tSVTtFQUNFOztBQVFWO0VBQ0U7O0FBUUk7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBb0JBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQXJGRjtFQUNFO0VBQ0E7O0FBT0Y7RUFDRTtFQUNBOztBQVFOO0VMNVFSOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS3dRTTtFTG5SUjs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUs2UVE7RUx4UlY7RUsyUlk7O0FMelJaO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBS2tSVTtFQUNFOztBQVFWO0VBQ0U7O0FBUUk7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBb0JBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQW5CSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFRQTtFQUNFO0VBQ0E7O0FBbkJKO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQVFBO0VBQ0U7RUFDQTs7QUFuQko7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBUUE7RUFDRTtFQUNBOztBQVVkO0VBQ0U7O0FBSUY7RUFDRTtFQUNBOztBQUVBO0VBQ0U7OztBQU1OO0VBQ0U7OztBQUlGO0VBQ0U7RUFDQTtFQUNBOzs7QUFJRjtFQUNFOztBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSUo7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBS0E7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7OztBQUlKO0VBQ0U7OztBQUdGO0VBQ0U7OztBQUlGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7O0FBS0Y7QUFBQTtFQUVFOztBQUdGO0VBQ0U7OztBQUlKO0VBQ0U7RUFDQTtFQUNBOztBQUVBO0VBQ0U7RUFDQTtFQUVBO0VBQ0E7O0FBR0Y7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7RUFFQTtFQUNBIiwic291cmNlc0NvbnRlbnQiOlsiLyogSWRzIERhdGEgR3JpZCBDb21wb25lbnQgLSBGaWx0ZXIgKi9cbi5pZHMtZGF0YS1ncmlkIHtcbiAgLS1pZHMtYnV0dG9uLWZvcm1hdHRlci1jb2xvci10ZXh0LWRlZmF1bHQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtZmlsdGVyLWljb24tY29sb3IpO1xuICAtLWlkcy1idXR0b24tZm9ybWF0dGVyLWNvbG9yLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWlkcy1kYXRhLWdyaWQtZmlsdGVyLWljb24tY29sb3ItYmFja2dyb3VuZC1ob3Zlcik7XG4gIC0taWRzLWJ1dHRvbi1mb3JtYXR0ZXItY29sb3ItdGV4dC1ob3ZlcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1maWx0ZXItaWNvbi1jb2xvci1ob3Zlcik7XG4gIC0taWRzLW1lbnUtaXRlbS13aWR0aC1taW46IDE5MHB4O1xuICAtLWlkcy10cmlnZ2VyLWZpZWxkLWJ1dHRvbi1pbnNldC1pbmxpbmUtc3RhcnQ6IDA7XG5cbiAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtZmlsdGVyLXdyYXBwZXIgaWRzLWRyb3Bkb3duIHtcbiAgICAtLWlkcy10cmlnZ2VyLWZpZWxkLWJ1dHRvbi1pbnNldC1pbmxpbmUtc3RhcnQ6IC0xcHg7XG5cbiAgICBwYWRkaW5nLXRvcDogM3B4O1xuICB9XG5cbiAgJltkYXRhLXJvdy1oZWlnaHQ9J21kJ10gaWRzLWRyb3Bkb3duLFxuICAmW2RhdGEtcm93LWhlaWdodD0nc20nXSBpZHMtZHJvcGRvd24sXG4gICZbZGF0YS1yb3ctaGVpZ2h0PSd4cyddIGlkcy1kcm9wZG93bixcbiAgJltkYXRhLXJvdy1oZWlnaHQ9J3h4cyddIGlkcy1kcm9wZG93biB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICA6OnNsb3R0ZWQoW3Nsb3RePSdmaWx0ZXItJ10pIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gdmFyKC0taWRzLXNwYWNlLXNtKSk7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbC1maWx0ZXItd3JhcHBlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLXhzKTtcbiAgICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS14cyk7XG4gICAgcGFkZGluZy1ibG9jay1lbmQ6IHZhcigtLWlkcy1zcGFjZS14cyk7XG5cbiAgICAmLmhpZGRlbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGlkcy1kcm9wZG93bltjb21wYWN0XSBpZHMtbGlzdC1ib3gtb3B0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogdW5zZXQ7XG4gICAgICBtaW4taGVpZ2h0OiB2YXIoLS1pZHMtc2l6ZS0yMCk7XG4gICAgfVxuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwuaXMtdXBwZXJjYXNlIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbC1maWx0ZXItd3JhcHBlciB7XG4gICAgICBpZHMtbGlzdC1ib3gtb3B0aW9uLFxuICAgICAgaWRzLWRyb3Bkb3duOjpwYXJ0KHRyaWdnZXJmaWVsZC1pbnB1dCksXG4gICAgICBpZHMtaW5wdXQ6OnBhcnQoaW5wdXQpIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBbZGF0YS1maWx0ZXItY29uZGl0aW9ucy1idXR0b25dIHtcbiAgICAtLWlkcy1idXR0b24taWNvbi1jb21wYWN0LWhlaWdodDogMjBweDtcbiAgICAtLWlkcy1idXR0b24taWNvbi1jb21wYWN0LXdpZHRoOiAzNnB4O1xuXG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IDJweDtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IC0ycHg7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcblxuICAgIGlkcy1pY29uIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDNweDtcbiAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAtM3B4O1xuICAgIH1cblxuICAgIGlkcy1pY29uLWJ1dHRvbiB7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIElkcyBEYXRhIEdyaWQgQ29tcG9uZW50IC0gSGVhZGVyICovXG4uaWRzLWRhdGEtZ3JpZC1oZWFkZXIge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgei1pbmRleDogMTsgLy8gSGlnaGVyIHRoYW4gYm9keSBjb2x1bW5zOyB6LWluZGV4IGhpZ2hlciB0aGFuIDIgd2lsbCBicmVhayBpZHMtbG9hZGluZy1pbmRpY2F0b3IncyBvdmVybGF5XG5cbiAgJi5pcy1mcm96ZW4ge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAvLyBGaWx0ZXIgYnV0dG9uIGhlaWdodFxuICAtLWlkcy1idXR0b24tZm9ybWF0dGVyLXNpemU6IDI4cHg7XG59XG5cbi8vIEhlYWRlciBDaGVja2JveFxuLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgd2lkdGg6IDIwcHg7XG5cbiAgJltkaXNhYmxlZD0ndHJ1ZSddIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveFtkaXNhYmxlZD0ndHJ1ZSddIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBvcGFjaXR5OiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1jaGVja2JveC1vcGFjaXR5LWRpc2FibGVkKTtcbiAgfVxuXG5cbiAgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3g6bm90KC5jaGVja2VkKTpub3QoLmluZGV0ZXJtaW5hdGUpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1jaGVja2JveC1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNoZWNrYm94LWNvbG9yLWJvcmRlcik7XG4gIH1cbn1cblxuLy8gSGVhZGVyIENlbGwgQXJlYVxuLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwge1xuICBib3JkZXItaW5saW5lLXN0YXJ0OiAxcHggc29saWQgdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXItY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLWJsb2NrLWVuZDogMXB4IHNvbGlkIHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNvbG9yLWJvcmRlcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNvbG9yLWJhY2tncm91bmQtZGVmYXVsdCk7XG4gIG1pbi1oZWlnaHQ6IDI4cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAvLyBIaWRlIGZpcnN0IGJvcmRlclxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOiB2YXIoLS1pZHMtYm9yZGVyLXdpZHRoLW5vbmUpO1xuICB9XG5cbiAgJjpob3Zlci5pcy1hY3Rpb25hYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1jb2xvci1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgfVxuXG4gICYuYWxpZ24tY2VudGVyIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWNvbnRlbnQsXG4gICYuYWxpZ24tY2VudGVyIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWZpbHRlci13cmFwcGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudCxcbiAgJi5hbGlnbi1yaWdodCAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbC1maWx0ZXItd3JhcHBlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlzLXNvcnRhYmxlIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy1sZyk7XG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDVweDtcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtZmlsdGVyLXdyYXBwZXIge1xuICAgIGlkcy1tZW51LWJ1dHRvbiB7XG4gICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2UtM3hzKTtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNpemluZyBDZWxsc1xuICAucmVzaXplciB7XG4gICAgY3Vyc29yOiB2YXIoLS1pZHMtY3Vyc29yLXJlc2l6ZSk7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogY2FsYygxMDAlIC0gNHB4KTtcbiAgICB0b3A6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICB3aWR0aDogNnB4O1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAvLyBSZW9yZGVyYWJsZSBDZWxsc1xuICAucmVvcmRlcmVyIHtcbiAgICBjdXJzb3I6IHZhcigtLWlkcy1jdXJzb3ItbW92ZSk7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGhlaWdodDogMzRweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldC1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS14cyk7XG4gICAgdG9wOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgd2lkdGg6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xuXG4gICAgaWRzLWljb24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNvbG9yLWljb24pO1xuICAgICAgaW5zZXQtaW5saW5lLXN0YXJ0OiBjYWxjKC0xICogdmFyKC0taWRzLXNwYWNlLXhzKSk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0b3A6IGNhbGMoNTAlIC0gOXB4KTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0IC5yZW9yZGVyZXIge1xuICAgIGluc2V0LWlubGluZS1lbmQ6IDVweDtcbiAgICBpbnNldC1pbmxpbmUtc3RhcnQ6IGluaXRpYWw7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQgLnJlc2l6ZXIge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGNhbGMoMTAwJSAtIDZweCk7IC8vIFByZXZlbnRzIHVubmVlZGVkIHNjcm9sbGJhclxuICB9XG5cbiAgJi5kcmFnZ2luZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXItZHJhZy1iYWNrZ3JvdW5kLWNvbG9yKSAhaW1wb3J0YW50OyAvLyB0aGlzIGltcG9ydGFudCBpcyBuZWVkZWQgZm9yIGRyYWcgc3R5bGVzIHRvIHdvcmtcbiAgICBib3JkZXItaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGVmdDogLTEwMDBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgd2lkdGg6IDExMHB4O1xuICB9XG5cbiAgJi5hY3RpdmUtZHJhZy1jb2x1bW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNvbG9yLWJhY2tncm91bmQtZGVmYXVsdC1wbGFjZWhvbGRlci1kcmFnZ2luZyk7XG5cbiAgICAuc29ydC1pbmRpY2F0b3Ige1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIC5yZW9yZGVyZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBSZW9yZGVyYWJsZSBDZWxsc1xuICAmLmZyb3plbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXItY29sb3ItYmFja2dyb3VuZC1kZWZhdWx0KTtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAvLyBDaGFuZ2UgYm9yZGVycyBmb3IgZnJvemVuIGNvbHVtbiBzY3JvbGxpbmdcbiAgJi5mcm96ZW4tbGFzdCB7XG4gICAgYm9yZGVyLWlubGluZS1lbmQ6IDFweCBzb2xpZCB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1jb2xvci1ib3JkZXIpO1xuXG4gICAgKyAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbCB7XG4gICAgICBib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOiB2YXIoLS1pZHMtYm9yZGVyLXdpZHRoLW5vbmUpO1xuICAgIH1cbiAgfVxuXG4gICYuZnJvemVuLWxlZnQge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgbGVmdDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAvLyBEeW5hbWljYWxseSBhZGRlZCB3aWR0aHNcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIDEwIHtcbiAgICAgICY6bnRoLW9mLXR5cGUoI3skaX0pIHtcbiAgICAgICAgbGVmdDogdmFyKC0taWRzLWRhdGEtZ3JpZC1mcm96ZW4tY29sdW1uLWxlZnQtd2lkdGgtI3skaX0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZnJvemVuLXJpZ2h0IHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHJpZ2h0OiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG5cbiAgICAvLyBXaWVyZCBjZW50ZXJpbmcgYnVnIChmcm96ZW4gcmlnaHQpXG4gICAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICB9XG4gIH1cbn1cblxuLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWxnLXBhZGRpbmcpO1xuICBmb250LXdlaWdodDogdmFyKC0taWRzLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcbiAgZm9udC1zaXplOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1jb2xvci10ZXh0KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIHNtYWxsIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0taWRzLWZvbnQtd2VpZ2h0LW5vcm1hbCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZvbnQtc2l6ZS1zbSk7XG4gIH1cbn1cblxuLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWljb24ge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1jb2xvci10ZXh0KTtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG59XG5cbi8vIEhlYWRlciBzb3J0IHN0eWxlc1xuLnNvcnQtaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiA0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiB2YXIoLS1pZHMtc3BhY2UtbGcpO1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiA1cHg7XG4gIHdpZHRoOiAxOHB4O1xufVxuXG4vLyBTb3J0IEhvdmVyIHN0YXRlc1xuLmlzLXNvcnRhYmxlIHtcbiAgLnNvcnQtaW5kaWNhdG9yIGlkcy1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXItY29sb3ItaWNvbi11bnNvcnRlZCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgdmFyKC0taWRzLW1vdGlvbi1lYXNlKSAwcztcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiB2YXIoLS1pZHMtc3BhY2UtMnhzKTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTEwcHg7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgLnNvcnQtaW5kaWNhdG9yIGlkcy1pY29uIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbi5oZWFkZXItZXhwYW5kZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtaGVpZ2h0OiAxOHB4O1xuICBjdXJzb3I6IHZhcigtLWlkcy1jdXJzb3ItcG9pbnRlcik7XG4gIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1leHBhbmRlci1jb2xvcik7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS0xMik7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWV4cGFuZGVyLWNvbG9yLWFjdGl2ZSk7XG4gIH1cbn1cblxuW2RhdGEtcm93LWhlaWdodD0neHhzJ10gLmhlYWRlci1leHBhbmRlciB7XG4gIHRvcDogdmFyKC0taWRzLXNwYWNlLTN4cyk7XG59XG5cbjpob3N0KFtzaG93LWhlYWRlci1leHBhbmRlcl0pIC5oZWFkZXItZXhwYW5kZXIsXG4uY29sdW1uLWhlYWRlci1leHBhbmRlciAuaGVhZGVyLWV4cGFuZGVyIHtcbiAgZGlzcGxheTogdW5zZXQ7XG59XG5cbi5oYXMtc2VsZWN0aW9uY2hlY2tib3ggLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbn1cblxuLmlzLXNvcnRhYmxlLFxuLmhhcy1oZWFkZXJpY29uIHtcbiAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgIHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICB9XG59XG5cbi8vIEFzY2VuZGluZyBzb3J0XG5bYXJpYS1zb3J0PSdhc2NlbmRpbmcnXSAuaXMtc29ydGFibGUgLnNvcnQtaW5kaWNhdG9yIGlkcy1pY29uIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNvbG9yLWljb24tc29ydGVkKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi8vIERlc2NlbmRpbmcgc29ydFxuW2FyaWEtc29ydD0nZGVzY2VuZGluZyddIC5pcy1zb3J0YWJsZSAuc29ydC1pbmRpY2F0b3IgaWRzLWljb24ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXItY29sb3ItaWNvbi1zb3J0ZWQpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy8gRHJhZyBhcnJvd3MgZm9yIHNvcnRpbmdcbi5pZHMtZGF0YS1ncmlkLXNvcnQtYXJyb3dzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAzNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGxlZnQ6IC01cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAwO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wOiA1cHggc29saWQgdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXItZHJhZy1hcnJvdy1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgICB0b3A6IC02cHg7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkIHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWRyYWctYXJyb3ctY29sb3ItYmFja2dyb3VuZCk7XG4gICAgYm90dG9tOiAtOXB4O1xuICB9XG59XG5cbi8vIFN0YW5kYWxvbmUgQ3NzXG50ci5pZHMtZGF0YS1ncmlkLWhlYWRlciB7XG4gIHBvc2l0aW9uOiBpbml0aWFsO1xufVxuXG50aC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cblxuLy8gTGlzdCBTdHlsZSBGZWF0dXJlXG4uaWRzLWRhdGEtZ3JpZC5pcy1saXN0LXN0eWxlIHtcbiAgLy8gQ2hhbmdlIEhlYWRlciBDb2xvclxuICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1saXN0LWhlYWRlci1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtbGlzdC1oZWFkZXItY29sb3ItYm9yZGVyKTtcbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICBjb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1saXN0LWhlYWRlci1jb2xvci10ZXh0KTtcbiAgfVxuXG4gIC8vIENoYW5nZSBTb3J0IEljb24gQ29sb3JzXG4gIC5pcy1zb3J0YWJsZSB7XG4gICAgaWRzLWljb24ge1xuICAgICAgY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLWNvbG9yLWljb24tdW5zb3J0ZWQpO1xuICAgIH1cbiAgfVxuXG4gIFthcmlhLXNvcnQ9J2Rlc2NlbmRpbmcnXSAuaXMtc29ydGFibGUgaWRzLWljb246bGFzdC1jaGlsZCxcbiAgW2FyaWEtc29ydD0nYXNjZW5kaW5nJ10gLmlzLXNvcnRhYmxlIGlkcy1pY29uOmZpcnN0LWNoaWxkICB7XG4gICAgY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtbGlzdC1oZWFkZXItY29sb3ItaWNvbi11bnNvcnRlZClcbiAgfVxuXG4gIC8vIENoYW5nZSBIZWFkZXIgQ2hlY2tib3hcbiAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveDpub3QoLmNoZWNrZWQpOm5vdCguaW5kZXRlcm1pbmF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWxpc3QtaGVhZGVyLWNoZWNrYm94LWNvbG9yLWJhY2tncm91bmQpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBVc2VkIGZvciBGcm96ZW4gQ29sdW1uc1xuLmlkcy1kYXRhLWdyaWQtYm9keSB7XG4gIG1pbi13aWR0aDogZml0LWNvbnRlbnQ7XG59XG5cbi8vIEFkanVzdCBmb3IgUm93IEhlaWdodHMgKGxhcmdlIGlzIGRlZmF1bHQpXG4uaWRzLWRhdGEtZ3JpZCB7XG4gICZbZGF0YS1yb3ctaGVpZ2h0PSdtZCddIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItdGV4dCB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWhlYWRlci1tZC1wYWRkaW5nKTtcbiAgICB9XG5cbiAgICAucmVvcmRlcmVyIGlkcy1pY29uIHtcbiAgICAgIGluc2V0LWlubGluZS1zdGFydDogLTExcHg7XG4gICAgfVxuXG4gICAgLnNvcnQtaW5kaWNhdG9yIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IC04cHg7XG4gICAgfVxuXG4gICAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwuYWxpZ24tcmlnaHQgLnJlb3JkZXJlciB7XG4gICAgICBpbnNldC1pbmxpbmUtZW5kOiAzcHg7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXJvdy1oZWlnaHQ9J3NtJ10ge1xuICAgIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLXNtLXBhZGRpbmcpO1xuICAgIH1cblxuICAgIC5yZW9yZGVyZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuc29ydC1pbmRpY2F0b3Ige1xuICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogLTRweDtcbiAgICB9XG4gIH1cblxuICAmW2RhdGEtcm93LWhlaWdodD0neHMnXSB7XG4gICAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgICAgcGFkZGluZzogdmFyKC0taWRzLWRhdGEtZ3JpZC1oZWFkZXIteHMtcGFkZGluZyk7XG4gICAgfVxuXG4gICAgLnJlb3JkZXJlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5zb3J0LWluZGljYXRvciB7XG4gICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAtMnB4O1xuICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IC0ycHg7XG4gICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IC0zcHg7XG4gICAgfVxuXG4gICAgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1pZHMtc3BhY2UtM3hzKTtcbiAgICB9XG5cbiAgICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbC5hbGlnbi1yaWdodCAuaXMtc29ydGFibGUgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmcteHMpO1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDVweDtcbiAgICB9XG4gIH1cblxuICAmW2RhdGEtcm93LWhlaWdodD0neHhzJ10ge1xuICAgIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVhZGVyLXh4cy1wYWRkaW5nKTtcbiAgICB9XG5cbiAgICAucmVvcmRlcmVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNvcnQtaW5kaWNhdG9yIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogLTFweDtcbiAgICAgIGhlaWdodDogMjJweDtcblxuICAgICAgPiBpZHMtaWNvbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHRvcDogM3B4O1xuICAgICAgfVxuXG4gICAgICBpZHMtaWNvbjpsYXN0LWNoaWxkIHtcbiAgICAgICAgdG9wOiAtMTFweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYWxpZ24tcmlnaHQgLnNvcnQtaW5kaWNhdG9yIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICB9XG5cbiAgICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItdGV4dCAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy10b3A6IDNweDtcbiAgICB9XG5cbiAgICAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbC5hbGlnbi1yaWdodCAuaXMtc29ydGFibGUgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiAzcHg7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogM3B4O1xuICAgIH1cblxuICAgIC8vIEZpbHRlciBBZGp1c3RtZW50c1xuICAgIGlkcy1pbnB1dCxcbiAgICBpZHMtdHJpZ2dlci1maWVsZCxcbiAgICBpZHMtZHJvcGRvd24ge1xuICAgICAgLS1pZHMtaW5wdXQtaGVpZ2h0LTEwOiAyNHB4O1xuICAgIH1cblxuICAgIGlkcy1kcm9wZG93biB7XG4gICAgICAtLWlkcy1pbnB1dC1mb250LXNpemUtc206IHZhcigtLWlkcy1pbnB1dC1mb250LXNpemUteHMpO1xuICAgIH1cblxuICAgIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWZpbHRlci13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiBjYWxjKHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14eHMpICsgMnB4KTtcbiAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogY2FsYyh2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmcteHhzKSArIDJweCk7XG4gICAgICBwYWRkaW5nLWJsb2NrLWVuZDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXh4cyAtIDFweCk7XG4gICAgfVxuICB9XG59XG5cbi8vIEhhbmRsZSBSVExcbjpob3N0KFtkaXI9J3J0bCddKSB7XG4gIC8vIE5lZ2F0ZSByaWdodCBhbGlnbm1lbnRcbiAgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwge1xuICAgICYuYWxpZ24tcmlnaHQgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudCB7XG4gICAgICBkaXJlY3Rpb246IGx0cjtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWlubGluZS1lbmQtd2lkdGg6IHZhcigtLWlkcy1ib3JkZXItd2lkdGgtbm9uZSk7XG4gICAgfVxuXG4gICAgJi5mcm96ZW4tbGVmdCB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgcmlnaHQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcblxuICAgICAgLy8gRHluYW1pY2FsbHkgYWRkZWQgd2lkdGhzXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIDEwIHtcbiAgICAgICAgJjpudGgtb2YtdHlwZSgjeyRpfSkge1xuICAgICAgICAgIHJpZ2h0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZyb3plbi1jb2x1bW4tbGVmdC13aWR0aC0jeyRpfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIElkcyBEYXRhIEdyaWQgQ29tcG9uZW50IC0gUm93cyAqL1xuLmlkcy1kYXRhLWdyaWQtcm93IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNvbHVtbi13aWR0aHMpOyAvLyBGaWxsZWQgaW4gZHluYW1pY2FsbHlcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi5zZWxlY3RlZDpub3QoLm1peGVkKSAuaWRzLWRhdGEtZ3JpZC1jZWxsLFxuICAmLmFjdGl2YXRlZCAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1iYWNrZ3JvdW5kLXNlbGVjdGVkKTtcbiAgfVxuXG4gICZbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbcGFydCo9J3Jvdy0nXSB7XG4gICAgJjpub3QoLnNlbGVjdGVkKSB7XG4gICAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItd2lkdGg6IDVweDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBtYXJnaW46IDJweDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZbcGFydD0ncm93LW5ldyddIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1iYWNrZ3JvdW5kLW5ldyk7XG5cbiAgICAmOm5vdCguc2VsZWN0ZWQpIHtcbiAgICAgIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1ib3JkZXItbmV3KSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1ib3JkZXItbmV3KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWNvbG9yLWJhY2tncm91bmQtbmV3KTtcbiAgICAgICAgY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtY2VsbC1jb2xvci10ZXh0LXN0YXRlcy1kZWZhdWx0KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW3BhcnQ9J3Jvdy1yZW1vdmVkJ10ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWNvbG9yLWJhY2tncm91bmQtcmVtb3ZlZCk7XG5cbiAgICAmOm5vdCguc2VsZWN0ZWQpIHtcbiAgICAgIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYm9yZGVyLXJlbW92ZWQpIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWNvbG9yLWJvcmRlci1yZW1vdmVkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWNvbG9yLWJhY2tncm91bmQtcmVtb3ZlZCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItdGV4dC1zdGF0ZXMtZGVmYXVsdCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJltwYXJ0PSdyb3ctZXJyb3InXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYmFja2dyb3VuZC1lcnJvcik7XG5cbiAgICAmOm5vdCguc2VsZWN0ZWQpIHtcbiAgICAgIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYm9yZGVyLWVycm9yKSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1ib3JkZXItZXJyb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYmFja2dyb3VuZC1lcnJvcik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItdGV4dC1zdGF0ZXMtZGVmYXVsdCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEdyb3VwZWQgUm93c1xuLmlkcy1kYXRhLWdyaWQtcm93LmlzLWdyb3VwLXJvdyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWdyb3VwZWQtY29sb3ItYmFja2dyb3VuZCk7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcblxuXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1ncm91cGVkLWNvbG9yLXRleHQsIHJlZCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWdyb3VwZWQtZm9udC13ZWlnaHQsIDYwMCk7XG4gICAgYm9yZGVyLWlubGluZS1zdGFydDogMDtcbiAgfVxuXG4gIGlkcy1idXR0b24ge1xuICAgIC0taWRzLWJ1dHRvbi10ZXJ0aWFyeS1jb2xvci1iYWNrZ3JvdW5kLWhvdmVyOiB0cmFuc3BhcmVudDtcbiAgICAtLWlkcy1idXR0b24tdGVydGlhcnktY29sb3ItYm9yZGVyLWhvdmVyOiB0cmFuc3BhcmVudDtcblxuICAgIHBhZGRpbmc6IDAgMnB4O1xuICB9XG59XG5cbi8vIFJvdyBIZWlnaHQgRmVhdHVyZSB3aXRoIEZvcm1hdHRlcnMgc3BhY2luZ1xuLmlkcy1kYXRhLWdyaWQge1xuICAvLyBMYXJnZSBieSBkZWZhdWx0XG4gICZbZGF0YS1yb3ctaGVpZ2h0PSdtZCddIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAgIGhlaWdodDogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctaGVpZ2h0LW1kKTtcblxuICAgICAgLnRleHQtZWxsaXBzaXMsXG4gICAgICBpZHMtYmFkZ2Uge1xuICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLW1kKTtcbiAgICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctbWQpO1xuICAgICAgfVxuXG4gICAgICBpZHMtaHlwZXJsaW5rIHtcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctbWQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pZHMtZGF0YS1ncmlkLWNlbGw6bm90KC5hbGlnbi1jZW50ZXIpIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWNvbnRlbnQ6bm90KC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIpIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctbWQpO1xuICAgICAgdHJhbnNpdGlvbjogcGFkZGluZyB2YXIoLS1pZHMtbW90aW9uLWR1cmF0aW9uKSB2YXIoLS1pZHMtbW90aW9uLWVhc2UpO1xuICAgIH1cblxuICAgIC5pZHMtZGF0YS1ncmlkLWNlbGw6bm90KC5hbGlnbi1jZW50ZXIpIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsOmhvdmVyIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWNvbnRlbnQ6bm90KC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIpLmlzLXJlb3JkZXJhYmxlIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctbWQpO1xuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1yb3ctaGVpZ2h0PSdzbSddIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAgIGhlaWdodDogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctaGVpZ2h0LXNtKTtcblxuICAgICAgLnRleHQtZWxsaXBzaXMsXG4gICAgICBpZHMtYmFkZ2Uge1xuICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXNtKTtcbiAgICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctc20pO1xuICAgICAgfVxuXG4gICAgICBpZHMtaHlwZXJsaW5rIHtcbiAgICAgICAgbWFyZ2luOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctc20pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pZHMtZGF0YS1ncmlkLWNlbGw6bm90KC5hbGlnbi1jZW50ZXIpIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWNvbnRlbnQ6bm90KC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIpIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctc20pO1xuICAgICAgdHJhbnNpdGlvbjogcGFkZGluZyB2YXIoLS1pZHMtbW90aW9uLWR1cmF0aW9uKSB2YXIoLS1pZHMtbW90aW9uLWVhc2UpO1xuICAgIH1cblxuICAgIC5pZHMtZGF0YS1ncmlkLWNlbGw6bm90KC5hbGlnbi1jZW50ZXIpIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsOmhvdmVyIC5pZHMtZGF0YS1ncmlkLWhlYWRlci1jZWxsLWNvbnRlbnQ6bm90KC52ZXJ0aWNhbC1hbGlnbi1jZW50ZXIpLmlzLXJlb3JkZXJhYmxlIC5pZHMtZGF0YS1ncmlkLWhlYWRlci10ZXh0IHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctc20pO1xuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1yb3ctaGVpZ2h0PSd4cyddIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAgIGhlaWdodDogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctaGVpZ2h0LXhzKTtcbiAgICAgIGZvbnQtc2l6ZTogdmFyKC0taWRzLWRhdGEtZ3JpZC1mb250LXNpemUtc20pO1xuXG4gICAgICAudGV4dC1lbGxpcHNpcyxcbiAgICAgIGlkcy1iYWRnZSB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmcteHMpO1xuICAgICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14cyk7XG4gICAgICB9XG5cbiAgICAgIGlkcy1oeXBlcmxpbmsge1xuICAgICAgICBtYXJnaW46IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmlkcy1kYXRhLWdyaWQtY2VsbDpub3QoLmFsaWduLWNlbnRlcikgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudDpub3QoLnZlcnRpY2FsLWFsaWduLWNlbnRlcikgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14cyk7XG4gICAgICB0cmFuc2l0aW9uOiBwYWRkaW5nIHZhcigtLWlkcy1tb3Rpb24tZHVyYXRpb24pIHZhcigtLWlkcy1tb3Rpb24tZWFzZSk7XG4gICAgfVxuXG4gICAgLmlkcy1kYXRhLWdyaWQtY2VsbDpub3QoLmFsaWduLWNlbnRlcikgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGw6aG92ZXIgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudDpub3QoLnZlcnRpY2FsLWFsaWduLWNlbnRlcikuaXMtcmVvcmRlcmFibGUgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14cyk7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXJvdy1oZWlnaHQ9J3h4cyddIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAgIGhlaWdodDogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctaGVpZ2h0LXh4cyk7XG4gICAgICBmb250LXNpemU6IHZhcigtLWlkcy1kYXRhLWdyaWQtZm9udC1zaXplLXNtKTtcblxuICAgICAgLnRleHQtZWxsaXBzaXMsXG4gICAgICBpZHMtYmFkZ2Uge1xuICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXh4cyk7XG4gICAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXh4cyk7XG4gICAgICB9XG5cbiAgICAgIGlkcy1oeXBlcmxpbmsge1xuICAgICAgICBtYXJnaW46IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14eHMpO1xuICAgICAgfVxuXG4gICAgICAvLyBPbiAneHhzJyByb3cgaGVpZ2h0LCBpbmxpbmUtZWRpdGFibGUgY2VsbHMgaGF2ZSBhIHNsaWdodGx5IHdpZGVyXG4gICAgICAvLyBwYWRkaW5nIGFwcGVhcmFuY2UgdG8gYWNjb21tb2RhdGUgdGhlIGlubGluZSBkaXNwbGF5XG4gICAgICAmLmlzLWlubGluZSB7XG4gICAgICAgIC50ZXh0LWVsbGlwc2lzIHtcbiAgICAgICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXhzKTtcbiAgICAgICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14cyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsOm5vdCguYWxpZ24tY2VudGVyKSAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItY2VsbC1jb250ZW50Om5vdCgudmVydGljYWwtYWxpZ24tY2VudGVyKSAuaWRzLWRhdGEtZ3JpZC1oZWFkZXItdGV4dCB7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXh4cyk7XG4gICAgICB0cmFuc2l0aW9uOiBwYWRkaW5nIHZhcigtLWlkcy1tb3Rpb24tZHVyYXRpb24pIHZhcigtLWlkcy1tb3Rpb24tZWFzZSk7XG4gICAgfVxuXG4gICAgLmlkcy1kYXRhLWdyaWQtY2VsbDpub3QoLmFsaWduLWNlbnRlcikgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGw6aG92ZXIgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLWNlbGwtY29udGVudDpub3QoLnZlcnRpY2FsLWFsaWduLWNlbnRlcikuaXMtcmVvcmRlcmFibGUgLmlkcy1kYXRhLWdyaWQtaGVhZGVyLXRleHQge1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14eHMpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSb3cgQWx0ZXJuYXRlIFJvdyBTZXR0aW5nIEZlYXR1cmVcbi5pZHMtZGF0YS1ncmlkLmFsdC1yb3ctc2hhZGluZyBpZHMtZGF0YS1ncmlkLXJvdzpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1hbHRlcm5hdGluZy1jb2xvci1iYWNrZ3JvdW5kKTtcbn1cblxuLy8gRXhwYW5kYWJsZSBSb3dcbi5pZHMtZGF0YS1ncmlkLWV4cGFuZGFibGUtcm93IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWlkcy1kYXRhLWdyaWQtY2VsbC1jb2xvci1ib3JkZXIpO1xuICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICBwYWRkaW5nOiB2YXIoLS1pZHMtc3BhY2UteHMpO1xufVxuXG4vLyBTdGFuZGFsb25lIENzc1xudHIuaWRzLWRhdGEtZ3JpZC1yb3cge1xuICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gIGhlaWdodDogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctaGVpZ2h0LWxnKTtcbn1cblxuLy8gUm93IE5hdmlnYXRpb24gU3R5bGVzXG4uaWRzLWRhdGEtZ3JpZC5yb3ctbmF2aWdhdGlvbiAuaWRzLWRhdGEtZ3JpZC1yb3cge1xuICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LXNoYWRvdy1mb2N1cyk7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGw6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIC8vIEZpeGVzIGFuIGlzc3VlIHdoZXJlIGh5cGVybGlua3MgaW4gcm93LW5hdmlnYXRpb24gbW9kZSBjYW5ub3QgYmUgZGlyZWN0bHkgY2xpY2tlZFxuICBpZHMtaHlwZXJsaW5rLFxuICAuaWRzLWh5cGVybGluayB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDFweCk7XG4gIH1cbn1cblxuOmhvc3QoW2Rpcj0ncnRsJ10pIHtcbiAgLmlkcy1kYXRhLWdyaWQtcm93IHtcbiAgICAmW3BhcnQ9J3Jvdy1uZXcnXSB7XG4gICAgICAmOm5vdCguc2VsZWN0ZWQpIHtcbiAgICAgICAgLmlkcy1kYXRhLWdyaWQtY2VsbCB7XG4gICAgICAgICAgJjpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1ib3JkZXItbmV3KSB2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1jb2xvci1ib3JkZXItbmV3KSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW3BhcnQ9J3Jvdy1yZW1vdmVkJ10ge1xuICAgICAgJjpub3QoLnNlbGVjdGVkKSB7XG4gICAgICAgIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgICAgICAgICY6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYm9yZGVyLXJlbW92ZWQpIHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWNvbG9yLWJvcmRlci1yZW1vdmVkKSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW3BhcnQ9J3Jvdy1lcnJvciddIHtcbiAgICAgICY6bm90KC5zZWxlY3RlZCkge1xuICAgICAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAgICAgICAmOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWNvbG9yLWJvcmRlci1lcnJvcikgdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYm9yZGVyLWVycm9yKSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIElkcyBEYXRhIEdyaWQgQ29tcG9uZW50IC0gQ2VsbHMgKi9cbmlkcy1kYXRhLWdyaWQtY2VsbFtjb2x1bW4tb25zY3JlZW5dIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuaWRzLWRhdGEtZ3JpZC1jZWxsW2NvbHVtbi1vZmZzY3JlZW5dIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuaWRzLWRhdGEtZ3JpZC1jZWxsW2NvbHVtbi1vZmZzY3JlZW4tbGVmdF0ge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG5pZHMtZGF0YS1ncmlkLWNlbGxbY29sdW1uLW9mZnNjcmVlbi1yaWdodF0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5pZHMtZGF0YS1ncmlkLXJvdzpub3QoLnNlbGVjdGVkKTpub3QoW3BhcnQqPSdyb3ctJ10pIHtcbiAgLmlkcy1kYXRhLWdyaWQtY2VsbCB7XG4gICAgJi5mcm96ZW4tbGVmdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNvbG9yLWJhY2tncm91bmQpO1xuICAgIH1cblxuICAgICYuZnJvemVuLXJpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtY29sb3ItYmFja2dyb3VuZCk7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgLmlkcy1kYXRhLWdyaWQtY2VsbC5mcm96ZW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYmFja2dyb3VuZC1ob3Zlcik7XG4gICAgfVxuICB9XG59XG5cbi5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAvLyBCb3JkZXIgYW5kIEJhY2tncm91bmQgYW5kIFNpemluZ1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItaW5saW5lLXN0YXJ0OiAxcHggc29saWQ7XG4gIGJvcmRlci1ibG9jay1lbmQ6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItYm9yZGVyKTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItdGV4dC1kZWZhdWx0KTtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gSGlkZSBmaXJzdC9sYXN0IGJvcmRlclxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOiB2YXIoLS1pZHMtYm9yZGVyLXdpZHRoLW5vbmUpO1xuICB9XG5cbiAgLy8gUmVzZXQgYmFkZ2UgbWFyZ2luIHRvIGNlbnRlciBpdCB2ZXJ0aWNhbGx5XG4gIGlkcy1iYWRnZTo6cGFydChiYWRnZSkge1xuICAgIG1hcmdpbi1ibG9jay1lbmQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICB9XG5cbiAgaWRzLWJhZGdlIHtcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLXNtKTtcbiAgICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS1zbSk7XG4gIH1cblxuICAvLyBTbyB0aGUgY29sb3IgaXMgdGhlIHNhbWUgYXMgdGhlIGVkaXRvclxuICBpZHMtaWNvbltpY29uPSdkcm9wZG93biddIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLXRyaWdnZXItZmllbGQtaWNvbi1jb2xvcilcbiAgfVxuXG4gIGlkcy1oeXBlcmxpbmsge1xuICAgIG1hcmdpbjogdmFyKC0taWRzLXNwYWNlLXNtKTtcbiAgICB3aWR0aDogLW1vei1hdmFpbGFibGU7XG4gICAgd2lkdGg6IC13ZWJraXQtZmlsbC1hdmFpbGFibGU7XG4gICAgd2lkdGg6IGZpbGwtYXZhaWxhYmxlO1xuICB9XG5cbiAgLnRleHQtZWxsaXBzaXMge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2Utc20pO1xuICAgIHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLXNtKTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgfVxuXG4gIC8vIFRleHQgQWxpZ25tZW50XG4gIGlkcy1pY29uIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgKyBzcGFuIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1pZHMtc3BhY2UtMnhzKTtcbiAgICB9XG4gIH1cblxuICAvLyBUZXh0IEFsaWdubWVudFxuICAmLmFsaWduLWNlbnRlciB7XG4gICAgJiA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBtYXJnaW46IHZhcigtLWlkcy1zcGFjZS1ub25lKSBhdXRvO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQge1xuICAgICYgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGF1dG87XG4gICAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgIH1cblxuICAgIGlkcy1pbnB1dCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBSZWFkb25seSBhbmQgZGlzYWJsZWQgQ2VsbHNcbiAgJi5pcy1yZWFkb25seTpub3QoLmV4Y2x1ZGUtcmVhZG9ubHktc3R5bGUpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItYmFja2dyb3VuZC1yZWFkb25seSk7XG5cbiAgICAuZWRpdG9yLWNlbGwtaWNvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYuaXMtZGlzYWJsZWQge1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItdGV4dC1kaXNhYmxlZCk7XG5cbiAgICAuZWRpdG9yLWNlbGwtaWNvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYuaXMtdXBwZXJjYXNlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5cbiAgLy8gRm9jdXMgU3RhdGVcbiAgJjpmb2N1cyxcbiAgJi5pcy1lZGl0aW5nOm5vdCguaXMtaW5saW5lKTpmb2N1cy13aXRoaW4sXG4gICYuaXMtZm9jdXNlZCB7XG4gICAgJjpub3QoLnNlbGVjdGVkKTpub3QoW3RhYmluZGV4PSctMSddKSB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1pZHMtc2hhZG93LTIwKTtcbiAgICAgIG91dGxpbmU6IDFweCBzb2xpZCB2YXIoLS1pZHMtY29sb3ItYm9yZGVyLWZvY3VzKTtcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xuICAgIH1cbiAgfVxuXG4gICYuaXMtZWRpdGFibGUge1xuICAgICYuaXMtcmVhZG9ubHk6bm90KC5leGNsdWRlLXJlYWRvbmx5LXN0eWxlKSB7XG4gICAgICAudGV4dC1lbGxpcHNpczo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItYmFja2dyb3VuZC1yZWFkb25seSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1pbmxpbmUge1xuICAgICAgJi5mb3JtYXR0ZXItdHJlZSB7XG4gICAgICAgIC5pZHMtZGF0YS1ncmlkLXRyZWUtY29udGFpbmVyIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuaWRzLWRhdGEtZ3JpZC10cmVlLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQtZWxsaXBzaXMge1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAudGV4dC1lbGxpcHNpczo6YWZ0ZXIge1xuICAgICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAtOHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlkcy1pY29uLmVkaXRvci1jZWxsLWljb24ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IDE1cHg7XG5cbiAgICAgICAgJltpY29uPSdkcm9wZG93biddIHtcbiAgICAgICAgICBtYXJnaW4taW5saW5lLWVuZDogMTJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtbG9va3VwLFxuICAgICYuaXMtZGF0ZXBpY2tlcixcbiAgICAmLmlzLXRpbWVwaWNrZXIge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAudGV4dC1lbGxpcHNpcyB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtZGF0ZXBpY2tlcixcbiAgICAmLmlzLXRpbWVwaWNrZXIge1xuICAgICAgaWRzLXRyaWdnZXItZmllbGQge1xuICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAtMXB4O1xuICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDFweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWxvb2t1cCB7XG4gICAgICBpZHMtbG9va3VwIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgaWRzLWxvb2t1cDo6cGFydChjb250YWluZXIpLFxuICAgICAgaWRzLWxvb2t1cDo6cGFydChmaWVsZC1jb250YWluZXIpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWNvbG9yLXRyYW5zcGFyZW50KTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmVkaXRvci1jZWxsLWljb24ge1xuICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IDEwcHg7XG4gICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS0zeHMpO1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgJi5zaG93LWNlbGwtaWNvbi1hbHdheXMge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZHMtdHJpZ2dlci1idXR0b246OnBhcnQoYnV0dG9uKSB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvLyBpcy1ib3JkZXJsZXNzOmhvdmVyXG4gICAgJjpub3QoLmlzLWlubGluZSk6bm90KC5pcy1pbnZhbGlkKTpmb2N1cyxcbiAgICAmOm5vdCguaXMtaW5saW5lKTpub3QoLmlzLWludmFsaWQpOmhvdmVyIHtcbiAgICAgIC5lZGl0b3ItY2VsbC1pY29uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIH1cblxuICAgICAgaWRzLWFsZXJ0IHtcbiAgICAgICAgbWFyZ2luLWlubGluZTogY2FsYygxMDAlIC0gNDhweCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1lZGl0YWJsZS5pcy1pbnZhbGlkIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgaWRzLWFsZXJ0IHtcbiAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS14cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5pcy1lZGl0aW5nIGlkcy1jaGVja2JveCB7XG4gICAgLS1pZHMtY2hlY2tib3gtbWFyZ2luLWlubGluZS1lbmQ6IDA7XG4gICAgLS1pZHMtY2hlY2tib3gtc2hhZG93LWZvY3VzOiAwIDAgMCAycHggdHJhbnNwYXJlbnQsIDAgMCAwIDNweCB0cmFuc3BhcmVudDtcbiAgICAtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItZm9jdXM6IHZhcigtLWlkcy1jaGVja2JveC1ib3JkZXIpO1xuXG4gICAgJltjaGVja2VkXSB7XG4gICAgICAtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItZm9jdXM6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1iYWNrZ3JvdW5kLXNlbGVjdGVkKTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2cHg7XG4gICAgdG9wOiAzcHg7XG4gIH1cblxuICAvLyBFZGl0aW5nIHdpdGggcG9wdXBzXG4gICYuaXMtZWRpdGluZy5pcy1sb29rdXAsXG4gICYuaXMtZWRpdGluZy5pcy1kYXRlcGlja2VyLFxuICAmLmlzLWVkaXRpbmcuaXMtdGltZXBpY2tlciB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAmLmlzLWVkaXRpbmcuaXMtaW5saW5lIGlkcy1pbnB1dCB7XG4gICAgei1pbmRleDogOTk7XG4gIH1cblxuICAvLyBEcm9wZG93biBFZGl0YWJsZSBDZWxsXG4gICYuaXMtZWRpdGFibGUuaXMtZHJvcGRvd24ge1xuICAgIC5kcm9wZG93bi1jZWxsLXZhbHVlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYuaXMtZWRpdGluZzpub3QoLmlzLWlubGluZSkge1xuICAgICAgYm9yZGVyLWlubGluZS1zdGFydC13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEcm9wZG93biBFZGl0aW5nIElubGluZVxuICAmLmlzLWVkaXRpbmcuaXMtZHJvcGRvd24uaXMtaW5saW5lIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgaWRzLWRyb3Bkb3duIHtcbiAgICAgIHBhZGRpbmc6IDAgdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gICAgfVxuICB9XG5cbiAgLy8gVGV4dCBFZGl0YWJsZSBDZWxsXG4gICYuZm9ybWF0dGVyLXRleHQge1xuICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gIH1cblxuICAvLyBFZGl0aW5nIFVwcGVyY2FzZVxuICAmLmlzLWVkaXRpbmcuaXMtdXBwZXJjYXNlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgaWRzLWxpc3QtYm94LW9wdGlvbixcbiAgICBpZHMtZHJvcGRvd246OnBhcnQodHJpZ2dlcmZpZWxkLWlucHV0KSxcbiAgICBpZHMtaW5wdXQ6OnBhcnQoaW5wdXQpIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICB9XG5cbiAgLy8gRnJvemVuIENlbGxzXG4gICYuZnJvemVuIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHotaW5kZXg6IDE7IC8vIHotaW5kZXggaGlnaGVyIHRoYW4gMiB3aWxsIGJyZWFrIGlkcy1sb2FkaW5nLWluZGljYXRvcidzIG92ZXJsYXlcbiAgfVxuXG4gIC8vIENoYW5nZSBib3JkZXJzIGZvciBzY3JvbGxpbmdcbiAgJi5mcm96ZW4tbGFzdCB7XG4gICAgYm9yZGVyLWlubGluZS1lbmQ6IDFweCBzb2xpZCB2YXIoLS1pZHMtZGF0YS1ncmlkLWNlbGwtY29sb3ItYm9yZGVyKTtcblxuICAgICsgLmlkcy1kYXRhLWdyaWQtY2VsbCB7XG4gICAgICBib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOiB2YXIoLS1pZHMtYm9yZGVyLXdpZHRoLW5vbmUpO1xuICAgIH1cbiAgfVxuXG4gICYuZnJvemVuLWxlZnQge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgbGVmdDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuXG4gICAgLy8gRHluYW1pY2FsbHkgYWRkZWQgd2lkdGhzXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAxMCB7XG4gICAgICAmOm50aC1vZi10eXBlKCN7JGl9KSB7XG4gICAgICAgIGxlZnQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtZnJvemVuLWNvbHVtbi1sZWZ0LXdpZHRoLSN7JGl9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmZyb3plbi1yaWdodCB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICByaWdodDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICB9XG5cbiAgJi5pcy1kaXJ0eTo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBpZHMtZGF0YS1ncmlkLWNlbGwtZGlydHktdHJhY2tlci1pY29uO1xuICB9XG5cbiAgJi5pcy1kaXJ0eS5pcy1pbmxpbmUge1xuICAgICYuZm9ybWF0dGVyLXRyZWUge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmlkcy1kYXRhLWdyaWQtdHJlZS1maWVsZC1jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBAaW5jbHVkZSBpZHMtZGF0YS1ncmlkLWNlbGwtZGlydHktdHJhY2tlci1pY29uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1kcm9wZG93bjo6YmVmb3JlIHtcbiAgICAgIG1hcmdpbi1pbmxpbmU6IDZweDtcbiAgICAgIGluc2V0LWJsb2NrLXN0YXJ0OiA2cHg7XG4gICAgfVxuXG4gICAgaWRzLWlucHV0IHtcbiAgICAgICY6OnBhcnQoZGlydHktdHJhY2tlci1pY29uKSB7XG4gICAgICAgIC0taWRzLWljb24taGVpZ2h0LWRlZmF1bHQ6IDEycHggIWltcG9ydGFudDtcbiAgICAgICAgLS1pZHMtaWNvbi13aWR0aC1kZWZhdWx0OiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5pcy1kaXJ0eS5pcy1kcm9wZG93bi5pcy1lZGl0aW5nOm5vdCguaXMtaW5saW5lKTo6YmVmb3JlIHtcbiAgICBpbnNldC1ibG9jay1zdGFydDogM3B4O1xuICAgIG1hcmdpbi1pbmxpbmU6IDNweDtcbiAgfVxuXG4gICYuaXMtaW52YWxpZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1jZWxsLWNvbG9yLWJhY2tncm91bmQtZXJyb3IpO1xuICB9XG5cbiAgaWRzLWFsZXJ0IHtcbiAgICBtYXJnaW4tdG9wOiAzcHg7XG4gIH1cblxuICBpZHMtdGFnIHtcbiAgICAtLWlkcy10YWctbWFyZ2luLWlubGluZS1lbmQ6IDA7XG4gIH1cblxuICBpZHMtcHJvZ3Jlc3MtYmFyIHtcbiAgICBtYXJnaW46IHZhcigtLWlkcy1wcm9ncmVzcy1iYXItZ3JpZC1jZWxsLW1hcmdpbik7XG4gIH1cblxuICAmLmlzLWVkaXRpbmcge1xuICAgICRpY29uLXN0eWxlczogKFxuICAgICAgJ3RpbWVwaWNrZXInOiAnY2xvY2snLFxuICAgICAgJ2RhdGVwaWNrZXInOiAnY2FsZW5kYXInXG4gICAgKTtcblxuICAgICRmaWVsZC1oZWlnaHRzOiAoXG4gICAgICAneHMnOiAoLTVweCwgMXB4KSxcbiAgICAgICdzbSc6ICh2YXIoLS1pZHMtc3BhY2UtM3hzKSwgMXB4KVxuICAgICk7XG5cbiAgICBAZWFjaCAkY2xhc3MsICRpY29uIGluICRpY29uLXN0eWxlcyB7XG4gICAgICAmLmlzLSN7JGNsYXNzfSB7XG4gICAgICAgIEBlYWNoICRoZWlnaHQsICR2YWx1ZXMgaW4gJGZpZWxkLWhlaWdodHMge1xuICAgICAgICAgIC5pZHMtdHJpZ2dlci1maWVsZC1zbG90LXRyaWdnZXItZW5kW2ljb249JyN7JGljb259J11bZmllbGQtaGVpZ2h0PScjeyRoZWlnaHR9J10ge1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IG50aCgkdmFsdWVzLCAxKTtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogbnRoKCR2YWx1ZXMsIDIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJvdyBoZWlnaHQ6ICd4eHMnXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbltkYXRhLXJvdy1oZWlnaHQ9J3h4cyddIHtcbiAgLmZvcm1hdHRlci1wcm9ncmVzcyB7XG4gICAgaWRzLXByb2dyZXNzLWJhciB7XG4gICAgICBtYXJnaW46IHZhcigtLWlkcy1kYXRhLWdyaWQtcGFkZGluZy14eHMpO1xuICAgIH1cbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwuaXMtZGlydHk6OmJlZm9yZSB7XG4gICAgYm9yZGVyLXdpZHRoOiA0cHg7XG4gICAgaW5zZXQtYmxvY2stc3RhcnQ6IDFweDtcbiAgICBpbnNldC1pbmxpbmUtc3RhcnQ6IC0xcHg7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmlzLWRpcnR5LmlzLWlubGluZTo6YmVmb3JlIHtcbiAgICBtYXJnaW4taW5saW5lOiAzcHg7XG4gICAgdG9wOiAzcHg7XG4gIH1cblxuICBpZHMtYnV0dG9uIHtcbiAgICAtLWlkcy1idXR0b24taWNvbi1wYWRkaW5nOiB2YXIoLS1pZHMtc3BhY2UtM3hzKTtcbiAgfVxuXG4gIGlkcy1iYWRnZSB7XG4gICAgLS1pZHMtYmFkZ2UtZm9udC1saW5lLWhlaWdodDogY2FsYyh2YXIoLS1pZHMtZGF0YS1ncmlkLXJvdy1oZWlnaHQteHhzKSAtIDhweCk7XG4gIH1cblxuICBpZHMtdGFnIHtcbiAgICAtLWlkcy10YWctaGVpZ2h0OiBjYWxjKHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWhlaWdodC14eHMpIC0gNnB4KTtcbiAgfVxuXG4gIGlkcy1pbnB1dCxcbiAgaWRzLXRyaWdnZXItZmllbGQge1xuICAgIC0taWRzLXNwYWNlLTN4czogMDtcbiAgICAtLWlkcy1pbnB1dC1mb250LXNpemUtc206IHZhcigtLWlkcy1kYXRhLWdyaWQtZm9udC1zaXplLXNtKTtcbiAgfVxuXG4gIGlkcy1pbnB1dCB7XG4gICAgJjo6cGFydChkaXJ0eS10cmFja2VyLWljb24pIHtcbiAgICAgIC0taWRzLWljb24taGVpZ2h0LWRlZmF1bHQ6IDEwcHggIWltcG9ydGFudDtcbiAgICAgIC0taWRzLWljb24td2lkdGgtZGVmYXVsdDogMTBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICY6OnBhcnQoaW5wdXQpIHtcbiAgICAgIGhlaWdodDogY2FsYyh2YXIoLS1pZHMtaW5wdXQtaGVpZ2h0LTEwKSAtIDRweCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQWRqdXN0IG5vbiBpbmxpbmUgZWRpdG9yXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwuaXMtZWRpdGFibGUgLmVkaXRvci1jZWxsLWljb24ge1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtc3BhY2UtM3hzKTtcbiAgfVxuXG4gIC8vIEFkanVzdCBkcm9wZG93biBlZGl0b3JcbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5pcy1lZGl0YWJsZS5pcy1pbmxpbmUgaWRzLWljb24uZWRpdG9yLWNlbGwtaWNvbiB7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5pcy1lZGl0YWJsZS5pcy1pbmxpbmUge1xuICAgIC0taWRzLWJ1dHRvbi10ZXJ0aWFyeS1jb2xvci1iYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1pZHMtY29sb3ItdHJhbnNwYXJlbnQpO1xuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5pcy1lZGl0aW5nLmlzLWRyb3Bkb3duLmlzLWlubGluZSBpZHMtZHJvcGRvd24ge1xuICAgIHBhZGRpbmc6IHZhcigtLWlkcy1zcGFjZS1ub25lKSB2YXIoLS1pZHMtc3BhY2UtNHhzKTtcblxuICAgIC0taWRzLWlucHV0LWZvbnQtc2l6ZS1zbTogdmFyKC0taWRzLWRhdGEtZ3JpZC1mb250LXNpemUtc20pO1xuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2VsbCB7XG4gICAgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3gtY29udGFpbmVyOm5vdCguaXMtc2VsZWN0aW9uLWNoZWNrYm94KSB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXh4cyk7XG4gICAgfVxuXG4gICAgJi5pcy1lZGl0YWJsZS5pcy1lZGl0YWJsZS5pcy1pbnZhbGlkIGlkcy1hbGVydCB7XG4gICAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLTR4cyk7XG4gICAgfVxuICB9XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUm93IGhlaWdodDogJ3hzJ1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbltkYXRhLXJvdy1oZWlnaHQ9J3hzJ10ge1xuICAuZm9ybWF0dGVyLXByb2dyZXNzIHtcbiAgICBpZHMtcHJvZ3Jlc3MtYmFyIHtcbiAgICAgIG1hcmdpbjogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXhzKTtcbiAgICB9XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmlzLWRpcnR5OjpiZWZvcmUge1xuICAgIGJvcmRlci13aWR0aDogNHB4O1xuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5pcy1kaXJ0eS5pcy1pbmxpbmU6OmJlZm9yZSB7XG4gICAgbWFyZ2luLWlubGluZTogM3B4O1xuICAgIHRvcDogM3B4O1xuICB9XG5cbiAgaWRzLWJ1dHRvbiB7XG4gICAgLS1pZHMtYnV0dG9uLWljb24tcGFkZGluZzogM3B4O1xuICB9XG5cbiAgaWRzLWJhZGdlIHtcbiAgICAtLWlkcy1iYWRnZS1mb250LWxpbmUtaGVpZ2h0OiBjYWxjKHZhcigtLWlkcy1kYXRhLWdyaWQtcm93LWhlaWdodC14cykgLSAxMnB4KTtcbiAgfVxuXG4gIGlkcy10YWcge1xuICAgIC0taWRzLXRhZy1oZWlnaHQ6IGNhbGModmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctaGVpZ2h0LXh4cykgLSA0cHgpO1xuICB9XG5cbiAgaWRzLWlucHV0IHtcbiAgICAtLWlkcy1pbnB1dC1mb250LXNpemUtc206IHZhcigtLWlkcy1kYXRhLWdyaWQtZm9udC1zaXplLXNtKTtcblxuICAgICY6OnBhcnQoZGlydHktdHJhY2tlci1pY29uKSB7XG4gICAgICAtLWlkcy1pY29uLWhlaWdodC1kZWZhdWx0OiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAtLWlkcy1pY29uLXdpZHRoLWRlZmF1bHQ6IDEycHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBBZGp1c3Qgbm9uIGlubGluZSBlZGl0b3JcbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5pcy1lZGl0YWJsZSAuZWRpdG9yLWNlbGwtaWNvbiB7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS0zeHMpO1xuICB9XG5cbiAgLy8gQWRqdXN0IGRyb3Bkb3duIGVkaXRvclxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmlzLWVkaXRhYmxlLmlzLWlubGluZSBpZHMtaWNvbi5lZGl0b3ItY2VsbC1pY29uIHtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmlzLWVkaXRhYmxlLmlzLWlubGluZSB7XG4gICAgLS1pZHMtYnV0dG9uLXRlcnRpYXJ5LWNvbG9yLWJhY2tncm91bmQtaG92ZXI6IHZhcigtLWlkcy1jb2xvci10cmFuc3BhcmVudCk7XG4gICAgLS1pZHMtaW5wdXQtZm9udC1zaXplLXNtOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZvbnQtc2l6ZS1zbSk7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmlzLWVkaXRpbmcuaXMtZHJvcGRvd24uaXMtaW5saW5lIGlkcy1kcm9wZG93biB7XG4gICAgcGFkZGluZzogdmFyKC0taWRzLXNwYWNlLW5vbmUpIHZhcigtLWlkcy1zcGFjZS0zeHMpO1xuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2VsbCB7XG4gICAgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3gtY29udGFpbmVyOm5vdCguaXMtc2VsZWN0aW9uLWNoZWNrYm94KSB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXhzKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBSb3cgaGVpZ2h0OiAnc20nXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuW2RhdGEtcm93LWhlaWdodD0nc20nXSB7XG4gIC5mb3JtYXR0ZXItcHJvZ3Jlc3Mge1xuICAgIGlkcy1wcm9ncmVzcy1iYXIge1xuICAgICAgbWFyZ2luOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctc20pO1xuICAgIH1cbiAgfVxuXG4gIGlkcy1idXR0b24ge1xuICAgIC0taWRzLWJ1dHRvbi1pY29uLXBhZGRpbmc6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xuICB9XG5cbiAgLy8gQWRqdXN0IG5vbiBpbmxpbmUgZWRpdG9yXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwuaXMtZWRpdGFibGUgLmVkaXRvci1jZWxsLWljb24ge1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiA2cHg7XG4gIH1cblxuICAvLyBBZGp1c3QgZHJvcGRvd24gZWRpdG9yXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwuaXMtZWRpdGFibGUuaXMtaW5saW5lIGlkcy1pY29uLmVkaXRvci1jZWxsLWljb24ge1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiA1cHg7XG4gICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5pcy1lZGl0YWJsZS5pcy1pbmxpbmUge1xuICAgIC0taWRzLWJ1dHRvbi10ZXJ0aWFyeS1jb2xvci1iYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1pZHMtY29sb3ItdHJhbnNwYXJlbnQpO1xuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2VsbCB7XG4gICAgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3gtY29udGFpbmVyOm5vdCguaXMtc2VsZWN0aW9uLWNoZWNrYm94KSB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLXNtKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBSb3cgaGVpZ2h0OiAnbWQnXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuW2RhdGEtcm93LWhlaWdodD0nbWQnXSB7XG4gIC5mb3JtYXR0ZXItcHJvZ3Jlc3Mge1xuICAgIGlkcy1wcm9ncmVzcy1iYXIge1xuICAgICAgbWFyZ2luOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctbWQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFkanVzdCBkcm9wZG93biBlZGl0b3JcbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5pcy1lZGl0YWJsZSAuZWRpdG9yLWNlbGwtaWNvbiB7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IDdweDtcbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwuaXMtZWRpdGFibGUuaXMtaW5saW5lIGlkcy1pY29uLmVkaXRvci1jZWxsLWljb24ge1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctc20pO1xuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5pcy1lZGl0YWJsZS5pcy1pbmxpbmUge1xuICAgIC0taWRzLWJ1dHRvbi10ZXJ0aWFyeS1jb2xvci1iYWNrZ3JvdW5kLWhvdmVyOiB2YXIoLS1pZHMtY29sb3ItdHJhbnNwYXJlbnQpO1xuXG4gICAgOjpzbG90dGVkKGlkcy10cmlnZ2VyLWJ1dHRvbikge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAxMDBweDtcbiAgICB9XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveC1jb250YWluZXI6bm90KC5pcy1zZWxlY3Rpb24tY2hlY2tib3gpIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1pZHMtZGF0YS1ncmlkLXBhZGRpbmctbWQpO1xuICAgIH1cbiAgfVxufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJvdyBoZWlnaHQ6ICdsZydcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5bZGF0YS1yb3ctaGVpZ2h0PSdsZyddIHtcbiAgLmlkcy1kYXRhLWdyaWQtY2VsbCB7XG4gICAgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3gtY29udGFpbmVyOm5vdCguaXMtc2VsZWN0aW9uLWNoZWNrYm94KSB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdmFyKC0taWRzLWRhdGEtZ3JpZC1wYWRkaW5nLWxnKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTGlzdCBTdHlsZSBGZWF0dXJlXG4uaWRzLWRhdGEtZ3JpZC5pcy1saXN0LXN0eWxlIHtcbiAgLy8gQ2hhbmdlIENlbGwgQm9yZGVycy9CR1xuICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICBib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOiB2YXIoLS1pZHMtYm9yZGVyLXdpZHRoLW5vbmUpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pZHMtZGF0YS1ncmlkLWxpc3QtY2VsbC1jb2xvci1ib3JkZXIpO1xuXG4gICAgJi5pcy1yZWFkb25seTpub3QoLmV4Y2x1ZGUtcmVhZG9ubHktc3R5bGUpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtY2VsbC1jb2xvci1iYWNrZ3JvdW5kLXJlYWRvbmx5KVxuICAgIH1cblxuICAgICYuaXMtZGlzYWJsZWQge1xuICAgICAgY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtY2VsbC1jb2xvci10ZXh0LWRpc2FibGVkKTtcbiAgICB9XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1ib2R5IC5pZHMtZGF0YS1ncmlkLXJvdzpmaXJzdC1jaGlsZCAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbi8vIFN0YW5kYWxvbmUgQ3NzXG50ZC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLXNtKTtcbiAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtc3BhY2Utc20pO1xufVxuXG4vLyBIYW5kbGUgUlRMXG46aG9zdChbZGlyPSdydGwnXSkge1xuICAuaWRzLWRhdGEtZ3JpZC5pcy1saXN0LXN0eWxlIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAgIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiB2YXIoLS1pZHMtYm9yZGVyLXdpZHRoLW5vbmUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5lZ2F0ZSBCb3JkZXJzXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgICYuZnJvemVuLWxlZnQge1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHJpZ2h0OiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG5cbiAgICAgIC8vIER5bmFtaWNhbGx5IGFkZGVkIHdpZHRoc1xuICAgICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAxMCB7XG4gICAgICAgICY6bnRoLW9mLXR5cGUoI3skaX0pIHtcbiAgICAgICAgICByaWdodDogdmFyKC0taWRzLWRhdGEtZ3JpZC1mcm96ZW4tY29sdW1uLWxlZnQtd2lkdGgtI3skaX0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1pbmxpbmUtZW5kLXdpZHRoOiB2YXIoLS1pZHMtYm9yZGVyLXdpZHRoLW5vbmUpO1xuICAgIH1cblxuICAgICYuaXMtZGlydHkge1xuICAgICAgLmlkcy1kYXRhLWdyaWQtdHJlZS1maWVsZC1jb250YWluZXI6OmJlZm9yZSxcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWlucHV0LWRpcnR5LWluZGljYXRvci1jb2xvci1iYWNrZ3JvdW5kLWRpcnR5KSAgdmFyKC0taWRzLWlucHV0LWRpcnR5LWluZGljYXRvci1jb2xvci1iYWNrZ3JvdW5kLWRpcnR5KSB0cmFuc3BhcmVudCAgdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZpeCBzbG90dGVkIHRyaWdnZXIgYnV0dG9uIG1hcmdpbnMgd2hlbiBuZXN0ZWQgd2l0aGluIGNlbGxzXG4uaWRzLXRyaWdnZXItZmllbGQtc2xvdC10cmlnZ2VyLWVuZCB7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG59XG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEdlbmVyYXRlcyBhIHBzZXVkby1lbGVtZW50IGluIHRoZSBmb3JtIG9mIGFuIFwib3V0bGluZVwiXG4vLyBpbiBhIGNlbGwgdGhhdCByZXByZXNlbnRzIHRoZSBcImlubGluZSwgZWRpdGFibGVcIiBzdGF0ZS5cbkBtaXhpbiBpZHMtZGF0YS1ncmlkLWlubGluZS1lZGl0YWJsZS1vdXRsaW5lKCRtYXJnaW4pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWRlZmF1bHQpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWlkcy1ib3JkZXItcmFkaXVzLTJ4cyk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiAnJztcbiAgICBtYXJnaW46ICN7JG1hcmdpbn1weDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtICN7JG1hcmdpbiAqIDJ9cHgpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gI3skbWFyZ2luICogMn1weCk7XG4gIH1cbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBHZW5lcmF0ZXMgYSBwc2V1ZG8tZWxlbWVudCByZXByZXNlbnRpbmcgdGhlIGRpcnR5IHRyYWNrZXJcbi8vIGljb24gaW4gYSBjZWxsIHRoYXQncyBiZWVuIGVkaXRlZC5cbkBtaXhpbiBpZHMtZGF0YS1ncmlkLWNlbGwtZGlydHktdHJhY2tlci1pY29uIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtZGlydHktaW5kaWNhdG9yLWNvbG9yLWJhY2tncm91bmQtZGlydHkpIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHZhcigtLWlkcy1pbnB1dC1kaXJ0eS1pbmRpY2F0b3ItY29sb3ItYmFja2dyb3VuZC1kaXJ0eSk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNXB4O1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4taW5saW5lOiB2YXIoLS1pZHMtc3BhY2UtM3hzKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldC1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTN4cyk7XG4gIHotaW5kZXg6IDE7XG59XG4iLCJAaW1wb3J0ICcuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1jb3JlLW1peGlucyc7XG5cbi8vIEluY2x1ZGVzIEhpZGRlbiBDbGFzc2VzIGFuZCBNaXhpbnMgZm9yIGhpZGluZyBlbGVtZW50cyBhdCBicmVha3BvaW50c1xuLmhpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaGlkZS14eGwtZG93biB7XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXh4bCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGhpZGUteHhsLWRvd24ge1xuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC14eGwpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5oaWRlLXh4bC11cCB7XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50LXh4bCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGhpZGUteHhsLXVwIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteHhsKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGlkZS14bC1kb3duIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQteGwpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBoaWRlLXhsLWRvd24ge1xuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC14bCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhpZGUteGwtdXAge1xuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGhpZGUteGwtdXAge1xuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhpZGUtbGctZG93biB7XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50LWxnKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gaGlkZS1sZy1kb3duIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQtbGcpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5oaWRlLWxnLXVwIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGcpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBoaWRlLWxnLXVwIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGcpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5oaWRlLW1kLWRvd24ge1xuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1tZCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGhpZGUtbWQtZG93biB7XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50LW1kKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGlkZS1tZC11cCB7XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1kKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gaGlkZS1tZC11cCB7XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1kKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGlkZS1zbS1kb3duIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQtc20pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBoaWRlLXNtLWRvd24ge1xuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1zbSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhpZGUtc20tdXAge1xuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGhpZGUtc20tdXAge1xuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhpZGUteHMtZG93biB7XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXhzKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gaGlkZS14cy1kb3duIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQteHMpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5oaWRlLXhzLXVwIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteHMpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBoaWRlLXhzLXVwIHtcbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteHMpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBicmVha3BvaW50LXhzLWRvd24ge1xuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC14cykge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCJAdXNlICcuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1oaWRlLW1peGluLnNjc3MnIGFzIGhpZGU7XG5cbjpob3N0KC5oaWRlLXNtLWRvd24pIHtcbiAgQGluY2x1ZGUgaGlkZS5oaWRlLXNtLWRvd24oKTtcbn1cblxuLmlkcy1wb3B1cC1tZW51IHtcbiAgJjpub3QoW2hpZGRlbl0pIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB6LWluZGV4OiB2YXIoLS1pZHMtei1pbmRleC02MCk7XG4gIH1cbn1cbiIsIi8qKlxuICogQ2hlY2tib3ggTWl4aW5zLlxuICovXG5AdXNlICdzYXNzOmxpc3QnO1xuQHVzZSAnLi4vLi4vdGhlbWVzL21peGlucy9pZHMtY29yZS1taXhpbnMnIGFzIG1peGlucztcblxuLy8gVW5jaGVja2VkXG5AbWl4aW4gY2hlY2tib3gtdW5jaGVja2VkKCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlcjogdmFyKC0taWRzLWNoZWNrYm94LWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWlkcy1jaGVja2JveC1ib3JkZXItcmFkaXVzKTtcbiAgaGVpZ2h0OiAxNHB4O1xuICB3aWR0aDogMTRweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAzcHg7XG59XG5cbkBtaXhpbiBjaGVja2JveC11bmNoZWNrZWQtZXJyb3Ige1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItZXJyb3IpO1xufVxuXG4vLyBDaGVja2VkXG5AbWl4aW4gY2hlY2tib3gtY2hlY2tlZCgpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJhY2tncm91bmQtc2VsZWN0ZWQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItc2VsZWN0ZWQpO1xufVxuXG5AbWl4aW4gY2hlY2tib3gtY2hlY2tlZC1hZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogdmFyKC0taWRzLWZvbnQtc2l6ZS0yeHMpIHNvbGlkIHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItc2VsZWN0ZWQtYWZ0ZXIpO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWlkcy1jaGVja2JveC1ib3JkZXItd2lkdGgtc2VsZWN0ZWQtYWZ0ZXIpO1xuICBhbmltYXRpb246IGNoZWNrIDAuMTVzO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIGNvbnRlbnQ6ICcnO1xuICBoZWlnaHQ6IDEwcHg7XG4gIGxlZnQ6IDRweDtcbiAgdG9wOiAwO1xuICB3aWR0aDogNHB4O1xufVxuXG4vLyBJbmRldGVybWluYXRlXG5AbWl4aW4gY2hlY2tib3gtaW5kZXRlcm1pbmF0ZSgpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJhY2tncm91bmQtaW5kZXRlcm1pbmF0ZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJvcmRlci1pbmRldGVybWluYXRlKTtcbn1cblxuQG1peGluIGNoZWNrYm94LWluZGV0ZXJtaW5hdGUtYWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGFuaW1hdGlvbjogY2hlY2tpbmRldGVybWluYXRlIDAuMTVzO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJvcmRlci1pbmRldGVybWluYXRlLWFmdGVyKTtcbiAgYm9yZGVyLXdpZHRoOiB2YXIoLS1pZHMtY2hlY2tib3gtYm9yZGVyLXdpZHRoLWluZGV0ZXJtaW5hdGUpO1xuICBjb250ZW50OiAnJztcbiAgaGVpZ2h0OiA2cHg7XG4gIGxlZnQ6IDJweDtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHdpZHRoOiAxMHB4O1xufVxuXG4vLyBEaXNhYmxlZFxuQG1peGluIGNoZWNrYm94LWRpc2FibGVkLXVuY2hlY2tlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1iYWNrZ3JvdW5kLWRpc2FibGVkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtY2hlY2tib3gtY29sb3ItYm9yZGVyLWRpc2FibGVkKTtcbiAgY3Vyc29yOiB2YXIoLS1pZHMtY3Vyc29yLWRlZmF1bHQpO1xufVxuXG5AbWl4aW4gY2hlY2tib3gtZGlzYWJsZWQtdW5jaGVja2VkLWVycm9yIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtY2hlY2tib3gtY29sb3ItYm9yZGVyLWZvY3VzLWVycm9yKTtcbn1cblxuQG1peGluIGNoZWNrYm94LWRpc2FibGVkLWNoZWNrZWQoKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1iYWNrZ3JvdW5kLXNlbGVjdGVkLWRpc2FibGVkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtY2hlY2tib3gtY29sb3ItYm9yZGVyLXNlbGVjdGVkLWRpc2FibGVkKTtcbn1cblxuQG1peGluIGNoZWNrYm94LWRpc2FibGVkLXRleHQge1xuICBjdXJzb3I6IHZhcigtLWlkcy1jdXJzb3ItZGVmYXVsdCk7XG4gIGNvbG9yOiB2YXIoLS1pZHMtY2hlY2tib3gtY29sb3ItdGV4dC1kaXNhYmxlZCk7XG59XG5cbi8vIEZvY3VzXG5AbWl4aW4gY2hlY2tib3gtZm9jdXMge1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItZm9jdXMpO1xuICBib3gtc2hhZG93OiB2YXIoLS1pZHMtY2hlY2tib3gtc2hhZG93LWZvY3VzKTtcbn1cblxuQG1peGluIGNoZWNrYm94LWZvY3VzLWVycm9yIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtY2hlY2tib3gtY29sb3ItYm9yZGVyLWZvY3VzLWVycm9yKTtcbiAgYm94LXNoYWRvdzogdmFyKC0taWRzLWNoZWNrYm94LXNoYWRvdy1mb2N1cy1lcnJvcik7XG59XG5cbi8vIENvbG9yZWRcbiRjb2xvci1uYW1lczogJ2dyZWVuJyAncHVycGxlJyAnYmx1ZScgJ29yYW5nZScgJ3JlZCc7XG4kY29sb3ItdmFyczogLS1pZHMtY29sb3ItZ3JlZW4tNzAgLS1pZHMtY29sb3ItcHVycGxlLTcwIC0taWRzLWNvbG9yLWJsdWUtNzAgLS1pZHMtY29sb3Itb3JhbmdlLTcwIC0taWRzLWNvbG9yLXJlZC03MDtcblxuQG1peGluIGNoZWNrYm94LWNvbG9yZWQoKSB7XG4gIEBlYWNoICRuYW1lIGluICRjb2xvci1uYW1lcyB7XG4gICAgJGk6IGxpc3QuaW5kZXgoJGNvbG9yLW5hbWVzLCAkbmFtZSk7XG4gICAgJGNvbG9yOiB2YXIoI3tsaXN0Lm50aCgkY29sb3ItdmFycywgJGkpfSk7XG5cbiAgICAmW2NvbG9yPScjeyRuYW1lfSddIGlucHV0W3R5cGU9J2NoZWNrYm94J10ge1xuICAgICAgfiAuY2hlY2ttYXJrIHtcbiAgICAgICAgQGluY2x1ZGUgY2hlY2tib3gtY29sb3JlZC1ib3goJGNvbG9yKTtcbiAgICAgIH1cblxuICAgICAgJjpkaXNhYmxlZCB+IC5jaGVja21hcmsge1xuICAgICAgICBAaW5jbHVkZSBjaGVja2JveC1kaXNhYmxlZC11bmNoZWNrZWQoKTtcbiAgICAgIH1cblxuICAgICAgJjpkaXNhYmxlZDpjaGVja2VkIH4gLmNoZWNrbWFyayB7XG4gICAgICAgIEBpbmNsdWRlIGNoZWNrYm94LWRpc2FibGVkLWNoZWNrZWQoKTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB+IC5jaGVja21hcmsge1xuICAgICAgICBAaW5jbHVkZSBjaGVja2JveC1jb2xvcmVkLWJveC1mb2N1cygkY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gY2hlY2tib3gtY29sb3JlZC1ib3goJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG59XG5cbkBtaXhpbiBjaGVja2JveC1jb2xvcmVkLWJveC1mb2N1cygkY29sb3IpIHtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG59XG5cbi8vIEFuaW1hdGlvbnNcbkBrZXlmcmFtZXMgY2hlY2sge1xuICAwJSB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiA4cHg7XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICA1MCUge1xuICAgIGhlaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogOHB4O1xuICAgIHdpZHRoOiA0cHg7XG4gIH1cblxuICAxMDAlIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgbGVmdDogNHB4O1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogNHB4O1xuICB9XG59XG5cbkBrZXlmcmFtZXMgY2hlY2tpbmRldGVybWluYXRlIHtcbiAgMCUge1xuICAgIHdpZHRoOiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgd2lkdGg6IDEwcHg7XG4gIH1cbn1cbiIsIi8qKlxuICogUmFkaW8gTWl4aW5zLlxuICovXG5AdXNlICdzYXNzOmxpc3QnO1xuQHVzZSAnLi4vLi4vdGhlbWVzL21peGlucy9pZHMtY29yZS1taXhpbnMnIGFzIG1peGlucztcblxuLy8gVW5jaGVja2VkXG5AbWl4aW4gcmFkaW8tdW5jaGVja2VkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pZHMtcmFkaW8tY29sb3ItYm9yZGVyLWRlZmF1bHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pZHMtcmFkaW8tYm9yZGVyLXJhZGl1cyk7XG4gIGhlaWdodDogMTRweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAzcHg7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS1pZHMtbW90aW9uLWR1cmF0aW9uKSB2YXIoLS1pZHMtbW90aW9uLWVhc2UpO1xuICB3aWR0aDogMTRweDtcbn1cblxuQG1peGluIHJhZGlvLXVuY2hlY2tlZC1hZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLXJhZGlvLWNvbG9yLWJhY2tncm91bmQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pZHMtcmFkaW8tY29sb3ItYmFja2dyb3VuZCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWlkcy1yYWRpby1ib3JkZXItcmFkaXVzKTtcbiAgY29udGVudDogJyc7XG4gIGhlaWdodDogMDtcbiAgbGVmdDogNnB4O1xuICB0b3A6IDZweDtcbiAgdHJhbnNpdGlvbjogYWxsIHZhcigtLWlkcy1tb3Rpb24tZHVyYXRpb24pIHZhcigtLWlkcy1tb3Rpb24tZWFzZSk7XG4gIHdpZHRoOiAwO1xufVxuXG5AbWl4aW4gcmFkaW8tdW5jaGVja2VkLWVycm9yLWNpcmNsZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWNvbG9yLWVycm9yLWRlZmF1bHQpO1xufVxuXG5AbWl4aW4gcmFkaW8tdW5jaGVja2VkLWVycm9yLWxhYmVsLXRleHQge1xuICBjb2xvcjogdmFyKC0taWRzLWNvbG9yLWVycm9yLWRlZmF1bHQpO1xufVxuXG4vLyBDaGVja2VkXG5AbWl4aW4gcmFkaW8tY2hlY2tlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1yYWRpby1jb2xvci1iYWNrZ3JvdW5kLXNlbGVjdGVkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtcmFkaW8tY29sb3ItYm9yZGVyLXNlbGVjdGVkKTtcbn1cblxuQG1peGluIHJhZGlvLWNoZWNrZWQtYWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtcmFkaW8taW5uZXItY29sb3ItYmFja2dyb3VuZC1zZWxlY3RlZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLXJhZGlvLWlubmVyLWNvbG9yLWJhY2tncm91bmQtc2VsZWN0ZWQpO1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgaGVpZ2h0OiA0cHg7XG4gIGxlZnQ6IDNweDtcbiAgdG9wOiAzcHg7XG4gIHdpZHRoOiA0cHg7XG59XG5cbi8vIERpc2FibGVkXG5AbWl4aW4gcmFkaW8tZGlzYWJsZWQtdW5jaGVja2VkIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtcmFkaW8tY29sb3ItYm9yZGVyLWRpc2FibGVkKTtcbiAgY3Vyc29yOiB2YXIoLS1pZHMtY3Vyc29yLWRlZmF1bHQpO1xuICBib3gtc2hhZG93OiBub25lO1xuICBvcGFjaXR5OiB2YXIoLS1pZHMtcmFkaW8tZGlzYWJsZWQtb3BhY2l0eSk7XG59XG5cbkBtaXhpbiByYWRpby1kaXNhYmxlZC11bmNoZWNrZWQtZXJyb3ItY2lyY2xlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtcmFkaW8tY29sb3ItYm9yZGVyLWRpc2FibGVkKTtcbn1cblxuQG1peGluIHJhZGlvLWRpc2FibGVkLXVuY2hlY2tlZC1lcnJvci1sYWJlbC10ZXh0IHtcbiAgY29sb3I6IHZhcigtLWlkcy1yYWRpby1jb2xvci1ib3JkZXItZGlzYWJsZWQpO1xufVxuXG5AbWl4aW4gcmFkaW8tZGlzYWJsZWQtY2hlY2tlZCgpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLXJhZGlvLWNvbG9yLWJhY2tncm91bmQtc2VsZWN0ZWQtZGlzYWJsZWQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1yYWRpby1jb2xvci1ib3JkZXItc2VsZWN0ZWQtZGlzYWJsZWQpO1xuICBvcGFjaXR5OiB2YXIoLS1pZHMtcmFkaW8tZGlzYWJsZWQtb3BhY2l0eSk7XG59XG5cbkBtaXhpbiByYWRpby1kaXNhYmxlZC10ZXh0IHtcbiAgY3Vyc29yOiB2YXIoLS1pZHMtY3Vyc29yLWRlZmF1bHQpO1xuICBjb2xvcjogdmFyKC0taWRzLXJhZGlvLWNvbG9yLXRleHQtZGlzYWJsZWQpO1xuICBvcGFjaXR5OiB2YXIoLS1pZHMtcmFkaW8tZGlzYWJsZWQtb3BhY2l0eSk7XG59XG5cbi8vIEZvY3VzXG5AbWl4aW4gcmFkaW8tZm9jdXMge1xuICBib3gtc2hhZG93OiB2YXIoLS1pZHMtcmFkaW8tc2hhZG93KTtcbn1cblxuQG1peGluIHJhZGlvLWZvY3VzLW5vdC1oaWRlLWZvY3VzIHtcbiAgYm94LXNoYWRvdzogdmFyKC0taWRzLXJhZGlvLXNoYWRvdy1mb2N1cyk7XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5AdXNlICcuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1jb3JlLW1peGlucycgYXMgbWl4aW5zO1xuQGltcG9ydCAnLi9pZHMtZGF0YS1ncmlkLWNvbW1vbic7XG5AaW1wb3J0ICcuL2lkcy1kYXRhLWdyaWQtZmlsdGVycyc7XG5AaW1wb3J0ICcuL2lkcy1kYXRhLWdyaWQtaGVhZGVyJztcbkBpbXBvcnQgJy4vaWRzLWRhdGEtZ3JpZC1yb3cnO1xuQGltcG9ydCAnLi9pZHMtZGF0YS1ncmlkLWNlbGwnO1xuQGltcG9ydCAnLi4vLi4vY29tcG9uZW50cy9pZHMtcG9wdXAtbWVudS9pZHMtcG9wdXAtbWVudSc7XG5AaW1wb3J0ICcuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1jaGVja2JveC1taXhpbic7XG5AaW1wb3J0ICcuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1yYWRpby1taXhpbic7XG5cbjpob3N0IHtcbiAgLS1pZHMtZGF0YS1ncmlkLWNvbHVtbi13aWR0aHM6IHJlcGVhdCgxLCBtaW5tYXgoMTEwcHgsIDFmcikpO1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmlkcy1kYXRhLWdyaWQge1xuICAvLyBPdXRzaWRlIGJvcmRlciBhbmQgQmFja2dyb3VuZCBhbmQgc2l6aW5nXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtY29sb3ItYmFja2dyb3VuZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlkcy1kYXRhLWdyaWQtY2VsbC1jb2xvci1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1pZHMtYm9yZGVyLXJhZGl1cy0yeHMpO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gTmVlZGVkIHNvIHN0aWNreSBoZWFkZXIgd29ya3MgaW4gc2FmYXJpXG4gIGRpc3BsYXk6IGlubGluZS1ncmlkO1xuICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC8vIEZvbnQgSW5mb1xuICBAaW5jbHVkZSBtaXhpbnMuYW50aWFsaWFzZWQoKTtcblxuICBmb250LWZhbWlseTogdmFyKC0taWRzLWZvbnQtZmFtaWx5LWRlZmF1bHQpLCB2YXIoLS1pZHMtZm9udC1mYW1pbHktc3lzdGVtLXNhbnMpO1xuICBmb250LXNpemU6IHZhcigtLWlkcy1mb250LXNpemUtc20pO1xuXG4gIC8vIFNlbGVjdGlvbiBDaGVja2JveFxuICAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveC1jb250YWluZXIge1xuICAgIGN1cnNvcjogdmFyKC0taWRzLWN1cnNvci1wb2ludGVyKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gQ2hlY2tib3ggYWxpZ25tZW50c1xuICAuaWRzLWRhdGEtZ3JpZC1jZWxsLmFsaWduLWxlZnQge1xuICAgIC5pZHMtZGF0YS1ncmlkLXRyZWUtY29udGFpbmVyLFxuICAgIC5pZHMtZGF0YS1ncmlkLWNoZWNrYm94LWNvbnRhaW5lciB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgIH1cbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwuYWxpZ24tY2VudGVyIHtcbiAgICAuaWRzLWRhdGEtZ3JpZC1jaGVja2JveC1jb250YWluZXIge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2VsbC5hbGlnbi1yaWdodCB7XG4gICAgLmlkcy1kYXRhLWdyaWQtY2hlY2tib3gtY29udGFpbmVyIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZW5kO1xuICAgIH1cbiAgfVxuXG4gIC5pZHMtZGF0YS1ncmlkLWNoZWNrYm94IHtcbiAgICBAaW5jbHVkZSBjaGVja2JveC11bmNoZWNrZWQoKTtcblxuICAgICYuZWRpdGFibGUge1xuICAgICAgY3Vyc29yOiB2YXIoLS1pZHMtY3Vyc29yLXBvaW50ZXIpO1xuICAgIH1cblxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1jZWxsLWNoZWNrYm94LWNvbG9yLWJvcmRlcik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICB0b3A6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgQGluY2x1ZGUgY2hlY2tib3gtZGlzYWJsZWQtdW5jaGVja2VkKCk7XG5cbiAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICB9XG5cbiAgICAmLmNoZWNrZWQge1xuICAgICAgQGluY2x1ZGUgY2hlY2tib3gtY2hlY2tlZCgpO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGNoZWNrYm94LWNoZWNrZWQtYWZ0ZXIoKTtcblxuICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBAaW5jbHVkZSBjaGVja2JveC1kaXNhYmxlZC1jaGVja2VkKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pbmRldGVybWluYXRlIHtcbiAgICAgIEBpbmNsdWRlIGNoZWNrYm94LWluZGV0ZXJtaW5hdGUoKTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBjaGVja2JveC1pbmRldGVybWluYXRlLWFmdGVyKCk7XG5cbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNlbGVjdGlvbiBSYWRpb1xuICAuaWRzLWRhdGEtZ3JpZC1yYWRpby1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuaWRzLWRhdGEtZ3JpZC1yYWRpbyB7XG4gICAgQGluY2x1ZGUgcmFkaW8tdW5jaGVja2VkKCk7XG5cbiAgICBjdXJzb3I6IHZhcigtLWlkcy1jdXJzb3ItcG9pbnRlcik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICB0b3A6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHJhZGlvLXVuY2hlY2tlZC1hZnRlcigpO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgQGluY2x1ZGUgcmFkaW8tZGlzYWJsZWQtdW5jaGVja2VkKCk7XG4gICAgfVxuXG4gICAgJi5jaGVja2VkIHtcbiAgICAgIEBpbmNsdWRlIHJhZGlvLWNoZWNrZWQoKTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSByYWRpby1jaGVja2VkLWFmdGVyKCk7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBAaW5jbHVkZSByYWRpby1kaXNhYmxlZC1jaGVja2VkKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVHJlZSBHcmlkXG4gIC5pZHMtZGF0YS1ncmlkLWNlbGwgLmlkcy1kYXRhLWdyaWQtdHJlZS1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgaWRzLWJ1dHRvbiArIC5pZHMtZGF0YS1ncmlkLXRyZWUtZmllbGQtY29udGFpbmVyIC50ZXh0LWVsbGlwc2lzIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICB9XG5cbiAgICBpZHMtYnV0dG9uIHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2UtMnhzKTtcbiAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgIH1cblxuICAgIGlkcy1idXR0b24uZXhwYW5kLWJ1dHRvbiB7XG4gICAgICAtLWlkcy1idXR0b24tdGVydGlhcnktY29sb3ItYmFja2dyb3VuZC1ob3ZlcjogdmFyKC0taWRzLWNvbG9yLXRyYW5zcGFyZW50KTtcbiAgICAgIC0taWRzLWJ1dHRvbi10ZXJ0aWFyeS1jb2xvci1ib3JkZXItaG92ZXI6IHZhcigtLWlkcy1jb2xvci10cmFuc3BhcmVudCk7XG4gICAgICAtLWlkcy1idXR0b24tdGVydGlhcnktY29sb3ItYmFja2dyb3VuZC1wcmVzc2VkOiB2YXIoLS1pZHMtY29sb3ItdHJhbnNwYXJlbnQpO1xuICAgICAgLS1pZHMtYnV0dG9uLXRlcnRpYXJ5LWNvbG9yLWJvcmRlci1wcmVzc2VkOiB2YXIoLS1pZHMtY29sb3ItdHJhbnNwYXJlbnQpO1xuICAgIH1cblxuICAgIC50ZXh0LWVsbGlwc2lzIHtcbiAgICAgIGlkcy1oeXBlcmxpbmsge1xuICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlkcy1kYXRhLWdyaWQtY2VsbCAuaWRzLWRhdGEtZ3JpZC10cmVlLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gTWFwcyB1c2VkIGZvciBhbHRlcmluZyBhbGlnbm1lbnRzIG9mIGVkaXRhYmxlIGdyaWQgY2VsbHMgaW4gZGlmZmVyZW50IHNjZW5hcmlvcy5cbiAgLy8gVGhlc2UgcnVsZXMgYXJlIGJhc2VkIG9uIHJvdy1oZWlnaHQsIHdoaWNoIGlzIGRlZmluZWQgYXQgdGhlIGAuaWRzLWRhdGEtZ3JpZGAgZWxlbWVudCBsZXZlbC5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAkcm93LWhlaWdodC1pbmxpbmUtdHJlZS1ncmlkLWJ1dHRvbi13aWR0aHM6IChcbiAgICAneHhzJzogMzAsXG4gICAgJ3hzJzogMzIsXG4gICAgJ3NtJzogMzQsXG4gICAgJ21kJzogNDAsXG4gICAgJ2xnJzogNDBcbiAgKTtcblxuICAkcm93LWhlaWdodC1wYWRkaW5nLW9mZnNldHM6IChcbiAgICAneHhzJzogMTIsXG4gICAgJ3hzJzogMTAsXG4gICAgJ3NtJzogOCxcbiAgICAnbWQnOiAzLFxuICAgICdsZyc6IDNcbiAgKTtcblxuICAkcm93LWhlaWdodC1kaXJ0eS1pbmRpY2F0b3Itb2Zmc2V0czogKFxuICAgICd4eHMnOiAxLFxuICAgICd4cyc6IDEsXG4gICAgJ3NtJzogMSxcbiAgICAnbWQnOiAyLFxuICAgICdsZyc6IDJcbiAgKTtcblxuICAkcm93LWhlaWdodC1pbmxpbmUtZGlydHktaW5kaWNhdG9yLW9mZnNldHM6IChcbiAgICAneHhzJzogMyxcbiAgICAneHMnOiA0LFxuICAgICdzbSc6IDUsXG4gICAgJ21kJzogNixcbiAgICAnbGcnOiA2XG4gICk7XG5cbiAgJHJvdy1oZWlnaHQtaW5kZW50czogKFxuICAgICd4eHMnOiAxMixcbiAgICAneHMnOiAxMyxcbiAgICAnc20nOiAxNSxcbiAgICAnbWQnOiAxNyxcbiAgICAnbGcnOiAxN1xuICApO1xuXG4gICRyb3ctaGVpZ2h0LW91dGxpbmUtcGFkZGluZzogKFxuICAgICd4eHMnOiAxLFxuICAgICd4cyc6IDIsXG4gICAgJ3NtJzogMyxcbiAgICAnbWQnOiA0LFxuICAgICdsZyc6IDRcbiAgKTtcblxuICAkcm93LWhlaWdodC1vdXRsaW5lLW9mZnNldHM6IChcbiAgICAneHhzJzogMSxcbiAgICAneHMnOiAyLFxuICAgICdzbSc6IDUsXG4gICAgJ21kJzogOCxcbiAgICAnbGcnOiAxMlxuICApO1xuXG4gIEBlYWNoICRyb3dIZWlnaHQsICRvZmZzZXQgaW4gJHJvdy1oZWlnaHQtcGFkZGluZy1vZmZzZXRzIHtcbiAgICAvLyBUaGVzZSB2YWx1ZXMgYXJlIGRpZmZlcmVudCBmb3IgZWFjaCBSb3cgSGVpZ2h0XG4gICAgJGJ1dHRvbi13aWR0aDogbWFwLmdldCgkcm93LWhlaWdodC1pbmxpbmUtdHJlZS1ncmlkLWJ1dHRvbi13aWR0aHMsICRyb3dIZWlnaHQpO1xuICAgICRpbmRlbnQ6IG1hcC5nZXQoJHJvdy1oZWlnaHQtaW5kZW50cywgJHJvd0hlaWdodCk7XG4gICAgJGRpcnR5LWluZGljYXRvci1vZmZzZXQ6IG1hcC5nZXQoJHJvdy1oZWlnaHQtZGlydHktaW5kaWNhdG9yLW9mZnNldHMsICRyb3dIZWlnaHQpO1xuICAgICRpbmxpbmUtZGlydHktaW5kaWNhdG9yLW9mZnNldDogbWFwLmdldCgkcm93LWhlaWdodC1pbmxpbmUtZGlydHktaW5kaWNhdG9yLW9mZnNldHMsICRyb3dIZWlnaHQpO1xuICAgICRvdXRsaW5lLW9mZnNldDogbWFwLmdldCgkcm93LWhlaWdodC1vdXRsaW5lLW9mZnNldHMsICRyb3dIZWlnaHQpO1xuICAgICRvdXRsaW5lLXBhZGRpbmc6IG1hcC5nZXQoJHJvdy1oZWlnaHQtb3V0bGluZS1wYWRkaW5nLCAkcm93SGVpZ2h0KTtcblxuICAgICZbZGF0YS1yb3ctaGVpZ2h0PScjeyRyb3dIZWlnaHR9J10ge1xuICAgICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICAvLyBUb3AtbGV2ZWwgZ3JpZCBhbGlnbm1lbnRzIHRoYXQgZGVwZW5kIHNvbGVseSBvbiByb3cgaGVpZ2h0XG4gICAgICAuaWRzLWRhdGEtZ3JpZC1jZWxsIHtcbiAgICAgICAgJi5pcy1kaXJ0eSB7XG4gICAgICAgICAgJjpub3QoLmlzLWlubGluZSkge1xuICAgICAgICAgICAgJi5mb3JtYXR0ZXItdGV4dCB7XG4gICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgaW5zZXQtYmxvY2stc3RhcnQ6ICN7JGRpcnR5LWluZGljYXRvci1vZmZzZXR9cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogI3skZGlydHktaW5kaWNhdG9yLW9mZnNldH1weDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYuaXMtaW5saW5lIHtcbiAgICAgICAgICAgICYuZm9ybWF0dGVyLXRleHQge1xuICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGluc2V0LWJsb2NrLXN0YXJ0OiAjeyRpbmxpbmUtZGlydHktaW5kaWNhdG9yLW9mZnNldH1weDtcbiAgICAgICAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAjeyRpbmxpbmUtZGlydHktaW5kaWNhdG9yLW9mZnNldH1weDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE0zIHJlcXVpcmVtZW50IHRvIG5vdCBhZmZlY3Qgc3BlY2lmaWMgY2VsbHMgYnkgcmVhZG9ubHkgZmxhZyAoaHR0cHM6Ly9pbmZvci5hdGxhc3NpYW4ubmV0L2Jyb3dzZS9JRFMtODg3NClcbiAgICAgICAgICYuaXMtcmVhZG9ubHkuZXhjbHVkZS1yZWFkb25seS1zdHlsZSB7XG4gICAgICAgICAgJjpub3QoLmZvcm1hdHRlci10cmVlKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBpZHMtZGF0YS1ncmlkLWlubGluZS1lZGl0YWJsZS1vdXRsaW5lKCRvdXRsaW5lLXBhZGRpbmcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERlZmluZXMgdGhlIHBvc2l0aW9uIG9mIHRoZSBcImlubGluZS1lZGl0XCIgc3R5bGUncyBvdXRsaW5lXG4gICAgICAgICYuaXMtZWRpdGFibGUuaXMtaW5saW5lIHtcbiAgICAgICAgICAmOm5vdCguZm9ybWF0dGVyLXRyZWUpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGlkcy1kYXRhLWdyaWQtaW5saW5lLWVkaXRhYmxlLW91dGxpbmUoJG91dGxpbmUtcGFkZGluZyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5mb3JtYXR0ZXItdHJlZSB7XG4gICAgICAgICAgICAudGV4dC1lbGxpcHNpcyB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGlkcy1kYXRhLWdyaWQtaW5saW5lLWVkaXRhYmxlLW91dGxpbmUoJG91dGxpbmUtcGFkZGluZyk7XG5cbiAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JG91dGxpbmUtb2Zmc2V0ICsgNH1weCk7XG5cbiAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAtI3skb3V0bGluZS1vZmZzZXR9cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gUmVtb3ZlIHN0YXJ0IHBhZGRpbmcgZnJvbSB0cmVlLWdyaWQtY29udGFpbmVkIGAudGV4dC1lbGxpcHNpc2AgZWxlbWVudHNcbiAgICAgIC5pZHMtZGF0YS1ncmlkLXRyZWUtZmllbGQtY29udGFpbmVyIC50ZXh0LWVsbGlwc2lzIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICAgIH1cblxuICAgICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICAvLyBFeHBhbmRhYmxlIGdyaWQvdHJlZSBncmlkIG5lc3RlZCBhbGlnbm1lbnQgcnVsZXNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggOCB7XG4gICAgICAgIFthcmlhLWxldmVsPScjeyRpfSddIC5pZHMtZGF0YS1ncmlkLWNlbGwge1xuICAgICAgICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICAgICAgIC5pZHMtZGF0YS1ncmlkLXRyZWUtZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogI3skYnV0dG9uLXdpZHRofXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZHMtYnV0dG9uIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZHMtYnV0dG9uICsgLmlkcy1kYXRhLWdyaWQtdHJlZS1maWVsZC1jb250YWluZXIge1xuICAgICAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAuaWRzLWRhdGEtZ3JpZC10cmVlLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6ICN7JGJ1dHRvbi13aWR0aCArICgkaW5kZW50ICogKCRpIC0gMSkpICsgKCRvZmZzZXQpfXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZHMtYnV0dG9uIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogI3soJGluZGVudCAqICgkaSAtIDEpKSArICRvZmZzZXR9cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlkcy1idXR0b24gKyAuaWRzLWRhdGEtZ3JpZC10cmVlLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICAgICAvLyBEaXJ0eS10cmFja2VyIHJ1bGVzIGRlcGVuZGVudCBvbiBgYXJpYS1sZXZlbGAgbmVzdGluZ1xuICAgICAgICAgICYuaXMtZGlydHkge1xuICAgICAgICAgICAgJi5pcy1pbmxpbmUge1xuICAgICAgICAgICAgICAuaWRzLWRhdGEtZ3JpZC10cmVlLWZpZWxkLWNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBpbnNldC1ibG9jay1zdGFydDogI3skaW5saW5lLWRpcnR5LWluZGljYXRvci1vZmZzZXR9cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogI3skaW5saW5lLWRpcnR5LWluZGljYXRvci1vZmZzZXR9cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBMaXN0IFN0eWxlIEZlYXR1cmVcbiAgJi5pcy1saXN0LXN0eWxlIHtcbiAgICBib3JkZXItd2lkdGg6IHZhcigtLWlkcy1ib3JkZXItd2lkdGgtbm9uZSk7XG4gIH1cblxuICAvLyBVc2VkIGZvciByb3cgc3RhcnRcbiAgJi53YWl0aW5nLWxvYWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLmlkcy1kYXRhLWdyaWQtYm9keSB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuICB9XG59XG5cbi8vIFVzZWQgZm9yIEZyb3plbiBDb2x1bW5zXG4uaWRzLWRhdGEtZ3JpZC1ib2R5IHtcbiAgbWluLXdpZHRoOiBmaXQtY29udGVudDtcbn1cblxuLy8gU3RhbmRhbG9uZSBDc3MgQm9yZGVyc1xudGFibGUuaWRzLWRhdGEtZ3JpZCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBvdXRsaW5lOiAxcHggc29saWQgdmFyKC0taWRzLWRhdGEtZ3JpZC1jZWxsLWNvbG9yLWJvcmRlcik7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xufVxuXG4vLyBFbXB0eSBNZXNzYWdlXG4uaWRzLWRhdGEtZ3JpZC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5pZHMtZGF0YS1ncmlkLXRvb2xiYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiA2cHggdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gIH1cbn1cblxuaWRzLWVtcHR5LW1lc3NhZ2U6bm90KFtoaWRkZW5dKSxcbjo6c2xvdHRlZChpZHMtZW1wdHktbWVzc2FnZTpub3QoW2hpZGRlbl0pKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRvcDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgbWFyZ2luLXRvcDogdmFyKC0taWRzLXNwYWNlLXNtKTtcbn1cblxuLy8gQWRqdXN0IGZvciBmaWx0ZXIgcm93XG5pZHMtZW1wdHktbWVzc2FnZS5oYXMtZmlsdGVyLXJvdzpub3QoW2hpZGRlbl0pIHtcbiAgJi5maWx0ZXItcm93LXNpemUteHhzIHtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDI0cHg7XG4gIH1cblxuICAmLmZpbHRlci1yb3ctc2l6ZS14cyB7XG4gICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAzNHB4O1xuICB9XG5cbiAgJi5maWx0ZXItcm93LXNpemUtc20ge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogMzRweDtcbiAgfVxuXG4gICYuZmlsdGVyLXJvdy1zaXplLW1kIHtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDM0cHg7XG4gIH1cblxuICAmLmZpbHRlci1yb3ctc2l6ZS1sZyB7XG4gICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAyNnB4O1xuICB9XG5cbiAgJi5oYXMtcGFnZXIge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogMTRweDtcbiAgfVxufVxuXG46OnNsb3R0ZWQoaWRzLWVtcHR5LW1lc3NhZ2UuaGFzLWZpbHRlci1yb3c6bm90KFtoaWRkZW5dKSkge1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDE0cHg7XG59XG5cbi5oYXMtZW1wdHktbWVzc2FnZSAuaWRzLWRhdGEtZ3JpZCB7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLWlkcy1kYXRhLWdyaWQtaGVpZ2h0LW1pbik7XG59XG5cbi8vIExvYWRpbmcgSW5kaWNhdG9yXG5pZHMtbG9hZGluZy1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0b3A6IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcblxuICAmW3N0b3BwZWRdIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbjpob3N0KDpub3QoW2Rpc2FibGUtcm93LWhpZ2hsaWdodF0pKSBpZHMtZGF0YS1ncmlkLXJvdzpob3Zlcjpub3QoW3BhcnQqPSdyb3ctJ10pOm5vdCguc2VsZWN0ZWQpIHtcbiAgaWRzLWRhdGEtZ3JpZC1jZWxsLFxuICBpZHMtZGF0YS1ncmlkLWNlbGwuaXMtcmVhZG9ubHk6bm90KC5leGNsdWRlLXJlYWRvbmx5LXN0eWxlKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1yb3ctY29sb3ItYmFja2dyb3VuZC1ob3Zlcik7XG4gIH1cblxuICBpZHMtZGF0YS1ncmlkLWNlbGwuaXMtaW52YWxpZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1jZWxsLWNvbG9yLWJhY2tncm91bmQtZXJyb3ItaG92ZXIpO1xuICB9XG59XG5cbiNkYXRhZ3JpZC1tb2RhbCB7XG4gIC0taWRzLW1vZGFsLWNvbnRlbnQtcGFkZGluZzogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAtLWlkcy1tb2RhbC1oZWFkZXItcGFkZGluZzogdmFyKC0taWRzLXNwYWNlLXNtKSB2YXIoLS1pZHMtc3BhY2Utc20pIHZhcigtLWlkcy1zcGFjZS14cykgdmFyKC0taWRzLXNwYWNlLXNtKTtcbiAgLS1pZHMtcG9wdXAtZml0LWhlaWdodDogNDAwcHg7XG5cbiAgaWRzLXN3YXBwYWJsZS1pdGVtIHtcbiAgICAtLWlkcy1zd2FwcGFibGUtaXRlbS1jb2xvci1iYWNrZ3JvdW5kLXNlbGVjdGVkOiB2YXIoLS1pZHMtY29sb3ItYWNjZW50LWJsdWUtd2Vha2VzdCk7XG4gICAgLS1pZHMtc3dhcHBhYmxlLWl0ZW0tY29sb3ItdGV4dC1zZWxlY3RlZDogdmFyKC0taWRzLWNvbG9yLWZvcmVncm91bmQtZGVmYXVsdC1kZWZhdWx0KTtcblxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiB2YXIoLS1pZHMtZGF0YS1ncmlkLW1vZGFsLXJvdy1oZWlnaHQpO1xuICB9XG5cbiAgI2RhdGFncmlkLW1vZGFsLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiBjYWxjKHZhcigtLWlkcy1zcGFjZS0wNCkgKiAtMSk7XG4gIH1cblxuICBpZHMtc2VhcmNoLWZpZWxkIHtcbiAgICAtLWlkcy1pbnB1dC1jb2xvci1iYWNrZ3JvdW5kLWRlZmF1bHQ6IHZhcigtLWlkcy1jb2xvci1hY2NlbnQtbmV1dHJhbC13ZWFrZXN0KTtcbiAgICAtLWlkcy1zZWFyY2gtZmllbGQtY29sb3ItYmFja2dyb3VuZC1kZWZhdWx0OiB2YXIoLS1pZHMtY29sb3ItYWNjZW50LW5ldXRyYWwtd2Vha2VzdCk7XG4gICAgLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWRlZmF1bHQ6IHZhcigtLWlkcy1jb2xvci1hY2NlbnQtbmV1dHJhbC13ZWFrKTtcbiAgICAtLWlkcy1pbnB1dC1jb2xvci1ib3JkZXItaG92ZXI6IHZhcigtLWlkcy1jb2xvci1hY2NlbnQtbmV1dHJhbC13ZWFrKTtcbiAgICAtLWlkcy1pbnB1dC1jb2xvci1ib3JkZXItZm9jdXM6IHZhcigtLWlkcy1jb2xvci1hY2NlbnQtbmV1dHJhbC13ZWFrKTtcbiAgICAtLWlkcy1pbnB1dC1jb2xvci1ib3JkZXItc2hhZG93OiBub25lO1xuICAgIC0taWRzLXNlYXJjaC1maWVsZC1ib3JkZXItcmFkaXVzOiB2YXIoLS1pZHMtYm9yZGVyLXJhZGl1cy1ub25lKTtcbiAgICAtLWlkcy1zZWFyY2gtZmllbGQtYm9yZGVyLXdpZHRoOiB2YXIoLS1pZHMtYm9yZGVyLXdpZHRoLXNtKSB2YXIoLS1pZHMtYm9yZGVyLXdpZHRoLW5vbmUpO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogLThweDtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWlkcy1zcGFjZS0wOCkgKiAtMSk7XG4gICAgbWluLXdpZHRoOiAzMzBweDtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICBpZHMtdGV4dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBpZHMtc3dpdGNoIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiB2YXIoLS1pZHMtc3BhY2UtM3hzKTtcbiAgfVxuXG4gIGlkcy1zd2FwcGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmRhdGFncmlkLW1vZGFsLWNvbHVtbi1saXN0IHtcbiAgICAtLWlkcy1tb2RhbC1jb2x1bW4tbGlzdC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDE0cHgpO1xuXG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgbWF4LWhlaWdodDogdmFyKC0taWRzLW1vZGFsLWNvbHVtbi1saXN0LWhlaWdodCk7XG4gIH1cblxufVxuIiwiLy8gQnJlYWtwb2ludHMgLSB0aGlzIGNhbnQgYmUgdG9rZW5zXG4kYnJlYWtwb2ludC14eGw6IDE0NDBweDtcbiRicmVha3BvaW50LXhsOiAxMjgwcHg7XG4kYnJlYWtwb2ludC1sZzogMTAyNHB4O1xuJGJyZWFrcG9pbnQtbWQ6IDg0MHB4O1xuJGJyZWFrcG9pbnQtc206IDYwMHB4O1xuJGJyZWFrcG9pbnQteHM6IDMyMHB4O1xuXG4vLyBTZXRzIFRleHQgQW50aWFsaWFzaW5nXG5AbWl4aW4gYW50aWFsaWFzZWQge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuJHRyYW5zaXRpb24tbGVuZ3RoOiB2YXIoLS1pZHMtbW90aW9uLWR1cmF0aW9uKTtcbiR0cmFuc2l0aW9uLWVhc2U6IHZhcigtLWlkcy1tb3Rpb24tZWFzZSk7XG5cbi8vIHZlbmRvciBwcmVmaXhlZCB0cmFuc2l0aW9ucyBmb3IgcmVndWxhciBhdHRyaWJ1dGVzIChub24tdmVuZG9yIHByZWZpeGVkKVxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb25zLWxpc3QuLi4pIHtcbiAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXMge1xuICAgICN7JHByZWZpeH10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbnMtbGlzdDtcbiAgfVxufVxuXG4vLyBtYWtlIHRoZSB0ZXh0IGludmlzaWJsZSB2aXN1YWxseSBidXQgcmVhZGFibGUgYnkgc2NyZWVuIHJlYWRlcnNcbkBtaXhpbiBhdWRpYmxlKCkge1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBoZWlnaHQ6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBtaW4taGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG5cbi8vIENhbGN1bGF0ZSBzaXplIGluY2x1ZGluZyBib3JkZXJzIChub3QgZXhjbHVkaW5nKVxuQG1peGluIGJvcmRlci1ib3gge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufSJdfQ== */`;
2567
2567
 
2568
2568
  // src/components/ids-data-grid/ids-data-grid.ts
2569
2569
  var Base = ids_pager_mixin_default(
@@ -2583,7 +2583,7 @@ var Base = ids_pager_mixin_default(
2583
2583
  )
2584
2584
  )
2585
2585
  );
2586
- var _currentScroll, _header, _IdsDataGrid_instances, redrawBodyTemplate_fn, _lastSelectedRow, _lastShiftedRow, resetLastSelectedRow_fn, resetLastShiftedRow_fn, toggleSelectionInBetween_fn, getSelection_fn, attachEventHandlers_fn, attachKeyboardListeners_fn, setColumnWidths_fn, setFrozenColumnWidth_fn, calcMaxContentWidth_fn, _maxContentColumnWidths, reapplyDirtyStates_fn, setColumnGroupsWidth_fn, appendMissingRows_fn, _virtualScrollMaxRowsInDom, attachScrollEvents_fn, attachVirtualScrollEvent_fn, calculateColumnsOnscreen_fn, detachScrollEvents_fn, syncTreeHiddenStates_fn, handleTreeRowExpandCollapse_fn, recycleAllTreeRows_fn, handleVirtualScroll_fn, _customScrollEventCache, triggerCustomScrollEvent_fn, positionVirtualScrollWindow_fn, restoreScrollPosition_fn, scrollTo_fn, scrollToTreeRow_fn, scrollRowIntoView_fn, setVirtualScrollPaddingBottom_fn, scrollTreeRowIntoView_fn, recycleTreeRowsDown_fn, recycleTreeRowsUp_fn, recycleAllRows_fn, recycleTopRowsDown_fn, recycleBottomRowsUp_fn, saveCellOriginalValue_fn, updateCellDirtyState_fn, findParentRow_fn, findRootRow_fn, updateRowCount_fn, applyAutoFit_fn, removeAttachedMenus_fn, filterColumnList_fn;
2586
+ var _startSelectionCell, _endSelectionCell, _currentScroll, _header, _IdsDataGrid_instances, redrawBodyTemplate_fn, _lastSelectedRow, _lastShiftedRow, resetLastSelectedRow_fn, resetLastShiftedRow_fn, toggleSelectionInBetween_fn, getSelection_fn, attachEventHandlers_fn, attachDragSelection_fn, createSelectionBorder_fn, updateSelectionBorder_fn, attachKeyboardListeners_fn, setColumnWidths_fn, setFrozenColumnWidth_fn, calcMaxContentWidth_fn, reapplyDirtyStates_fn, setColumnGroupsWidth_fn, appendMissingRows_fn, _virtualScrollMaxRowsInDom, attachScrollEvents_fn, attachVirtualScrollEvent_fn, calculateColumnsOnscreen_fn, detachScrollEvents_fn, syncTreeHiddenStates_fn, handleTreeRowExpandCollapse_fn, recycleAllTreeRows_fn, handleVirtualScroll_fn, _customScrollEventCache, triggerCustomScrollEvent_fn, positionVirtualScrollWindow_fn, restoreScrollPosition_fn, scrollTo_fn, scrollToTreeRow_fn, scrollRowIntoView_fn, setVirtualScrollPaddingBottom_fn, scrollTreeRowIntoView_fn, recycleTreeRowsDown_fn, recycleTreeRowsUp_fn, recycleAllRows_fn, recycleTopRowsDown_fn, recycleBottomRowsUp_fn, saveCellOriginalValue_fn, updateCellDirtyState_fn, findParentRow_fn, findRootRow_fn, updateRowCount_fn, applyAutoFit_fn, removeAttachedMenus_fn, filterColumnList_fn, handleCopy_fn, handlePaste_fn;
2587
2587
  var IdsDataGrid = class extends Base {
2588
2588
  constructor() {
2589
2589
  super();
@@ -2599,6 +2599,7 @@ var IdsDataGrid = class extends Base {
2599
2599
  __publicField(this, "cacheCellPart", "P");
2600
2600
  __publicField(this, "initialized", false);
2601
2601
  __publicField(this, "isResizing", false);
2602
+ __publicField(this, "isSelecting", false);
2602
2603
  __publicField(this, "activeCell", {});
2603
2604
  __publicField(this, "lastActiveCell", {});
2604
2605
  __publicField(this, "autoFitSet", false);
@@ -2608,6 +2609,8 @@ var IdsDataGrid = class extends Base {
2608
2609
  __publicField(this, "openMenu", null);
2609
2610
  __publicField(this, "serverSideSelections", []);
2610
2611
  __publicField(this, "isRowDisabled");
2612
+ __privateAdd(this, _startSelectionCell);
2613
+ __privateAdd(this, _endSelectionCell);
2611
2614
  __privateAdd(this, _currentScroll, {
2612
2615
  top: NaN,
2613
2616
  left: NaN
@@ -2661,7 +2664,7 @@ var IdsDataGrid = class extends Base {
2661
2664
  __publicField(this, "onLocaleChange", () => {
2662
2665
  this.redraw();
2663
2666
  });
2664
- __privateAdd(this, _maxContentColumnWidths, {});
2667
+ __publicField(this, "maxContentColumnWidths", {});
2665
2668
  __privateAdd(this, _virtualScrollMaxRowsInDom, 100);
2666
2669
  __privateAdd(this, _customScrollEventCache, {});
2667
2670
  __publicField(this, "activeCellEditor");
@@ -2798,7 +2801,8 @@ var IdsDataGrid = class extends Base {
2798
2801
  attributes.SUPPRESS_ROW_DESELECTION,
2799
2802
  attributes.TREE_GRID,
2800
2803
  attributes.VIRTUAL_SCROLL,
2801
- attributes.UNIQUE_ID
2804
+ attributes.UNIQUE_ID,
2805
+ attributes.USE_FORMATTERS_FOR_SIZING
2802
2806
  ];
2803
2807
  }
2804
2808
  /**
@@ -2930,6 +2934,7 @@ var IdsDataGrid = class extends Base {
2930
2934
  __privateMethod(this, _IdsDataGrid_instances, handleVirtualScroll_fn).call(this, this.virtualScrollSettings.ROW_HEIGHT);
2931
2935
  requestAnimationFrame(() => __privateMethod(this, _IdsDataGrid_instances, attachScrollEvents_fn).call(this));
2932
2936
  }
2937
+ this.updateSelectedCells();
2933
2938
  }
2934
2939
  /**
2935
2940
  * Redraw the list by reapplying the template
@@ -2958,6 +2963,7 @@ var IdsDataGrid = class extends Base {
2958
2963
  }
2959
2964
  this.filters.attachFilterSettings();
2960
2965
  __privateMethod(this, _IdsDataGrid_instances, updateRowCount_fn).call(this);
2966
+ this.updateSelectedCells();
2961
2967
  this.toggleEmptyMessage();
2962
2968
  this.afterRedraw();
2963
2969
  if (this.virtualScroll && this.rows?.[0]?.rowIndex > 0) this.scrollRowIntoView(this.rows?.[0]?.rowIndex);
@@ -3046,6 +3052,23 @@ var IdsDataGrid = class extends Base {
3046
3052
  const row = this.rowByIndex(rowIdx);
3047
3053
  if (row) row.setAttribute(attributes.PART, stateName);
3048
3054
  }
3055
+ /**
3056
+ * Update the selection border.
3057
+ * @param {boolean} clearSelection True if selected cells should be cleared. Will clear only if there is a selection border
3058
+ */
3059
+ updateSelectionBorder(clearSelection = false) {
3060
+ const border = this.container?.querySelector(".selection-border");
3061
+ if (!(__privateGet(this, _startSelectionCell) && __privateGet(this, _endSelectionCell))) {
3062
+ if (border) border.style.display = "none";
3063
+ return;
3064
+ }
3065
+ if (clearSelection) {
3066
+ if (border) border.style.display = "none";
3067
+ this.deSelectAllRows();
3068
+ } else {
3069
+ __privateMethod(this, _IdsDataGrid_instances, updateSelectionBorder_fn).call(this, __privateGet(this, _startSelectionCell), __privateGet(this, _endSelectionCell));
3070
+ }
3071
+ }
3049
3072
  /**
3050
3073
  * Move a column to a new position. Use `columnIndex` to get the column by id.
3051
3074
  * @param {number} fromIndex The column index to movex
@@ -3084,11 +3107,21 @@ var IdsDataGrid = class extends Base {
3084
3107
  row.invalidCells[cellIndex].cell = toIndex;
3085
3108
  }
3086
3109
  });
3110
+ this.data.forEach((row) => {
3111
+ if (row.colSelected) {
3112
+ const prev = row.colSelected[correctFromIndex];
3113
+ row.colSelected.splice(correctFromIndex, 1);
3114
+ row.colSelected.splice(correctToIndex, 0, prev);
3115
+ }
3116
+ });
3087
3117
  resetEmptyMessageElements.apply(this);
3088
3118
  this.redraw();
3089
3119
  this.triggerEvent("columnmoved", this, { detail: { elem: this, fromIndex: correctFromIndex, toIndex: correctToIndex } });
3090
3120
  if (this.sortColumn) this.header?.setSortState(this.sortColumn.id, this.sortColumn.ascending);
3091
3121
  this.saveSettings?.();
3122
+ if (__privateGet(this, _startSelectionCell) || __privateGet(this, _endSelectionCell)) {
3123
+ this.deSelectAllRows();
3124
+ }
3092
3125
  }
3093
3126
  /**
3094
3127
  * Utility function to get padding for each rowHeight,
@@ -3361,6 +3394,9 @@ var IdsDataGrid = class extends Base {
3361
3394
  value[selectionIndex].formatter = this.formatters.selectionCheckbox;
3362
3395
  }
3363
3396
  }
3397
+ value.forEach((column) => {
3398
+ column.id = column.id.replace(/[^a-zA-Z0-9:_-]/g, "");
3399
+ });
3364
3400
  }
3365
3401
  this.resetCache();
3366
3402
  this.currentColumns = value || [{ id: "", name: "" }];
@@ -3413,9 +3449,11 @@ var IdsDataGrid = class extends Base {
3413
3449
  this.datasource.groupable = this.groupable;
3414
3450
  this.datasource.data = value;
3415
3451
  if (this.pager && this.pagination !== "server-side") this.pager.total = value.length;
3416
- if (this.initialized && this.columns.length && this.pagination !== "server-side" && Object.keys(__privateGet(this, _maxContentColumnWidths)).length === 0) {
3452
+ if (this.initialized && this.columns.length && this.pagination !== "server-side") {
3417
3453
  if (this.keepFilterConditions) filterConditions = this.filterConditions;
3418
3454
  this.redrawBody();
3455
+ this.maxContentColumnWidths = {};
3456
+ __privateMethod(this, _IdsDataGrid_instances, setColumnWidths_fn).call(this);
3419
3457
  __privateMethod(this, _IdsDataGrid_instances, updateRowCount_fn).call(this);
3420
3458
  this.syncPagerAfterDatasetChange();
3421
3459
  if (this.keepFilterConditions && filterConditions.length > 0) {
@@ -3430,7 +3468,7 @@ var IdsDataGrid = class extends Base {
3430
3468
  }
3431
3469
  this.initialized = true;
3432
3470
  if (this.pagination === "server-side") this.syncServerSelections();
3433
- __privateSet(this, _maxContentColumnWidths, {});
3471
+ this.maxContentColumnWidths = {};
3434
3472
  if (this.keepFilterConditions) filterConditions = this.filterConditions;
3435
3473
  this.redraw();
3436
3474
  this.restoreAllSettings?.();
@@ -3642,7 +3680,7 @@ var IdsDataGrid = class extends Base {
3642
3680
  this.setAttribute(attributes.ROW_HEIGHT, value);
3643
3681
  this.shadowRoot?.querySelector(".ids-data-grid")?.setAttribute("data-row-height", value);
3644
3682
  if (isNew) {
3645
- __privateSet(this, _maxContentColumnWidths, {});
3683
+ this.maxContentColumnWidths = {};
3646
3684
  __privateMethod(this, _IdsDataGrid_instances, setColumnWidths_fn).call(this);
3647
3685
  }
3648
3686
  } else {
@@ -3731,6 +3769,34 @@ var IdsDataGrid = class extends Base {
3731
3769
  get rowSelection() {
3732
3770
  return this.getAttribute(attributes.ROW_SELECTION) || false;
3733
3771
  }
3772
+ /**
3773
+ * Set the cell selection mode. Default is false.
3774
+ * @param {boolean} value True if drag selection will be used
3775
+ */
3776
+ set cellSelection(value) {
3777
+ if (stringToBool(value)) {
3778
+ this.setAttribute(attributes.CELL_SELECTION, String(value));
3779
+ } else {
3780
+ this.removeAttribute(attributes.CELL_SELECTION);
3781
+ }
3782
+ }
3783
+ get cellSelection() {
3784
+ return stringToBool(this.getAttribute(attributes.CELL_SELECTION));
3785
+ }
3786
+ /**
3787
+ * Set the column selection, true to add column header selection
3788
+ * @param {boolean} value selection mode to use
3789
+ */
3790
+ set colSelection(value) {
3791
+ if (stringToBool(value)) {
3792
+ this.setAttribute(attributes.COL_SELECTION, String(value));
3793
+ } else {
3794
+ this.removeAttribute(attributes.COL_SELECTION);
3795
+ }
3796
+ }
3797
+ get colSelection() {
3798
+ return stringToBool(this.getAttribute(attributes.COL_SELECTION));
3799
+ }
3734
3800
  /**
3735
3801
  * Set suppress empty message
3736
3802
  * @param {string|boolean} value The value
@@ -3807,6 +3873,77 @@ var IdsDataGrid = class extends Base {
3807
3873
  return [];
3808
3874
  });
3809
3875
  }
3876
+ /**
3877
+ * Map and boundary data on selected cells
3878
+ * @returns { object };
3879
+ */
3880
+ get selectedMap() {
3881
+ const bounds = {
3882
+ minRow: this.data.length,
3883
+ maxRow: -1,
3884
+ minCol: this.columns.length,
3885
+ maxCol: -1
3886
+ };
3887
+ const map = [];
3888
+ const getColIndex = (i) => this.rowSelection ? i + 1 : i;
3889
+ const updateBounds = (row, col) => {
3890
+ if (row < bounds.minRow) bounds.minRow = row;
3891
+ if (row > bounds.maxRow) bounds.maxRow = row;
3892
+ if (col < bounds.minCol) bounds.minCol = col;
3893
+ if (col > bounds.maxCol) bounds.maxCol = col;
3894
+ };
3895
+ const blankArr = Array(this.visibleColumns.length).fill(false);
3896
+ const columns = this.rowSelection ? this.visibleColumns.slice(1, this.visibleColumns.length) : this.visibleColumns;
3897
+ let count = 0;
3898
+ this.data.forEach((row, rowIndex) => {
3899
+ if (row.rowSelected) {
3900
+ updateBounds(rowIndex, 0);
3901
+ updateBounds(rowIndex, columns.length - 1);
3902
+ map.push(columns.map((column, colIndex) => ({
3903
+ row: rowIndex,
3904
+ col: colIndex,
3905
+ value: row[column.field || column.id],
3906
+ target: this.cellByIndex(rowIndex, getColIndex(colIndex))
3907
+ })));
3908
+ count += columns.length;
3909
+ } else if (row.colSelected) {
3910
+ const mapRow = [];
3911
+ row.colSelected.forEach((isSelected, colIndex) => {
3912
+ if (isSelected) {
3913
+ const column = this.visibleColumns[getColIndex(colIndex)];
3914
+ mapRow.push({
3915
+ row: rowIndex,
3916
+ col: colIndex,
3917
+ value: row[column.field || column.id],
3918
+ target: this.cellByIndex(rowIndex, getColIndex(colIndex))
3919
+ });
3920
+ count++;
3921
+ updateBounds(rowIndex, colIndex);
3922
+ } else {
3923
+ mapRow.push(false);
3924
+ }
3925
+ });
3926
+ map.push(mapRow);
3927
+ } else {
3928
+ map.push(blankArr);
3929
+ }
3930
+ });
3931
+ if (count === 0 && this.activeCell && this.activeCell.node) {
3932
+ bounds.minRow = this.activeCell.row;
3933
+ bounds.maxRow = this.activeCell.row;
3934
+ bounds.minCol = this.activeCell.cell;
3935
+ bounds.maxCol = this.activeCell.cell;
3936
+ const column = this.visibleColumns[getColIndex(this.activeCell.cell)];
3937
+ const value = this.data[this.activeCell.row] ? this.data[this.activeCell.row][column.field || column.id] : null;
3938
+ map[this.activeCell.row][this.activeCell.cell] = {
3939
+ value,
3940
+ row: this.activeCell.row,
3941
+ col: this.activeCell.cell,
3942
+ target: this.activeCell.node
3943
+ };
3944
+ }
3945
+ return { bounds, map };
3946
+ }
3810
3947
  /**
3811
3948
  * Get the selected rows across all pages, if a paged dataset is present
3812
3949
  * @returns {Array<object>} An array of all currently selected rows
@@ -3837,8 +3974,9 @@ var IdsDataGrid = class extends Base {
3837
3974
  * @param {boolean} isClear do not keep current data
3838
3975
  */
3839
3976
  updateDataset(row, data, isClear) {
3840
- if (!data[this.idColumn] && this.data[row]) {
3841
- data[this.idColumn] = this.data[row][this.idColumn];
3977
+ const idCol = this.idColumn || "id";
3978
+ if (!data[idCol] && this.data[row] && data[idCol] !== "") {
3979
+ data[idCol] = this.data[row][idCol];
3842
3980
  }
3843
3981
  if (row < this.data.length) {
3844
3982
  if (isClear) this.data[row] = data;
@@ -3875,6 +4013,24 @@ var IdsDataGrid = class extends Base {
3875
4013
  __privateMethod(this, _IdsDataGrid_instances, updateCellDirtyState_fn).call(this, existingRow, row, data);
3876
4014
  IdsDataGridCell.cellCache = {};
3877
4015
  this.rowByIndex(row)?.refreshRow();
4016
+ this.updateSelectedCells();
4017
+ }
4018
+ /**
4019
+ * Updates the selected status of the cells
4020
+ */
4021
+ updateSelectedCells() {
4022
+ const colSelectedCount = Array(this.visibleColumns.length).fill(0);
4023
+ this.data.forEach((row, rowIndex) => {
4024
+ if (row.colSelected) {
4025
+ row.colSelected.forEach((selected, colIndex) => {
4026
+ this.selectCell(rowIndex, colIndex, selected);
4027
+ colSelectedCount[colIndex] += selected ? 1 : 0;
4028
+ });
4029
+ }
4030
+ });
4031
+ colSelectedCount.forEach((selected, index) => {
4032
+ this.header?.setColumnCheckbox(index, selected >= this.rowCount);
4033
+ });
3878
4034
  }
3879
4035
  /**
3880
4036
  * Get the row HTMLElement
@@ -3957,6 +4113,9 @@ var IdsDataGrid = class extends Base {
3957
4113
  if (data === void 0) {
3958
4114
  data = {};
3959
4115
  }
4116
+ if (this.data[index]) {
4117
+ data.colSelected = this.data[index].colSelected;
4118
+ }
3960
4119
  this.updateDataset(index, data, true);
3961
4120
  this.datasource.refreshPreviousState();
3962
4121
  this.redrawBody();
@@ -4036,6 +4195,36 @@ var IdsDataGrid = class extends Base {
4036
4195
  if (this.groupSelectsChildren) row?.toggleChildRowSelection(true);
4037
4196
  this.header?.setHeaderCheckbox();
4038
4197
  }
4198
+ /**
4199
+ * Select all cells in that column
4200
+ * @param {number} colIndex Column index
4201
+ */
4202
+ selectColumn(colIndex) {
4203
+ this.columns[colIndex].isSelected = true;
4204
+ for (let rowIndex = 0; rowIndex < this.rowCount; rowIndex++) {
4205
+ this.selectCell(rowIndex, colIndex, true);
4206
+ }
4207
+ }
4208
+ /**
4209
+ * Set the cell to selected or unselected
4210
+ * @param {number} rowIndex Row index of the target cell
4211
+ * @param {number} colIndex Column index of the target cell
4212
+ * @param {boolean} isSelected True to select, false to deselect
4213
+ */
4214
+ selectCell(rowIndex, colIndex, isSelected) {
4215
+ const cell = this.cellByIndex(rowIndex, colIndex);
4216
+ let colSelected = this.data[rowIndex].colSelected;
4217
+ if (!colSelected) {
4218
+ colSelected = Array(this.columns.length).fill(false);
4219
+ }
4220
+ if (isSelected) {
4221
+ cell?.classList.add("selected");
4222
+ } else {
4223
+ cell?.classList.remove("selected");
4224
+ }
4225
+ colSelected[colIndex] = isSelected;
4226
+ this.updateDataset(rowIndex, { colSelected });
4227
+ }
4039
4228
  /**
4040
4229
  * Stores a record in server-side selections
4041
4230
  * @param {number} index the row number to select
@@ -4126,6 +4315,17 @@ var IdsDataGrid = class extends Base {
4126
4315
  if (this.groupSelectsChildren) row.toggleChildRowSelection(false);
4127
4316
  this.header?.setHeaderCheckbox();
4128
4317
  }
4318
+ /**
4319
+ * Deselect all the cell in the column
4320
+ * @param {number} colIndex Column index
4321
+ */
4322
+ deSelectColumn(colIndex) {
4323
+ this.columns[colIndex].isSelected = false;
4324
+ for (let rowIndex = 0; rowIndex < this.rowCount; rowIndex++) {
4325
+ this.selectCell(rowIndex, colIndex, false);
4326
+ }
4327
+ this.header?.setColumnCheckbox(colIndex, false);
4328
+ }
4129
4329
  /**
4130
4330
  * Removes a record from server-side selections
4131
4331
  * @param {number} index the row number to select
@@ -4220,6 +4420,11 @@ var IdsDataGrid = class extends Base {
4220
4420
  row.rowSelected = false;
4221
4421
  }
4222
4422
  });
4423
+ if (this.colSelection || this.cellSelection) {
4424
+ this.columns.forEach((_col, colIndex) => {
4425
+ this.deSelectColumn(colIndex);
4426
+ });
4427
+ }
4223
4428
  this.triggerEvent("selectionchanged", this, {
4224
4429
  detail: {
4225
4430
  elem: this,
@@ -4227,6 +4432,8 @@ var IdsDataGrid = class extends Base {
4227
4432
  }
4228
4433
  });
4229
4434
  this.header?.setHeaderCheckbox();
4435
+ __privateSet(this, _startSelectionCell, null);
4436
+ __privateSet(this, _endSelectionCell, null);
4230
4437
  }
4231
4438
  /**
4232
4439
  * Toggle the selection of all rows
@@ -4622,7 +4829,7 @@ var IdsDataGrid = class extends Base {
4622
4829
  format = format === "csv" || format === "xlsx" ? format : "xlsx";
4623
4830
  keepGridFormatting = format === "csv" ? true : keepGridFormatting;
4624
4831
  this.columns.forEach((gridCol) => {
4625
- if (gridCol.id && gridCol.field && gridCol.name) {
4832
+ if (gridCol.id && gridCol.field && gridCol.name && gridCol?.exportable !== false) {
4626
4833
  gridColCache[gridCol.id] = gridCol;
4627
4834
  xlColumns[gridCol.id] = {
4628
4835
  id: gridCol.id,
@@ -4756,6 +4963,8 @@ var IdsDataGrid = class extends Base {
4756
4963
  await modal.show();
4757
4964
  }
4758
4965
  };
4966
+ _startSelectionCell = new WeakMap();
4967
+ _endSelectionCell = new WeakMap();
4759
4968
  _currentScroll = new WeakMap();
4760
4969
  _header = new WeakMap();
4761
4970
  _IdsDataGrid_instances = new WeakSet();
@@ -4828,13 +5037,17 @@ getSelection_fn = function() {
4828
5037
  */
4829
5038
  attachEventHandlers_fn = function() {
4830
5039
  const body = this.body;
4831
- this.offEvent("mousedown.body", body);
4832
- this.onEvent("mousedown.body", body, (e) => {
4833
- const cell = e.target.closest("ids-data-grid-cell");
4834
- if (cell !== this.activeCell.node) {
4835
- e.preventDefault();
4836
- }
4837
- });
5040
+ if (this.cellSelection) {
5041
+ __privateMethod(this, _IdsDataGrid_instances, attachDragSelection_fn).call(this, body);
5042
+ } else {
5043
+ this.offEvent("mousedown.body", body);
5044
+ this.onEvent("mousedown.body", body, (e) => {
5045
+ const cell = e.target.closest("ids-data-grid-cell");
5046
+ if (cell !== this.activeCell.node) {
5047
+ e.preventDefault();
5048
+ }
5049
+ });
5050
+ }
4838
5051
  this.offEvent("click.body", body);
4839
5052
  this.onEvent("click.body", body, (e) => {
4840
5053
  let cell = e.target.closest("ids-data-grid-cell");
@@ -4842,7 +5055,15 @@ attachEventHandlers_fn = function() {
4842
5055
  cell = e.target.querySelector("ids-data-grid-cell");
4843
5056
  }
4844
5057
  if (!cell) return;
4845
- if (cell?.isEditing) return;
5058
+ if (cell?.isEditing) {
5059
+ if (cell?.tabIndex === 0) {
5060
+ return;
5061
+ }
5062
+ cell?.endCellEdit();
5063
+ }
5064
+ if (this.cellSelection) {
5065
+ this.deSelectAllRows();
5066
+ }
4846
5067
  const cellNum = Number(cell.getAttribute("aria-colindex")) - 1;
4847
5068
  const row = cell.parentNode;
4848
5069
  if (row.disabled) return;
@@ -4969,8 +5190,25 @@ attachEventHandlers_fn = function() {
4969
5190
  }
4970
5191
  if (this.editable && column.editor) {
4971
5192
  cell.startCellEdit(e);
5193
+ this.updateSelectionBorder(true);
4972
5194
  }
4973
5195
  });
5196
+ this.offEvent("copy.body", body);
5197
+ this.onEvent("copy.body", body, (e) => {
5198
+ __privateMethod(this, _IdsDataGrid_instances, handleCopy_fn).call(this, e);
5199
+ });
5200
+ this.offEvent("copy", this);
5201
+ this.onEvent("copy", this, (e) => {
5202
+ __privateMethod(this, _IdsDataGrid_instances, handleCopy_fn).call(this, e);
5203
+ });
5204
+ this.offEvent("paste.body", body);
5205
+ this.onEvent("paste.body", body, (e) => {
5206
+ __privateMethod(this, _IdsDataGrid_instances, handlePaste_fn).call(this, e);
5207
+ });
5208
+ this.offEvent("paste", this);
5209
+ this.onEvent("paste", this, (e) => {
5210
+ __privateMethod(this, _IdsDataGrid_instances, handlePaste_fn).call(this, e);
5211
+ });
4974
5212
  this.offEvent("dblclick.container", this.container);
4975
5213
  this.onEvent("dblclick.container", this.container, (e) => {
4976
5214
  if (e.target.classList?.contains("ids-data-grid-checkbox-container") && e.target.getAttribute("disabled") === "true") {
@@ -4989,6 +5227,124 @@ attachEventHandlers_fn = function() {
4989
5227
  this.filters?.attachFilterEventHandlers();
4990
5228
  this.attachSaveSettingsEventHandlers?.();
4991
5229
  };
5230
+ /**
5231
+ * Handle the drag and select behavior
5232
+ * @private
5233
+ * @param {HTMLElement | null} body Datagrid body
5234
+ */
5235
+ attachDragSelection_fn = function(body) {
5236
+ let isDragging = false;
5237
+ let deselectAllRows = true;
5238
+ let startCell = null;
5239
+ let prevBounds = null;
5240
+ let selectionBorder = null;
5241
+ this.offEvent("mousedown.body", body);
5242
+ this.onEvent("mousedown.body", body, (e) => {
5243
+ const cell = e.target.closest("ids-data-grid-cell");
5244
+ if (cell !== this.activeCell.node) {
5245
+ e.preventDefault();
5246
+ }
5247
+ if (!cell || cell.classList.contains("formatter-selectionCheckbox") || isDragging) return;
5248
+ if (selectionBorder) selectionBorder.style.display = "none";
5249
+ isDragging = true;
5250
+ startCell = {
5251
+ row: parseInt(cell.parentElement?.getAttribute("row-index") || "0"),
5252
+ col: parseInt(cell.getAttribute("aria-colindex") || "1") - 1,
5253
+ cell
5254
+ };
5255
+ });
5256
+ this.offEvent("mousemove.body", body);
5257
+ this.onEvent("mousemove.body", body, (e) => {
5258
+ const cell = e.target.closest("ids-data-grid-cell");
5259
+ if (!isDragging || !startCell || !cell) return;
5260
+ if (startCell && startCell.cell !== this.activeCell.node) {
5261
+ this.setActiveCell(startCell.col, startCell.row);
5262
+ }
5263
+ if (deselectAllRows) {
5264
+ this.deSelectAllRows();
5265
+ deselectAllRows = false;
5266
+ }
5267
+ const currentRow = parseInt(cell.parentElement?.getAttribute("row-index") || "0");
5268
+ const currentCol = parseInt(cell.getAttribute("aria-colindex") || "0") - 1;
5269
+ const bounds = {
5270
+ minRow: Math.min(startCell.row, currentRow),
5271
+ maxRow: Math.max(startCell.row, currentRow),
5272
+ minCol: Math.min(startCell.col, currentCol),
5273
+ maxCol: Math.max(startCell.col, currentCol)
5274
+ };
5275
+ const isSelected = (row, col) => {
5276
+ const c = this.cellByIndex(row, col);
5277
+ return c?.classList.contains("selected") || c?.parentElement?.classList.contains("selected") || false;
5278
+ };
5279
+ if (prevBounds) {
5280
+ for (let row = prevBounds.minRow; row <= prevBounds.maxRow; row++) {
5281
+ for (let col = prevBounds.minCol; col <= prevBounds.maxCol; col++) {
5282
+ const isOutside = row < bounds.minRow || row > bounds.maxRow || col < bounds.minCol || col > bounds.maxCol;
5283
+ if (isOutside) this.selectCell(row, col, false);
5284
+ }
5285
+ }
5286
+ }
5287
+ for (let row = bounds.minRow; row <= bounds.maxRow; row++) {
5288
+ for (let col = bounds.minCol; col <= bounds.maxCol; col++) {
5289
+ if (!isSelected(row, col)) this.selectCell(row, col, true);
5290
+ }
5291
+ }
5292
+ if (!selectionBorder) {
5293
+ selectionBorder = __privateMethod(this, _IdsDataGrid_instances, createSelectionBorder_fn).call(this);
5294
+ this.container?.appendChild(selectionBorder);
5295
+ } else {
5296
+ selectionBorder.style.display = "block";
5297
+ }
5298
+ __privateMethod(this, _IdsDataGrid_instances, updateSelectionBorder_fn).call(this, startCell.cell || cell, cell);
5299
+ prevBounds = bounds;
5300
+ });
5301
+ this.onEvent("mouseup.body", body, () => {
5302
+ isDragging = false;
5303
+ deselectAllRows = true;
5304
+ prevBounds = null;
5305
+ startCell = null;
5306
+ });
5307
+ this.onEvent("mouseleave", this.container, () => {
5308
+ isDragging = false;
5309
+ deselectAllRows = true;
5310
+ prevBounds = null;
5311
+ startCell = null;
5312
+ });
5313
+ };
5314
+ /**
5315
+ * Create the selection border when drag and selecting cells
5316
+ * @private
5317
+ * @returns {HTMLElement} The initial selection border element
5318
+ */
5319
+ createSelectionBorder_fn = function() {
5320
+ const border = document.createElement("div");
5321
+ border.classList.add("selection-border");
5322
+ return border;
5323
+ };
5324
+ /**
5325
+ * Update the size and position of the selection border as the mouse moves
5326
+ * @private
5327
+ * @param {HTMLElement} startCell Cell where selection started
5328
+ * @param {HTMLElement} endCell Current cell where the mouse is on
5329
+ */
5330
+ updateSelectionBorder_fn = function(startCell, endCell) {
5331
+ const border = this.container?.querySelector(".selection-border");
5332
+ if (!border) return;
5333
+ const startRect = startCell.getBoundingClientRect();
5334
+ const endRect = endCell.getBoundingClientRect();
5335
+ const containerRect = this.container?.getBoundingClientRect();
5336
+ if (!containerRect) return;
5337
+ const left = Math.min(startRect.left, endRect.left) - containerRect.left;
5338
+ const top = Math.min(startRect.top, endRect.top) - containerRect.top;
5339
+ const right = Math.max(startRect.right, endRect.right) - containerRect.left;
5340
+ const bottom = Math.max(startRect.bottom, endRect.bottom) - containerRect.top;
5341
+ border.style.left = `${left}px`;
5342
+ border.style.top = `${top}px`;
5343
+ border.style.width = `${right - left - 2}px`;
5344
+ border.style.height = `${bottom - top - 2}px`;
5345
+ __privateSet(this, _startSelectionCell, startCell);
5346
+ __privateSet(this, _endSelectionCell, endCell);
5347
+ };
4992
5348
  /**
4993
5349
  * Establish Internal Keyboard shortcuts
4994
5350
  * @private
@@ -5166,10 +5522,15 @@ attachKeyboardListeners_fn = function() {
5166
5522
  });
5167
5523
  this.offEvent("keydown.body", this);
5168
5524
  this.onEvent("keydown.body", this, (e) => {
5525
+ const isCtrlDown = e.ctrlKey || e.metaKey;
5526
+ const isKeyCopyPaste = e.key === "v" || e.key === "c";
5527
+ if (isCtrlDown && isKeyCopyPaste) return;
5169
5528
  const isPrintableKey = e.key.length === 1;
5170
5529
  if (!this.activeCellEditor && isPrintableKey && e.key !== " ") {
5171
5530
  const activeCell = this.activeCell?.node;
5172
- activeCell?.startCellEdit?.();
5531
+ if (activeCell?.tabIndex === 0) {
5532
+ activeCell?.startCellEdit?.();
5533
+ }
5173
5534
  const inputElem = this.activeCellEditor?.editor?.input;
5174
5535
  const columnSettings = activeCell?.column?.editor?.editorSettings;
5175
5536
  if (inputElem && columnSettings?.autoselect) {
@@ -5242,7 +5603,7 @@ setFrozenColumnWidth_fn = function() {
5242
5603
  };
5243
5604
  /* Calculate an array with maxContentWidth for each column */
5244
5605
  calcMaxContentWidth_fn = function() {
5245
- if (Object.keys(__privateGet(this, _maxContentColumnWidths)).length > 0) return __privateGet(this, _maxContentColumnWidths);
5606
+ if (Object.keys(this.maxContentColumnWidths).length > 0) return this.maxContentColumnWidths;
5246
5607
  const canvas = document.createElement("canvas");
5247
5608
  const context = canvas.getContext("2d");
5248
5609
  if (!context) return [];
@@ -5251,17 +5612,27 @@ calcMaxContentWidth_fn = function() {
5251
5612
  return context.measureText(text).width;
5252
5613
  };
5253
5614
  const rowsToProcess = this.virtualScroll ? this.virtualRows.slice(0, this.virtualScrollSettings.MAX_ROWS_IN_DOM) : this.data;
5254
- this.visibleColumns.forEach((column) => {
5615
+ this.visibleColumns.forEach((column, i) => {
5255
5616
  if (column.width === "max-content") {
5256
5617
  let maxWidth = measureTextWidth((column.name || "").toString(), "600 16px arial");
5257
5618
  if (this.data.length > 0) {
5258
5619
  rowsToProcess.forEach((row) => {
5259
- let cellText = row[column.field || ""] ? row[column.field || ""].toString() : "";
5260
- if (column?.formatter?.name === "dropdown" && column?.editor?.editorSettings?.options) {
5261
- const option = column.editor.editorSettings.options.find(
5262
- (opt) => opt.value.toString() === cellText
5263
- );
5264
- cellText = option?.label || cellText;
5620
+ let cellText = "";
5621
+ if (column.useValueForSizing !== false && column.formatter) {
5622
+ const formatterResult = typeof column.formatter === "function" && !column.formatter.hasOwnProperty("bind") ? column.formatter.call(this.formatters, row, column, i, this) : column.formatter(row, column, i, this);
5623
+ if (typeof formatterResult === "string") {
5624
+ cellText = formatterResult.replace(/<[^>]*>/g, "");
5625
+ } else {
5626
+ cellText = row[column.field || ""] ? row[column.field || ""].toString() : "";
5627
+ }
5628
+ } else {
5629
+ cellText = row[column.field || ""] ? row[column.field || ""].toString() : "";
5630
+ if (column?.formatter?.name === "dropdown" && column?.editor?.editorSettings?.options) {
5631
+ const option = column.editor.editorSettings.options.find(
5632
+ (opt) => opt.value.toString() === cellText
5633
+ );
5634
+ cellText = option?.label || cellText;
5635
+ }
5265
5636
  }
5266
5637
  const cellWidth = measureTextWidth(cellText, `400 16px arial`);
5267
5638
  if (cellWidth > maxWidth) {
@@ -5276,12 +5647,11 @@ calcMaxContentWidth_fn = function() {
5276
5647
  if (column?.filterType && !(Array.isArray(column.filterConditions) && column.filterConditions.length === 0)) {
5277
5648
  maxWidth = Math.max(maxWidth, 100);
5278
5649
  }
5279
- __privateGet(this, _maxContentColumnWidths)[column.id] = maxWidth + this.rowHeightPadding * 2 + extraPadding;
5650
+ this.maxContentColumnWidths[column.id] = maxWidth + this.rowHeightPadding * 2 + extraPadding;
5280
5651
  }
5281
5652
  });
5282
- return __privateGet(this, _maxContentColumnWidths);
5653
+ return this.maxContentColumnWidths;
5283
5654
  };
5284
- _maxContentColumnWidths = new WeakMap();
5285
5655
  /**
5286
5656
  * Reapply dirty states to cells after column visibility changes.
5287
5657
  * This ensures that dirty cell states are maintained in the correct positions
@@ -5816,6 +6186,7 @@ recycleBottomRowsUp_fn = function(rowCount) {
5816
6186
  * @param {Record<string, unknown>} data data The new data being applied to the row
5817
6187
  */
5818
6188
  saveCellOriginalValue_fn = function(existingRow, row, data) {
6189
+ if (!(existingRow && data)) return;
5819
6190
  Object.keys(data).forEach((field) => {
5820
6191
  if (existingRow[field] !== data[field]) {
5821
6192
  const columnIndex = this.columns.findIndex((col) => col.field === field);
@@ -5837,6 +6208,7 @@ saveCellOriginalValue_fn = function(existingRow, row, data) {
5837
6208
  * @param {Record<string, unknown>} data The new data being applied to the row
5838
6209
  */
5839
6210
  updateCellDirtyState_fn = function(existingRow, row, data) {
6211
+ if (!(existingRow && data)) return;
5840
6212
  Object.keys(data).forEach((field) => {
5841
6213
  if (existingRow[field] !== data[field]) {
5842
6214
  const fullColumnIndex = this.columnIdxById(field);
@@ -5934,6 +6306,87 @@ filterColumnList_fn = function(modal, value) {
5934
6306
  }
5935
6307
  });
5936
6308
  };
6309
+ /**
6310
+ * Handle the copy event
6311
+ * @private
6312
+ * @param {ClipboardEvent} e Clipboard event when copy is triggered
6313
+ */
6314
+ handleCopy_fn = function(e) {
6315
+ const selectedMap = this.selectedMap;
6316
+ const bounds = selectedMap.bounds;
6317
+ if (bounds.maxRow === -1) return;
6318
+ e.preventDefault();
6319
+ e.stopPropagation();
6320
+ const copyRows = [];
6321
+ for (let rowIndex = bounds.minRow; rowIndex <= bounds.maxRow; rowIndex++) {
6322
+ const rowData = [];
6323
+ for (let colIndex = bounds.minCol; colIndex <= bounds.maxCol; colIndex++) {
6324
+ const cell = selectedMap.map[rowIndex][colIndex];
6325
+ let copyValue = "";
6326
+ if (cell) {
6327
+ copyValue = cell.target?.value ? cell.target.value : cell.value;
6328
+ }
6329
+ rowData.push(copyValue);
6330
+ }
6331
+ copyRows.push(rowData.join(" "));
6332
+ }
6333
+ e.clipboardData?.setData("text/plain", copyRows.join("\n"));
6334
+ };
6335
+ /**
6336
+ * Handle the paste event
6337
+ * @private
6338
+ * @param {ClipboardEvent} e Clipboard event when paste is triggered
6339
+ */
6340
+ handlePaste_fn = function(e) {
6341
+ const selectedMap = this.selectedMap;
6342
+ if (selectedMap.bounds.maxRow === -1) return;
6343
+ e.preventDefault();
6344
+ e.stopPropagation();
6345
+ const pasteData = e.clipboardData?.getData("text/plain") || "";
6346
+ const pasteRows = pasteData.split(/\r\n|\n|\r/).map((row) => row.split(" "));
6347
+ const columns = this.rowSelection ? this.visibleColumns.slice(1, this.visibleColumns.length) : this.visibleColumns;
6348
+ const bounds = selectedMap.bounds;
6349
+ const activeCell = this.activeCell.node;
6350
+ if (this.activeCellEditor && this.activeCellCanClose()) {
6351
+ activeCell.cancelCellEdit();
6352
+ activeCell.focus();
6353
+ }
6354
+ if (bounds.maxRow === -1) {
6355
+ bounds.minRow = parseInt(activeCell.parentElement?.getAttribute("row-index") || "0");
6356
+ bounds.minCol = parseInt(activeCell.getAttribute("aria-colindex") || "0") - 1;
6357
+ bounds.minCol = this.rowSelection ? bounds.minCol - 1 : bounds.minCol;
6358
+ }
6359
+ let pRow = 0;
6360
+ let pCol;
6361
+ let shouldUpdate;
6362
+ for (let rowIndex = bounds.minRow; rowIndex <= this.data.length && pRow < pasteRows.length; rowIndex++) {
6363
+ pCol = 0;
6364
+ shouldUpdate = false;
6365
+ const updateData = { ...this.data[rowIndex] };
6366
+ for (let colIndex = bounds.minCol; colIndex <= this.columns.length && pCol < pasteRows[pRow].length; colIndex++) {
6367
+ const column = columns[colIndex];
6368
+ if (!column) continue;
6369
+ const cell = this.cellByIndex(rowIndex, this.rowSelection ? colIndex + 1 : colIndex);
6370
+ const cellEditable = !(cell?.classList.contains("is-readonly") || cell?.classList.contains("is-disabled")) && column.editor;
6371
+ if (cellEditable && pasteRows[pRow][pCol].length > 0) {
6372
+ let pasteValue = pasteRows[pRow][pCol];
6373
+ if (column.editor && column.editor.editorSettings) {
6374
+ const settings = column.editor.editorSettings;
6375
+ if (settings.maxlength) {
6376
+ pasteValue = pasteValue.substring(0, settings.maxlength);
6377
+ }
6378
+ }
6379
+ shouldUpdate = true;
6380
+ updateData[column.field || column.id] = pasteValue;
6381
+ }
6382
+ pCol++;
6383
+ }
6384
+ if (shouldUpdate) {
6385
+ this.updateDatasetAndRefresh(rowIndex, updateData);
6386
+ }
6387
+ pRow++;
6388
+ }
6389
+ };
5937
6390
  IdsDataGrid = __decorateClass([
5938
6391
  customElement("ids-data-grid"),
5939
6392
  scss(ids_data_grid_default)
@@ -5942,4 +6395,4 @@ IdsDataGrid = __decorateClass([
5942
6395
  export {
5943
6396
  IdsDataGrid
5944
6397
  };
5945
- //# sourceMappingURL=ids-chunk-I2ASBBR3-full.js.map
6398
+ //# sourceMappingURL=ids-chunk-536JFLJC-full.js.map