qms-angular 1.0.86 → 1.0.89

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 (289) hide show
  1. package/README.md +5 -1
  2. package/bundles/qms-angular.umd.js +6943 -219
  3. package/bundles/qms-angular.umd.js.map +1 -1
  4. package/esm2015/lib/components/badges/qms-badges.component.js +1 -1
  5. package/esm2015/lib/components/banner/qms-banner/qms-banner.component.js +1 -1
  6. package/esm2015/lib/components/banner/qms-banner-confirm/qms-banner-confirm.component.js +1 -1
  7. package/esm2015/lib/components/banner/qms-banner-loading/qms-banner-loading.component.js +1 -1
  8. package/esm2015/lib/components/button/button-toggle.js +1 -1
  9. package/esm2015/lib/components/button/button.js +3 -3
  10. package/esm2015/lib/components/comment/comment.js +6 -3
  11. package/esm2015/lib/components/dialog/dialog.js +2 -2
  12. package/esm2015/lib/components/list/list.js +2 -2
  13. package/esm2015/lib/components/qms-navigation-drawer/qms-navigation-drawer.component.js +3 -3
  14. package/esm2015/lib/components/qms-paginator/qms-paginator.component.js +16 -7
  15. package/esm2015/lib/components/related/content/related-content.component.js +2 -2
  16. package/esm2015/lib/components/related/list-other-related/list-related.component.js +1 -1
  17. package/esm2015/lib/components/related/risk/list/list.component.js +1 -1
  18. package/esm2015/lib/components/related/risk/result/result.component.js +1 -1
  19. package/esm2015/lib/components/rich-text/rich-text.js +1 -1
  20. package/esm2015/lib/components/table/table-action.js +2 -2
  21. package/esm2015/lib/components/table/table.module.js +4 -4
  22. package/esm2015/lib/components/tooltip/tooltip.js +1 -1
  23. package/esm2015/lib/components/tree/tree.component.js +1 -1
  24. package/esm2015/lib/components/treeNew/tree.component.js +18 -2
  25. package/esm2015/lib/directives/file-upload/file-upload-multiple-selector.directive.js +3 -1
  26. package/esm2015/lib/directives/file-upload/file-upload-selector.directive.js +3 -1
  27. package/esm2015/lib/directives/file-upload/file-upload.directive.js +1 -1
  28. package/esm2015/lib/directives/text-truncate/text-truncate.directive.js +58 -0
  29. package/esm2015/lib/model/en.js +63 -2
  30. package/esm2015/lib/model/no.js +63 -2
  31. package/esm2015/lib/qms-angular.module.js +4 -1
  32. package/esm2015/lib/qms-ckeditor-components/common/flowchart/config/halo.function.js +87 -0
  33. package/esm2015/lib/qms-ckeditor-components/common/flowchart/config/inspector.function.js +3767 -0
  34. package/esm2015/lib/qms-ckeditor-components/common/flowchart/config/selection.function.js +56 -0
  35. package/esm2015/lib/qms-ckeditor-components/common/flowchart/config/stencil.function.js +1003 -0
  36. package/esm2015/lib/qms-ckeditor-components/common/flowchart/config/toolbar.function.js +302 -0
  37. package/esm2015/lib/qms-ckeditor-components/common/flowchart/models/app-shapes.js +320 -0
  38. package/esm2015/lib/qms-ckeditor-components/common/flowchart/service/keyboard-service.js +69 -0
  39. package/esm2015/lib/qms-ckeditor-components/common/flowchart/service/kitchensink-service.js +412 -0
  40. package/esm2015/lib/qms-ckeditor-components/common/flowchart/themes/theme-picker.js +80 -0
  41. package/esm2015/lib/qms-ckeditor-components/common/functions/common.function.js +34 -1
  42. package/esm2015/lib/qms-ckeditor-components/common/models/qms-ckeditor-save-as-template.model.js +1 -1
  43. package/esm2015/lib/qms-ckeditor-components/common/module/confirm/qms-ckeditor-confirm.component.js +3 -3
  44. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-about/qms-ckeditor-about.component.js +1 -1
  45. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-bpmn/qms-ckeditor-bpmn.component.js +2 -2
  46. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-bpmn/save-template/save-template.component.js +2 -2
  47. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-flowchart/qms-ckeditor-flowchart.component.js +317 -0
  48. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-imagemap/qms-ckeditor-imagemap.component.js +3 -3
  49. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-link/attachments/link-attachment.component.js +3 -3
  50. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-link/qms-ckeditor-link.component.js +3 -3
  51. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-load-template/qms-ckeditor-load-template.component.js +3 -3
  52. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-relation/qmsckeditor-related.component.js +3 -3
  53. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-template/qms-ckeditor-template.component.js +3 -3
  54. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-tooltip/qms-ckeditor-tooltip.component.js +3 -3
  55. package/esm2015/lib/qms-ckeditor-components/qms-ckeditor.component.js +35 -3
  56. package/esm2015/lib/qms-ckeditor-components/qms-ckeditor.module.js +4 -2
  57. package/esm2015/public-api.js +8 -1
  58. package/esm2015/qms-angular.js +2 -1
  59. package/fesm2015/qms-angular.js +6882 -213
  60. package/fesm2015/qms-angular.js.map +1 -1
  61. package/lib/components/comment/comment.d.ts +1 -0
  62. package/lib/components/qms-paginator/qms-paginator.component.d.ts +1 -0
  63. package/lib/components/treeNew/tree.component.d.ts +1 -0
  64. package/lib/directives/text-truncate/text-truncate.directive.d.ts +15 -0
  65. package/lib/model/en.d.ts +61 -0
  66. package/lib/model/no.d.ts +61 -0
  67. package/lib/qms-ckeditor-components/common/flowchart/config/halo.function.d.ts +37 -0
  68. package/lib/qms-ckeditor-components/common/flowchart/config/inspector.function.d.ts +7 -0
  69. package/lib/qms-ckeditor-components/common/flowchart/config/selection.function.d.ts +39 -0
  70. package/lib/qms-ckeditor-components/common/flowchart/config/stencil.function.d.ts +11 -0
  71. package/lib/qms-ckeditor-components/common/flowchart/config/toolbar.function.d.ts +224 -0
  72. package/lib/qms-ckeditor-components/common/flowchart/models/app-shapes.d.ts +58 -0
  73. package/lib/qms-ckeditor-components/common/flowchart/service/keyboard-service.d.ts +16 -0
  74. package/lib/qms-ckeditor-components/common/flowchart/service/kitchensink-service.d.ts +56 -0
  75. package/lib/qms-ckeditor-components/common/flowchart/themes/theme-picker.d.ts +35 -0
  76. package/lib/qms-ckeditor-components/common/functions/common.function.d.ts +12 -0
  77. package/lib/qms-ckeditor-components/common/models/qms-ckeditor-save-as-template.model.d.ts +2 -0
  78. package/lib/qms-ckeditor-components/components/qms-ckeditor-flowchart/qms-ckeditor-flowchart.component.d.ts +41 -0
  79. package/lib/qms-ckeditor-components/qms-ckeditor.component.d.ts +4 -0
  80. package/lib.theme.scss +179 -0
  81. package/package.json +1 -1
  82. package/public-api.d.ts +7 -0
  83. package/qms-angular.d.ts +1 -0
  84. package/qms-angular.metadata.json +1 -1
  85. package/src/assets/fonts/Material/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2 +0 -0
  86. package/src/assets/fonts/Material/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUce.woff2 +0 -0
  87. package/src/assets/fonts/OpenSans/mem8YaGs126MiZpBA-UFUZ0bbck.woff2 +0 -0
  88. package/src/assets/fonts/OpenSans/mem8YaGs126MiZpBA-UFVZ0b.woff2 +0 -0
  89. package/src/assets/fonts/OpenSans/mem8YaGs126MiZpBA-UFVp0bbck.woff2 +0 -0
  90. package/src/assets/fonts/OpenSans/mem8YaGs126MiZpBA-UFW50bbck.woff2 +0 -0
  91. package/src/assets/fonts/OpenSans/mem8YaGs126MiZpBA-UFWJ0bbck.woff2 +0 -0
  92. package/src/assets/fonts/OpenSans/mem8YaGs126MiZpBA-UFWZ0bbck.woff2 +0 -0
  93. package/src/assets/fonts/OpenSans/mem8YaGs126MiZpBA-UFWp0bbck.woff2 +0 -0
  94. package/src/assets/fonts/Raleway/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCFPrEHJA.woff2 +0 -0
  95. package/src/assets/fonts/Raleway/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCGPrEHJA.woff2 +0 -0
  96. package/src/assets/fonts/Raleway/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCHPrEHJA.woff2 +0 -0
  97. package/src/assets/fonts/Raleway/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrE.woff2 +0 -0
  98. package/src/assets/fonts/Raleway/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCMPrEHJA.woff2 +0 -0
  99. package/src/assets/jointjs/images/delete-icon-modern.png +0 -0
  100. package/src/assets/jointjs/images/reset-icon-modern.png +0 -0
  101. package/src/assets/jointjs/images/save-icon-modern.png +0 -0
  102. package/src/assets/jointjs/images/to-front-icon-modern.png +0 -0
  103. package/src/assets/jointjs/images/toback-icon-modern.png +0 -0
  104. package/src/assets/jointjs/images/toolbar-icons-material.png +0 -0
  105. package/src/assets/jointjs/images/toolbar-icons-modern.png +0 -0
  106. package/src/assets/jointjs/scss/rappid.scss +326 -0
  107. package/src/assets/jointjs/scss/theme-picker.scss +22 -0
  108. package/src/assets/qms-ckeditor-plugin/build/ckeditor.js +1 -1
  109. package/src/assets/qms-ckeditor-plugin/build/ckeditor.js.map +1 -1
  110. package/src/assets/qms-ckeditor-plugin/build/translations/ar.js +1 -1
  111. package/src/assets/qms-ckeditor-plugin/build/translations/az.js +1 -1
  112. package/src/assets/qms-ckeditor-plugin/build/translations/bg.js +1 -1
  113. package/src/assets/qms-ckeditor-plugin/build/translations/ca.js +1 -1
  114. package/src/assets/qms-ckeditor-plugin/build/translations/cs.js +1 -1
  115. package/src/assets/qms-ckeditor-plugin/build/translations/da.js +1 -1
  116. package/src/assets/qms-ckeditor-plugin/build/translations/de-ch.js +1 -1
  117. package/src/assets/qms-ckeditor-plugin/build/translations/de.js +1 -1
  118. package/src/assets/qms-ckeditor-plugin/build/translations/el.js +1 -1
  119. package/src/assets/qms-ckeditor-plugin/build/translations/en-au.js +1 -1
  120. package/src/assets/qms-ckeditor-plugin/build/translations/en-gb.js +1 -1
  121. package/src/assets/qms-ckeditor-plugin/build/translations/eo.js +1 -1
  122. package/src/assets/qms-ckeditor-plugin/build/translations/es.js +1 -1
  123. package/src/assets/qms-ckeditor-plugin/build/translations/et.js +1 -1
  124. package/src/assets/qms-ckeditor-plugin/build/translations/eu.js +1 -1
  125. package/src/assets/qms-ckeditor-plugin/build/translations/fa.js +1 -1
  126. package/src/assets/qms-ckeditor-plugin/build/translations/fi.js +1 -1
  127. package/src/assets/qms-ckeditor-plugin/build/translations/fr.js +1 -1
  128. package/src/assets/qms-ckeditor-plugin/build/translations/gl.js +1 -1
  129. package/src/assets/qms-ckeditor-plugin/build/translations/he.js +1 -1
  130. package/src/assets/qms-ckeditor-plugin/build/translations/hi.js +1 -1
  131. package/src/assets/qms-ckeditor-plugin/build/translations/hr.js +1 -1
  132. package/src/assets/qms-ckeditor-plugin/build/translations/hu.js +1 -1
  133. package/src/assets/qms-ckeditor-plugin/build/translations/id.js +1 -1
  134. package/src/assets/qms-ckeditor-plugin/build/translations/it.js +1 -1
  135. package/src/assets/qms-ckeditor-plugin/build/translations/ja.js +1 -1
  136. package/src/assets/qms-ckeditor-plugin/build/translations/km.js +1 -1
  137. package/src/assets/qms-ckeditor-plugin/build/translations/kn.js +1 -1
  138. package/src/assets/qms-ckeditor-plugin/build/translations/ko.js +1 -1
  139. package/src/assets/qms-ckeditor-plugin/build/translations/ku.js +1 -1
  140. package/src/assets/qms-ckeditor-plugin/build/translations/lt.js +1 -1
  141. package/src/assets/qms-ckeditor-plugin/build/translations/lv.js +1 -1
  142. package/src/assets/qms-ckeditor-plugin/build/translations/nb.js +1 -1
  143. package/src/assets/qms-ckeditor-plugin/build/translations/ne.js +1 -1
  144. package/src/assets/qms-ckeditor-plugin/build/translations/nl.js +1 -1
  145. package/src/assets/qms-ckeditor-plugin/build/translations/no.js +1 -1
  146. package/src/assets/qms-ckeditor-plugin/build/translations/pl.js +1 -1
  147. package/src/assets/qms-ckeditor-plugin/build/translations/pt-br.js +1 -1
  148. package/src/assets/qms-ckeditor-plugin/build/translations/pt.js +1 -1
  149. package/src/assets/qms-ckeditor-plugin/build/translations/ro.js +1 -1
  150. package/src/assets/qms-ckeditor-plugin/build/translations/ru.js +1 -1
  151. package/src/assets/qms-ckeditor-plugin/build/translations/sk.js +1 -1
  152. package/src/assets/qms-ckeditor-plugin/build/translations/sl.js +1 -1
  153. package/src/assets/qms-ckeditor-plugin/build/translations/sq.js +1 -1
  154. package/src/assets/qms-ckeditor-plugin/build/translations/sr-latn.js +1 -1
  155. package/src/assets/qms-ckeditor-plugin/build/translations/sr.js +1 -1
  156. package/src/assets/qms-ckeditor-plugin/build/translations/sv.js +1 -1
  157. package/src/assets/qms-ckeditor-plugin/build/translations/th.js +1 -1
  158. package/src/assets/qms-ckeditor-plugin/build/translations/tk.js +1 -1
  159. package/src/assets/qms-ckeditor-plugin/build/translations/tr.js +1 -1
  160. package/src/assets/qms-ckeditor-plugin/build/translations/ug.js +1 -1
  161. package/src/assets/qms-ckeditor-plugin/build/translations/uk.js +1 -1
  162. package/src/assets/qms-ckeditor-plugin/build/translations/vi.js +1 -1
  163. package/src/assets/qms-ckeditor-plugin/build/translations/zh-cn.js +1 -1
  164. package/src/assets/qms-ckeditor-plugin/build/translations/zh.js +1 -1
  165. package/src/assets/qms-ckeditor-plugin/package-lock.json +12632 -345
  166. package/src/assets/qms-ckeditor-plugin/package.json +0 -2
  167. package/src/assets/qms-ckeditor-plugin/src/ckeditor.js +8 -8
  168. package/src/assets/qms-ckeditor-plugin/src/plugins/common/qmsCKEditorService.js +9 -0
  169. package/src/assets/qms-ckeditor-plugin/src/plugins/flowchart/flowchartdialogcommand.js +47 -0
  170. package/src/assets/qms-ckeditor-plugin/src/plugins/flowchart/qmsCKEditorFlowchartPlugin.js +30 -0
  171. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/heading.js +119 -0
  172. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/headingbuttonsui.js +103 -0
  173. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/headingcommand.js +96 -0
  174. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/headingediting.js +163 -0
  175. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/headingui.js +115 -0
  176. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/index.js +22 -0
  177. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/theme/heading.css +35 -0
  178. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/theme/icons/heading1.svg +1 -0
  179. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/theme/icons/heading2.svg +1 -0
  180. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/theme/icons/heading3.svg +1 -0
  181. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/theme/icons/heading4.svg +1 -0
  182. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/theme/icons/heading5.svg +1 -0
  183. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/theme/icons/heading6.svg +1 -0
  184. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/title.js +598 -0
  185. package/src/assets/qms-ckeditor-plugin/src/plugins/heading/utils.js +42 -0
  186. package/src/assets/qms-ckeditor-plugin/src/plugins/table/commands/insertcolumncommand.js +83 -0
  187. package/src/assets/qms-ckeditor-plugin/src/plugins/table/commands/insertrowcommand.js +82 -0
  188. package/src/assets/qms-ckeditor-plugin/src/plugins/table/commands/inserttablecommand.js +76 -0
  189. package/src/assets/qms-ckeditor-plugin/src/plugins/table/commands/mergecellcommand.js +272 -0
  190. package/src/assets/qms-ckeditor-plugin/src/plugins/table/commands/mergecellscommand.js +122 -0
  191. package/src/assets/qms-ckeditor-plugin/src/plugins/table/commands/removecolumncommand.js +122 -0
  192. package/src/assets/qms-ckeditor-plugin/src/plugins/table/commands/removerowcommand.js +97 -0
  193. package/src/assets/qms-ckeditor-plugin/src/plugins/table/commands/selectcolumncommand.js +63 -0
  194. package/src/assets/qms-ckeditor-plugin/src/plugins/table/commands/selectrowcommand.js +56 -0
  195. package/src/assets/qms-ckeditor-plugin/src/plugins/table/commands/setheadercolumncommand.js +95 -0
  196. package/src/assets/qms-ckeditor-plugin/src/plugins/table/commands/setheaderrowcommand.js +105 -0
  197. package/src/assets/qms-ckeditor-plugin/src/plugins/table/commands/splitcellcommand.js +68 -0
  198. package/src/assets/qms-ckeditor-plugin/src/plugins/table/converters/downcast.js +529 -0
  199. package/src/assets/qms-ckeditor-plugin/src/plugins/table/converters/table-cell-paragraph-post-fixer.js +136 -0
  200. package/src/assets/qms-ckeditor-plugin/src/plugins/table/converters/table-cell-refresh-post-fixer.js +75 -0
  201. package/src/assets/qms-ckeditor-plugin/src/plugins/table/converters/table-heading-rows-refresh-post-fixer.js +55 -0
  202. package/src/assets/qms-ckeditor-plugin/src/plugins/table/converters/table-layout-post-fixer.js +399 -0
  203. package/src/assets/qms-ckeditor-plugin/src/plugins/table/converters/tableproperties.js +126 -0
  204. package/src/assets/qms-ckeditor-plugin/src/plugins/table/converters/upcasttable.js +211 -0
  205. package/src/assets/qms-ckeditor-plugin/src/plugins/table/index.js +42 -0
  206. package/src/assets/qms-ckeditor-plugin/src/plugins/table/table.js +103 -0
  207. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties/commands/tablecellbackgroundcolorcommand.js +35 -0
  208. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties/commands/tablecellbordercolorcommand.js +47 -0
  209. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties/commands/tablecellborderstylecommand.js +47 -0
  210. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties/commands/tablecellborderwidthcommand.js +62 -0
  211. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties/commands/tablecellheightcommand.js +51 -0
  212. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties/commands/tablecellhorizontalalignmentcommand.js +35 -0
  213. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties/commands/tablecellpaddingcommand.js +62 -0
  214. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties/commands/tablecellpropertycommand.js +110 -0
  215. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties/commands/tablecellverticalalignmentcommand.js +43 -0
  216. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties/commands/tablecellwidthcommand.js +51 -0
  217. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties/tablecellpropertiesediting.js +204 -0
  218. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties/tablecellpropertiesui.js +401 -0
  219. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties/ui/tablecellpropertiesview.js +829 -0
  220. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablecellproperties.js +80 -0
  221. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableclipboard.js +586 -0
  222. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableediting.js +160 -0
  223. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablekeyboard.js +343 -0
  224. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablemouse/mouseeventsobserver.js +72 -0
  225. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablemouse.js +218 -0
  226. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableproperties/commands/tablealignmentcommand.js +35 -0
  227. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableproperties/commands/tablebackgroundcolorcommand.js +35 -0
  228. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableproperties/commands/tablebordercolorcommand.js +47 -0
  229. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableproperties/commands/tableborderstylecommand.js +47 -0
  230. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableproperties/commands/tableborderwidthcommand.js +62 -0
  231. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableproperties/commands/tableheightcommand.js +51 -0
  232. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableproperties/commands/tablepropertycommand.js +98 -0
  233. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableproperties/commands/tablewidthcommand.js +51 -0
  234. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableproperties/tablepropertiesediting.js +182 -0
  235. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableproperties/tablepropertiesui.js +397 -0
  236. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableproperties/ui/tablepropertiesview.js +714 -0
  237. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableproperties.js +81 -0
  238. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableselection.js +357 -0
  239. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tabletoolbar.js +111 -0
  240. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableui.js +359 -0
  241. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tableutils.js +909 -0
  242. package/src/assets/qms-ckeditor-plugin/src/plugins/table/tablewalker.js +538 -0
  243. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/colorinput.css +39 -0
  244. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/form.css +11 -0
  245. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/formrow.css +23 -0
  246. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/icons/table-cell-properties.svg +1 -0
  247. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/icons/table-column.svg +1 -0
  248. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/icons/table-merge-cell.svg +1 -0
  249. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/icons/table-properties.svg +1 -0
  250. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/icons/table-row.svg +1 -0
  251. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/icons/table.svg +1 -0
  252. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/inserttable.css +10 -0
  253. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/snippet.css +3876 -0
  254. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/table.css +67 -0
  255. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/tablecaption.css +53 -0
  256. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/tablecellproperties.css +28 -0
  257. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/tableediting.css +10 -0
  258. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/tableform.css +59 -0
  259. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/tableproperties.css +18 -0
  260. package/src/assets/qms-ckeditor-plugin/src/plugins/table/theme/tableselection.css +10 -0
  261. package/src/assets/qms-ckeditor-plugin/src/plugins/table/ui/colorinputview.js +343 -0
  262. package/src/assets/qms-ckeditor-plugin/src/plugins/table/ui/formrowview.js +103 -0
  263. package/src/assets/qms-ckeditor-plugin/src/plugins/table/ui/inserttableview.js +222 -0
  264. package/src/assets/qms-ckeditor-plugin/src/plugins/table/utils/common.js +57 -0
  265. package/src/assets/qms-ckeditor-plugin/src/plugins/table/utils/selection.js +276 -0
  266. package/src/assets/qms-ckeditor-plugin/src/plugins/table/utils/structure.js +543 -0
  267. package/src/assets/qms-ckeditor-plugin/src/plugins/table/utils/table-properties.js +66 -0
  268. package/src/assets/qms-ckeditor-plugin/src/plugins/table/utils/ui/contextualballoon.js +130 -0
  269. package/src/assets/qms-ckeditor-plugin/src/plugins/table/utils/ui/table-properties.js +397 -0
  270. package/src/assets/qms-ckeditor-plugin/src/plugins/table/utils/ui/widget.js +62 -0
  271. package/src/assets/qms-ckeditor-plugin/src/themes/icons/flowchart.svg +507 -0
  272. package/src/lib/components/comment/comment.scss +1 -0
  273. package/src/lib/components/qms-navigation-drawer/qms-navigation-drawer.component.scss +1 -0
  274. package/src/lib/components/qms-paginator/qms-paginator.component.scss +4 -1
  275. package/src/lib/qms-ckeditor-components/common/flowchart/assets/image-icon1.svg +1 -0
  276. package/src/lib/qms-ckeditor-components/common/flowchart/assets/image-icon2.svg +6 -0
  277. package/src/lib/qms-ckeditor-components/common/flowchart/assets/image-icon3.svg +11 -0
  278. package/src/lib/qms-ckeditor-components/common/flowchart/assets/image-icon4.svg +8 -0
  279. package/src/lib/qms-ckeditor-components/common/flowchart/assets/member-female.png +0 -0
  280. package/src/lib/qms-ckeditor-components/common/flowchart/assets/member-male.png +0 -0
  281. package/src/lib/qms-ckeditor-components/common/flowchart/assets/no-color-icon.svg +72 -0
  282. package/src/lib/qms-ckeditor-components/common/flowchart/assets/toolbar-icons-material.png +0 -0
  283. package/src/lib/qms-ckeditor-components/common/flowchart/assets/toolbar-icons-modern.png +0 -0
  284. package/src/lib/qms-ckeditor-components/common/flowchart/assets/transparent-icon.svg +50 -0
  285. package/src/lib/qms-ckeditor-components/components/qms-ckeditor-flowchart/qms-ckeditor-flowchart.component.scss +68 -0
  286. package/src/lib/qms-ckeditor-components/styles/_modules.scss +9 -0
  287. package/src/themes/core/_mat-icon.scss +60 -60
  288. package/src/themes/core/_table.scss +72 -4
  289. package/src/themes/core/_typography.scss +108 -108
@@ -0,0 +1,1003 @@
1
+ function getStencilGroups() {
2
+ return {
3
+ standard: { index: 1, label: 'Standard shapes' },
4
+ fsa: { index: 2, label: 'State machine' },
5
+ pn: { index: 3, label: 'Petri nets' },
6
+ erd: { index: 4, label: 'Entity-relationship' },
7
+ uml: { index: 5, label: 'UML' },
8
+ org: { index: 6, label: 'ORG' }
9
+ };
10
+ }
11
+ function getStencilShapes(LANG) {
12
+ return {
13
+ standard: [
14
+ {
15
+ type: 'standard.Rectangle',
16
+ size: { width: 5, height: 3 },
17
+ attrs: {
18
+ root: {
19
+ dataTooltip: `${LANG.FLOWCHART.RECTANGLE}`,
20
+ dataTooltipPosition: 'left',
21
+ dataTooltipPositionSelector: '.joint-stencil'
22
+ },
23
+ body: {
24
+ rx: 2,
25
+ ry: 2,
26
+ width: 50,
27
+ height: 30,
28
+ fill: 'transparent',
29
+ stroke: '#31d0c6',
30
+ strokeWidth: 2,
31
+ strokeDasharray: '0'
32
+ },
33
+ label: {
34
+ text: 'rect',
35
+ fill: '#c6c7e2',
36
+ fontFamily: 'Roboto Condensed',
37
+ fontWeight: 'Normal',
38
+ fontSize: 11,
39
+ strokeWidth: 0
40
+ }
41
+ }
42
+ },
43
+ {
44
+ type: 'standard.Ellipse',
45
+ size: { width: 5, height: 3 },
46
+ attrs: {
47
+ root: {
48
+ dataTooltip: `${LANG.FLOWCHART.ELLIPSE}`,
49
+ dataTooltipPosition: 'left',
50
+ dataTooltipPositionSelector: '.joint-stencil'
51
+ },
52
+ body: {
53
+ width: 50,
54
+ height: 30,
55
+ fill: 'transparent',
56
+ stroke: '#31d0c6',
57
+ strokeWidth: 2,
58
+ strokeDasharray: '0'
59
+ },
60
+ label: {
61
+ text: 'ellipse',
62
+ fill: '#c6c7e2',
63
+ fontFamily: 'Roboto Condensed',
64
+ fontWeight: 'Normal',
65
+ fontSize: 11,
66
+ strokeWidth: 0
67
+ }
68
+ }
69
+ },
70
+ {
71
+ type: 'app.RectangularModel',
72
+ size: { width: 40, height: 30 },
73
+ allowOrthogonalResize: false,
74
+ attrs: {
75
+ root: {
76
+ dataTooltip: `${LANG.FLOWCHART.RECTANGLE_WITH_PORTS}`,
77
+ dataTooltipPosition: 'left',
78
+ dataTooltipPositionSelector: '.joint-stencil'
79
+ },
80
+ body: {
81
+ fill: 'transparent',
82
+ rx: 2,
83
+ ry: 2,
84
+ stroke: '#31d0c6',
85
+ strokeWidth: 2,
86
+ strokeDasharray: '0'
87
+ },
88
+ label: {
89
+ text: 'rect',
90
+ fill: '#c6c7e2',
91
+ fontFamily: 'Roboto Condensed',
92
+ fontWeight: 'Normal',
93
+ fontSize: 11,
94
+ strokeWidth: 0
95
+ }
96
+ },
97
+ ports: {
98
+ items: [
99
+ { group: 'in' },
100
+ { group: 'in' },
101
+ { group: 'out' }
102
+ ]
103
+ }
104
+ },
105
+ {
106
+ type: 'app.CircularModel',
107
+ size: { width: 5, height: 3 },
108
+ allowOrthogonalResize: false,
109
+ attrs: {
110
+ root: {
111
+ dataTooltip: `${LANG.FLOWCHART.ELLIPSE_WITH_PORTS}`,
112
+ dataTooltipPosition: 'left',
113
+ dataTooltipPositionSelector: '.joint-stencil'
114
+ },
115
+ body: {
116
+ fill: 'transparent',
117
+ stroke: '#31d0c6',
118
+ strokeWidth: 2,
119
+ strokeDasharray: '0',
120
+ },
121
+ label: {
122
+ text: 'ellipse',
123
+ fill: '#c6c7e2',
124
+ fontFamily: 'Roboto Condensed',
125
+ fontWeight: 'Normal',
126
+ fontSize: 11,
127
+ strokeWidth: 0
128
+ }
129
+ },
130
+ ports: {
131
+ items: [
132
+ { group: 'in' },
133
+ { group: 'in' },
134
+ { group: 'out' }
135
+ ]
136
+ }
137
+ },
138
+ {
139
+ type: 'standard.Polygon',
140
+ size: { width: 5, height: 3 },
141
+ attrs: {
142
+ root: {
143
+ dataTooltip: `${LANG.FLOWCHART.RHOMBUS}`,
144
+ dataTooltipPosition: 'left',
145
+ dataTooltipPositionSelector: '.joint-stencil'
146
+ },
147
+ body: {
148
+ refPoints: '50,0 100,50 50,100 0,50',
149
+ fill: 'transparent',
150
+ stroke: '#31d0c6',
151
+ strokeWidth: 2,
152
+ strokeDasharray: '0'
153
+ },
154
+ label: {
155
+ text: 'rhombus',
156
+ fill: '#c6c7e2',
157
+ fontFamily: 'Roboto Condensed',
158
+ fontWeight: 'Normal',
159
+ fontSize: 11,
160
+ strokeWidth: 0
161
+ }
162
+ }
163
+ },
164
+ {
165
+ type: 'standard.Cylinder',
166
+ size: { width: 5, height: 3 },
167
+ attrs: {
168
+ root: {
169
+ dataTooltip: `${LANG.FLOWCHART.CYLINDER}`,
170
+ dataTooltipPosition: 'left',
171
+ dataTooltipPositionSelector: '.joint-stencil'
172
+ },
173
+ body: {
174
+ fill: 'transparent',
175
+ stroke: '#31d0c6',
176
+ strokeWidth: 2,
177
+ strokeDasharray: '0'
178
+ },
179
+ top: {
180
+ fill: '#31d0c6',
181
+ stroke: '#31d0c6',
182
+ strokeWidth: 2,
183
+ strokeDasharray: '0'
184
+ },
185
+ label: {
186
+ text: 'cylinder',
187
+ fill: '#c6c7e2',
188
+ fontFamily: 'Roboto Condensed',
189
+ fontWeight: 'Normal',
190
+ fontSize: 11,
191
+ strokeWidth: 0
192
+ }
193
+ }
194
+ },
195
+ {
196
+ type: 'standard.Image',
197
+ size: { width: 53, height: 42 },
198
+ attrs: {
199
+ root: {
200
+ dataTooltip: `${LANG.FLOWCHART.IMAGE}`,
201
+ dataTooltipPosition: 'left',
202
+ dataTooltipPositionSelector: '.joint-stencil'
203
+ },
204
+ image: {
205
+ xlinkHref: 'data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI1M3B4IiBoZWlnaHQ9IjQycHgiIHZpZXdCb3g9IjAgMCA1MyA0MiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgNTMgNDIiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxnPjxnIG9wYWNpdHk9IjAuNDkiPjxwYXRoIGZpbGw9IiMyMjIxMzgiIGQ9Ik00OS4zNDQsM2MwLjU0MiwwLDEuMjUtMC4wNDIsMS4yNSwwLjV2MzRjMCwwLjU0Mi0wLjcwOCwxLjUtMS4yNSwxLjVoLTQ2Yy0wLjU0MiwwLTAuNzUtMC45NTgtMC43NS0xLjUgdi0zNGMwLTAuNTQyLDAuMjA4LTAuNSwwLjc1LTAuNWg0Ni4yNSBNNDkuMzQ0LDFoLTQ2Yy0xLjY1LDAtMi43NSwwLjg1LTIuNzUsMi41djM0YzAsMS42NSwxLjEsMy41LDIuNzUsMy41aDQ2IGMxLjY1LDAsMy4yNS0xLjg1LDMuMjUtMy41di0zNEM1Mi41OTQsMS44NSw1MC45OTQsMSw0OS4zNDQsMUw0OS4zNDQsMXoiLz48Y2lyY2xlIGZpbGw9IiMyMjIxMzgiIGN4PSIzOC4wOTQiIGN5PSIxMi41MDIiIHI9IjQuMzk4Ii8+PHBhdGggZmlsbD0iIzIyMjEzOCIgZD0iTTUwLjU5NCwyNi45NzJsLTcuMTM1LTUuOTE4Yy0xLjA3Ni0wLjg4OC0yLjcyNi0wLjg1NC0zLjc0OSwwLjA4NGwtNy4yMjQsNi41ODJMMTguMjUxLDEyLjIxIGMtMS4wNzMtMS4xNzMtMi44MjYtMS4xODYtMy45MTctMC4wMjRMMS41OTQsMjUuOTIyVjQwaDQ4Ljk5M2MwLjExNSwwLDAuMDA3LTAuMDIxLDAuMDA3LTAuMDI5VjI2Ljk3MnoiLz48L2c+PGc+PGc+PGc+PHBhdGggZmlsbD0iIzMxRDBDNiIgZD0iTTQ5LjM0NCwyYzAuNTQyLDAsMS4yNS0wLjA0MiwxLjI1LDAuNXYzNGMwLDAuNTQyLTAuNzA4LDEuNS0xLjI1LDEuNWgtNDZjLTAuNTQyLDAtMC43NS0wLjk1OC0wLjc1LTEuNSB2LTM0YzAtMC41NDIsMC4yMDgtMC41LDAuNzUtMC41aDQ2LjI1IE00OS4zNDQsMGgtNDZjLTEuNjUsMC0yLjc1LDAuODUtMi43NSwyLjV2MzRjMCwxLjY1LDEuMSwzLjUsMi43NSwzLjVoNDYgYzEuNjUsMCwzLjI1LTEuODUsMy4yNS0zLjV2LTM0QzUyLjU5NCwwLjg1LDUwLjk5NCwwLDQ5LjM0NCwwTDQ5LjM0NCwweiIvPjwvZz48Y2lyY2xlIGZpbGw9IiMzMUQwQzYiIGN4PSIzOC4wOTQiIGN5PSIxMS41MDIiIHI9IjQuMzk4Ii8+PHBhdGggZmlsbD0iIzMxRDBDNiIgZD0iTTUwLjU5NCwyNS45NzJsLTcuMTM1LTUuOTE4Yy0xLjA3Ni0wLjg4OC0yLjcyNi0wLjg1NC0zLjc0OSwwLjA4NGwtNy4yMjQsNi41ODJMMTguMjUxLDExLjIxIGMtMS4wNzMtMS4xNzMtMi44MjYtMS4xODYtMy45MTctMC4wMjRMMS41OTQsMjQuOTIyVjM5aDQ4Ljk5M2MwLjExNSwwLDAuMDA3LTAuMDIxLDAuMDA3LTAuMDI5VjI1Ljk3MnoiLz48L2c+PC9nPjwvZz48L3N2Zz4g'
206
+ },
207
+ body: {
208
+ fill: 'transparent',
209
+ stroke: '#31d0c6',
210
+ strokeWidth: 2,
211
+ strokeDasharray: '0'
212
+ },
213
+ label: {
214
+ text: 'image',
215
+ fontFamily: 'Roboto Condensed',
216
+ fontWeight: 'Normal',
217
+ fontSize: 11,
218
+ fill: '#c6c7e2'
219
+ }
220
+ }
221
+ },
222
+ {
223
+ type: 'standard.EmbeddedImage',
224
+ size: { width: 5, height: 3 },
225
+ attrs: {
226
+ root: {
227
+ dataTooltip: `${LANG.FLOWCHART.CARD}`,
228
+ dataTooltipPosition: 'left',
229
+ dataTooltipPositionSelector: '.joint-stencil'
230
+ },
231
+ body: {
232
+ fill: 'transparent',
233
+ stroke: '#31d0c6',
234
+ strokeWidth: 2,
235
+ strokeDasharray: '0'
236
+ },
237
+ image: {
238
+ xlinkHref: 'data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI1M3B4IiBoZWlnaHQ9IjQycHgiIHZpZXdCb3g9IjAgMCA1MyA0MiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgNTMgNDIiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxnPjxnIG9wYWNpdHk9IjAuNDkiPjxwYXRoIGZpbGw9IiMyMjIxMzgiIGQ9Ik00OS4zNDQsM2MwLjU0MiwwLDEuMjUtMC4wNDIsMS4yNSwwLjV2MzRjMCwwLjU0Mi0wLjcwOCwxLjUtMS4yNSwxLjVoLTQ2Yy0wLjU0MiwwLTAuNzUtMC45NTgtMC43NS0xLjUgdi0zNGMwLTAuNTQyLDAuMjA4LTAuNSwwLjc1LTAuNWg0Ni4yNSBNNDkuMzQ0LDFoLTQ2Yy0xLjY1LDAtMi43NSwwLjg1LTIuNzUsMi41djM0YzAsMS42NSwxLjEsMy41LDIuNzUsMy41aDQ2IGMxLjY1LDAsMy4yNS0xLjg1LDMuMjUtMy41di0zNEM1Mi41OTQsMS44NSw1MC45OTQsMSw0OS4zNDQsMUw0OS4zNDQsMXoiLz48Y2lyY2xlIGZpbGw9IiMyMjIxMzgiIGN4PSIzOC4wOTQiIGN5PSIxMi41MDIiIHI9IjQuMzk4Ii8+PHBhdGggZmlsbD0iIzIyMjEzOCIgZD0iTTUwLjU5NCwyNi45NzJsLTcuMTM1LTUuOTE4Yy0xLjA3Ni0wLjg4OC0yLjcyNi0wLjg1NC0zLjc0OSwwLjA4NGwtNy4yMjQsNi41ODJMMTguMjUxLDEyLjIxIGMtMS4wNzMtMS4xNzMtMi44MjYtMS4xODYtMy45MTctMC4wMjRMMS41OTQsMjUuOTIyVjQwaDQ4Ljk5M2MwLjExNSwwLDAuMDA3LTAuMDIxLDAuMDA3LTAuMDI5VjI2Ljk3MnoiLz48L2c+PGc+PGc+PGc+PHBhdGggZmlsbD0iIzMxRDBDNiIgZD0iTTQ5LjM0NCwyYzAuNTQyLDAsMS4yNS0wLjA0MiwxLjI1LDAuNXYzNGMwLDAuNTQyLTAuNzA4LDEuNS0xLjI1LDEuNWgtNDZjLTAuNTQyLDAtMC43NS0wLjk1OC0wLjc1LTEuNSB2LTM0YzAtMC41NDIsMC4yMDgtMC41LDAuNzUtMC41aDQ2LjI1IE00OS4zNDQsMGgtNDZjLTEuNjUsMC0yLjc1LDAuODUtMi43NSwyLjV2MzRjMCwxLjY1LDEuMSwzLjUsMi43NSwzLjVoNDYgYzEuNjUsMCwzLjI1LTEuODUsMy4yNS0zLjV2LTM0QzUyLjU5NCwwLjg1LDUwLjk5NCwwLDQ5LjM0NCwwTDQ5LjM0NCwweiIvPjwvZz48Y2lyY2xlIGZpbGw9IiMzMUQwQzYiIGN4PSIzOC4wOTQiIGN5PSIxMS41MDIiIHI9IjQuMzk4Ii8+PHBhdGggZmlsbD0iIzMxRDBDNiIgZD0iTTUwLjU5NCwyNS45NzJsLTcuMTM1LTUuOTE4Yy0xLjA3Ni0wLjg4OC0yLjcyNi0wLjg1NC0zLjc0OSwwLjA4NGwtNy4yMjQsNi41ODJMMTguMjUxLDExLjIxIGMtMS4wNzMtMS4xNzMtMi44MjYtMS4xODYtMy45MTctMC4wMjRMMS41OTQsMjQuOTIyVjM5aDQ4Ljk5M2MwLjExNSwwLDAuMDA3LTAuMDIxLDAuMDA3LTAuMDI5VjI1Ljk3MnoiLz48L2c+PC9nPjwvZz48L3N2Zz4g'
239
+ },
240
+ label: {
241
+ text: 'card',
242
+ fill: '#c6c7e2',
243
+ fontFamily: 'Roboto Condensed',
244
+ fontWeight: 'Normal',
245
+ fontSize: 11,
246
+ strokeWidth: 0
247
+ }
248
+ }
249
+ },
250
+ {
251
+ type: 'standard.InscribedImage',
252
+ size: { width: 1, height: 1 },
253
+ attrs: {
254
+ root: {
255
+ dataTooltip: `${LANG.FLOWCHART.ICON}`,
256
+ dataTooltipPosition: 'left',
257
+ dataTooltipPositionSelector: '.joint-stencil'
258
+ },
259
+ border: {
260
+ stroke: '#31d0c6',
261
+ strokeWidth: 3,
262
+ strokeDasharray: '0'
263
+ },
264
+ background: {
265
+ fill: 'transparent'
266
+ },
267
+ image: {
268
+ xlinkHref: 'data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI1M3B4IiBoZWlnaHQ9IjQycHgiIHZpZXdCb3g9IjAgMCA1MyA0MiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgNTMgNDIiIHhtbDpzcGFjZT0icHJlc2VydmUiPjxnPjxnIG9wYWNpdHk9IjAuNDkiPjxwYXRoIGZpbGw9IiMyMjIxMzgiIGQ9Ik00OS4zNDQsM2MwLjU0MiwwLDEuMjUtMC4wNDIsMS4yNSwwLjV2MzRjMCwwLjU0Mi0wLjcwOCwxLjUtMS4yNSwxLjVoLTQ2Yy0wLjU0MiwwLTAuNzUtMC45NTgtMC43NS0xLjUgdi0zNGMwLTAuNTQyLDAuMjA4LTAuNSwwLjc1LTAuNWg0Ni4yNSBNNDkuMzQ0LDFoLTQ2Yy0xLjY1LDAtMi43NSwwLjg1LTIuNzUsMi41djM0YzAsMS42NSwxLjEsMy41LDIuNzUsMy41aDQ2IGMxLjY1LDAsMy4yNS0xLjg1LDMuMjUtMy41di0zNEM1Mi41OTQsMS44NSw1MC45OTQsMSw0OS4zNDQsMUw0OS4zNDQsMXoiLz48Y2lyY2xlIGZpbGw9IiMyMjIxMzgiIGN4PSIzOC4wOTQiIGN5PSIxMi41MDIiIHI9IjQuMzk4Ii8+PHBhdGggZmlsbD0iIzIyMjEzOCIgZD0iTTUwLjU5NCwyNi45NzJsLTcuMTM1LTUuOTE4Yy0xLjA3Ni0wLjg4OC0yLjcyNi0wLjg1NC0zLjc0OSwwLjA4NGwtNy4yMjQsNi41ODJMMTguMjUxLDEyLjIxIGMtMS4wNzMtMS4xNzMtMi44MjYtMS4xODYtMy45MTctMC4wMjRMMS41OTQsMjUuOTIyVjQwaDQ4Ljk5M2MwLjExNSwwLDAuMDA3LTAuMDIxLDAuMDA3LTAuMDI5VjI2Ljk3MnoiLz48L2c+PGc+PGc+PGc+PHBhdGggZmlsbD0iIzMxRDBDNiIgZD0iTTQ5LjM0NCwyYzAuNTQyLDAsMS4yNS0wLjA0MiwxLjI1LDAuNXYzNGMwLDAuNTQyLTAuNzA4LDEuNS0xLjI1LDEuNWgtNDZjLTAuNTQyLDAtMC43NS0wLjk1OC0wLjc1LTEuNSB2LTM0YzAtMC41NDIsMC4yMDgtMC41LDAuNzUtMC41aDQ2LjI1IE00OS4zNDQsMGgtNDZjLTEuNjUsMC0yLjc1LDAuODUtMi43NSwyLjV2MzRjMCwxLjY1LDEuMSwzLjUsMi43NSwzLjVoNDYgYzEuNjUsMCwzLjI1LTEuODUsMy4yNS0zLjV2LTM0QzUyLjU5NCwwLjg1LDUwLjk5NCwwLDQ5LjM0NCwwTDQ5LjM0NCwweiIvPjwvZz48Y2lyY2xlIGZpbGw9IiMzMUQwQzYiIGN4PSIzOC4wOTQiIGN5PSIxMS41MDIiIHI9IjQuMzk4Ii8+PHBhdGggZmlsbD0iIzMxRDBDNiIgZD0iTTUwLjU5NCwyNS45NzJsLTcuMTM1LTUuOTE4Yy0xLjA3Ni0wLjg4OC0yLjcyNi0wLjg1NC0zLjc0OSwwLjA4NGwtNy4yMjQsNi41ODJMMTguMjUxLDExLjIxIGMtMS4wNzMtMS4xNzMtMi44MjYtMS4xODYtMy45MTctMC4wMjRMMS41OTQsMjQuOTIyVjM5aDQ4Ljk5M2MwLjExNSwwLDAuMDA3LTAuMDIxLDAuMDA3LTAuMDI5VjI1Ljk3MnoiLz48L2c+PC9nPjwvZz48L3N2Zz4g'
269
+ },
270
+ label: {
271
+ text: 'icon',
272
+ fill: '#c6c7e2',
273
+ fontFamily: 'Roboto Condensed',
274
+ fontWeight: 'Normal',
275
+ fontSize: 11,
276
+ strokeWidth: 0
277
+ }
278
+ }
279
+ },
280
+ {
281
+ type: 'standard.HeaderedRectangle',
282
+ size: { width: 5, height: 3 },
283
+ attrs: {
284
+ root: {
285
+ dataTooltip: `${LANG.FLOWCHART.RECTANGLE_WITH_HEADER}`,
286
+ dataTooltipPosition: 'left',
287
+ dataTooltipPositionSelector: '.joint-stencil'
288
+ },
289
+ body: {
290
+ fill: 'transparent',
291
+ stroke: '#31d0c6',
292
+ strokeWidth: 2,
293
+ strokeDasharray: '0'
294
+ },
295
+ header: {
296
+ stroke: '#31d0c6',
297
+ fill: '#31d0c6',
298
+ strokeWidth: 2,
299
+ strokeDasharray: '0',
300
+ height: 20
301
+ },
302
+ bodyText: {
303
+ textWrap: {
304
+ text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur molestie.',
305
+ width: -10,
306
+ height: -20,
307
+ ellipsis: true
308
+ },
309
+ fill: '#c6c7e2',
310
+ fontFamily: 'Roboto Condensed',
311
+ fontWeight: 'Normal',
312
+ fontSize: 11,
313
+ strokeWidth: 0,
314
+ refY2: 12,
315
+ },
316
+ headerText: {
317
+ text: 'header',
318
+ fill: '#f6f6f6',
319
+ fontFamily: 'Roboto Condensed',
320
+ fontWeight: 'Normal',
321
+ fontSize: 11,
322
+ strokeWidth: 0,
323
+ refY: 12
324
+ }
325
+ }
326
+ }
327
+ ],
328
+ fsa: [
329
+ {
330
+ type: 'fsa.StartState',
331
+ preserveAspectRatio: true,
332
+ attrs: {
333
+ root: {
334
+ dataTooltip: `${LANG.FLOWCHART.START_STATE}`,
335
+ dataTooltipPosition: 'left',
336
+ dataTooltipPositionSelector: '.joint-stencil'
337
+ },
338
+ circle: {
339
+ width: 50,
340
+ height: 30,
341
+ fill: '#61549c',
342
+ 'stroke-width': 0
343
+ },
344
+ text: {
345
+ text: 'startState',
346
+ fill: '#c6c7e2',
347
+ 'font-family': 'Roboto Condensed',
348
+ 'font-weight': 'Normal',
349
+ 'font-size': 11,
350
+ 'stroke-width': 0
351
+ }
352
+ }
353
+ },
354
+ {
355
+ type: 'fsa.EndState',
356
+ preserveAspectRatio: true,
357
+ attrs: {
358
+ root: {
359
+ dataTooltip: `${LANG.FLOWCHART.END_STATE}`,
360
+ dataTooltipPosition: 'left',
361
+ dataTooltipPositionSelector: '.joint-stencil'
362
+ },
363
+ '.inner': {
364
+ fill: '#6a6c8a',
365
+ stroke: 'transparent'
366
+ },
367
+ '.outer': {
368
+ fill: 'transparent',
369
+ stroke: '#61549c',
370
+ 'stroke-width': 2,
371
+ 'stroke-dasharray': '0'
372
+ },
373
+ text: {
374
+ text: 'endState',
375
+ fill: '#c6c7e2',
376
+ 'font-family': 'Roboto Condensed',
377
+ 'font-weight': 'Normal',
378
+ 'font-size': 11,
379
+ 'stroke-width': 0
380
+ }
381
+ }
382
+ },
383
+ {
384
+ type: 'fsa.State',
385
+ preserveAspectRatio: true,
386
+ attrs: {
387
+ root: {
388
+ dataTooltip: `${LANG.FLOWCHART.STATE}`,
389
+ dataTooltipPosition: 'left',
390
+ dataTooltipPositionSelector: '.joint-stencil'
391
+ },
392
+ circle: {
393
+ fill: '#6a6c8a',
394
+ stroke: '#61549c',
395
+ 'stroke-width': 2,
396
+ 'stroke-dasharray': '0'
397
+ },
398
+ text: {
399
+ text: 'state',
400
+ fill: '#c6c7e2',
401
+ 'font-family': 'Roboto Condensed',
402
+ 'font-weight': 'Normal',
403
+ 'font-size': 11,
404
+ 'stroke-width': 0
405
+ }
406
+ }
407
+ }
408
+ ],
409
+ pn: [
410
+ {
411
+ type: 'pn.Place',
412
+ preserveAspectRatio: true,
413
+ tokens: 3,
414
+ attrs: {
415
+ root: {
416
+ dataTooltip: `${LANG.FLOWCHART.PLACE}`,
417
+ dataTooltipPosition: 'left',
418
+ dataTooltipPositionSelector: '.joint-stencil'
419
+ },
420
+ '.root': {
421
+ fill: 'transparent',
422
+ stroke: '#61549c',
423
+ 'stroke-width': 2,
424
+ 'stroke-dasharray': '0'
425
+ },
426
+ '.tokens circle': {
427
+ fill: '#6a6c8a',
428
+ stroke: '#000',
429
+ 'stroke-width': 0
430
+ },
431
+ '.label': {
432
+ text: '',
433
+ 'font-family': 'Roboto Condensed',
434
+ 'font-weight': 'Normal'
435
+ }
436
+ }
437
+ },
438
+ {
439
+ type: 'pn.Transition',
440
+ preserveAspectRatio: true,
441
+ attrs: {
442
+ root: {
443
+ dataTooltip: `${LANG.FLOWCHART.TRANSITION}`,
444
+ dataTooltipPosition: 'left',
445
+ dataTooltipPositionSelector: '.joint-stencil'
446
+ },
447
+ rect: {
448
+ rx: 3,
449
+ ry: 3,
450
+ width: 12,
451
+ height: 50,
452
+ fill: '#61549c',
453
+ stroke: '#7c68fc',
454
+ 'stroke-width': 0,
455
+ 'stroke-dasharray': '0'
456
+ },
457
+ '.label': {
458
+ text: 'transition',
459
+ 'font-family': 'Roboto Condensed',
460
+ 'font-weight': 'Normal',
461
+ 'stroke-width': 0,
462
+ 'fill': '#222138'
463
+ }
464
+ }
465
+ }
466
+ ],
467
+ erd: [
468
+ {
469
+ type: 'erd.Entity',
470
+ attrs: {
471
+ root: {
472
+ dataTooltip: `${LANG.FLOWCHART.ENTITY}`,
473
+ dataTooltipPosition: 'left',
474
+ dataTooltipPositionSelector: '.joint-stencil'
475
+ },
476
+ '.outer': {
477
+ rx: 3,
478
+ ry: 3,
479
+ fill: '#31d0c6',
480
+ 'stroke-width': 2,
481
+ stroke: 'transparent',
482
+ 'stroke-dasharray': '0'
483
+ },
484
+ text: {
485
+ text: 'Entity',
486
+ 'font-size': 11,
487
+ 'font-family': 'Roboto Condensed',
488
+ 'font-weight': 'Normal',
489
+ fill: '#f6f6f6',
490
+ 'stroke-width': 0
491
+ }
492
+ }
493
+ },
494
+ {
495
+ type: 'erd.WeakEntity',
496
+ attrs: {
497
+ root: {
498
+ dataTooltip: `${LANG.FLOWCHART.WEAK_ENTITY}`,
499
+ dataTooltipPosition: 'left',
500
+ dataTooltipPositionSelector: '.joint-stencil'
501
+ },
502
+ '.outer': {
503
+ fill: 'transparent',
504
+ stroke: '#feb663',
505
+ 'stroke-width': 2,
506
+ points: '100,0 100,60 0,60 0,0',
507
+ 'stroke-dasharray': '0'
508
+ },
509
+ '.inner': {
510
+ fill: '#feb663',
511
+ stroke: 'transparent',
512
+ points: '97,5 97,55 3,55 3,5',
513
+ 'stroke-dasharray': '0'
514
+ },
515
+ text: {
516
+ text: 'Weak entity',
517
+ 'font-size': 11,
518
+ 'font-family': 'Roboto Condensed',
519
+ 'font-weight': 'Normal',
520
+ fill: '#f6f6f6',
521
+ 'stroke-width': 0
522
+ }
523
+ }
524
+ },
525
+ {
526
+ type: 'erd.Relationship',
527
+ attrs: {
528
+ root: {
529
+ dataTooltip: `${LANG.FLOWCHART.RELATIONSHIP}`,
530
+ dataTooltipPosition: 'left',
531
+ dataTooltipPositionSelector: '.joint-stencil'
532
+ },
533
+ '.outer': {
534
+ fill: '#61549c',
535
+ stroke: 'transparent',
536
+ 'stroke-width': 2,
537
+ 'stroke-dasharray': '0'
538
+ },
539
+ text: {
540
+ text: 'Relation',
541
+ 'font-size': 11,
542
+ 'font-family': 'Roboto Condensed',
543
+ 'font-weight': 'Normal',
544
+ fill: '#f6f6f6',
545
+ 'stroke-width': 0
546
+ }
547
+ }
548
+ },
549
+ {
550
+ type: 'erd.IdentifyingRelationship',
551
+ attrs: {
552
+ root: {
553
+ dataTooltip: `${LANG.FLOWCHART.IDENTIFYING_RELATIONSHIP}`,
554
+ dataTooltipPosition: 'left',
555
+ dataTooltipPositionSelector: '.joint-stencil'
556
+ },
557
+ '.outer': {
558
+ fill: 'transparent',
559
+ stroke: '#6a6c8a',
560
+ 'stroke-dasharray': '0'
561
+ },
562
+ '.inner': {
563
+ fill: '#6a6c8a',
564
+ stroke: 'transparent',
565
+ 'stroke-dasharray': '0'
566
+ },
567
+ text: {
568
+ text: 'Relation',
569
+ 'font-size': 11,
570
+ 'font-family': 'Roboto Condensed',
571
+ 'font-weight': 'Normal',
572
+ fill: '#f6f6f6',
573
+ 'stroke-width': 0
574
+ }
575
+ }
576
+ },
577
+ {
578
+ type: 'erd.ISA',
579
+ attrs: {
580
+ root: {
581
+ dataTooltip: 'ISA',
582
+ dataTooltipPosition: 'left',
583
+ dataTooltipPositionSelector: '.joint-stencil'
584
+ },
585
+ text: {
586
+ text: `${LANG.FLOWCHART.ISA}`,
587
+ fill: '#f6f6f6',
588
+ 'letter-spacing': 0,
589
+ 'font-family': 'Roboto Condensed',
590
+ 'font-weight': 'Normal',
591
+ 'font-size': 11
592
+ },
593
+ polygon: {
594
+ fill: '#feb663',
595
+ stroke: 'transparent',
596
+ 'stroke-dasharray': '0'
597
+ }
598
+ }
599
+ },
600
+ {
601
+ type: 'erd.Key',
602
+ attrs: {
603
+ root: {
604
+ dataTooltip: `${LANG.FLOWCHART.KEY}`,
605
+ dataTooltipPosition: 'left',
606
+ dataTooltipPositionSelector: '.joint-stencil'
607
+ },
608
+ '.outer': {
609
+ fill: 'transparent',
610
+ stroke: '#fe854f',
611
+ 'stroke-dasharray': '0'
612
+ },
613
+ '.inner': {
614
+ fill: '#fe854f',
615
+ stroke: 'transparent',
616
+ display: 'block',
617
+ 'stroke-dasharray': '0'
618
+ },
619
+ text: {
620
+ text: 'Key',
621
+ 'font-size': 11,
622
+ 'font-family': 'Roboto Condensed',
623
+ 'font-weight': 'Normal',
624
+ fill: '#f6f6f6',
625
+ 'stroke-width': 0
626
+ }
627
+ }
628
+ },
629
+ {
630
+ type: 'erd.Normal',
631
+ attrs: {
632
+ root: {
633
+ dataTooltip: `${LANG.FLOWCHART.NORMAL}`,
634
+ dataTooltipPosition: 'left',
635
+ dataTooltipPositionSelector: '.joint-stencil'
636
+ },
637
+ '.outer': {
638
+ fill: '#feb663',
639
+ stroke: 'transparent',
640
+ 'stroke-dasharray': '0'
641
+ },
642
+ text: {
643
+ text: 'Normal',
644
+ 'font-size': 11,
645
+ 'font-family': 'Roboto Condensed',
646
+ 'font-weight': 'Normal',
647
+ fill: '#f6f6f6',
648
+ 'stroke-width': 0
649
+ }
650
+ }
651
+ },
652
+ {
653
+ type: 'erd.Multivalued',
654
+ attrs: {
655
+ root: {
656
+ dataTooltip: `${LANG.FLOWCHART.MULTIVALUED}`,
657
+ dataTooltipPosition: 'left',
658
+ dataTooltipPositionSelector: '.joint-stencil'
659
+ },
660
+ '.outer': {
661
+ fill: 'transparent',
662
+ stroke: '#fe854f',
663
+ 'stroke-dasharray': '0'
664
+ },
665
+ '.inner': {
666
+ fill: '#fe854f',
667
+ stroke: 'transparent',
668
+ rx: 43,
669
+ ry: 21,
670
+ 'stroke-dasharray': '0'
671
+ },
672
+ text: {
673
+ text: 'MultiValued',
674
+ 'font-size': 11,
675
+ 'font-family': 'Roboto Condensed',
676
+ 'font-weight': 'Normal',
677
+ fill: '#f6f6f6',
678
+ 'stroke-width': 0
679
+ }
680
+ }
681
+ },
682
+ {
683
+ type: 'erd.Derived',
684
+ attrs: {
685
+ root: {
686
+ dataTooltip: `${LANG.FLOWCHART.DERIVED}`,
687
+ dataTooltipPosition: 'left',
688
+ dataTooltipPositionSelector: '.joint-stencil'
689
+ },
690
+ '.outer': {
691
+ fill: 'transparent',
692
+ stroke: '#fe854f',
693
+ 'stroke-dasharray': '0'
694
+ },
695
+ '.inner': {
696
+ fill: '#feb663',
697
+ stroke: 'transparent',
698
+ 'display': 'block',
699
+ 'stroke-dasharray': '0'
700
+ },
701
+ text: {
702
+ text: 'Derived',
703
+ fill: '#f6f6f6',
704
+ 'font-family': 'Roboto Condensed',
705
+ 'font-weight': 'Normal',
706
+ 'font-size': 11,
707
+ 'stroke-width': 0
708
+ }
709
+ }
710
+ }
711
+ ],
712
+ uml: [
713
+ {
714
+ type: 'uml.Class',
715
+ name: 'Class',
716
+ attributes: ['+attr1'],
717
+ methods: ['-setAttr1()'],
718
+ size: {
719
+ width: 150,
720
+ height: 100
721
+ },
722
+ attrs: {
723
+ root: {
724
+ dataTooltip: `${LANG.FLOWCHART.CLASS}`,
725
+ dataTooltipPosition: 'left',
726
+ dataTooltipPositionSelector: '.joint-stencil'
727
+ },
728
+ '.uml-class-name-rect': {
729
+ top: 2,
730
+ fill: '#61549c',
731
+ stroke: '#f6f6f6',
732
+ 'stroke-width': 1,
733
+ rx: 8,
734
+ ry: 8
735
+ },
736
+ '.uml-class-attrs-rect': {
737
+ top: 2,
738
+ fill: '#61549c',
739
+ stroke: '#f6f6f6',
740
+ 'stroke-width': 1,
741
+ rx: 8,
742
+ ry: 8
743
+ },
744
+ '.uml-class-methods-rect': {
745
+ top: 2,
746
+ fill: '#61549c',
747
+ stroke: '#f6f6f6',
748
+ 'stroke-width': 1,
749
+ rx: 8,
750
+ ry: 8
751
+ },
752
+ '.uml-class-name-text': {
753
+ ref: '.uml-class-name-rect',
754
+ 'ref-y': 0.5,
755
+ 'y-alignment': 'middle',
756
+ fill: '#f6f6f6',
757
+ 'font-family': 'Roboto Condensed',
758
+ 'font-weight': 'Normal',
759
+ 'font-size': 11
760
+ },
761
+ '.uml-class-attrs-text': {
762
+ ref: '.uml-class-attrs-rect',
763
+ 'ref-y': 0.5,
764
+ 'y-alignment': 'middle',
765
+ fill: '#f6f6f6',
766
+ 'font-family': 'Roboto Condensed',
767
+ 'font-weight': 'Normal',
768
+ 'font-size': 11
769
+ },
770
+ '.uml-class-methods-text': {
771
+ ref: '.uml-class-methods-rect',
772
+ 'ref-y': 0.5,
773
+ 'y-alignment': 'middle',
774
+ fill: '#f6f6f6',
775
+ 'font-family': 'Roboto Condensed',
776
+ 'font-weight': 'Normal',
777
+ 'font-size': 11
778
+ }
779
+ }
780
+ },
781
+ {
782
+ type: 'uml.Interface',
783
+ name: 'Interface',
784
+ attributes: ['+attr1'],
785
+ methods: ['-setAttr1()'],
786
+ size: {
787
+ width: 150,
788
+ height: 100
789
+ },
790
+ attrs: {
791
+ root: {
792
+ dataTooltip: `${LANG.FLOWCHART.INTERFACE}`,
793
+ dataTooltipPosition: 'left',
794
+ dataTooltipPositionSelector: '.joint-stencil'
795
+ },
796
+ '.uml-class-name-rect': {
797
+ fill: '#fe854f',
798
+ stroke: '#f6f6f6',
799
+ 'stroke-width': 1,
800
+ rx: 8,
801
+ ry: 8
802
+ },
803
+ '.uml-class-attrs-rect': {
804
+ fill: '#fe854f',
805
+ stroke: '#f6f6f6',
806
+ 'stroke-width': 1,
807
+ rx: 8,
808
+ ry: 8
809
+ },
810
+ '.uml-class-methods-rect': {
811
+ fill: '#fe854f',
812
+ stroke: '#f6f6f6',
813
+ 'stroke-width': 1,
814
+ rx: 8,
815
+ ry: 8
816
+ },
817
+ '.uml-class-name-text': {
818
+ ref: '.uml-class-name-rect',
819
+ 'ref-y': 0.5,
820
+ 'y-alignment': 'middle',
821
+ fill: '#f6f6f6',
822
+ 'font-family': 'Roboto Condensed',
823
+ 'font-weight': 'Normal',
824
+ 'font-size': 11
825
+ },
826
+ '.uml-class-attrs-text': {
827
+ ref: '.uml-class-attrs-rect',
828
+ 'ref-y': 0.5,
829
+ 'y-alignment': 'middle',
830
+ fill: '#f6f6f6',
831
+ 'font-family': 'Roboto Condensed',
832
+ 'font-size': 11
833
+ },
834
+ '.uml-class-methods-text': {
835
+ ref: '.uml-class-methods-rect',
836
+ 'ref-y': 0.5,
837
+ 'y-alignment': 'middle',
838
+ fill: '#f6f6f6',
839
+ 'font-family': 'Roboto Condensed',
840
+ 'font-weight': 'Normal',
841
+ 'font-size': 11
842
+ }
843
+ }
844
+ },
845
+ {
846
+ type: 'uml.Abstract',
847
+ name: 'Abstract',
848
+ attributes: ['+attr1'],
849
+ methods: ['-setAttr1()'],
850
+ size: {
851
+ width: 150,
852
+ height: 100
853
+ },
854
+ attrs: {
855
+ root: {
856
+ dataTooltip: `${LANG.FLOWCHART.ABSTRACT}`,
857
+ dataTooltipPosition: 'left',
858
+ dataTooltipPositionSelector: '.joint-stencil'
859
+ },
860
+ '.uml-class-name-rect': {
861
+ fill: '#6a6c8a',
862
+ stroke: '#f6f6f6',
863
+ 'stroke-width': 1,
864
+ rx: 8,
865
+ ry: 8
866
+ },
867
+ '.uml-class-attrs-rect': {
868
+ fill: '#6a6c8a',
869
+ stroke: '#f6f6f6',
870
+ 'stroke-width': 1,
871
+ rx: 8,
872
+ ry: 8
873
+ },
874
+ '.uml-class-methods-rect': {
875
+ fill: '#6a6c8a',
876
+ stroke: '#f6f6f6',
877
+ 'stroke-width': 1,
878
+ rx: 8,
879
+ ry: 8
880
+ },
881
+ '.uml-class-name-text': {
882
+ ref: '.uml-class-name-rect',
883
+ 'ref-y': 0.5,
884
+ 'y-alignment': 'middle',
885
+ fill: '#f6f6f6',
886
+ 'font-family': 'Roboto Condensed',
887
+ 'font-weight': 'Normal',
888
+ 'font-size': 11
889
+ },
890
+ '.uml-class-attrs-text': {
891
+ ref: '.uml-class-attrs-rect',
892
+ 'ref-y': 0.5,
893
+ 'y-alignment': 'middle',
894
+ fill: '#f6f6f6',
895
+ 'font-family': 'Roboto Condensed',
896
+ 'font-weight': 'Normal',
897
+ 'font-size': 11
898
+ },
899
+ '.uml-class-methods-text': {
900
+ ref: '.uml-class-methods-rect',
901
+ 'ref-y': 0.5,
902
+ 'y-alignment': 'middle',
903
+ fill: '#f6f6f6',
904
+ 'font-family': 'Roboto Condensed',
905
+ 'font-weight': 'Normal',
906
+ 'font-size': 11
907
+ }
908
+ }
909
+ },
910
+ {
911
+ type: 'uml.State',
912
+ name: 'State',
913
+ events: ['entry/', 'create()'],
914
+ size: {
915
+ width: 150,
916
+ height: 100
917
+ },
918
+ attrs: {
919
+ root: {
920
+ dataTooltip: `${LANG.FLOWCHART.STATE}`,
921
+ dataTooltipPosition: 'left',
922
+ dataTooltipPositionSelector: '.joint-stencil'
923
+ },
924
+ '.uml-state-body': {
925
+ fill: '#feb663',
926
+ stroke: '#f6f6f6',
927
+ 'stroke-width': 1,
928
+ rx: 8,
929
+ ry: 8,
930
+ 'stroke-dasharray': '0'
931
+ },
932
+ '.uml-state-separator': {
933
+ stroke: '#f6f6f6',
934
+ 'stroke-width': 1,
935
+ 'stroke-dasharray': '0'
936
+ },
937
+ '.uml-state-name': {
938
+ fill: '#f6f6f6',
939
+ 'font-size': 11,
940
+ 'font-family': 'Roboto Condensed',
941
+ 'font-weight': 'Normal'
942
+ },
943
+ '.uml-state-events': {
944
+ fill: '#f6f6f6',
945
+ 'font-size': 11,
946
+ 'font-family': 'Roboto Condensed',
947
+ 'font-weight': 'Normal'
948
+ }
949
+ }
950
+ }
951
+ ],
952
+ org: [
953
+ {
954
+ type: 'org.Member',
955
+ attrs: {
956
+ root: {
957
+ dataTooltip: `${LANG.FLOWCHART.MEMBER}`,
958
+ dataTooltipPosition: 'left',
959
+ dataTooltipPositionSelector: '.joint-stencil'
960
+ },
961
+ '.rank': {
962
+ text: 'Rank',
963
+ fill: '#f6f6f6',
964
+ 'font-family': 'Roboto Condensed',
965
+ 'font-size': 12,
966
+ 'font-weight': 'Bold',
967
+ 'text-decoration': 'none'
968
+ },
969
+ '.name': {
970
+ text: 'Person',
971
+ fill: '#f6f6f6',
972
+ 'font-family': 'Roboto Condensed',
973
+ 'font-weight': 'Normal',
974
+ 'font-size': 10
975
+ },
976
+ '.card': {
977
+ fill: '#31d0c6',
978
+ stroke: 'transparent',
979
+ 'stroke-width': 0,
980
+ 'stroke-dasharray': '0'
981
+ },
982
+ image: {
983
+ width: 32,
984
+ height: 32,
985
+ x: 16,
986
+ y: 13,
987
+ ref: null,
988
+ 'ref-x': null,
989
+ 'ref-y': null,
990
+ 'y-alignment': null,
991
+ 'xlink:href': 'data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+CjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSIxMjhweCIgaGVpZ2h0PSIxMjhweCIgdmlld0JveD0iMCAwIDEyOCAxMjgiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDEyOCAxMjgiIHhtbDpzcGFjZT0icHJlc2VydmUiPiAgPGltYWdlIGlkPSJpbWFnZTAiIHdpZHRoPSIxMjgiIGhlaWdodD0iMTI4IiB4PSIwIiB5PSIwIgogICAgaHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFJQUFBQUNBQ0FRQUFBQnBONmxBQUFBQUJHZEJUVUVBQUxHUEMveGhCUUFBQUNCalNGSk4KQUFCNkpnQUFnSVFBQVBvQUFBQ0E2QUFBZFRBQUFPcGdBQUE2bUFBQUYzQ2N1bEU4QUFBQUFtSkxSMFFBLzRlUHpMOEFBQUFIZEVsTgpSUWZtQWhjUENSdnJQRnZoQUFBTWtFbEVRVlI0MnUxZGU1QVV4Um4vdW1kM2IzZVA0NDdqYVZEaFVKRW9nbHg0cUlEeUNBcUNncEpBCmZCWVFSYUlrTVlWYXBqU2xaVXFxMUlwS2pQTHdFYXRpaVlpSkx5U0JJRkVwb1VRRVQxSExxQndQVHdtbmU3ZTd0elBUUFR2VCtXTm4KaHJ2ZG5kbkhkTzhzVmY3Mm43NjU2YSsvN3pjOS9majY2eDRFRlVHOE1kcXNqOFpuczFQUVlMMC9qcUFJWTZDQUF1MzYxL2dJZk1KYQpqdTV0NnF5TUxqMkJSTXRQTmVQNTBzWFFqQXFVeEF6amZmUnYrYVUrSHdIemd3Z0JhRzFRYjFjLzExaHBQL0tKZXVzWHZmM1czVFBpCmplUkIwbFdxOGRaUFRwRDdZL1YrMjFBK0pMcWNkcFJydlBWVHYxT1dBaGF2TFBjMlFEME4vaWFkejBlVy9yWnhmZlN3V0FJNGM1eWEKQjN0NW1ROGdYWVQyYWJOT0lBTFVXME12UzF3YnNFQWoyNlRjZElJUW9ONGxQY0pmUVlRRGE5VGZpU09BV3h0QWw2UEh4S21aWGhMNQphMVVUa0p3ZTJvSWxjUVRvR3A0UzJsbTFCQ1Q2aGZaTEE4V1pEd0NnSDVaSE5jYjV5K1hTQm9RZkVXMCtnSFJxOUFFUmNqblVnTlQ0CjBIdWl6UWNBWUFZZDArc2ozbEk1MUlEZzNaVXdId0Rod084RlNQVXFvR05vcjliS0VBREFETzNrMm0vNXl2UmNBeUlMS21VK0FNTFMKejNuTDlFd0F1cXB5QkFBQWQ3bzl2Z0twd2FHdm5mNW5wSTI5OENWZWdBUDgxR1ZNNlZjZjQwbUF4eHFBTG5Bdy9pQzdSUmtRbVJDNQpoczAzS0Q5MUVZcHltMnB4SVVBYWxjZDRIZTZwT1RQMFJFTUhBRUQ0TlR6YlNQRlRXQnZsWFFaSEF0QlpPZVoza0duQis2RGJVdzl1ClU2Ym9SN2twL09PcUlrQnZ5alpmbTlMN25leTdHdmFreHFmM2N0SjRXRlVSZ0g3VWd3NU52eXovV0szdmthTVQyVG9lQ3ZjczBXOEMKRU9yYjQrL2JvdTg2M2Rxa2htN1M1eG5IUEJQUVdFVUV0TlowNytMUy93a1g4QWlFWDFWRzZHdVpKNzgvNjFWRkJLUkR4OU9HbnI2bAo4SkpHUTBkNEdSdXR2ZUZCWVFtNCtoMjR1Y1RRMDNXZkZYZG56Y2ZST2JTWmJURFNaUmJGZGVYSTAwaVFSZEt5bGU1cTZuT3d0TnhkCkEwT0wwdGNHUjVaWUpndEpQQ253TmhSR1ZNK3MrVEVTQ3BjbmdveUFlY2JGYUpJVUxPNyt0QnlwNVdlKzU3bUFuQWpXZVNNZ2c1YmEKczhZYTU4TUVPQWNOYzE5RzFiOE5jKzBJUFJKQUQ2SWhQQWc0anJaby94SHBKbWdLRElWQitrQTBnUFhEdmJ2M05kcis2RGs4Q2ZBSQpzanV6a2tjTmdRdnRxRFVzbjJ5dEdTcmIrUXIzMkFzWXBuOEdvYmFJTUFKWWt4b245bC9WNVJFSzJ0NkFTSDloQkFCQXIrUFNqMVFWCkFlbERWaXA4c2tnQ2dzZWxIL0lnaGo4Qmh1MFFsWWFLSkFEYmMwQ2Rzd3ZXSXdIc2dFM0ZjSkVFNkxaMC9hdnFJVUJTNTBvemJVRm4KZVpCVUVHaUVsUXJPVmVkVUluS2tNREI1dVVkd1U1RXpnZklnSCs1UjF2UENvOXNLZzF4bFIvTThvZDVCa2xSbndqckNlS1BHYUtlNgpncTZ6eTd6Y2IvdEJlY05VNWM4QUFNbnAxRWlORjFWV2NpclY1WWtBQUJZRjlDVy83UWR5ekF4cE16c285U202VEZSWjZncjZGek0xCjNDVGdvTi8yUytiYmFNL3BZMFBVMWNJSWVEcDFrcGtNbWdTb3ZHU1gyNTZhalJCQ1ZxcnhrQ0Vzb00zNDBsNFNOVXRqM0JyQmNnbEkKNndrQUFJUzdCdGljN0JMVERNYnFBMjliYVdXd1NRQzM1Ykd5ZTFSbURrZ0M1MXBYSWp0aS9VUVFBQTJoWFZiU0dHMG11QTJIeWlaQQoybU1tWnRpWDlMNXRJdXh2UEhMY0JWWmpsZmFCaUpKS2dyelFiQWFQOFBYU3VpSkUvbWQydm5QOHRoL2E2NVNVU2NFdktsV21zc1RzCkF6cGJPZm1mUE1FYWxKQURMVnpkbEU2STFkT3Z6ZWUveW0vYkFRQWdmZ1pKMjJOejhhOUJnUHpETEkzRWh2aHR1d25sWVd0c1RsOFMKVEVHQXZHNTdCVmY2YmJlTnRxaTYzMVpyaWNpUzZISjdKcml2S3Q1L0N4MURyWWtxL1ZUZ0xGMGlyYWI1cmQrZjRyZk5PUlNvMUh3Ngp3clkyeVBPdEdVRFZtUThBUUo0MW44NDJRUVVnZGFkSkFKY1FDLzRFbkdPOW42bWZpSkN2VExiZi94SGVwUW1Cdk1sc0NGOFVRb0RwCmVxRi85OXRPUjZUR1d3dGtTYzR4WEFDMDJYcitIYU85U3hNR2RiTlpTWi9qTFptOFlrcCsyVzhiWFpFYVk5WUJQY25WUGQ0NVZveGMKQVNEUG1VL3FGYTVTdDVtai95Zjl0cThnWWtOa0phTnM0a0plTXJ0bW1xUW0yemxIQndvQitZTlpYVnVBVDN4NERmbXYrZnhYK0cxYgpVV2dOMHk5TWhXL2xJWS9jYlVyYkQwWEdEL2tPWlRJMU5LWXhWWTZmN2xWV2NtUm1pRTNTZEp6ZmRwVUE4b2o1MUhaNmUycXRZYkxQCmZQL3Y5OXVtTWhWWC91UkZqcnJHYkU5Mm5URFYzMEw4ZERsaFVuQkQyZWIveG56NnNhcngvWlFDYlJiVk0yK3ZQTCtjL1BMVm1aYUUKYU1tcGZ0dFNKdFJiclBFYlhWUnFYdVZYR2ZORis1aEVVM0NYdlpLL0NtcUt6Y1VpZEsyZFQrQ1pBUldtZ0h4V1ZGVkdYVFBKbDdiNQpKOGJReHgzS1lxTFpZUzF2eTFjNjF3UVdJUXNzcjQvR0NDRVYzSXdwTk5hR1hwQitJV2g3OFZpY2JXZnZTcDhhcmJIdmpkUjNhRmd0CjlBMDJ3ZGxzRXB1YUNia0dBRWdmSUFzYjlwUlhYaFVpM2tpZktmN3NJR3FvcTAva0E1UWNvRTFTM3lyR2ZHV3J1Q2dqMzZGTklzODYKSDYwbEo5U241QW4rYUZiQmVMdTJhTitKYktvMFVoK08ra0Z2eEZnU3RjUG5zTi9ZZm5SbkU3ZVlueC93QTM1QVNlRGRCcUNDVzlwNgp1c3NZNko0bFZna1FiVlpXa3QxdXQ3UkYxZlhaUFFEWjZON3owejNLeXRTWUtnaU9ka0VvT1YxZHBSNHkvWGVPaURkYVc2eXlqazdjCmYyeVFjeTd5V1NZMGxqNnFUS3M2NTBqWFFMcUliTFFjSU81N3VscHExZmNkUjRBdDdYVk8rY2c3M2FpS2t3M2srdVFBOEIxUzRuemwKdm53R09TOWdrUTJ1ZytBWEhQTzlubk92UVhhVGUrVUpmQUl5U3ZUZ3grckRNd056akZsU1g0Y2JGS2VjelAyNU9lcUJTTTRWaE1iQgpPSHdQYVdmL05EYTFiVGtqd1lPSWdqZzJpQzVUdG5hYjRPYjlrZWVkOGlkSEV1S1VTLzNtVzhkTmQyU2plNGtxbGJjb04zV0pQTXl0CnM0K3lWTmx1T2FvS0VQQ0tzeHg2czhOTVFFbTRISTFqUlFjVW1FZnE1RTNsaHRZRzNyYWo1RlIxUFZXTG45QXFPOXpFS1EvbGU0S3AKeTl6eTVPODVuS2drenlVdTVOVmxocFFsOHNmRkYyNmFVMkJiSTdrL1cyVjFybnNPOVdqSk9ueElydmU2T2lrcE45Q0RwUmFjK1JWeQphQ2lMN2FneXBuWm9rOXp2VHZRclR3dmxLN3FvN05CTjdTTGFVbDZ4R3RPWWVra2grZlExdThVb0dFK2l6aTFmRTJWdlpxT1ZPN0w2CjBtTzkwby9EVzhqTGNWV1h1djg3VnE5UHQ5TDY1UVhEckdkQzJRaU1DZXlnajdaRlN5QkFIVjcvSHJ2WmcvRUFBQXZjQjZ5OXJndlkKS2dYcmhydjdmMFBzWjE1VVFRajl0djh1OWJRaUNWQW00OTNlTjhCS2c4Z1ZyamZjMkVORjExT2o1UVVCejV0dzBDaTh4NjJidGJ1TQp4SVdoZjBsY05qM3BlOExqbmFhdzhubkJYVDJ2ME9iYWZVNjYwUTg5dll3MmpKUitpZE1aVjFZTkNBVFg4VEVmUUJxcnpuRDZYekRuCmlVdU9kU0ExaDQvNUFMZ1cxamoxQ1NZQmRISGdURDZGQVFDd1ArWWZqTVRxMHpsSFlocFhIOHQvT0JZTzNNZFBvK0JJZXAwTEFhMWgKdUlkZllRQ0I4ZktWK2E1SHJ3M2t0TW5CdW9hOERTRlppTS9scVJQY0M2RjhsekVBd0VrM29zRmNDd1BwZ1h3cmdYaHB2bnVOUEZkWgpST2Q4ampRYW9peDJJaUFJdC9FdERBQ2ZSbkxXZCtYejhyL1QwbGphbkgxTnZUUElmMmZBSGZuYUFReEE1a3FuY2k4TTJOMUsxbW1UCmdhVk85MmJYQVhVNHZwTy9Sb0ZoNnV5OEJCaUxTeGRXR0ZJRXIrdmVGTWJxOVlXT0JQUnNDREY2Q29kQUFGQWVTL0VYdmRHTTBrVVYKQS94VDJxMkx5OWNBV3VqWkVLcS94cFBGYUlSbTVRNjlrVFlMTm9zcERrQlg2SmplbjJmU3RNV3RWMmNmaE1abVV1UnM5QUVxT3FpbQpaSTB1Q1cvdGVRV0R3RGhNS1JMYVlHMnBOMXczVnV2bWNUd3R0ZkNpT1BNQmNxM0ZodEI5T05KbzhsaW1KVENXc1U2bnU5Z2hrbmxaCjBJaTFZby9qZ1p6VGpyQWhlQ09hOUV2MVpnQ0E2R0hqT21ia3U4UG8wcTdJbkVJdHI4RFhpTlVHY3ZvN0RFSVBRUU1BUUtzeU93ckQKbS9UbGVjeW5iSDVtT3BTYUYzaFF0QzY1MW1Jay9NdHVXREkyWmlLK0k2djE1VDBQMWRVVmZHV21XWklub3ZXRlBzbm5IU2pIWVlkeAp0QnhCSlZKUXk3Wms5bnlGSDA4djFPM0ZFLzE3WTBid0RRQ0F6ckY0YzdBQ2U0S05IR3N4VkdRck11NFQza2JQQlFDSWJ0UW5wZzhBCkFLUS9oZ21aV1RvZEY5bks5eE5kanNpeEZwRzB5QThrZFFlTHAyZG5ESTdWUjlkZ3BYMzVZQmtBUUptR1g4V2N6NHQyZ3E2RnM4YVkKU0t0ZytBRWpiRkZOMWpLb3NoaXRMZlpJWGU4dzlKcXNGWU9LSGt5SGF2QjZaV1czUll1UThuRGdtY3FaRDVCYjJ5dGFBekl3ZHVqWApSZzhEZEE0TFB5OVZQRG93bU5YVCtFQUFnSlpFdDB0Qi9ZRkFCWHFnZ2dTb3RKSlYwRzhZdENacnBvSFJRYitWcWlnT1pGL0E3RTIvCmRhb2tVSTYxR0svMVc2bktnZVU1aEFPSFB1VHo4Wk1UQWsva2ZnSUdBYkFJMlN4TjhWczM4VEMyZnpNN055b2RBeUNsNWxKOXRiZFAKbjFRN0dOTWZxN2swWDFDKzNTc21Sd2FYd2pUV2hFVTZwSHlBUWRnQmFSdDlzdTdUL1AvL1A0NFlDM3dPallQeUFBQUFKWFJGV0hSawpZWFJsT21OeVpXRjBaUUF5TURJeUxUQXlMVEl6VkRFeU9qQTVPakkzS3pBek9qQXdQLzFrWEFBQUFDVjBSVmgwWkdGMFpUcHRiMlJwClpua0FNakF5TWkwd01pMHlNMVF4TWpvd09Ub3lOeXN3TXpvd01FNmczT0FBQUFBQVNVVk9SSzVDWUlJPSIgLz4KPC9zdmc+Cg=='
992
+ }
993
+ }
994
+ }
995
+ ]
996
+ };
997
+ }
998
+ const StencilFunction = {
999
+ getStencilShapes,
1000
+ getStencilGroups
1001
+ };
1002
+ export default StencilFunction;
1003
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlbmNpbC5mdW5jdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Ftcy1hbmd1bGFyL3NyYy9saWIvcW1zLWNrZWRpdG9yLWNvbXBvbmVudHMvY29tbW9uL2Zsb3djaGFydC9jb25maWcvc3RlbmNpbC5mdW5jdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxTQUFTLGdCQUFnQjtJQUNyQixPQUFPO1FBQ0gsUUFBUSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUU7UUFDaEQsR0FBRyxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFO1FBQ3pDLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRTtRQUNyQyxHQUFHLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxxQkFBcUIsRUFBRTtRQUMvQyxHQUFHLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUU7UUFDL0IsR0FBRyxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFO0tBQ2xDLENBQUE7QUFDTCxDQUFDO0FBRUQsU0FBUyxnQkFBZ0IsQ0FBQyxJQUFTO0lBQy9CLE9BQU87UUFDSCxRQUFRLEVBQUU7WUFDTjtnQkFDSSxJQUFJLEVBQUUsb0JBQW9CO2dCQUMxQixJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUU7Z0JBQzdCLEtBQUssRUFBRTtvQkFDSCxJQUFJLEVBQUU7d0JBQ0YsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUU7d0JBQzFDLG1CQUFtQixFQUFFLE1BQU07d0JBQzNCLDJCQUEyQixF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LEVBQUUsRUFBRTt3QkFDZixhQUFhLEVBQUUsTUFBTTt3QkFDckIsaUJBQWlCLEVBQUUsTUFBTTtxQkFDNUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLElBQUksRUFBRSxRQUFRO3dCQUNkLElBQUksRUFBRSxTQUFTO3dCQUNmLGFBQWEsRUFBRSxrQkFBa0I7d0JBQ2pDLGFBQWEsRUFBRSxRQUFRO3dCQUN2QixXQUFXLEVBQUUsRUFBRTtxQkFDbEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLElBQUksRUFBRSxTQUFTO3dCQUNmLE1BQU0sRUFBRSxhQUFhO3dCQUNyQixjQUFjLEVBQUUsQ0FBQzt3QkFDakIsa0JBQWtCLEVBQUUsR0FBRztxQkFDMUI7b0JBQ0QsS0FBSyxFQUFFO3dCQUNILEtBQUssRUFBRSxFQUFFO3dCQUNULE1BQU0sRUFBRSxFQUFFO3dCQUNWLENBQUMsRUFBRSxFQUFFO3dCQUNMLENBQUMsRUFBRSxFQUFFO3dCQUNMLEdBQUcsRUFBRSxJQUFJO3dCQUNULE9BQU8sRUFBRSxJQUFJO3dCQUNiLE9BQU8sRUFBRSxJQUFJO3dCQUNiLGFBQWEsRUFBRSxJQUFJO3dCQUNuQixZQUFZLEVBQUUsNHdOQUE0d047cUJBQzd4TjtpQkFDSjthQUNKO1NBQ0o7S0FDSixDQUFBO0FBQ0wsQ0FBQztBQUNELE1BQU0sZUFBZSxHQUFHO0lBQ3BCLGdCQUFnQjtJQUNoQixnQkFBZ0I7Q0FDbkIsQ0FBQztBQUNGLGVBQWUsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZGVjbGFyZSB2YXIgam9pbnQ6IGFueTtcclxuZnVuY3Rpb24gZ2V0U3RlbmNpbEdyb3VwcygpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgICAgc3RhbmRhcmQ6IHsgaW5kZXg6IDEsIGxhYmVsOiAnU3RhbmRhcmQgc2hhcGVzJyB9LFxyXG4gICAgICAgIGZzYTogeyBpbmRleDogMiwgbGFiZWw6ICdTdGF0ZSBtYWNoaW5lJyB9LFxyXG4gICAgICAgIHBuOiB7IGluZGV4OiAzLCBsYWJlbDogJ1BldHJpIG5ldHMnIH0sXHJcbiAgICAgICAgZXJkOiB7IGluZGV4OiA0LCBsYWJlbDogJ0VudGl0eS1yZWxhdGlvbnNoaXAnIH0sXHJcbiAgICAgICAgdW1sOiB7IGluZGV4OiA1LCBsYWJlbDogJ1VNTCcgfSxcclxuICAgICAgICBvcmc6IHsgaW5kZXg6IDYsIGxhYmVsOiAnT1JHJyB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGdldFN0ZW5jaWxTaGFwZXMoTEFORzogYW55KTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIHN0YW5kYXJkOiBbXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6ICdzdGFuZGFyZC5SZWN0YW5nbGUnLFxyXG4gICAgICAgICAgICAgICAgc2l6ZTogeyB3aWR0aDogNSwgaGVpZ2h0OiAzIH0sXHJcbiAgICAgICAgICAgICAgICBhdHRyczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3Q6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXA6IGAke0xBTkcuRkxPV0NIQVJULlJFQ1RBTkdMRX1gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uOiAnbGVmdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb25TZWxlY3RvcjogJy5qb2ludC1zdGVuY2lsJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgYm9keToge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByeDogMixcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnk6IDIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnIzMxZDBjNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2VEYXNoYXJyYXk6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogJ3JlY3QnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2M2YzdlMicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6ICdSb2JvdG8gQ29uZGVuc2VkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogJ05vcm1hbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiAxMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6ICdzdGFuZGFyZC5FbGxpcHNlJyxcclxuICAgICAgICAgICAgICAgIHNpemU6IHsgd2lkdGg6IDUsIGhlaWdodDogMyB9LFxyXG4gICAgICAgICAgICAgICAgYXR0cnM6IHtcclxuICAgICAgICAgICAgICAgICAgICByb290OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwOiBgJHtMQU5HLkZMT1dDSEFSVC5FTExJUFNFfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb246ICdsZWZ0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvblNlbGVjdG9yOiAnLmpvaW50LXN0ZW5jaWwnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICBib2R5OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnIzMxZDBjNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2VEYXNoYXJyYXk6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogJ2VsbGlwc2UnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2M2YzdlMicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6ICdSb2JvdG8gQ29uZGVuc2VkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogJ05vcm1hbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiAxMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6ICdhcHAuUmVjdGFuZ3VsYXJNb2RlbCcsXHJcbiAgICAgICAgICAgICAgICBzaXplOiB7IHdpZHRoOiA0MCwgaGVpZ2h0OiAzMCB9LFxyXG4gICAgICAgICAgICAgICAgYWxsb3dPcnRob2dvbmFsUmVzaXplOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIGF0dHJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcm9vdDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcDogYCR7TEFORy5GTE9XQ0hBUlQuUkVDVEFOR0xFX1dJVEhfUE9SVFN9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvbjogJ2xlZnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uU2VsZWN0b3I6ICcuam9pbnQtc3RlbmNpbCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGJvZHk6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcng6IDIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ5OiAyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICcjMzFkMGM2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZURhc2hhcnJheTogJzAnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICBsYWJlbDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiAncmVjdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjYzZjN2UyJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogJ1JvYm90byBDb25kZW5zZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiAnTm9ybWFsJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udFNpemU6IDExLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2VXaWR0aDogMFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBwb3J0czoge1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1zOiBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgZ3JvdXA6ICdpbicgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBncm91cDogJ2luJyB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGdyb3VwOiAnb3V0JyB9XHJcbiAgICAgICAgICAgICAgICAgICAgXVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0eXBlOiAnYXBwLkNpcmN1bGFyTW9kZWwnLFxyXG4gICAgICAgICAgICAgICAgc2l6ZTogeyB3aWR0aDogNSwgaGVpZ2h0OiAzIH0sXHJcbiAgICAgICAgICAgICAgICBhbGxvd09ydGhvZ29uYWxSZXNpemU6IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgYXR0cnM6IHtcclxuICAgICAgICAgICAgICAgICAgICByb290OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwOiBgJHtMQU5HLkZMT1dDSEFSVC5FTExJUFNFX1dJVEhfUE9SVFN9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvbjogJ2xlZnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uU2VsZWN0b3I6ICcuam9pbnQtc3RlbmNpbCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGJvZHk6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnIzMxZDBjNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2VEYXNoYXJyYXk6ICcwJyxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6ICdlbGxpcHNlJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNjNmM3ZTInLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6ICdOb3JtYWwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250U2l6ZTogMTEsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAwXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIHBvcnRzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbXM6IFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgeyBncm91cDogJ2luJyB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7IGdyb3VwOiAnaW4nIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHsgZ3JvdXA6ICdvdXQnIH1cclxuICAgICAgICAgICAgICAgICAgICBdXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6ICdzdGFuZGFyZC5Qb2x5Z29uJyxcclxuICAgICAgICAgICAgICAgIHNpemU6IHsgd2lkdGg6IDUsIGhlaWdodDogMyB9LFxyXG4gICAgICAgICAgICAgICAgYXR0cnM6IHtcclxuICAgICAgICAgICAgICAgICAgICByb290OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwOiBgJHtMQU5HLkZMT1dDSEFSVC5SSE9NQlVTfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb246ICdsZWZ0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvblNlbGVjdG9yOiAnLmpvaW50LXN0ZW5jaWwnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICBib2R5OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZlBvaW50czogJzUwLDAgMTAwLDUwIDUwLDEwMCAwLDUwJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnIzMxZDBjNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2VEYXNoYXJyYXk6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogJ3Job21idXMnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2M2YzdlMicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6ICdSb2JvdG8gQ29uZGVuc2VkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogJ05vcm1hbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiAxMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6ICdzdGFuZGFyZC5DeWxpbmRlcicsXHJcbiAgICAgICAgICAgICAgICBzaXplOiB7IHdpZHRoOiA1LCBoZWlnaHQ6IDMgfSxcclxuICAgICAgICAgICAgICAgIGF0dHJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcm9vdDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcDogYCR7TEFORy5GTE9XQ0hBUlQuQ1lMSU5ERVJ9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvbjogJ2xlZnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uU2VsZWN0b3I6ICcuam9pbnQtc3RlbmNpbCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGJvZHk6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnIzMxZDBjNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2VEYXNoYXJyYXk6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjMzFkMGM2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnIzMxZDBjNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2VEYXNoYXJyYXk6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogJ2N5bGluZGVyJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNjNmM3ZTInLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6ICdOb3JtYWwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250U2l6ZTogMTEsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAwXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RhbmRhcmQuSW1hZ2UnLFxyXG4gICAgICAgICAgICAgICAgc2l6ZTogeyB3aWR0aDogNTMsIGhlaWdodDogNDIgfSxcclxuICAgICAgICAgICAgICAgIGF0dHJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcm9vdDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcDogYCR7TEFORy5GTE9XQ0hBUlQuSU1BR0V9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvbjogJ2xlZnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uU2VsZWN0b3I6ICcuam9pbnQtc3RlbmNpbCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGltYWdlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHhsaW5rSHJlZjogJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaWRYUm1MVGdpUHo0OElVUlBRMVJaVUVVZ2MzWm5JRkJWUWt4SlF5QWlMUzh2VnpOREx5OUVWRVFnVTFaSElERXVNUzh2UlU0aUlDSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OUhjbUZ3YUdsamN5OVRWa2N2TVM0eEwwUlVSQzl6ZG1jeE1TNWtkR1FpUGp4emRtY2dkbVZ5YzJsdmJqMGlNUzR4SWlCcFpEMGlUR0Y1WlhKZk1pSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklpQjRiV3h1Y3pwNGJHbHVhejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TVRrNU9TOTRiR2x1YXlJZ2VEMGlNSEI0SWlCNVBTSXdjSGdpSUhkcFpIUm9QU0kxTTNCNElpQm9aV2xuYUhROUlqUXljSGdpSUhacFpYZENiM2c5SWpBZ01DQTFNeUEwTWlJZ1pXNWhZbXhsTFdKaFkydG5jbTkxYm1ROUltNWxkeUF3SURBZ05UTWdORElpSUhodGJEcHpjR0ZqWlQwaWNISmxjMlZ5ZG1VaVBqeG5QanhuSUc5d1lXTnBkSGs5SWpBdU5Ea2lQanh3WVhSb0lHWnBiR3c5SWlNeU1qSXhNemdpSUdROUlrMDBPUzR6TkRRc00yTXdMalUwTWl3d0xERXVNalV0TUM0d05ESXNNUzR5TlN3d0xqVjJNelJqTUN3d0xqVTBNaTB3TGpjd09Dd3hMalV0TVM0eU5Td3hMalZvTFRRMll5MHdMalUwTWl3d0xUQXVOelV0TUM0NU5UZ3RNQzQzTlMweExqVWdkaTB6TkdNd0xUQXVOVFF5TERBdU1qQTRMVEF1TlN3d0xqYzFMVEF1TldnME5pNHlOU0JOTkRrdU16UTBMREZvTFRRMll5MHhMalkxTERBdE1pNDNOU3d3TGpnMUxUSXVOelVzTWk0MWRqTTBZekFzTVM0Mk5Td3hMakVzTXk0MUxESXVOelVzTXk0MWFEUTJJR014TGpZMUxEQXNNeTR5TlMweExqZzFMRE11TWpVdE15NDFkaTB6TkVNMU1pNDFPVFFzTVM0NE5TdzFNQzQ1T1RRc01TdzBPUzR6TkRRc01VdzBPUzR6TkRRc01Yb2lMejQ4WTJseVkyeGxJR1pwYkd3OUlpTXlNakl4TXpnaUlHTjRQU0l6T0M0d09UUWlJR041UFNJeE1pNDFNRElpSUhJOUlqUXVNems0SWk4K1BIQmhkR2dnWm1sc2JEMGlJekl5TWpFek9DSWdaRDBpVFRVd0xqVTVOQ3d5Tmk0NU56SnNMVGN1TVRNMUxUVXVPVEU0WXkweExqQTNOaTB3TGpnNE9DMHlMamN5Tmkwd0xqZzFOQzB6TGpjME9Td3dMakE0Tkd3dE55NHlNalFzTmk0MU9ESk1NVGd1TWpVeExERXlMakl4SUdNdE1TNHdOek10TVM0eE56TXRNaTQ0TWpZdE1TNHhPRFl0TXk0NU1UY3RNQzR3TWpSTU1TNDFPVFFzTWpVdU9USXlWalF3YURRNExqazVNMk13TGpFeE5Td3dMREF1TURBM0xUQXVNREl4TERBdU1EQTNMVEF1TURJNVZqSTJMamszTW5vaUx6NDhMMmMrUEdjK1BHYytQR2MrUEhCaGRHZ2dabWxzYkQwaUl6TXhSREJETmlJZ1pEMGlUVFE1TGpNME5Dd3lZekF1TlRReUxEQXNNUzR5TlMwd0xqQTBNaXd4TGpJMUxEQXVOWFl6TkdNd0xEQXVOVFF5TFRBdU56QTRMREV1TlMweExqSTFMREV1TldndE5EWmpMVEF1TlRReUxEQXRNQzQzTlMwd0xqazFPQzB3TGpjMUxURXVOU0IyTFRNMFl6QXRNQzQxTkRJc01DNHlNRGd0TUM0MUxEQXVOelV0TUM0MWFEUTJMakkxSUUwME9TNHpORFFzTUdndE5EWmpMVEV1TmpVc01DMHlMamMxTERBdU9EVXRNaTQzTlN3eUxqVjJNelJqTUN3eExqWTFMREV1TVN3ekxqVXNNaTQzTlN3ekxqVm9ORFlnWXpFdU5qVXNNQ3d6TGpJMUxURXVPRFVzTXk0eU5TMHpMalYyTFRNMFF6VXlMalU1TkN3d0xqZzFMRFV3TGprNU5Dd3dMRFE1TGpNME5Dd3dURFE1TGpNME5Dd3dlaUl2UGp3dlp6NDhZMmx5WTJ4bElHWnBiR3c5SWlNek1VUXdRellpSUdONFBTSXpPQzR3T1RRaUlHTjVQU0l4TVM0MU1ESWlJSEk5SWpRdU16azRJaTgrUEhCaGRHZ2dabWxzYkQwaUl6TXhSREJETmlJZ1pEMGlUVFV3TGpVNU5Dd3lOUzQ1TnpKc0xUY3VNVE0xTFRVdU9URTRZeTB4TGpBM05pMHdMamc0T0MweUxqY3lOaTB3TGpnMU5DMHpMamMwT1N3d0xqQTROR3d0Tnk0eU1qUXNOaTQxT0RKTU1UZ3VNalV4TERFeExqSXhJR010TVM0d056TXRNUzR4TnpNdE1pNDRNall0TVM0eE9EWXRNeTQ1TVRjdE1DNHdNalJNTVM0MU9UUXNNalF1T1RJeVZqTTVhRFE0TGprNU0yTXdMakV4TlN3d0xEQXVNREEzTFRBdU1ESXhMREF1TURBM0xUQXVNREk1VmpJMUxqazNNbm9pTHo0OEwyYytQQzluUGp3dlp6NDhMM04yWno0ZydcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGJvZHk6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnIzMxZDBjNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2VEYXNoYXJyYXk6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgbGFiZWw6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogJ2ltYWdlJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udEZhbWlseTogJ1JvYm90byBDb25kZW5zZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250V2VpZ2h0OiAnTm9ybWFsJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udFNpemU6IDExLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2M2YzdlMidcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6ICdzdGFuZGFyZC5FbWJlZGRlZEltYWdlJyxcclxuICAgICAgICAgICAgICAgIHNpemU6IHsgd2lkdGg6IDUsIGhlaWdodDogMyB9LFxyXG4gICAgICAgICAgICAgICAgYXR0cnM6IHtcclxuICAgICAgICAgICAgICAgICAgICByb290OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwOiBgJHtMQU5HLkZMT1dDSEFSVC5DQVJEfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb246ICdsZWZ0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvblNlbGVjdG9yOiAnLmpvaW50LXN0ZW5jaWwnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICBib2R5OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICd0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJyMzMWQwYzYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2VXaWR0aDogMixcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlRGFzaGFycmF5OiAnMCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGltYWdlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHhsaW5rSHJlZjogJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaWRYUm1MVGdpUHo0OElVUlBRMVJaVUVVZ2MzWm5JRkJWUWt4SlF5QWlMUzh2VnpOREx5OUVWRVFnVTFaSElERXVNUzh2UlU0aUlDSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OUhjbUZ3YUdsamN5OVRWa2N2TVM0eEwwUlVSQzl6ZG1jeE1TNWtkR1FpUGp4emRtY2dkbVZ5YzJsdmJqMGlNUzR4SWlCcFpEMGlUR0Y1WlhKZk1pSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklpQjRiV3h1Y3pwNGJHbHVhejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TVRrNU9TOTRiR2x1YXlJZ2VEMGlNSEI0SWlCNVBTSXdjSGdpSUhkcFpIUm9QU0kxTTNCNElpQm9aV2xuYUhROUlqUXljSGdpSUhacFpYZENiM2c5SWpBZ01DQTFNeUEwTWlJZ1pXNWhZbXhsTFdKaFkydG5jbTkxYm1ROUltNWxkeUF3SURBZ05UTWdORElpSUhodGJEcHpjR0ZqWlQwaWNISmxjMlZ5ZG1VaVBqeG5QanhuSUc5d1lXTnBkSGs5SWpBdU5Ea2lQanh3WVhSb0lHWnBiR3c5SWlNeU1qSXhNemdpSUdROUlrMDBPUzR6TkRRc00yTXdMalUwTWl3d0xERXVNalV0TUM0d05ESXNNUzR5TlN3d0xqVjJNelJqTUN3d0xqVTBNaTB3TGpjd09Dd3hMalV0TVM0eU5Td3hMalZvTFRRMll5MHdMalUwTWl3d0xUQXVOelV0TUM0NU5UZ3RNQzQzTlMweExqVWdkaTB6TkdNd0xUQXVOVFF5TERBdU1qQTRMVEF1TlN3d0xqYzFMVEF1TldnME5pNHlOU0JOTkRrdU16UTBMREZvTFRRMll5MHhMalkxTERBdE1pNDNOU3d3TGpnMUxUSXVOelVzTWk0MWRqTTBZekFzTVM0Mk5Td3hMakVzTXk0MUxESXVOelVzTXk0MWFEUTJJR014TGpZMUxEQXNNeTR5TlMweExqZzFMRE11TWpVdE15NDFkaTB6TkVNMU1pNDFPVFFzTVM0NE5TdzFNQzQ1T1RRc01TdzBPUzR6TkRRc01VdzBPUzR6TkRRc01Yb2lMejQ4WTJseVkyeGxJR1pwYkd3OUlpTXlNakl4TXpnaUlHTjRQU0l6T0M0d09UUWlJR041UFNJeE1pNDFNRElpSUhJOUlqUXVNems0SWk4K1BIQmhkR2dnWm1sc2JEMGlJekl5TWpFek9DSWdaRDBpVFRVd0xqVTVOQ3d5Tmk0NU56SnNMVGN1TVRNMUxUVXVPVEU0WXkweExqQTNOaTB3TGpnNE9DMHlMamN5Tmkwd0xqZzFOQzB6TGpjME9Td3dMakE0Tkd3dE55NHlNalFzTmk0MU9ESk1NVGd1TWpVeExERXlMakl4SUdNdE1TNHdOek10TVM0eE56TXRNaTQ0TWpZdE1TNHhPRFl0TXk0NU1UY3RNQzR3TWpSTU1TNDFPVFFzTWpVdU9USXlWalF3YURRNExqazVNMk13TGpFeE5Td3dMREF1TURBM0xUQXVNREl4TERBdU1EQTNMVEF1TURJNVZqSTJMamszTW5vaUx6NDhMMmMrUEdjK1BHYytQR2MrUEhCaGRHZ2dabWxzYkQwaUl6TXhSREJETmlJZ1pEMGlUVFE1TGpNME5Dd3lZekF1TlRReUxEQXNNUzR5TlMwd0xqQTBNaXd4TGpJMUxEQXVOWFl6TkdNd0xEQXVOVFF5TFRBdU56QTRMREV1TlMweExqSTFMREV1TldndE5EWmpMVEF1TlRReUxEQXRNQzQzTlMwd0xqazFPQzB3TGpjMUxURXVOU0IyTFRNMFl6QXRNQzQxTkRJc01DNHlNRGd0TUM0MUxEQXVOelV0TUM0MWFEUTJMakkxSUUwME9TNHpORFFzTUdndE5EWmpMVEV1TmpVc01DMHlMamMxTERBdU9EVXRNaTQzTlN3eUxqVjJNelJqTUN3eExqWTFMREV1TVN3ekxqVXNNaTQzTlN3ekxqVm9ORFlnWXpFdU5qVXNNQ3d6TGpJMUxURXVPRFVzTXk0eU5TMHpMalYyTFRNMFF6VXlMalU1TkN3d0xqZzFMRFV3TGprNU5Dd3dMRFE1TGpNME5Dd3dURFE1TGpNME5Dd3dlaUl2UGp3dlp6NDhZMmx5WTJ4bElHWnBiR3c5SWlNek1VUXdRellpSUdONFBTSXpPQzR3T1RRaUlHTjVQU0l4TVM0MU1ESWlJSEk5SWpRdU16azRJaTgrUEhCaGRHZ2dabWxzYkQwaUl6TXhSREJETmlJZ1pEMGlUVFV3TGpVNU5Dd3lOUzQ1TnpKc0xUY3VNVE0xTFRVdU9URTRZeTB4TGpBM05pMHdMamc0T0MweUxqY3lOaTB3TGpnMU5DMHpMamMwT1N3d0xqQTROR3d0Tnk0eU1qUXNOaTQxT0RKTU1UZ3VNalV4TERFeExqSXhJR010TVM0d056TXRNUzR4TnpNdE1pNDRNall0TVM0eE9EWXRNeTQ1TVRjdE1DNHdNalJNTVM0MU9UUXNNalF1T1RJeVZqTTVhRFE0TGprNU0yTXdMakV4TlN3d0xEQXVNREEzTFRBdU1ESXhMREF1TURBM0xUQXVNREk1VmpJMUxqazNNbm9pTHo0OEwyYytQQzluUGp3dlp6NDhMM04yWno0ZydcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6ICdjYXJkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNjNmM3ZTInLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6ICdOb3JtYWwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250U2l6ZTogMTEsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAwXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RhbmRhcmQuSW5zY3JpYmVkSW1hZ2UnLFxyXG4gICAgICAgICAgICAgICAgc2l6ZTogeyB3aWR0aDogMSwgaGVpZ2h0OiAxIH0sXHJcbiAgICAgICAgICAgICAgICBhdHRyczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3Q6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXA6IGAke0xBTkcuRkxPV0NIQVJULklDT059YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvbjogJ2xlZnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uU2VsZWN0b3I6ICcuam9pbnQtc3RlbmNpbCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICcjMzFkMGM2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZURhc2hhcnJheTogJzAnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICd0cmFuc3BhcmVudCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGltYWdlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHhsaW5rSHJlZjogJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaWRYUm1MVGdpUHo0OElVUlBRMVJaVUVVZ2MzWm5JRkJWUWt4SlF5QWlMUzh2VnpOREx5OUVWRVFnVTFaSElERXVNUzh2UlU0aUlDSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OUhjbUZ3YUdsamN5OVRWa2N2TVM0eEwwUlVSQzl6ZG1jeE1TNWtkR1FpUGp4emRtY2dkbVZ5YzJsdmJqMGlNUzR4SWlCcFpEMGlUR0Y1WlhKZk1pSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklpQjRiV3h1Y3pwNGJHbHVhejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TVRrNU9TOTRiR2x1YXlJZ2VEMGlNSEI0SWlCNVBTSXdjSGdpSUhkcFpIUm9QU0kxTTNCNElpQm9aV2xuYUhROUlqUXljSGdpSUhacFpYZENiM2c5SWpBZ01DQTFNeUEwTWlJZ1pXNWhZbXhsTFdKaFkydG5jbTkxYm1ROUltNWxkeUF3SURBZ05UTWdORElpSUhodGJEcHpjR0ZqWlQwaWNISmxjMlZ5ZG1VaVBqeG5QanhuSUc5d1lXTnBkSGs5SWpBdU5Ea2lQanh3WVhSb0lHWnBiR3c5SWlNeU1qSXhNemdpSUdROUlrMDBPUzR6TkRRc00yTXdMalUwTWl3d0xERXVNalV0TUM0d05ESXNNUzR5TlN3d0xqVjJNelJqTUN3d0xqVTBNaTB3TGpjd09Dd3hMalV0TVM0eU5Td3hMalZvTFRRMll5MHdMalUwTWl3d0xUQXVOelV0TUM0NU5UZ3RNQzQzTlMweExqVWdkaTB6TkdNd0xUQXVOVFF5TERBdU1qQTRMVEF1TlN3d0xqYzFMVEF1TldnME5pNHlOU0JOTkRrdU16UTBMREZvTFRRMll5MHhMalkxTERBdE1pNDNOU3d3TGpnMUxUSXVOelVzTWk0MWRqTTBZekFzTVM0Mk5Td3hMakVzTXk0MUxESXVOelVzTXk0MWFEUTJJR014TGpZMUxEQXNNeTR5TlMweExqZzFMRE11TWpVdE15NDFkaTB6TkVNMU1pNDFPVFFzTVM0NE5TdzFNQzQ1T1RRc01TdzBPUzR6TkRRc01VdzBPUzR6TkRRc01Yb2lMejQ4WTJseVkyeGxJR1pwYkd3OUlpTXlNakl4TXpnaUlHTjRQU0l6T0M0d09UUWlJR041UFNJeE1pNDFNRElpSUhJOUlqUXVNems0SWk4K1BIQmhkR2dnWm1sc2JEMGlJekl5TWpFek9DSWdaRDBpVFRVd0xqVTVOQ3d5Tmk0NU56SnNMVGN1TVRNMUxUVXVPVEU0WXkweExqQTNOaTB3TGpnNE9DMHlMamN5Tmkwd0xqZzFOQzB6TGpjME9Td3dMakE0Tkd3dE55NHlNalFzTmk0MU9ESk1NVGd1TWpVeExERXlMakl4SUdNdE1TNHdOek10TVM0eE56TXRNaTQ0TWpZdE1TNHhPRFl0TXk0NU1UY3RNQzR3TWpSTU1TNDFPVFFzTWpVdU9USXlWalF3YURRNExqazVNMk13TGpFeE5Td3dMREF1TURBM0xUQXVNREl4TERBdU1EQTNMVEF1TURJNVZqSTJMamszTW5vaUx6NDhMMmMrUEdjK1BHYytQR2MrUEhCaGRHZ2dabWxzYkQwaUl6TXhSREJETmlJZ1pEMGlUVFE1TGpNME5Dd3lZekF1TlRReUxEQXNNUzR5TlMwd0xqQTBNaXd4TGpJMUxEQXVOWFl6TkdNd0xEQXVOVFF5TFRBdU56QTRMREV1TlMweExqSTFMREV1TldndE5EWmpMVEF1TlRReUxEQXRNQzQzTlMwd0xqazFPQzB3TGpjMUxURXVOU0IyTFRNMFl6QXRNQzQxTkRJc01DNHlNRGd0TUM0MUxEQXVOelV0TUM0MWFEUTJMakkxSUUwME9TNHpORFFzTUdndE5EWmpMVEV1TmpVc01DMHlMamMxTERBdU9EVXRNaTQzTlN3eUxqVjJNelJqTUN3eExqWTFMREV1TVN3ekxqVXNNaTQzTlN3ekxqVm9ORFlnWXpFdU5qVXNNQ3d6TGpJMUxURXVPRFVzTXk0eU5TMHpMalYyTFRNMFF6VXlMalU1TkN3d0xqZzFMRFV3TGprNU5Dd3dMRFE1TGpNME5Dd3dURFE1TGpNME5Dd3dlaUl2UGp3dlp6NDhZMmx5WTJ4bElHWnBiR3c5SWlNek1VUXdRellpSUdONFBTSXpPQzR3T1RRaUlHTjVQU0l4TVM0MU1ESWlJSEk5SWpRdU16azRJaTgrUEhCaGRHZ2dabWxzYkQwaUl6TXhSREJETmlJZ1pEMGlUVFV3TGpVNU5Dd3lOUzQ1TnpKc0xUY3VNVE0xTFRVdU9URTRZeTB4TGpBM05pMHdMamc0T0MweUxqY3lOaTB3TGpnMU5DMHpMamMwT1N3d0xqQTROR3d0Tnk0eU1qUXNOaTQxT0RKTU1UZ3VNalV4TERFeExqSXhJR010TVM0d056TXRNUzR4TnpNdE1pNDRNall0TVM0eE9EWXRNeTQ1TVRjdE1DNHdNalJNTVM0MU9UUXNNalF1T1RJeVZqTTVhRFE0TGprNU0yTXdMakV4TlN3d0xEQXVNREEzTFRBdU1ESXhMREF1TURBM0xUQXVNREk1VmpJMUxqazNNbm9pTHo0OEwyYytQQzluUGp3dlp6NDhMM04yWno0ZydcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6ICdpY29uJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNjNmM3ZTInLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6ICdOb3JtYWwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250U2l6ZTogMTEsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAwXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0eXBlOiAnc3RhbmRhcmQuSGVhZGVyZWRSZWN0YW5nbGUnLFxyXG4gICAgICAgICAgICAgICAgc2l6ZTogeyB3aWR0aDogNSwgaGVpZ2h0OiAzIH0sXHJcbiAgICAgICAgICAgICAgICBhdHRyczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3Q6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXA6IGAke0xBTkcuRkxPV0NIQVJULlJFQ1RBTkdMRV9XSVRIX0hFQURFUn1gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uOiAnbGVmdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb25TZWxlY3RvcjogJy5qb2ludC1zdGVuY2lsJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgYm9keToge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAndHJhbnNwYXJlbnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICcjMzFkMGM2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZURhc2hhcnJheTogJzAnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICBoZWFkZXI6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnIzMxZDBjNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjMzFkMGM2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZURhc2hhcnJheTogJzAnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICBib2R5VGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0V3JhcDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogJ0xvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNjaW5nIGVsaXQuIEN1cmFiaXR1ciBtb2xlc3RpZS4nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IC0xMCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogLTIwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxsaXBzaXM6IHRydWVcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNjNmM3ZTInLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250RmFtaWx5OiAnUm9ib3RvIENvbmRlbnNlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRXZWlnaHQ6ICdOb3JtYWwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250U2l6ZTogMTEsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICByZWZZMjogMTIsXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICBoZWFkZXJUZXh0OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6ICdoZWFkZXInLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRGYW1pbHk6ICdSb2JvdG8gQ29uZGVuc2VkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udFdlaWdodDogJ05vcm1hbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnRTaXplOiAxMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZlk6IDEyXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgXSxcclxuICAgICAgICBmc2E6IFtcclxuXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6ICdmc2EuU3RhcnRTdGF0ZScsXHJcbiAgICAgICAgICAgICAgICBwcmVzZXJ2ZUFzcGVjdFJhdGlvOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgYXR0cnM6IHtcclxuICAgICAgICAgICAgICAgICAgICByb290OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwOiBgJHtMQU5HLkZMT1dDSEFSVC5TVEFSVF9TVEFURX1gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uOiAnbGVmdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb25TZWxlY3RvcjogJy5qb2ludC1zdGVuY2lsJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgY2lyY2xlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyM2MTU0OWMnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLXdpZHRoJzogMFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiAnc3RhcnRTdGF0ZScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjYzZjN2UyJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtZmFtaWx5JzogJ1JvYm90byBDb25kZW5zZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC13ZWlnaHQnOiAnTm9ybWFsJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IDExLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLXdpZHRoJzogMFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdHlwZTogJ2ZzYS5FbmRTdGF0ZScsXHJcbiAgICAgICAgICAgICAgICBwcmVzZXJ2ZUFzcGVjdFJhdGlvOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgYXR0cnM6IHtcclxuICAgICAgICAgICAgICAgICAgICByb290OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwOiBgJHtMQU5HLkZMT1dDSEFSVC5FTkRfU1RBVEV9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvbjogJ2xlZnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uU2VsZWN0b3I6ICcuam9pbnQtc3RlbmNpbCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICcuaW5uZXInOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjNmE2YzhhJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAndHJhbnNwYXJlbnQnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAnLm91dGVyJzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAndHJhbnNwYXJlbnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICcjNjE1NDljJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cm9rZS13aWR0aCc6IDIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2UtZGFzaGFycmF5JzogJzAnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6ICdlbmRTdGF0ZScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjYzZjN2UyJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtZmFtaWx5JzogJ1JvYm90byBDb25kZW5zZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC13ZWlnaHQnOiAnTm9ybWFsJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IDExLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLXdpZHRoJzogMFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdHlwZTogJ2ZzYS5TdGF0ZScsXHJcbiAgICAgICAgICAgICAgICBwcmVzZXJ2ZUFzcGVjdFJhdGlvOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgYXR0cnM6IHtcclxuICAgICAgICAgICAgICAgICAgICByb290OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwOiBgJHtMQU5HLkZMT1dDSEFSVC5TVEFURX1gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uOiAnbGVmdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb25TZWxlY3RvcjogJy5qb2ludC1zdGVuY2lsJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgY2lyY2xlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjNmE2YzhhJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnIzYxNTQ5YycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2Utd2lkdGgnOiAyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiAnc3RhdGUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2M2YzdlMicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LWZhbWlseSc6ICdSb2JvdG8gQ29uZGVuc2VkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtd2VpZ2h0JzogJ05vcm1hbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAxMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cm9rZS13aWR0aCc6IDBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICBdLFxyXG4gICAgICAgIHBuOiBbXHJcblxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0eXBlOiAncG4uUGxhY2UnLFxyXG4gICAgICAgICAgICAgICAgcHJlc2VydmVBc3BlY3RSYXRpbzogdHJ1ZSxcclxuICAgICAgICAgICAgICAgIHRva2VuczogMyxcclxuICAgICAgICAgICAgICAgIGF0dHJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcm9vdDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcDogYCR7TEFORy5GTE9XQ0hBUlQuUExBQ0V9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvbjogJ2xlZnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uU2VsZWN0b3I6ICcuam9pbnQtc3RlbmNpbCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICcucm9vdCc6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnIzYxNTQ5YycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2Utd2lkdGgnOiAyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy50b2tlbnMgY2lyY2xlJzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnIzZhNmM4YScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJyMwMDAnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLXdpZHRoJzogMFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy5sYWJlbCc6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogJycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LWZhbWlseSc6ICdSb2JvdG8gQ29uZGVuc2VkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtd2VpZ2h0JzogJ05vcm1hbCdcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6ICdwbi5UcmFuc2l0aW9uJyxcclxuICAgICAgICAgICAgICAgIHByZXNlcnZlQXNwZWN0UmF0aW86IHRydWUsXHJcbiAgICAgICAgICAgICAgICBhdHRyczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3Q6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXA6IGAke0xBTkcuRkxPV0NIQVJULlRSQU5TSVRJT059YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvbjogJ2xlZnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uU2VsZWN0b3I6ICcuam9pbnQtc3RlbmNpbCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIHJlY3Q6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcng6IDMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ5OiAzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjNjE1NDljJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnIzdjNjhmYycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2Utd2lkdGgnOiAwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy5sYWJlbCc6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogJ3RyYW5zaXRpb24nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1mYW1pbHknOiAnUm9ib3RvIENvbmRlbnNlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXdlaWdodCc6ICdOb3JtYWwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLXdpZHRoJzogMCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZpbGwnOiAnIzIyMjEzOCdcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICBdLFxyXG4gICAgICAgIGVyZDogW1xyXG5cclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdHlwZTogJ2VyZC5FbnRpdHknLFxyXG4gICAgICAgICAgICAgICAgYXR0cnM6IHtcclxuICAgICAgICAgICAgICAgICAgICByb290OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwOiBgJHtMQU5HLkZMT1dDSEFSVC5FTlRJVFl9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvbjogJ2xlZnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uU2VsZWN0b3I6ICcuam9pbnQtc3RlbmNpbCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICcub3V0ZXInOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ4OiAzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICByeTogMyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyMzMWQwYzYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLXdpZHRoJzogMixcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAndHJhbnNwYXJlbnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiAnRW50aXR5JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IDExLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1mYW1pbHknOiAnUm9ib3RvIENvbmRlbnNlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXdlaWdodCc6ICdOb3JtYWwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2Utd2lkdGgnOiAwXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0eXBlOiAnZXJkLldlYWtFbnRpdHknLFxyXG4gICAgICAgICAgICAgICAgYXR0cnM6IHtcclxuICAgICAgICAgICAgICAgICAgICByb290OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwOiBgJHtMQU5HLkZMT1dDSEFSVC5XRUFLX0VOVElUWX1gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uOiAnbGVmdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb25TZWxlY3RvcjogJy5qb2ludC1zdGVuY2lsJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy5vdXRlcic6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnI2ZlYjY2MycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2Utd2lkdGgnOiAyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb2ludHM6ICcxMDAsMCAxMDAsNjAgMCw2MCAwLDAnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy5pbm5lcic6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNmZWI2NjMnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICd0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50czogJzk3LDUgOTcsNTUgMyw1NSAzLDUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiAnV2VhayBlbnRpdHknLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1zaXplJzogMTEsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LWZhbWlseSc6ICdSb2JvdG8gQ29uZGVuc2VkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtd2VpZ2h0JzogJ05vcm1hbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjZjZmNmY2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cm9rZS13aWR0aCc6IDBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6ICdlcmQuUmVsYXRpb25zaGlwJyxcclxuICAgICAgICAgICAgICAgIGF0dHJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcm9vdDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcDogYCR7TEFORy5GTE9XQ0hBUlQuUkVMQVRJT05TSElQfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb246ICdsZWZ0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvblNlbGVjdG9yOiAnLmpvaW50LXN0ZW5jaWwnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAnLm91dGVyJzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnIzYxNTQ5YycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cm9rZS13aWR0aCc6IDIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2UtZGFzaGFycmF5JzogJzAnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6ICdSZWxhdGlvbicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAxMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtZmFtaWx5JzogJ1JvYm90byBDb25kZW5zZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC13ZWlnaHQnOiAnTm9ybWFsJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNmNmY2ZjYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLXdpZHRoJzogMFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdHlwZTogJ2VyZC5JZGVudGlmeWluZ1JlbGF0aW9uc2hpcCcsXHJcbiAgICAgICAgICAgICAgICBhdHRyczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3Q6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXA6IGAke0xBTkcuRkxPV0NIQVJULklERU5USUZZSU5HX1JFTEFUSU9OU0hJUH1gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uOiAnbGVmdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb25TZWxlY3RvcjogJy5qb2ludC1zdGVuY2lsJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy5vdXRlcic6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnIzZhNmM4YScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2UtZGFzaGFycmF5JzogJzAnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAnLmlubmVyJzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnIzZhNmM4YScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cm9rZS1kYXNoYXJyYXknOiAnMCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIHRleHQ6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogJ1JlbGF0aW9uJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IDExLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1mYW1pbHknOiAnUm9ib3RvIENvbmRlbnNlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXdlaWdodCc6ICdOb3JtYWwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2Utd2lkdGgnOiAwXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0eXBlOiAnZXJkLklTQScsXHJcbiAgICAgICAgICAgICAgICBhdHRyczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3Q6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXA6ICdJU0EnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uOiAnbGVmdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb25TZWxlY3RvcjogJy5qb2ludC1zdGVuY2lsJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiBgJHtMQU5HLkZMT1dDSEFSVC5JU0F9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNmNmY2ZjYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnbGV0dGVyLXNwYWNpbmcnOiAwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1mYW1pbHknOiAnUm9ib3RvIENvbmRlbnNlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXdlaWdodCc6ICdOb3JtYWwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1zaXplJzogMTFcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIHBvbHlnb246IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNmZWI2NjMnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICd0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2UtZGFzaGFycmF5JzogJzAnXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0eXBlOiAnZXJkLktleScsXHJcbiAgICAgICAgICAgICAgICBhdHRyczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3Q6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXA6IGAke0xBTkcuRkxPV0NIQVJULktFWX1gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uOiAnbGVmdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb25TZWxlY3RvcjogJy5qb2ludC1zdGVuY2lsJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy5vdXRlcic6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnI2ZlODU0ZicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2UtZGFzaGFycmF5JzogJzAnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAnLmlubmVyJzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2ZlODU0ZicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJ3RyYW5zcGFyZW50JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogJ2Jsb2NrJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cm9rZS1kYXNoYXJyYXknOiAnMCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIHRleHQ6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogJ0tleScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAxMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtZmFtaWx5JzogJ1JvYm90byBDb25kZW5zZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC13ZWlnaHQnOiAnTm9ybWFsJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNmNmY2ZjYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLXdpZHRoJzogMFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdHlwZTogJ2VyZC5Ob3JtYWwnLFxyXG4gICAgICAgICAgICAgICAgYXR0cnM6IHtcclxuICAgICAgICAgICAgICAgICAgICByb290OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwOiBgJHtMQU5HLkZMT1dDSEFSVC5OT1JNQUx9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvbjogJ2xlZnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uU2VsZWN0b3I6ICcuam9pbnQtc3RlbmNpbCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICcub3V0ZXInOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjZmViNjYzJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAndHJhbnNwYXJlbnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiAnTm9ybWFsJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IDExLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1mYW1pbHknOiAnUm9ib3RvIENvbmRlbnNlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXdlaWdodCc6ICdOb3JtYWwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2Utd2lkdGgnOiAwXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0eXBlOiAnZXJkLk11bHRpdmFsdWVkJyxcclxuICAgICAgICAgICAgICAgIGF0dHJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcm9vdDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcDogYCR7TEFORy5GTE9XQ0hBUlQuTVVMVElWQUxVRUR9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvbjogJ2xlZnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uU2VsZWN0b3I6ICcuam9pbnQtc3RlbmNpbCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICcub3V0ZXInOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICd0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJyNmZTg1NGYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy5pbm5lcic6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNmZTg1NGYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICd0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ4OiA0MyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnk6IDIxLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dDoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiAnTXVsdGlWYWx1ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1zaXplJzogMTEsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LWZhbWlseSc6ICdSb2JvdG8gQ29uZGVuc2VkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtd2VpZ2h0JzogJ05vcm1hbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjZjZmNmY2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cm9rZS13aWR0aCc6IDBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6ICdlcmQuRGVyaXZlZCcsXHJcbiAgICAgICAgICAgICAgICBhdHRyczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3Q6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXA6IGAke0xBTkcuRkxPV0NIQVJULkRFUklWRUR9YCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvbjogJ2xlZnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uU2VsZWN0b3I6ICcuam9pbnQtc3RlbmNpbCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICcub3V0ZXInOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICd0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJyNmZTg1NGYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy5pbm5lcic6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNmZWI2NjMnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICd0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdkaXNwbGF5JzogJ2Jsb2NrJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cm9rZS1kYXNoYXJyYXknOiAnMCdcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgIHRleHQ6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogJ0Rlcml2ZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LWZhbWlseSc6ICdSb2JvdG8gQ29uZGVuc2VkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtd2VpZ2h0JzogJ05vcm1hbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAxMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cm9rZS13aWR0aCc6IDBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICBdLFxyXG4gICAgICAgIHVtbDogW1xyXG5cclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VtbC5DbGFzcycsXHJcbiAgICAgICAgICAgICAgICBuYW1lOiAnQ2xhc3MnLFxyXG4gICAgICAgICAgICAgICAgYXR0cmlidXRlczogWycrYXR0cjEnXSxcclxuICAgICAgICAgICAgICAgIG1ldGhvZHM6IFsnLXNldEF0dHIxKCknXSxcclxuICAgICAgICAgICAgICAgIHNpemU6IHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTUwLFxyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgYXR0cnM6IHtcclxuICAgICAgICAgICAgICAgICAgICByb290OiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwOiBgJHtMQU5HLkZMT1dDSEFSVC5DTEFTU31gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uOiAnbGVmdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb25TZWxlY3RvcjogJy5qb2ludC1zdGVuY2lsJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy51bWwtY2xhc3MtbmFtZS1yZWN0Jzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjNjE1NDljJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2Utd2lkdGgnOiAxLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICByeDogOCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnk6IDhcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICcudW1sLWNsYXNzLWF0dHJzLXJlY3QnOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMixcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyM2MTU0OWMnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICcjZjZmNmY2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cm9rZS13aWR0aCc6IDEsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ4OiA4LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICByeTogOFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy51bWwtY2xhc3MtbWV0aG9kcy1yZWN0Jzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjNjE1NDljJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2Utd2lkdGgnOiAxLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICByeDogOCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnk6IDhcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICcudW1sLWNsYXNzLW5hbWUtdGV4dCc6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmOiAnLnVtbC1jbGFzcy1uYW1lLXJlY3QnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAncmVmLXknOiAwLjUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICd5LWFsaWdubWVudCc6ICdtaWRkbGUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LWZhbWlseSc6ICdSb2JvdG8gQ29uZGVuc2VkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtd2VpZ2h0JzogJ05vcm1hbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAxMVxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy51bWwtY2xhc3MtYXR0cnMtdGV4dCc6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmOiAnLnVtbC1jbGFzcy1hdHRycy1yZWN0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3JlZi15JzogMC41LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAneS1hbGlnbm1lbnQnOiAnbWlkZGxlJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNmNmY2ZjYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1mYW1pbHknOiAnUm9ib3RvIENvbmRlbnNlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXdlaWdodCc6ICdOb3JtYWwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1zaXplJzogMTFcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICcudW1sLWNsYXNzLW1ldGhvZHMtdGV4dCc6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmOiAnLnVtbC1jbGFzcy1tZXRob2RzLXJlY3QnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAncmVmLXknOiAwLjUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICd5LWFsaWdubWVudCc6ICdtaWRkbGUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LWZhbWlseSc6ICdSb2JvdG8gQ29uZGVuc2VkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtd2VpZ2h0JzogJ05vcm1hbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAxMVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VtbC5JbnRlcmZhY2UnLFxyXG4gICAgICAgICAgICAgICAgbmFtZTogJ0ludGVyZmFjZScsXHJcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzOiBbJythdHRyMSddLFxyXG4gICAgICAgICAgICAgICAgbWV0aG9kczogWyctc2V0QXR0cjEoKSddLFxyXG4gICAgICAgICAgICAgICAgc2l6ZToge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNTAsXHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBhdHRyczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3Q6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXA6IGAke0xBTkcuRkxPV0NIQVJULklOVEVSRkFDRX1gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uOiAnbGVmdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb25TZWxlY3RvcjogJy5qb2ludC1zdGVuY2lsJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy51bWwtY2xhc3MtbmFtZS1yZWN0Jzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2ZlODU0ZicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJyNmNmY2ZjYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLXdpZHRoJzogMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcng6IDgsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ5OiA4XHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAnLnVtbC1jbGFzcy1hdHRycy1yZWN0Jzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2ZlODU0ZicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJyNmNmY2ZjYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLXdpZHRoJzogMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcng6IDgsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ5OiA4XHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAnLnVtbC1jbGFzcy1tZXRob2RzLXJlY3QnOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjZmU4NTRmJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2Utd2lkdGgnOiAxLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICByeDogOCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnk6IDhcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICcudW1sLWNsYXNzLW5hbWUtdGV4dCc6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmOiAnLnVtbC1jbGFzcy1uYW1lLXJlY3QnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAncmVmLXknOiAwLjUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICd5LWFsaWdubWVudCc6ICdtaWRkbGUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LWZhbWlseSc6ICdSb2JvdG8gQ29uZGVuc2VkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtd2VpZ2h0JzogJ05vcm1hbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAxMVxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy51bWwtY2xhc3MtYXR0cnMtdGV4dCc6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmOiAnLnVtbC1jbGFzcy1hdHRycy1yZWN0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3JlZi15JzogMC41LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAneS1hbGlnbm1lbnQnOiAnbWlkZGxlJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNmNmY2ZjYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1mYW1pbHknOiAnUm9ib3RvIENvbmRlbnNlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAxMVxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy51bWwtY2xhc3MtbWV0aG9kcy10ZXh0Jzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZWY6ICcudW1sLWNsYXNzLW1ldGhvZHMtcmVjdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdyZWYteSc6IDAuNSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3ktYWxpZ25tZW50JzogJ21pZGRsZScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjZjZmNmY2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtZmFtaWx5JzogJ1JvYm90byBDb25kZW5zZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC13ZWlnaHQnOiAnTm9ybWFsJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IDExXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0eXBlOiAndW1sLkFic3RyYWN0JyxcclxuICAgICAgICAgICAgICAgIG5hbWU6ICdBYnN0cmFjdCcsXHJcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzOiBbJythdHRyMSddLFxyXG4gICAgICAgICAgICAgICAgbWV0aG9kczogWyctc2V0QXR0cjEoKSddLFxyXG4gICAgICAgICAgICAgICAgc2l6ZToge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNTAsXHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBhdHRyczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3Q6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXA6IGAke0xBTkcuRkxPV0NIQVJULkFCU1RSQUNUfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb246ICdsZWZ0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvblNlbGVjdG9yOiAnLmpvaW50LXN0ZW5jaWwnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAnLnVtbC1jbGFzcy1uYW1lLXJlY3QnOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjNmE2YzhhJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2Utd2lkdGgnOiAxLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICByeDogOCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnk6IDhcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICcudW1sLWNsYXNzLWF0dHJzLXJlY3QnOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjNmE2YzhhJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2Utd2lkdGgnOiAxLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICByeDogOCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcnk6IDhcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICcudW1sLWNsYXNzLW1ldGhvZHMtcmVjdCc6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyM2YTZjOGEnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICcjZjZmNmY2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cm9rZS13aWR0aCc6IDEsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ4OiA4LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICByeTogOFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy51bWwtY2xhc3MtbmFtZS10ZXh0Jzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZWY6ICcudW1sLWNsYXNzLW5hbWUtcmVjdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdyZWYteSc6IDAuNSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3ktYWxpZ25tZW50JzogJ21pZGRsZScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjZjZmNmY2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtZmFtaWx5JzogJ1JvYm90byBDb25kZW5zZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC13ZWlnaHQnOiAnTm9ybWFsJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IDExXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAnLnVtbC1jbGFzcy1hdHRycy10ZXh0Jzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZWY6ICcudW1sLWNsYXNzLWF0dHJzLXJlY3QnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAncmVmLXknOiAwLjUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICd5LWFsaWdubWVudCc6ICdtaWRkbGUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LWZhbWlseSc6ICdSb2JvdG8gQ29uZGVuc2VkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtd2VpZ2h0JzogJ05vcm1hbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAxMVxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy51bWwtY2xhc3MtbWV0aG9kcy10ZXh0Jzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZWY6ICcudW1sLWNsYXNzLW1ldGhvZHMtcmVjdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdyZWYteSc6IDAuNSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3ktYWxpZ25tZW50JzogJ21pZGRsZScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjZjZmNmY2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtZmFtaWx5JzogJ1JvYm90byBDb25kZW5zZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC13ZWlnaHQnOiAnTm9ybWFsJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtc2l6ZSc6IDExXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG5cclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdHlwZTogJ3VtbC5TdGF0ZScsXHJcbiAgICAgICAgICAgICAgICBuYW1lOiAnU3RhdGUnLFxyXG4gICAgICAgICAgICAgICAgZXZlbnRzOiBbJ2VudHJ5LycsICdjcmVhdGUoKSddLFxyXG4gICAgICAgICAgICAgICAgc2l6ZToge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNTAsXHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBhdHRyczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3Q6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXA6IGAke0xBTkcuRkxPV0NIQVJULlNUQVRFfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb246ICdsZWZ0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXBQb3NpdGlvblNlbGVjdG9yOiAnLmpvaW50LXN0ZW5jaWwnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAnLnVtbC1zdGF0ZS1ib2R5Jzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2ZlYjY2MycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZTogJyNmNmY2ZjYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLXdpZHRoJzogMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcng6IDgsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJ5OiA4LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy51bWwtc3RhdGUtc2VwYXJhdG9yJzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICcjZjZmNmY2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3N0cm9rZS13aWR0aCc6IDEsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2UtZGFzaGFycmF5JzogJzAnXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgICAnLnVtbC1zdGF0ZS1uYW1lJzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAxMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtZmFtaWx5JzogJ1JvYm90byBDb25kZW5zZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC13ZWlnaHQnOiAnTm9ybWFsJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy51bWwtc3RhdGUtZXZlbnRzJzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAnI2Y2ZjZmNicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXNpemUnOiAxMSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtZmFtaWx5JzogJ1JvYm90byBDb25kZW5zZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC13ZWlnaHQnOiAnTm9ybWFsJ1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgb3JnOiBbXHJcblxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0eXBlOiAnb3JnLk1lbWJlcicsXHJcbiAgICAgICAgICAgICAgICBhdHRyczoge1xyXG4gICAgICAgICAgICAgICAgICAgIHJvb3Q6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVRvb2x0aXA6IGAke0xBTkcuRkxPV0NIQVJULk1FTUJFUn1gLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhVG9vbHRpcFBvc2l0aW9uOiAnbGVmdCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUb29sdGlwUG9zaXRpb25TZWxlY3RvcjogJy5qb2ludC1zdGVuY2lsJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy5yYW5rJzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiAnUmFuaycsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICcjZjZmNmY2JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ2ZvbnQtZmFtaWx5JzogJ1JvYm90byBDb25kZW5zZWQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1zaXplJzogMTIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXdlaWdodCc6ICdCb2xkJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3RleHQtZGVjb3JhdGlvbic6ICdub25lJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgJy5uYW1lJzoge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiAnUGVyc29uJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyNmNmY2ZjYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1mYW1pbHknOiAnUm9ib3RvIENvbmRlbnNlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdmb250LXdlaWdodCc6ICdOb3JtYWwnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnZm9udC1zaXplJzogMTBcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICcuY2FyZCc6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJyMzMWQwYzYnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U6ICd0cmFuc3BhcmVudCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICdzdHJva2Utd2lkdGgnOiAwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6ICcwJ1xyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICAgICAgaW1hZ2U6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB4OiAxNixcclxuICAgICAgICAgICAgICAgICAgICAgICAgeTogMTMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZjogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3JlZi14JzogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3JlZi15JzogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3ktYWxpZ25tZW50JzogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJ3hsaW5rOmhyZWYnOiAnZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUJsYm1OdlpHbHVaejBpVlZSR0xUZ2lJSE4wWVc1a1lXeHZibVU5SW01dklqOCtDandoUkU5RFZGbFFSU0J6ZG1jZ1VGVkNURWxESUNJdEx5OVhNME12TDBSVVJDQlRWa2NnTVM0eEx5OUZUaUlnSW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTDBkeVlYQm9hV056TDFOV1J5OHhMakV2UkZSRUwzTjJaekV4TG1SMFpDSStDanh6ZG1jZ2RtVnljMmx2YmowaU1TNHhJaUJwWkQwaVRHRjVaWEpmTVNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWlCNGJXeHVjenA0YkdsdWF6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNVGs1T1M5NGJHbHVheUlnZUQwaU1IQjRJaUI1UFNJd2NIZ2lJSGRwWkhSb1BTSXhNamh3ZUNJZ2FHVnBaMmgwUFNJeE1qaHdlQ0lnZG1sbGQwSnZlRDBpTUNBd0lERXlPQ0F4TWpnaUlHVnVZV0pzWlMxaVlXTnJaM0p2ZFc1a1BTSnVaWGNnTUNBd0lERXlPQ0F4TWpnaUlIaHRiRHB6Y0dGalpUMGljSEpsYzJWeWRtVWlQaUFnUEdsdFlXZGxJR2xrUFNKcGJXRm5aVEFpSUhkcFpIUm9QU0l4TWpnaUlHaGxhV2RvZEQwaU1USTRJaUI0UFNJd0lpQjVQU0l3SWdvZ0lDQWdhSEpsWmowaVpHRjBZVHBwYldGblpTOXdibWM3WW1GelpUWTBMR2xXUWs5U2R6QkxSMmR2UVVGQlFVNVRWV2hGVldkQlFVRkpRVUZCUVVOQlEwRlJRVUZCUW5CT05teEJRVUZCUVVKSFpFSlVWVVZCUVV4SFVFTXZlR2hDVVVGQlFVTkNhbE5HU2s0S1FVRkNOa3BuUVVGblNWRkJRVkJ2UVVGQlEwRTJRVUZCWkZSQlFVRlBjR2RCUVVFMmJVRkJRVVl6UTJOMWJFVTRRVUZCUVVGdFNreFNNRkZCTHpSbFVIcE1PRUZCUVVGSVpFVnNUZ3BTVVdadFFXaGpVRU5TZG5KUVJuWm9RVUZCVFd0RmJFVlJWbEkwTW5VeFpHVTFRVlY0VW00dmRXMWtNMkl6WlZBME5EZHFZVlpFYUZWS1JXOW5iSGcwY1VsRWVVTkJjVU5uY0VwQkNtWkNXVkZTWVVsclRWbFdZWEJxVTJ4YVZYRnhNVWx3UzJwUVRIZEZZWFJwYVZscFNreDVVMEpKUmtWd2IxVlJSVlF4U0V4eFFuZFFWSGR0Ym1VM1pUZDBlbEJVVUZSMlZDdFhUbTRLYUhKMlpHNWtia2hrVHpoelZtWTNNbTQzTmpVMllTc3ZOM3BqT1M5bWFqWTJlRFJGUmxWSE9FMWtjWE5xT0ZwdWN6RlFVVmxNTUM5cWNVRkpXVFpEUVVGMU16WXhMMmRKWmsxS1lRcHFkVFYwTm5GNVRVeHFNa0pTVFhSUVRtVlFOVEJ6V0ZGcVFYRlZlRUY2YW1abVVuWXJZVlVyU0hkSWVtZDNaMEpoUnpGUllqRmpMekV4YUhCUUwwdEtaWFZ6V0habU0xY3pWRkJwQ21wbFVrSXdiRmR4T0dSYVVGUndSRGRaTDFZck1qRkJLMHBNY1dOa2NGSnlkbEJXVkhZeFQxZEJhR0YyVEZCak1sRkVNRTR2YVdGa2VqQmxWeTl5V25obVpsTjNWMEZKTkdNMWVXRUtRak4wTlcxUk9HZFlXVlF5WVdKT1QwbEJURlZYTUUxMlV6RjNZbk5GUVdveU5sUmpaRWxKVVc5T05HeFFZMHBtVVZsUlJHRTVWR1pwVTA5QlYzaDBRV3cyVUVoNFMyMWFXR2hNTlFwaE1WVlVhMHAzWlRKdlNXeGpVVlJ2UjNBMFV6SnNiVEZDUTFRMmFHWmFURUU0VjFwRWQwTm5TRFZhU0U1allqVjVLMWhUUW05UlprVlhNQ3RuU0ZKeE9VRkZVbU5xYmxWblRsUTBDakJJZFdsNlVXTkJXVUZaWkRBcmMyb3piRWsxTVVsRVp6TmFWWGRJZDBSb2QwODRSbE5RVlhGdlIwNXZjamxpUzBWQlJFRkVUek5yTW0wdk5YbDJVbU5CZVVsTVMyMVZLMEZOVEZNS2VqTnVURGxGZDBGMWNYQjVRa0ZCUVdRM2J6bDJaMHR3ZDJGSGRtNW1OVzV3U1RJNU9FTldaV2RCVURneFIxWk5ObFpqWmpRd2JVRjRlSEZCVEc1QmR5OXBRemRTVW10UmJWSkROUXBvY3pBelMwUTVNVVZaY0hsdE1uQjRTVlZCWVd4alpEUklaVFp3VDFSUU1GSkZUVWhCUlVRMFRsUjZZbE5RUmxSWFFuWnNXRkZhU0VGMFFscFBaVm96YTBkdVFpczJSR0pWZHpsMUNsVTJZbTlTTjJ0d0wwOVBjVWxyUW5aNWFscG1iVGxNTjI1bGVUZEhkbUZyZUhGbU0yTjBTalJYUmxWU1owZzNWV2QzTlU1MmVYb3ZWMHN6ZG10aFRWUXlWRzlsUTNaamN6QlhPRU1LUlU5eVlqUXJMMkp2ZFRnMk0yUnhhMmh0TjFNMWVHNUlVRUpRVVZkRlZVVjBUbG93Tnl0TVV5OTNhMWc0UVdsRldERldSelpIZFZwS056Z3ZOakZXUmtKTFVrUjRPVTlIYm5JMmJBbzRTa3BIVVRCa05FZFNkWFIyWlVaQ1dWRnROQ3RvTWpSMVkxUlJNRE5YWmtaWVpHNTZZMlpTVDJKVFdtSlVSRk5hVW1KR1pHVllTVEF3YVZGU1pFdDViR1UxY1RadVQzZDBUbmhrQ2tFd1Qwd3dkR05IVWpWYVdVcG5kRXBRUTI1M1RtaFNSMVpOSzNNclZFVlRRM0JqYm1kdmVVRmxZMkpHWVVwSlZVeFBOeXQwUW5sd05WZGxLelUzYlVGdVFXcFhaVk5OWjJjMVltRUtjemhaWVRVNFRVVlBRV05PWXpFNVJ6RmlPRTVqS3pCSlVGSktRVVEyU1doUVFXYzBhbkphYnk5NFNIQktiV2RMUkVsV1FpdHJRVEJuVUZoRWRtSjJNMDVrY2lzMlJHczRRMlpCU1FwemFuVjZhMnRqVG1kUmRuUnhSRlZ6YmpKNWRFZFRjbUlyVVhJek1rRnpXWEJ1T0VkdlltRkpUVUZLV1d0NGIyNDViQzlXTlZKRlN6SjBOa0ZUU0Rsb1FrRkNRWElyVUZOcU1WRldDa0ZsYkVSV2FYQTRjMnRuUTJkelpXeElMMGxuYUdvNFFtaDFNRkZzV1dGTFNrRkVZbU13UTJSemQzWlhTWGRJYzJkRk0wWmpTa1ZGTmt4YU1DOWhkbkZKVlVKVE5UQnZlbUpWUm00S1pWcENWVVZIYVVWc1VYSlBWbVZrVlVsdVMydE5SRUkxZFZWa2QxVTFSWHBuWmtsblNDczFVakYyVUVOdk9YTkxaekY0YkZJdlRUaHZaRFZDYTJ4U2JuZHFja05sUzFCSFlVdGxOZ3BuY1RaNmVUZDZZMkl2ZEVKbFkwNVZOV000UVVGTmJuQXhSV2xPUmpGV1YyTnBjbFkxV1d0QlFVSlpSamxEVnk4M1VXUjVla0Y0Y0UxNmMyODVVMjAyVkVaU1dqWm5jalpHZWsweENqTkRWR2R2VGk4eVV5dGlZbUZOTDNCWk1GQlZNV05KU1dWRWNERnJjR3ROYldkVGIzWkhVMWd5TlRaaGFsSkNRMVp4Y25oclEwVnpiMDB6TkRCc05GTk9WWFJxTTBKeVFtTm5iRWtLTm5kclFVRkpVemRDZEdsak4wSk1WRVJOWW5GQk1qbGlZVmRYZDFOUlF6TTFZa2Q1WlRGU2JVUnJaME0xTVhCWVNXcDBhUzlWVVZGQlFUSm9XRlppVTBkSE1HMTFRVEpJZVdsYVFRb3liVTF0V25ScFdEbE1OWFJKZFhoMlVFaE1ZMEpXV21wc1ptRkNhVXBLUzJkeWVsRmlRV0ZRT0ZCWVUzVnBTa1V2YldReWRtNVFPSFJvTDJFMk5WTlZVMk5GZGt0c1YyMXpjMVJ6Q2tGNmNHSlBabTFtVUUxRllXeEtRVVJNVm5wa2JFVTJTVEZrVDNaNlpXVXZlVzB2WWtGUlFXZG1aMXBLTWpKT2VqaGhPVUpuVUhwRVRFa3pSV2gyYUhSMWQyNXNXVmQwYzFSc09GTUtWRVZIUVhaSE5UZENWbVkyWW1KbFRuUnhhVFl6TVZweWFXTnBVelpJU2pkS2NtbDJTM1ExTDBONE1VUnlXV3R4TDFaVVoweEdNR2x5WVdJMWNtUXJaalJ5Wms1UFVsTnZNVWgzTmdwM2Nsa3llVkJQZEVkVlJGWnRVVGhCVVVvME1XNDROREpSVVZWblpHRmtTa0ZLWTFGREx6UkZia2RQT1c0MmJXWnBTa04yVkV4aVppOTRTR1Z3VVcxQ2RrMXNjME5HT0ZWUmIwUndDbVZ4Umk4NU9YUlBValpVUjFkM2RHdFRZelI0V0VGRE1ESlljaXRJWVU4NVUzaE5SMlJpVGxwVFdpOXFURnB0T0ZscmNDc3lWemhpV0ZwRllWazVXVUpRWTI1V1VHUTBOVlp2ZUdNS1FWTkVVRzFWTDNGR1lUVlRkRFZ0YWk5NVpqbDBjVGhuV1d0T2EwcGhUbk0wYTBwbFRYSjBiVzF4VVcweWVteElRbmR2UWl0WlRscFlWblZCVkRONE5FUm1iWFlyWm5oWUswY3hZZ3BWVjJkT01IazVUV2hYTDJ4SldTOWpZbFZ5WWtRd1dFZEVMMnRQV2xSSk1VNUxXWGhXV1RabU4yeFdWMk50VW0xcFJUTlRaRXA2Wm1Sd1ZVRTRiMm8xTVVoYU5tVXljWFJaWWt4UUNtWlFMM1k1T1hWdFRXaFdXQzkxVWtacWNuSkhZa1U1TW01VVJGWXpNRXc0WkVSc2FGVnVRa1F5WldJdmVHNTZObk5oY25ndldsRkRZbEppVmsweUszWlFUQ3RqTDFCTVZtMWFZVVVLWVUxdGNHWjBkRk5LZEZKaWNsQkZZbGhXVW5GWWRWWllSMlpPUmlzMWFFVlZNME5ZZGxwTEwwTnRjVXQ2WTFWcFpFc3laRlFyUTFwQlVsZHRaMGg0VjFaR1ZrZFlWRkJLYkRkaU5RcEtPR0pSZUhnelMxbHhURnBaVXpGMmVURmpOakYzVVZkSlVYTnpjalF2UjBORFJWWXpTWGR3VGs1aFIxaHdRaXRKVjJnM09GWnBZMkpYWm5aVGNEaGhjbUpJZG1wa1VqTmhSbWQwQ2psQk1ESjNaR3h6UlhCMVlVTmlhMGRCUldkbVNVRnpZamx3VWxoWWFGVnBNMnRwWmt0bU4zTkpSM0Z2Y1RBdmEwRTFVV052UlRGVE0zbHlSMlpIVjNKMVEyZHFNelpHVGtsek9EWUtTRFl3YkVvNVUyNDFRVzRyWVVaaVFtVk1kVEpoVGl0S1lrdHZNRlZvSzA4cmEwWjJlRVpuVTNSalVHNXpUaTlaWm01U2JrVTNaVmx1ZUM5M1FUTTFRVk5sUkdSQ2NVTkRWemx3TmdwMWMzTlpOa28wYkZabmExRmlWbHBYYTNReGRYUTNVa1l4WmxoYVVGRkVXalpPTjNvd2VqTkxlWFJUV1V0bmFVOWthMFZ2VDFZeFpIQlNOSGt2V0dWUGFVUmtZVmMyZVhscWF6ZGpDbVl5ZVZGamVUZDVWMU5aTUd4cU5uRlVTM00yTlRCcVdGRk1jVWxpVEZGalNVODFOM1ZzY0hFeFptTmtValJCZERkWVZrOHJZMmMzTTJGcFMydDNNMnNyZFZGQk9FSXhVelJ1ZW13S2RtNTNSMDlUT1dkclVUSjFaeXRCV0VoUVR6bHViazkyVVZoaFZHVXJWVXBtUVVsNVUzWlVaM2dyY2tSTmQwNTZha1pzVTFnMFkySkdTMlZqZWxBeU5VOWxjVUpUVFRSV2FFMWlRZ3BQU0hkUVlWZG1MMDVFWVRGaVZHdHFkMWxQU1dkcVp6SnBRelZVZEc1aFlqUlBZamxyWldWa09HbGtTRVYxUzFWVEx6TnRWemhrVG1ReVUycGxOR3R4YkdKamIwNHpWMHBRVFhsMENuTTBLM2xXVG14MVQyRnZTMFZRUTB0emVIZzJjemhPVFZGRmJUUklTVEZxVWxGalZXMUZabkUxUlROc2FIUlpSek55WVdvMVJsSXhVRlpYVEc0NVFYRlBPWHBGUzFFdmJHVTBTM0FLZVRsNmVUVlBPRFZ1UzJkcmVubFZkVFZPVm14b2NGRnNPSE5tUmtZeU5tRlZNa0ppU1RkckwxY3lWakZ5Ym5OUE9WZHFTazl1ZUVseWRtVTJUMmxyY0U0NVEwUndVbUZqSzFKV2VRcGhRMmxNTjJGbmVYQnVXbTlyT1hwMlZIWlJjbFIzZG14TE4zRnZOMDVDVGpkVFRHRlZiRFo0UjNSUFdXVnJhMmdyWmxFeGRUaFZiMGRGSzJsNmFURm1SVEpXZGxweFQxWlBOMHcyQ2pCdFR6a3dieTlFVnpocVRHTldWMWgxZGpnM1ZuRTVVSFE1VERZMVVWaEVja2RrUXpKUmFVMURaWGxuYWpkYVJsTjVRa0ZJVmpjdlNISjJXbWN2UlVGQlFYWmpRalo1T1hKbmRsa0tTMmRZY21oeWRqZG1NRkJ6V2pFMVZWRlJhamwwZGpoMU9XSlJhVU5XUVcwME9UTmxUamhDUzJjNFoxWnlhbVpqTWtWT1JqRXhUMm8xVVZWQ2VqVjBkekJEYVRoNE5qSmlkR0oxVFFwNFNWZG9aakJzWTA1cU0zQmxPRXhxYm1GaGR6aHVia0pZVkRKMk1FOWlZV1pWTmpZd1VUZzVkbGwzTW1wS1VpdHBaRTFhVmpGWlRrTkJWRmc0VkVWbVVVSnhjbnB1UkRaWWVrUnVDbWxWZFU5a1UwRXhhRFF2TlVGTVoxY3hhbW94UTFOWlFtUklTR2RVUkRaR1FWRkRkMUFyV1dacVRWUnhNSHBzU0Zsb2NGaElPSFF2VDBKWlR6Tk5aRkJ2SzBKSlpYQXdURUZoTVdnS2RVbGtabGxSUTBJNFprdFdLMkUxU0hKM00ydDBUVzVDZFc5aE9FUlRSbHBwVFM5c2NWSlFZME0yUmpoc2VrVkJkMFZyTTI5elJtTkRkMUJ3WjFoM2NtZFlhSEIyYm5WT1VFWmtXZ3BTVDJRNGFtcFJZVzlwZURKSmFVRkpkQzlGZEVSQlEyWlNia3hYWkN0WWVqaHlMMVF3YkdwaGJrZ3hUblpVVUVsbU1tWkJTR1p1WVVGUmVFRTFhM0Z1WTJrNFRUSk9NVXN4YlcxVUNtZGhWazg1TW1KWVFWaFZOSFp3VHk5U2IwWm9OblY1T0VKQ2FVeFRlR1JYUjBaSlJYSXJkbVZHVFdKeE9WbFhUMEpRVW5ORFJFWTJRMjlrUVVGR1FXVlRMMFZZZG1SSFRUQnJWVllLUVM5NFZESnhNa3g1T1dOQlYzVnFXa1ZMY1M5NGNGQkdZVWxTYlRWUk5qbHJWRmxNVG05emNFUnJRbGcyU21wbGJqSm1VM1JOVjNSV01tTm1hRTFhYlZWMVVuTTVRVVZ4VDNGcGJRcGFTVEIxUTFjdmRHVlJWMFIzUkdoTlMxSk1ZVmxITW5CT01YY3pWblYyYldOVWQzUjBaa05wVDFCTlFtTnhNMFpvZEVJNVQwNUtiemhzYVcxS1ZFTlhjMVUyYm5VNVoyaHJibXhhQ2pCSmFURlpieTlxWjFwNlZHcHlRV2hsUTA5aE9VVjJNVnBuUTBFMlIwaHFUMjFpYTNVNFVHOHdjVGRKYmtWSmRISTRSRmhwVGxWSFkzWnZOMFJGU1ZCUlVVMUJVVXR6ZVU5M2NrUUtiUzlVYkdWamVXNWlTRFZ0VDNCVFlVWXphRkYwUXpZMU1XMUpheTlOZEhWWFJFa3lXbWxMSzBrMmRqRTFWREJRTVdSVlZtWkhWMjFYV2tsdWIzWlhSbEJ6Ym01SVUycElXVmxrZUFwMFFuaENTbFpLVVhrM1dtczVibmxHU0RBNGRqRlBNMFpGTHpFM1dUQmlkMFJSUTBGNmNrWTBZemRCUTJVMFMwNUlSM040VmtkUmNrMTFORlF6YTJKUVFsRkRTV0owVVc1d1p6aEJDa0ZMVVM5b1oyMWFWMVJ2WkVZNWJrczVlRTVrYW5OcGVFWndSekI1UVRoclpGRmxUSEF5Wkc1RVNUZFdVamxrWjNCWU16VlpRbXRCVVVwdFIxZzRWMk42TkhReVozRTJSbk00WVZrS1UwdDBaeXRCUldwaVJrWk9NV3BMYjNOb2FYUk1abHBKV0dVNGR6bEtjWE5HV1U5TFNHdDVTR0YyUWpaYVYxY3pVbGwxVVRodVJHZHRZM0ZhUkRWQ1lqSjVkR0ZCZWtsM1pIVnFXQXBTWnpoRVpFRTBURkI1T1ZaUVJHOTNiVTVZVkN0RlFVRm5TbHBGZERCMFFpOVpSa0ZDV0hGbloyZFRiM1JLU2xZd1J6aFpkRU5hY25CdlNGSlJZaXRXY1dsblQxcEdMMEUzUlRJdkNtUmhiMnRWU1RZeFIwc3ZNVmMyYmt0blpWVTFhRUZQU0ZCMVZIbzRXazFVUVdzdmEyWm5TVWRCWWtGSk1sTjRUamhXY3pNNFZFTXlabnBOTjA1NWIyUkJlVU5zTld4S09YUmlaRkFLYmpGUk4wZE9UV1p4TjJzd1dERkRLek5UYzIxU2QyRllkMnBVVjJoRlZUWndTSGxCVVdSblFtRlNkRGx6ZFRkVUwxQXZMMUEwTkZsRE0zZFBhbGxRZVVGQlFVRktXRkpHVjBoU2F3cFpXRkpzVDIxT2VWcFhSakJhVVVGNVRVUkplVXhVUVhsTVZFbDZWa1JGZVU5cVFUVlBha2t6UzNwQmVrOXFRWGRRTHpGcldFRkJRVUZEVmpCU1ZtZ3dXa2RHTUZwVWNIUmlNbEp3Q2xwdWEwRk5ha0Y1VFdrd2QwMXBNSGxOTVZGNFRXcHZkMDlVYjNsT2VYTjNUWHB2ZDAxRk5tY3pUMEZCUVVGQlFWTlZWazlTU3pWRFdVbEpQU0lnTHo0S1BDOXpkbWMrQ2c9PSdcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICBdXHJcbiAgICB9XHJcbn1cclxuY29uc3QgU3RlbmNpbEZ1bmN0aW9uID0ge1xyXG4gICAgZ2V0U3RlbmNpbFNoYXBlcyxcclxuICAgIGdldFN0ZW5jaWxHcm91cHNcclxufTtcclxuZXhwb3J0IGRlZmF1bHQgU3RlbmNpbEZ1bmN0aW9uOyJdfQ==