@eui/styles 18.0.0-next.46 → 18.0.0-next.48

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.
package/dist/eui.css.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../base/00-reset/_module.scss","eui.scss","../base/03-vars/colors/theme-default-base.scss","../base/03-vars/colors/theme-default-context.scss","../base/03-vars/spacings/theme-default-base.scss","../base/03-vars/spacings/theme-default-context.scss","../base/03-vars/typography/theme-default-base.scss","../base/03-vars/typography/theme-default-context.scss","../base/03-vars/border-radius/theme-default-base.scss","../base/03-vars/border-radius/theme-default-context.scss","../base/03-vars/shadows/theme-default-base.scss","../base/03-vars/shadows/theme-default-context.scss","../base/03-vars/_tokens.vars.scss","../base/03-vars/_other.vars.scss","../base/03-vars/_internal-icons.vars.scss","02-vars/_layout.vars.scss","../base/05-assets/icons-svg/_icons-generics.scss","04-vendors/libs/bootstrap/scss/_grid.scss","04-vendors/libs/bootstrap/scss/mixins/_grid.scss","04-vendors/libs/bootstrap/scss/mixins/_breakpoints.scss","../../../../../../../node_modules/@angular/material/core/ripple/_ripple.scss","../../../../../../../node_modules/@angular/cdk/a11y/_index.scss","../../../../../../../node_modules/@angular/cdk/overlay/_index.scss","../../../../../../../node_modules/@angular/cdk/text-field/_index.scss","../../../../../../../node_modules/@angular/material/core/focus-indicators/_private.scss","../../../../../../../node_modules/@angular/material/core/style/_layout-common.scss","../../../../../../../node_modules/@angular/material/core/_core.scss","../../../../../../../node_modules/@material/theme/_css.scss","../../../../../../../node_modules/@angular/material/core/style/_sass-utils.scss","../../../../../../../node_modules/@angular/material/datepicker/_datepicker-theme.scss","../../../../../../../node_modules/@angular/material/button/_icon-button-theme.scss","05-material/overrides/_calendar.scss","05-material/overrides/_cdk-drag.scss","05-material/overrides/_cdk-global-scrollblock.scss","02-base/mixins/_eui-scrollbars.scss","../base/01-base/mixins/_media.mixins.scss","05-material/overrides/_cdk-overlay-container.scss","05-material/overrides/_cdk-overlay-container.mq.scss","05-material/overrides/_cdk-overlay-pane.scss","06-shared/_module.scss","../base/04-elements/_html.scss","../base/04-elements/_body.scss","../base/04-elements/_shared.scss","07-elements/eui-table-default/_eui-table-default.scss","07-elements/directives/_eui-clearable-input.scss","../base/01-base/mixins/_accessibility.mixins.scss","07-elements/directives/_eui-input-maxlength.scss","10-media/_ieimgfix.scss","11-extras/_cookie-consent.scss","11-extras/_preloader.scss"],"names":[],"mappings":"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BigCF,CiB98BM,KACE,WjBi9BR,CiB98BM,iBApCJ,aAAA,CACA,UjBs/BF,CiBx+BE,cACE,aAAA,CACA,UjB2+BJ,CiB7+BE,cACE,aAAA,CACA,SjBg/BJ,CiBl/BE,cACE,aAAA,CACA,oBjBq/BJ,CiBv/BE,cACE,aAAA,CACA,SjB0/BJ,CiB5/BE,cACE,aAAA,CACA,SjB+/BJ,CiBjgCE,cACE,aAAA,CACA,oBjBogCJ,CiBr+BM,UAhDJ,aAAA,CACA,UjByhCF,CiBp+BU,OAhEN,aAAA,CACA,iBjBwiCJ,CiBz+BU,OAhEN,aAAA,CACA,kBjB6iCJ,CiB9+BU,OAhEN,aAAA,CACA,SjBkjCJ,CiBn/BU,OAhEN,aAAA,CACA,kBjBujCJ,CiBx/BU,OAhEN,aAAA,CACA,kBjB4jCJ,CiB7/BU,OAhEN,aAAA,CACA,SjBikCJ,CiBlgCU,OAhEN,aAAA,CACA,kBjBskCJ,CiBvgCU,OAhEN,aAAA,CACA,kBjB2kCJ,CiB5gCU,OAhEN,aAAA,CACA,SjBglCJ,CiBjhCU,QAhEN,aAAA,CACA,kBjBqlCJ,CiBthCU,QAhEN,aAAA,CACA,kBjB0lCJ,CiB3hCU,QAhEN,aAAA,CACA,UjB+lCJ,CiBxhCY,UAxDV,uBjBolCF,CiB5hCY,UAxDV,wBjBwlCF,CiBhiCY,UAxDV,ejB4lCF,CiBpiCY,UAxDV,wBjBgmCF,CiBxiCY,UAxDV,wBjBomCF,CiB5iCY,UAxDV,ejBwmCF,CiBhjCY,UAxDV,wBjB4mCF,CiBpjCY,UAxDV,wBjBgnCF,CiBxjCY,UAxDV,ejBonCF,CiB5jCY,WAxDV,wBjBwnCF,CiBhkCY,WAxDV,wBjB4nCF,CiBzjCQ,WAEE,ejB4jCV,CiBzjCQ,WAEE,ejB4jCV,CiBnkCQ,WAEE,qBjBskCV,CiBnkCQ,WAEE,qBjBskCV,CiB7kCQ,WAEE,oBjBglCV,CiB7kCQ,WAEE,oBjBglCV,CiBvlCQ,WAEE,kBjB0lCV,CiBvlCQ,WAEE,kBjB0lCV,CiBjmCQ,WAEE,oBjBomCV,CiBjmCQ,WAEE,oBjBomCV,CiB3mCQ,WAEE,kBjB8mCV,CiB3mCQ,WAEE,kBjB8mCV,CkBxqCI,yBDUE,QACE,WjBkqCN,CiB/pCI,oBApCJ,aAAA,CACA,UjBssCA,CiBxrCA,iBACE,aAAA,CACA,UjB0rCF,CiB5rCA,iBACE,aAAA,CACA,SjB8rCF,CiBhsCA,iBACE,aAAA,CACA,oBjBksCF,CiBpsCA,iBACE,aAAA,CACA,SjBssCF,CiBxsCA,iBACE,aAAA,CACA,SjB0sCF,CiB5sCA,iBACE,aAAA,CACA,oBjB8sCF,CiB/qCI,aAhDJ,aAAA,CACA,UjBkuCA,CiB7qCQ,UAhEN,aAAA,CACA,iBjBgvCF,CiBjrCQ,UAhEN,aAAA,CACA,kBjBovCF,CiBrrCQ,UAhEN,aAAA,CACA,SjBwvCF,CiBzrCQ,UAhEN,aAAA,CACA,kBjB4vCF,CiB7rCQ,UAhEN,aAAA,CACA,kBjBgwCF,CiBjsCQ,UAhEN,aAAA,CACA,SjBowCF,CiBrsCQ,UAhEN,aAAA,CACA,kBjBwwCF,CiBzsCQ,UAhEN,aAAA,CACA,kBjB4wCF,CiB7sCQ,UAhEN,aAAA,CACA,SjBgxCF,CiBjtCQ,WAhEN,aAAA,CACA,kBjBoxCF,CiBrtCQ,WAhEN,aAAA,CACA,kBjBwxCF,CiBztCQ,WAhEN,aAAA,CACA,UjB4xCF,CiBrtCU,aAxDV,ajBgxCA,CiBxtCU,aAxDV,uBjBmxCA,CiB3tCU,aAxDV,wBjBsxCA,CiB9tCU,aAxDV,ejByxCA,CiBjuCU,aAxDV,wBjB4xCA,CiBpuCU,aAxDV,wBjB+xCA,CiBvuCU,aAxDV,ejBkyCA,CiB1uCU,aAxDV,wBjBqyCA,CiB7uCU,aAxDV,wBjBwyCA,CiBhvCU,aAxDV,ejB2yCA,CiBnvCU,cAxDV,wBjB8yCA,CiBtvCU,cAxDV,wBjBizCA,CiB9uCM,iBAEE,ejBgvCR,CiB7uCM,iBAEE,ejB+uCR,CiBtvCM,iBAEE,qBjBwvCR,CiBrvCM,iBAEE,qBjBuvCR,CiB9vCM,iBAEE,oBjBgwCR,CiB7vCM,iBAEE,oBjB+vCR,CiBtwCM,iBAEE,kBjBwwCR,CiBrwCM,iBAEE,kBjBuwCR,CiB9wCM,iBAEE,oBjBgxCR,CiB7wCM,iBAEE,oBjB+wCR,CiBtxCM,iBAEE,kBjBwxCR,CiBrxCM,iBAEE,kBjBuxCR,CACF,CkBl1CI,yBDUE,QACE,WjB20CN,CiBx0CI,oBApCJ,aAAA,CACA,UjB+2CA,CiBj2CA,iBACE,aAAA,CACA,UjBm2CF,CiBr2CA,iBACE,aAAA,CACA,SjBu2CF,CiBz2CA,iBACE,aAAA,CACA,oBjB22CF,CiB72CA,iBACE,aAAA,CACA,SjB+2CF,CiBj3CA,iBACE,aAAA,CACA,SjBm3CF,CiBr3CA,iBACE,aAAA,CACA,oBjBu3CF,CiBx1CI,aAhDJ,aAAA,CACA,UjB24CA,CiBt1CQ,UAhEN,aAAA,CACA,iBjBy5CF,CiB11CQ,UAhEN,aAAA,CACA,kBjB65CF,CiB91CQ,UAhEN,aAAA,CACA,SjBi6CF,CiBl2CQ,UAhEN,aAAA,CACA,kBjBq6CF,CiBt2CQ,UAhEN,aAAA,CACA,kBjBy6CF,CiB12CQ,UAhEN,aAAA,CACA,SjB66CF,CiB92CQ,UAhEN,aAAA,CACA,kBjBi7CF,CiBl3CQ,UAhEN,aAAA,CACA,kBjBq7CF,CiBt3CQ,UAhEN,aAAA,CACA,SjBy7CF,CiB13CQ,WAhEN,aAAA,CACA,kBjB67CF,CiB93CQ,WAhEN,aAAA,CACA,kBjBi8CF,CiBl4CQ,WAhEN,aAAA,CACA,UjBq8CF,CiB93CU,aAxDV,ajBy7CA,CiBj4CU,aAxDV,uBjB47CA,CiBp4CU,aAxDV,wBjB+7CA,CiBv4CU,aAxDV,ejBk8CA,CiB14CU,aAxDV,wBjBq8CA,CiB74CU,aAxDV,wBjBw8CA,CiBh5CU,aAxDV,ejB28CA,CiBn5CU,aAxDV,wBjB88CA,CiBt5CU,aAxDV,wBjBi9CA,CiBz5CU,aAxDV,ejBo9CA,CiB55CU,cAxDV,wBjBu9CA,CiB/5CU,cAxDV,wBjB09CA,CiBv5CM,iBAEE,ejBy5CR,CiBt5CM,iBAEE,ejBw5CR,CiB/5CM,iBAEE,qBjBi6CR,CiB95CM,iBAEE,qBjBg6CR,CiBv6CM,iBAEE,oBjBy6CR,CiBt6CM,iBAEE,oBjBw6CR,CiB/6CM,iBAEE,kBjBi7CR,CiB96CM,iBAEE,kBjBg7CR,CiBv7CM,iBAEE,oBjBy7CR,CiBt7CM,iBAEE,oBjBw7CR,CiB/7CM,iBAEE,kBjBi8CR,CiB97CM,iBAEE,kBjBg8CR,CACF,CkB3/CI,yBDUE,QACE,WjBo/CN,CiBj/CI,oBApCJ,aAAA,CACA,UjBwhDA,CiB1gDA,iBACE,aAAA,CACA,UjB4gDF,CiB9gDA,iBACE,aAAA,CACA,SjBghDF,CiBlhDA,iBACE,aAAA,CACA,oBjBohDF,CiBthDA,iBACE,aAAA,CACA,SjBwhDF,CiB1hDA,iBACE,aAAA,CACA,SjB4hDF,CiB9hDA,iBACE,aAAA,CACA,oBjBgiDF,CiBjgDI,aAhDJ,aAAA,CACA,UjBojDA,CiB//CQ,UAhEN,aAAA,CACA,iBjBkkDF,CiBngDQ,UAhEN,aAAA,CACA,kBjBskDF,CiBvgDQ,UAhEN,aAAA,CACA,SjB0kDF,CiB3gDQ,UAhEN,aAAA,CACA,kBjB8kDF,CiB/gDQ,UAhEN,aAAA,CACA,kBjBklDF,CiBnhDQ,UAhEN,aAAA,CACA,SjBslDF,CiBvhDQ,UAhEN,aAAA,CACA,kBjB0lDF,CiB3hDQ,UAhEN,aAAA,CACA,kBjB8lDF,CiB/hDQ,UAhEN,aAAA,CACA,SjBkmDF,CiBniDQ,WAhEN,aAAA,CACA,kBjBsmDF,CiBviDQ,WAhEN,aAAA,CACA,kBjB0mDF,CiB3iDQ,WAhEN,aAAA,CACA,UjB8mDF,CiBviDU,aAxDV,ajBkmDA,CiB1iDU,aAxDV,uBjBqmDA,CiB7iDU,aAxDV,wBjBwmDA,CiBhjDU,aAxDV,ejB2mDA,CiBnjDU,aAxDV,wBjB8mDA,CiBtjDU,aAxDV,wBjBinDA,CiBzjDU,aAxDV,ejBonDA,CiB5jDU,aAxDV,wBjBunDA,CiB/jDU,aAxDV,wBjB0nDA,CiBlkDU,aAxDV,ejB6nDA,CiBrkDU,cAxDV,wBjBgoDA,CiBxkDU,cAxDV,wBjBmoDA,CiBhkDM,iBAEE,ejBkkDR,CiB/jDM,iBAEE,ejBikDR,CiBxkDM,iBAEE,qBjB0kDR,CiBvkDM,iBAEE,qBjBykDR,CiBhlDM,iBAEE,oBjBklDR,CiB/kDM,iBAEE,oBjBilDR,CiBxlDM,iBAEE,kBjB0lDR,CiBvlDM,iBAEE,kBjBylDR,CiBhmDM,iBAEE,oBjBkmDR,CiB/lDM,iBAEE,oBjBimDR,CiBxmDM,iBAEE,kBjB0mDR,CiBvmDM,iBAEE,kBjBymDR,CACF,CkBpqDI,0BDUE,QACE,WjB6pDN,CiB1pDI,oBApCJ,aAAA,CACA,UjBisDA,CiBnrDA,iBACE,aAAA,CACA,UjBqrDF,CiBvrDA,iBACE,aAAA,CACA,SjByrDF,CiB3rDA,iBACE,aAAA,CACA,oBjB6rDF,CiB/rDA,iBACE,aAAA,CACA,SjBisDF,CiBnsDA,iBACE,aAAA,CACA,SjBqsDF,CiBvsDA,iBACE,aAAA,CACA,oBjBysDF,CiB1qDI,aAhDJ,aAAA,CACA,UjB6tDA,CiBxqDQ,UAhEN,aAAA,CACA,iBjB2uDF,CiB5qDQ,UAhEN,aAAA,CACA,kBjB+uDF,CiBhrDQ,UAhEN,aAAA,CACA,SjBmvDF,CiBprDQ,UAhEN,aAAA,CACA,kBjBuvDF,CiBxrDQ,UAhEN,aAAA,CACA,kBjB2vDF,CiB5rDQ,UAhEN,aAAA,CACA,SjB+vDF,CiBhsDQ,UAhEN,aAAA,CACA,kBjBmwDF,CiBpsDQ,UAhEN,aAAA,CACA,kBjBuwDF,CiBxsDQ,UAhEN,aAAA,CACA,SjB2wDF,CiB5sDQ,WAhEN,aAAA,CACA,kBjB+wDF,CiBhtDQ,WAhEN,aAAA,CACA,kBjBmxDF,CiBptDQ,WAhEN,aAAA,CACA,UjBuxDF,CiBhtDU,aAxDV,ajB2wDA,CiBntDU,aAxDV,uBjB8wDA,CiBttDU,aAxDV,wBjBixDA,CiBztDU,aAxDV,ejBoxDA,CiB5tDU,aAxDV,wBjBuxDA,CiB/tDU,aAxDV,wBjB0xDA,CiBluDU,aAxDV,ejB6xDA,CiBruDU,aAxDV,wBjBgyDA,CiBxuDU,aAxDV,wBjBmyDA,CiB3uDU,aAxDV,ejBsyDA,CiB9uDU,cAxDV,wBjByyDA,CiBjvDU,cAxDV,wBjB4yDA,CiBzuDM,iBAEE,ejB2uDR,CiBxuDM,iBAEE,ejB0uDR,CiBjvDM,iBAEE,qBjBmvDR,CiBhvDM,iBAEE,qBjBkvDR,CiBzvDM,iBAEE,oBjB2vDR,CiBxvDM,iBAEE,oBjB0vDR,CiBjwDM,iBAEE,kBjBmwDR,CiBhwDM,iBAEE,kBjBkwDR,CiBzwDM,iBAEE,oBjB2wDR,CiBxwDM,iBAEE,oBjB0wDR,CiBjxDM,iBAEE,kBjBmxDR,CiBhxDM,iBAEE,kBjBkxDR,CACF,CkB70DI,0BDUE,SACE,WjBs0DN,CiBn0DI,qBApCJ,aAAA,CACA,UjB02DA,CiB51DA,kBACE,aAAA,CACA,UjB81DF,CiBh2DA,kBACE,aAAA,CACA,SjBk2DF,CiBp2DA,kBACE,aAAA,CACA,oBjBs2DF,CiBx2DA,kBACE,aAAA,CACA,SjB02DF,CiB52DA,kBACE,aAAA,CACA,SjB82DF,CiBh3DA,kBACE,aAAA,CACA,oBjBk3DF,CiBn1DI,cAhDJ,aAAA,CACA,UjBs4DA,CiBj1DQ,WAhEN,aAAA,CACA,iBjBo5DF,CiBr1DQ,WAhEN,aAAA,CACA,kBjBw5DF,CiBz1DQ,WAhEN,aAAA,CACA,SjB45DF,CiB71DQ,WAhEN,aAAA,CACA,kBjBg6DF,CiBj2DQ,WAhEN,aAAA,CACA,kBjBo6DF,CiBr2DQ,WAhEN,aAAA,CACA,SjBw6DF,CiBz2DQ,WAhEN,aAAA,CACA,kBjB46DF,CiB72DQ,WAhEN,aAAA,CACA,kBjBg7DF,CiBj3DQ,WAhEN,aAAA,CACA,SjBo7DF,CiBr3DQ,YAhEN,aAAA,CACA,kBjBw7DF,CiBz3DQ,YAhEN,aAAA,CACA,kBjB47DF,CiB73DQ,YAhEN,aAAA,CACA,UjBg8DF,CiBz3DU,cAxDV,ajBo7DA,CiB53DU,cAxDV,uBjBu7DA,CiB/3DU,cAxDV,wBjB07DA,CiBl4DU,cAxDV,ejB67DA,CiBr4DU,cAxDV,wBjBg8DA,CiBx4DU,cAxDV,wBjBm8DA,CiB34DU,cAxDV,ejBs8DA,CiB94DU,cAxDV,wBjBy8DA,CiBj5DU,cAxDV,wBjB48DA,CiBp5DU,cAxDV,ejB+8DA,CiBv5DU,eAxDV,wBjBk9DA,CiB15DU,eAxDV,wBjBq9DA,CiBl5DM,mBAEE,ejBo5DR,CiBj5DM,mBAEE,ejBm5DR,CiB15DM,mBAEE,qBjB45DR,CiBz5DM,mBAEE,qBjB25DR,CiBl6DM,mBAEE,oBjBo6DR,CiBj6DM,mBAEE,oBjBm6DR,CiB16DM,mBAEE,kBjB46DR,CiBz6DM,mBAEE,kBjB26DR,CiBl7DM,mBAEE,oBjBo7DR,CiBj7DM,mBAEE,oBjBm7DR,CiB17DM,mBAEE,kBjB47DR,CiBz7DM,mBAEE,kBjB27DR,CACF,CkBt/DI,0BDUE,UACE,WjB++DN,CiB5+DI,sBApCJ,aAAA,CACA,UjBmhEA,CiBrgEA,mBACE,aAAA,CACA,UjBugEF,CiBzgEA,mBACE,aAAA,CACA,SjB2gEF,CiB7gEA,mBACE,aAAA,CACA,oBjB+gEF,CiBjhEA,mBACE,aAAA,CACA,SjBmhEF,CiBrhEA,mBACE,aAAA,CACA,SjBuhEF,CiBzhEA,mBACE,aAAA,CACA,oBjB2hEF,CiB5/DI,eAhDJ,aAAA,CACA,UjB+iEA,CiB1/DQ,YAhEN,aAAA,CACA,iBjB6jEF,CiB9/DQ,YAhEN,aAAA,CACA,kBjBikEF,CiBlgEQ,YAhEN,aAAA,CACA,SjBqkEF,CiBtgEQ,YAhEN,aAAA,CACA,kBjBykEF,CiB1gEQ,YAhEN,aAAA,CACA,kBjB6kEF,CiB9gEQ,YAhEN,aAAA,CACA,SjBilEF,CiBlhEQ,YAhEN,aAAA,CACA,kBjBqlEF,CiBthEQ,YAhEN,aAAA,CACA,kBjBylEF,CiB1hEQ,YAhEN,aAAA,CACA,SjB6lEF,CiB9hEQ,aAhEN,aAAA,CACA,kBjBimEF,CiBliEQ,aAhEN,aAAA,CACA,kBjBqmEF,CiBtiEQ,aAhEN,aAAA,CACA,UjBymEF,CiBliEU,eAxDV,ajB6lEA,CiBriEU,eAxDV,uBjBgmEA,CiBxiEU,eAxDV,wBjBmmEA,CiB3iEU,eAxDV,ejBsmEA,CiB9iEU,eAxDV,wBjBymEA,CiBjjEU,eAxDV,wBjB4mEA,CiBpjEU,eAxDV,ejB+mEA,CiBvjEU,eAxDV,wBjBknEA,CiB1jEU,eAxDV,wBjBqnEA,CiB7jEU,eAxDV,ejBwnEA,CiBhkEU,gBAxDV,wBjB2nEA,CiBnkEU,gBAxDV,wBjB8nEA,CiB3jEM,qBAEE,ejB6jER,CiB1jEM,qBAEE,ejB4jER,CiBnkEM,qBAEE,qBjBqkER,CiBlkEM,qBAEE,qBjBokER,CiB3kEM,qBAEE,oBjB6kER,CiB1kE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","file":"eui.css","sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\n html {\n line-height: var(--eui-base-line-height); /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n }\n\n /* Sections\n ========================================================================== */\n\n /**\n * Remove the margin in all browsers.\n */\n\n body {\n margin: 0;\n }\n\n /**\n * Render the `main` element consistently in IE.\n */\n\n main {\n display: block;\n }\n\n /**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\n h1 {\n font-size: 2em;\n margin: 0.67em 0;\n }\n\n /* Grouping content\n ========================================================================== */\n\n /**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\n hr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n }\n\n /**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\n pre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n }\n\n /* Text-level semantics\n ========================================================================== */\n\n /**\n * Remove the gray background on active links in IE 10.\n */\n\n a {\n background-color: transparent;\n }\n\n /**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\n abbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n }\n\n /**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\n b,\n strong {\n font-weight: bolder;\n }\n\n /**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\n code,\n kbd,\n samp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n }\n\n /**\n * Add the correct font size in all browsers.\n */\n\n small {\n font-size: 80%;\n }\n\n /**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\n sub,\n sup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n }\n\n sub {\n bottom: -0.25em;\n }\n\n sup {\n top: -0.5em;\n }\n\n /* Embedded content\n ========================================================================== */\n\n /**\n * Remove the border on images inside links in IE 10.\n */\n\n img {\n border-style: none;\n }\n\n /* Forms\n ========================================================================== */\n\n /**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\n button,\n input,\n optgroup,\n select,\n textarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1; /* 1 */ // eUI adapations forced to \"1\"\n margin: 0; /* 2 */\n }\n\n /**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\n button,\n input { /* 1 */\n overflow: visible;\n }\n\n /**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\n button,\n select { /* 1 */\n text-transform: none;\n }\n\n /**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\n button,\n [type=\"button\"],\n [type=\"reset\"],\n [type=\"submit\"] {\n -webkit-appearance: button;\n }\n\n /**\n * Remove the inner border and padding in Firefox.\n */\n\n button::-moz-focus-inner,\n [type=\"button\"]::-moz-focus-inner,\n [type=\"reset\"]::-moz-focus-inner,\n [type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n }\n\n /**\n * Restore the focus styles unset by the previous rule.\n */\n\n button:-moz-focusring,\n [type=\"button\"]:-moz-focusring,\n [type=\"reset\"]:-moz-focusring,\n [type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n }\n\n /**\n * Correct the padding in Firefox.\n */\n\n fieldset {\n padding: 0.35em 0.75em 0.625em;\n }\n\n /**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\n legend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n }\n\n /**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\n progress {\n vertical-align: baseline;\n }\n\n /**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\n textarea {\n overflow: auto;\n }\n\n /**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n [type=\"checkbox\"],\n [type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n }\n\n /**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n [type=\"number\"]::-webkit-inner-spin-button,\n [type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n }\n\n /**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n [type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n }\n\n /**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n [type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n\n /**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n ::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n }\n\n /* Interactive\n ========================================================================== */\n\n /*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\n details {\n display: block;\n }\n\n /*\n * Add the correct display in all browsers.\n */\n\n summary {\n display: list-item;\n }\n\n /* Misc\n ========================================================================== */\n\n /**\n * Add the correct display in IE 10+.\n */\n\n template {\n display: none;\n }\n\n /**\n * Add the correct display in IE 10.\n */\n\n [hidden] {\n display: none;\n }\n","/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n/* Document\n ========================================================================== */\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\nhtml {\n line-height: var(--eui-base-line-height); /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n/**\n * Remove the margin in all browsers.\n */\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n/**\n * Remove the gray background on active links in IE 10.\n */\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n/**\n * Remove the border on images inside links in IE 10.\n */\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\nbutton::-moz-focus-inner,\n[type=button]::-moz-focus-inner,\n[type=reset]::-moz-focus-inner,\n[type=submit]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\nbutton:-moz-focusring,\n[type=button]:-moz-focusring,\n[type=reset]:-moz-focusring,\n[type=submit]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n[type=checkbox],\n[type=radio] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n[type=number]::-webkit-inner-spin-button,\n[type=number]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n[type=search] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n[type=search]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n/**\n * Add the correct display in IE 10+.\n */\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n[hidden] {\n display: none;\n}\n\n:root {\n --eui-bc-white: #fff;\n --eui-bc-black: #000;\n --eui-bc-transparent: transparent;\n --eui-bc-branding-120: #003676;\n --eui-bc-branding-120-contrast: #ffffff;\n --eui-bc-branding-100: #004494;\n --eui-bc-branding-100-contrast: #ffffff;\n --eui-bc-branding-80: #3369a9;\n --eui-bc-branding-80-contrast: #ffffff;\n --eui-bc-primary-160: #0a1f6c;\n --eui-bc-primary-160-contrast: #ffffff;\n --eui-bc-primary-140: #0f2fa2;\n --eui-bc-primary-140-contrast: #ffffff;\n --eui-bc-primary-130: #2743a6;\n --eui-bc-primary-130-contrast: #ffffff;\n --eui-bc-primary-120: #143fd9;\n --eui-bc-primary-120-contrast: #ffffff;\n --eui-bc-primary-110: #3256d5;\n --eui-bc-primary-110-contrast: #ffffff;\n --eui-bc-primary-100: #3860ed;\n --eui-bc-primary-100-contrast: #ffffff;\n --eui-bc-primary-80: #5577f0;\n --eui-bc-primary-80-contrast: #ffffff;\n --eui-bc-primary-60: #89a1f4;\n --eui-bc-primary-60-contrast: #000000;\n --eui-bc-primary-40: #b1c0f8;\n --eui-bc-primary-40-contrast: #000000;\n --eui-bc-primary-20: #d8e0fb;\n --eui-bc-primary-20-contrast: #000000;\n --eui-bc-primary-10: #ebeffd;\n --eui-bc-primary-10-contrast: #000000;\n --eui-bc-primary-5: #f5f7fe;\n --eui-bc-primary-5-contrast: #000000;\n --eui-bc-primary-0: white;\n --eui-bc-primary-0-contrast: #000000;\n --eui-bc-neutral-160: #131313;\n --eui-bc-neutral-160-contrast: #ffffff;\n --eui-bc-neutral-140: #1d1d1d;\n --eui-bc-neutral-140-contrast: #ffffff;\n --eui-bc-neutral-130: #222222;\n --eui-bc-neutral-130-contrast: #ffffff;\n --eui-bc-neutral-120: #262626;\n --eui-bc-neutral-120-contrast: #ffffff;\n --eui-bc-neutral-110: #2b2b2b;\n --eui-bc-neutral-110-contrast: #ffffff;\n --eui-bc-neutral-100: #303030;\n --eui-bc-neutral-100-contrast: #ffffff;\n --eui-bc-neutral-80: #595959;\n --eui-bc-neutral-80-contrast: #ffffff;\n --eui-bc-neutral-60: #838383;\n --eui-bc-neutral-60-contrast: #ffffff;\n --eui-bc-neutral-40: #acacac;\n --eui-bc-neutral-40-contrast: #000000;\n --eui-bc-neutral-20: #d6d6d6;\n --eui-bc-neutral-20-contrast: #000000;\n --eui-bc-neutral-10: #eaeaea;\n --eui-bc-neutral-10-contrast: #000000;\n --eui-bc-neutral-5: whitesmoke;\n --eui-bc-neutral-5-contrast: #000000;\n --eui-bc-neutral-2: #fcfcfc;\n --eui-bc-neutral-2-contrast: #000000;\n --eui-bc-neutral-0: white;\n --eui-bc-neutral-0-contrast: #000000;\n --eui-bc-info-160: #16265f;\n --eui-bc-info-160-contrast: #ffffff;\n --eui-bc-info-140: #223a8e;\n --eui-bc-info-140-contrast: #ffffff;\n --eui-bc-info-130: #2743a6;\n --eui-bc-info-130-contrast: #ffffff;\n --eui-bc-info-120: #2d4dbe;\n --eui-bc-info-120-contrast: #ffffff;\n --eui-bc-info-110: #3256d5;\n --eui-bc-info-110-contrast: #ffffff;\n --eui-bc-info-100: #3860ed;\n --eui-bc-info-100-contrast: #ffffff;\n --eui-bc-info-80: #6080f1;\n --eui-bc-info-80-contrast: #ffffff;\n --eui-bc-info-60: #88a0f4;\n --eui-bc-info-60-contrast: #000000;\n --eui-bc-info-40: #afbff8;\n --eui-bc-info-40-contrast: #000000;\n --eui-bc-info-20: #d7dffb;\n --eui-bc-info-20-contrast: #000000;\n --eui-bc-info-10: #ebeffd;\n --eui-bc-info-10-contrast: #000000;\n --eui-bc-info-5: #f5f7fe;\n --eui-bc-info-5-contrast: #000000;\n --eui-bc-info-0: white;\n --eui-bc-info-0-contrast: #000000;\n --eui-bc-success-160: #0e401d;\n --eui-bc-success-160-contrast: #ffffff;\n --eui-bc-success-140: #16612b;\n --eui-bc-success-140-contrast: #ffffff;\n --eui-bc-success-130: #197132;\n --eui-bc-success-130-contrast: #ffffff;\n --eui-bc-success-120: #1d813a;\n --eui-bc-success-120-contrast: #ffffff;\n --eui-bc-success-110: #209141;\n --eui-bc-success-110-contrast: #ffffff;\n --eui-bc-success-100: #24a148;\n --eui-bc-success-100-contrast: #ffffff;\n --eui-bc-success-80: #50b46d;\n --eui-bc-success-80-contrast: #ffffff;\n --eui-bc-success-60: #7cc791;\n --eui-bc-success-60-contrast: #000000;\n --eui-bc-success-40: #a7d9b6;\n --eui-bc-success-40-contrast: #000000;\n --eui-bc-success-20: #d3ecda;\n --eui-bc-success-20-contrast: #000000;\n --eui-bc-success-10: #e9f6ed;\n --eui-bc-success-10-contrast: #000000;\n --eui-bc-success-5: #f4faf6;\n --eui-bc-success-5-contrast: #000000;\n --eui-bc-success-0: white;\n --eui-bc-success-0-contrast: #000000;\n --eui-bc-warning-160: #613d07;\n --eui-bc-warning-160-contrast: #ffffff;\n --eui-bc-warning-140: #925b0a;\n --eui-bc-warning-140-contrast: #ffffff;\n --eui-bc-warning-130: #aa6a0c;\n --eui-bc-warning-130-contrast: #ffffff;\n --eui-bc-warning-120: #c27a0e;\n --eui-bc-warning-120-contrast: #ffffff;\n --eui-bc-warning-110: #db890f;\n --eui-bc-warning-110-contrast: #000000;\n --eui-bc-warning-100: #f39811;\n --eui-bc-warning-100-contrast: #000000;\n --eui-bc-warning-80: #f5ad41;\n --eui-bc-warning-80-contrast: #000000;\n --eui-bc-warning-60: #f8c170;\n --eui-bc-warning-60-contrast: #000000;\n --eui-bc-warning-40: #fad6a0;\n --eui-bc-warning-40-contrast: #000000;\n --eui-bc-warning-20: #fdeacf;\n --eui-bc-warning-20-contrast: #000000;\n --eui-bc-warning-10: #fef5e7;\n --eui-bc-warning-10-contrast: #000000;\n --eui-bc-warning-5: #fefaf3;\n --eui-bc-warning-5-contrast: #000000;\n --eui-bc-warning-0: white;\n --eui-bc-warning-0-contrast: #000000;\n --eui-bc-danger-160: #570c10;\n --eui-bc-danger-160-contrast: #ffffff;\n --eui-bc-danger-140: #831218;\n --eui-bc-danger-140-contrast: #ffffff;\n --eui-bc-danger-130: #99151c;\n --eui-bc-danger-130-contrast: #ffffff;\n --eui-bc-danger-120: #ae1820;\n --eui-bc-danger-120-contrast: #ffffff;\n --eui-bc-danger-110: #c41b24;\n --eui-bc-danger-110-contrast: #ffffff;\n --eui-bc-danger-100: #da1e28;\n --eui-bc-danger-100-contrast: #ffffff;\n --eui-bc-danger-80: #e14b53;\n --eui-bc-danger-80-contrast: #ffffff;\n --eui-bc-danger-60: #e9787e;\n --eui-bc-danger-60-contrast: #000000;\n --eui-bc-danger-40: #f0a5a9;\n --eui-bc-danger-40-contrast: #000000;\n --eui-bc-danger-20: #f8d2d4;\n --eui-bc-danger-20-contrast: #000000;\n --eui-bc-danger-10: #fbe9ea;\n --eui-bc-danger-10-contrast: #000000;\n --eui-bc-danger-5: #fdf4f4;\n --eui-bc-danger-5-contrast: #000000;\n --eui-bc-danger-0: white;\n --eui-bc-danger-0-contrast: #000000;\n --eui-bc-accent-160: #e08700;\n --eui-bc-accent-160-contrast: #000000;\n --eui-bc-accent-140: #ff9d0a;\n --eui-bc-accent-140-contrast: #000000;\n --eui-bc-accent-130: #f2a83a;\n --eui-bc-accent-130-contrast: #000000;\n --eui-bc-accent-120: #ffad33;\n --eui-bc-accent-120-contrast: #000000;\n --eui-bc-accent-110: #f0b55d;\n --eui-bc-accent-110-contrast: #000000;\n --eui-bc-accent-100: #ffbe5c;\n --eui-bc-accent-100-contrast: #000000;\n --eui-bc-accent-80: #ffcb7c;\n --eui-bc-accent-80-contrast: #000000;\n --eui-bc-accent-60: #ffd89d;\n --eui-bc-accent-60-contrast: #000000;\n --eui-bc-accent-40: #ffe5be;\n --eui-bc-accent-40-contrast: #000000;\n --eui-bc-accent-20: #fff2de;\n --eui-bc-accent-20-contrast: #000000;\n --eui-bc-accent-10: #fff9ef;\n --eui-bc-accent-10-contrast: #000000;\n --eui-bc-accent-5: #fffcf7;\n --eui-bc-accent-5-contrast: #000000;\n --eui-bc-accent-0: white;\n --eui-bc-accent-0-contrast: #000000;\n}\n\n:root {\n --eui-c-white: var(--eui-bc-white);\n --eui-c-black: var(--eui-bc-black);\n --eui-c-bg: var(--eui-bc-neutral-2);\n --eui-c-text: var(--eui-bc-neutral-100);\n --eui-c-focus-visible: var(--eui-bc-primary-100);\n --eui-c-focus: var(--eui-bc-primary-40);\n --eui-c-hover: var(--eui-bc-primary-5);\n --eui-c-hover-disabled: var(--eui-bc-neutral-10);\n --eui-c-active: var(--eui-bc-primary-10);\n --eui-c-disabled: var(--eui-bc-neutral-60);\n --eui-c-neutral: var(--eui-bc-neutral-100);\n --eui-c-neutral-contrast: var(--eui-bc-neutral-100-contrast);\n --eui-c-neutral-darker: var(--eui-bc-neutral-140);\n --eui-c-neutral-darker-contrast: var(--eui-bc-neutral-140-contrast);\n --eui-c-neutral-dark: var(--eui-bc-neutral-120);\n --eui-c-neutral-dark-contrast: var(--eui-bc-neutral-120-contrast);\n --eui-c-neutral-light: var(--eui-bc-neutral-80);\n --eui-c-neutral-light-contrast: var(--eui-bc-neutral-80-contrast);\n --eui-c-neutral-lighter: var(--eui-bc-neutral-40);\n --eui-c-neutral-lighter-contrast: var(--eui-bc-neutral-40-contrast);\n --eui-c-neutral-lightest: var(--eui-bc-neutral-20);\n --eui-c-neutral-lightest-contrast: var(--eui-bc-neutral-20-contrast);\n --eui-c-neutral-bg: var(--eui-bc-neutral-10);\n --eui-c-neutral-bg-contrast: var(--eui-bc-neutral-10-contrast);\n --eui-c-neutral-bg-light: var(--eui-bc-neutral-5);\n --eui-c-neutral-bg-light-contrast: var(--eui-bc-neutral-5-contrast);\n --eui-c-branding: var(--eui-bc-branding-100);\n --eui-c-branding-contrast: var(--eui-bc-branding-100-contrast);\n --eui-c-branding-dark: var(--eui-bc-branding-120);\n --eui-c-branding-dark-contrast: var(--eui-bc-branding-120-contrast);\n --eui-c-branding-light: var(--eui-bc-branding-80);\n --eui-c-branding-light-contrast: var(--eui-bc-branding-80-contrast);\n --eui-c-primary: var(--eui-bc-primary-100);\n --eui-c-primary-contrast: var(--eui-bc-primary-100-contrast);\n --eui-c-primary-darker: var(--eui-bc-primary-140);\n --eui-c-primary-darker-contrast: var(--eui-bc-primary-140-contrast);\n --eui-c-primary-dark: var(--eui-bc-primary-120);\n --eui-c-primary-dark-contrast: var(--eui-bc-primary-120-contrast);\n --eui-c-primary-light: var(--eui-bc-primary-80);\n --eui-c-primary-light-contrast: var(--eui-bc-primary-80-contrast);\n --eui-c-primary-lighter: var(--eui-bc-primary-40);\n --eui-c-primary-lighter-contrast: var(--eui-bc-primary-40-contrast);\n --eui-c-primary-lightest: var(--eui-bc-primary-20);\n --eui-c-primary-lightest-contrast: var(--eui-bc-primary-20-contrast);\n --eui-c-primary-bg: var(--eui-bc-primary-10);\n --eui-c-primary-bg-contrast: var(--eui-bc-primary-10-contrast);\n --eui-c-primary-bg-light: var(--eui-bc-primary-5);\n --eui-c-primary-bg-light-contrast: var(--eui-bc-primary-5-contrast);\n --eui-c-info: var(--eui-bc-info-100);\n --eui-c-info-contrast: var(--eui-bc-info-100-contrast);\n --eui-c-info-darker: var(--eui-bc-info-140);\n --eui-c-info-darker-contrast: var(--eui-bc-info-140-contrast);\n --eui-c-info-dark: var(--eui-bc-info-120);\n --eui-c-info-dark-contrast: var(--eui-bc-info-120-contrast);\n --eui-c-info-light: var(--eui-bc-info-80);\n --eui-c-info-light-contrast: var(--eui-bc-info-80-contrast);\n --eui-c-info-lighter: var(--eui-bc-info-40);\n --eui-c-info-lighter-contrast: var(--eui-bc-info-40-contrast);\n --eui-c-info-lightest: var(--eui-bc-info-20);\n --eui-c-info-lightest-contrast: var(--eui-bc-info-20-contrast);\n --eui-c-info-bg: var(--eui-bc-info-10);\n --eui-c-info-bg-contrast: var(--eui-bc-info-10-contrast);\n --eui-c-info-bg-light: var(--eui-bc-info-5);\n --eui-c-info-bg-light-contrast: var(--eui-bc-info-5-contrast);\n --eui-c-success: var(--eui-bc-success-130);\n --eui-c-success-contrast: var(--eui-bc-success-130-contrast);\n --eui-c-success-darker: var(--eui-bc-success-160);\n --eui-c-success-darker-contrast: var(--eui-bc-success-160-contrast);\n --eui-c-success-dark: var(--eui-bc-success-140);\n --eui-c-success-dark-contrast: var(--eui-bc-success-140-contrast);\n --eui-c-success-light: var(--eui-bc-success-100);\n --eui-c-success-light-contrast: var(--eui-bc-success-100-contrast);\n --eui-c-success-bg: var(--eui-bc-success-10);\n --eui-c-success-bg-contrast: var(--eui-bc-success-10-contrast);\n --eui-c-success-bg-light: var(--eui-bc-success-5);\n --eui-c-success-bg-light-contrast: var(--eui-bc-success-5-contrast);\n --eui-c-warning: var(--eui-bc-warning-120);\n --eui-c-warning-contrast: var(--eui-bc-warning-120-contrast);\n --eui-c-warning-darker: var(--eui-bc-warning-140);\n --eui-c-warning-darker-contrast: var(--eui-bc-warning-140-contrast);\n --eui-c-warning-dark: var(--eui-bc-warning-130);\n --eui-c-warning-dark-contrast: var(--eui-bc-warning-130-contrast);\n --eui-c-warning-light: var(--eui-bc-warning-100);\n --eui-c-warning-light-contrast: var(--eui-bc-warning-100-contrast);\n --eui-c-warning-bg: var(--eui-bc-warning-10);\n --eui-c-warning-bg-contrast: var(--eui-bc-warning-10-contrast);\n --eui-c-warning-bg-light: var(--eui-bc-warning-5);\n --eui-c-warning-bg-light-contrast: var(--eui-bc-warning-5-contrast);\n --eui-c-danger: var(--eui-bc-danger-120);\n --eui-c-danger-contrast: var(--eui-bc-danger-120-contrast);\n --eui-c-danger-darker: var(--eui-bc-danger-140);\n --eui-c-danger-darker-contrast: var(--eui-bc-danger-140-contrast);\n --eui-c-danger-dark: var(--eui-bc-danger-130);\n --eui-c-danger-dark-contrast: var(--eui-bc-danger-130-contrast);\n --eui-c-danger-light: var(--eui-bc-danger-100);\n --eui-c-danger-light-contrast: var(--eui-bc-danger-100-contrast);\n --eui-c-danger-bg: var(--eui-bc-danger-10);\n --eui-c-danger-bg-contrast: var(--eui-bc-danger-10-contrast);\n --eui-c-danger-bg-light: var(--eui-bc-danger-5);\n --eui-c-danger-bg-light-contrast: var(--eui-bc-danger-5-contrast);\n --eui-c-accent: var(--eui-bc-accent-120);\n --eui-c-accent-contrast: var(--eui-bc-accent-120-contrast);\n --eui-c-accent-darker: var(--eui-bc-accent-140);\n --eui-c-accent-darker-contrast: var(--eui-bc-accent-140-contrast);\n --eui-c-accent-dark: var(--eui-bc-accent-130);\n --eui-c-accent-dark-contrast: var(--eui-bc-accent-130-contrast);\n --eui-c-accent-light: var(--eui-bc-accent-100);\n --eui-c-accent-light-contrast: var(--eui-bc-accent-100-contrast);\n --eui-c-accent-lighter: var(--eui-bc-accent-80);\n --eui-c-accent-lighter-contrast: var(--eui-bc-accent-80-contrast);\n --eui-c-accent-lightest: var(--eui-bc-accent-40);\n --eui-c-accent-lightest-contrast: var(--eui-bc-accent-40-contrast);\n --eui-c-accent-bg: var(--eui-bc-accent-10);\n --eui-c-accent-bg-contrast: var(--eui-bc-accent-10-contrast);\n --eui-c-accent-bg-light: var(--eui-bc-accent-5);\n --eui-c-accent-bg-light-contrast: var(--eui-bc-accent-5-contrast);\n}\n\n:root {\n --eui-bbr-none: 0;\n --eui-bbr-s: 2px;\n --eui-bbr-m: 4px;\n --eui-bbr-l: 6px;\n --eui-bbr-xl: 8px;\n --eui-bbr-2xl: 12px;\n --eui-bbr-3xl: 16px;\n --eui-bbr-4xl: 20px;\n --eui-bbr-max: 50%;\n}\n\n:root {\n --eui-s-none: var(--eui-bs-none);\n --eui-s-2xs: var(--eui-bs-2xs);\n --eui-s-xs: var(--eui-bs-xs);\n --eui-s-s: var(--eui-bs-s);\n --eui-s-m: var(--eui-bs-m);\n --eui-s-l: var(--eui-bs-l);\n --eui-s-xl: var(--eui-bs-xl);\n --eui-s-2xl: var(--eui-bs-2xl);\n --eui-s-3xl: var(--eui-bs-3xl);\n --eui-s-4xl: var(--eui-bs-4xl);\n --eui-s-5xl: var(--eui-bs-5xl);\n --eui-s-6xl: var(--eui-bs-6xl);\n}\n\n:root {\n --eui-bf-2xs: normal normal 400 0.625rem/1rem var(--eui-f-family);\n --eui-bf-2xs-p: normal normal 400 0.625rem/1rem var(--eui-f-family);\n --eui-bf-2xs-b: normal normal 700 0.625rem/1rem var(--eui-f-family);\n --eui-bf-2xs-b-p: normal normal 700 0.625rem/1rem var(--eui-f-family);\n --eui-bf-xs: normal normal 400 0.75rem/1rem var(--eui-f-family);\n --eui-bf-xs-p: normal normal 400 0.75rem/1.25rem var(--eui-f-family);\n --eui-bf-xs-b: normal normal 700 0.75rem/1rem var(--eui-f-family);\n --eui-bf-xs-b-p: normal normal 700 0.75rem/1.25rem var(--eui-f-family);\n --eui-bf-s: normal normal 400 0.875rem/1rem var(--eui-f-family);\n --eui-bf-s-p: normal normal 400 0.875rem/1.5rem var(--eui-f-family);\n --eui-bf-s-b: normal normal 700 0.875rem/1rem var(--eui-f-family);\n --eui-bf-s-b-p: normal normal 700 0.875rem/1.5rem var(--eui-f-family);\n --eui-bf-m: normal normal 400 1rem/1.25rem var(--eui-f-family);\n --eui-bf-m-p: normal normal 400 1rem/1.75rem var(--eui-f-family);\n --eui-bf-m-b: normal normal 700 1rem/1.25rem var(--eui-f-family);\n --eui-bf-m-b-p: normal normal 700 1rem/1.75rem var(--eui-f-family);\n --eui-bf-l: normal normal 400 1.25rem/1.5rem var(--eui-f-family);\n --eui-bf-l-p: normal normal 400 1.25rem/2rem var(--eui-f-family);\n --eui-bf-l-b: normal normal 700 1.25rem/1.5rem var(--eui-f-family);\n --eui-bf-l-b-p: normal normal 700 1.25rem/2rem var(--eui-f-family);\n --eui-bf-xl: normal normal 400 1.5rem/1.5rem var(--eui-f-family);\n --eui-bf-xl-p: normal normal 400 1.5rem/2.25rem var(--eui-f-family);\n --eui-bf-xl-b: normal normal 700 1.5rem/1.5rem var(--eui-f-family);\n --eui-bf-xl-b-p: normal normal 700 1.5rem/2.25rem var(--eui-f-family);\n --eui-bf-2xl: normal normal 400 1.75rem/1.75rem var(--eui-f-family);\n --eui-bf-2xl-p: normal normal 400 1.75rem/2.5rem var(--eui-f-family);\n --eui-bf-2xl-b: normal normal 700 1.75rem/1.75rem var(--eui-f-family);\n --eui-bf-2xl-b-p: normal normal 700 1.75rem/2.5rem var(--eui-f-family);\n --eui-bf-3xl: normal normal 400 2rem/2rem var(--eui-f-family);\n --eui-bf-3xl-p: normal normal 400 2rem/2.75rem var(--eui-f-family);\n --eui-bf-3xl-b: normal normal 700 2rem/2rem var(--eui-f-family);\n --eui-bf-3xl-b-p: normal normal 700 2rem/2.75rem var(--eui-f-family);\n --eui-bf-4xl: normal normal 400 2.5rem/2.5rem var(--eui-f-family);\n --eui-bf-4xl-p: normal normal 400 2.5rem/3rem var(--eui-f-family);\n --eui-bf-4xl-b: normal normal 700 2.5rem/2.5rem var(--eui-f-family);\n --eui-bf-4xl-b-p: normal normal 700 2.5rem/3rem var(--eui-f-family);\n --eui-bf-5xl: normal normal 400 2.75rem/2.75rem var(--eui-f-family);\n --eui-bf-5xl-p: normal normal 400 2.75rem/3.25rem var(--eui-f-family);\n --eui-bf-5xl-b: normal normal 700 2.75rem/2.75rem var(--eui-f-family);\n --eui-bf-5xl-b-p: normal normal 700 2.75rem/3.25rem var(--eui-f-family);\n --eui-bf-6xl: normal normal 400 3rem/3.25rem var(--eui-f-family);\n --eui-bf-6xl-p: normal normal 400 3rem/3.25rem var(--eui-f-family);\n --eui-bf-6xl-b: normal normal 700 3rem/3.25rem var(--eui-f-family);\n --eui-bf-6xl-b-p: normal normal 700 3rem/3.25rem var(--eui-f-family);\n --eui-bf-size-2xs: 0.625rem;\n --eui-bf-size-xs: 0.75rem;\n --eui-bf-size-s: 0.875rem;\n --eui-bf-size-m: 1rem;\n --eui-bf-size-l: 1.25rem;\n --eui-bf-size-xl: 1.5rem;\n --eui-bf-size-2xl: 1.75rem;\n --eui-bf-size-3xl: 2rem;\n --eui-bf-size-4xl: 2.5rem;\n --eui-bf-size-5xl: 2.75rem;\n --eui-bf-size-6xl: 3rem;\n}\n\n:root {\n --eui-f-family: Arial, \"Helvetica Neue\", Helvetica, sans-serif;\n --eui-f-family-monospace: \"Consolas\", \"Liberation Mono\", \"Courier New\", monospace;\n --eui-f-size-base: 16px;\n --eui-f-2xs: var(--eui-bf-2xs-p);\n --eui-f-2xs-prolonged: var(--eui-bf-2xs-p);\n --eui-f-2xs-compact: var(--eui-bf-2xs);\n --eui-f-2xs-bold: var(--eui-bf-2xs-b-p);\n --eui-f-2xs-bold-prolonged: var(--eui-bf-2xs-b-p);\n --eui-f-2xs-bold-compact: var(--eui-bf-2xs-b);\n --eui-f-xs: var(--eui-bf-xs-p);\n --eui-f-xs-prolonged: var(--eui-bf-xs-p);\n --eui-f-xs-compact: var(--eui-bf-xs);\n --eui-f-xs-bold: var(--eui-bf-xs-b-p);\n --eui-f-xs-bold-prolonged: var(--eui-bf-xs-b-p);\n --eui-f-xs-bold-compact: var(--eui-bf-xs-b);\n --eui-f-s: var(--eui-bf-s-p);\n --eui-f-s-prolonged: var(--eui-bf-s-p);\n --eui-f-s-compact: var(--eui-bf-s);\n --eui-f-s-bold: var(--eui-bf-s-b-p);\n --eui-f-s-bold-prolonged: var(--eui-bf-s-b-p);\n --eui-f-s-bold-compact: var(--eui-bf-s-b);\n --eui-f-m: var(--eui-bf-m-p);\n --eui-f-m-prolonged: var(--eui-bf-m-p);\n --eui-f-m-compact: var(--eui-bf-m);\n --eui-f-m-bold: var(--eui-bf-m-b-p);\n --eui-f-m-bold-prolonged: var(--eui-bf-m-b-p);\n --eui-f-m-bold-compact: var(--eui-bf-m-b);\n --eui-f-l: var(--eui-bf-l-p);\n --eui-f-l-prolonged: var(--eui-bf-l-p);\n --eui-f-l-compact: var(--eui-bf-l);\n --eui-f-l-bold: var(--eui-bf-l-b-p);\n --eui-f-l-bold-prolonged: var(--eui-bf-l-b-p);\n --eui-f-l-bold-compact: var(--eui-bf-l-b);\n --eui-f-xl: var(--eui-bf-xl-p);\n --eui-f-xl-prolonged: var(--eui-bf-xl-p);\n --eui-f-xl-compact: var(--eui-bf-xl);\n --eui-f-xl-bold: var(--eui-bf-xl-b-p);\n --eui-f-xl-bold-prolonged: var(--eui-bf-xl-b-p);\n --eui-f-xl-bold-compact: var(--eui-bf-xl-b);\n --eui-f-2xl: var(--eui-bf-2xl-p);\n --eui-f-2xl-prolonged: var(--eui-bf-2xl-p);\n --eui-f-2xl-compact: var(--eui-bf-2xl);\n --eui-f-2xl-bold: var(--eui-bf-2xl-b-p);\n --eui-f-2xl-bold-prolonged: var(--eui-bf-2xl-b-p);\n --eui-f-2xl-bold-compact: var(--eui-bf-2xl-b);\n --eui-f-3xl: var(--eui-bf-3xl-p);\n --eui-f-3xl-prolonged: var(--eui-bf-3xl-p);\n --eui-f-3xl-compact: var(--eui-bf-3xl);\n --eui-f-3xl-bold: var(--eui-bf-3xl-b-p);\n --eui-f-3xl-bold-prolonged: var(--eui-bf-3xl-b-p);\n --eui-f-3xl-bold-compact: var(--eui-bf-3xl-b);\n --eui-f-4xl: var(--eui-bf-4xl-p);\n --eui-f-4xl-prolonged: var(--eui-bf-4xl-p);\n --eui-f-4xl-compact: var(--eui-bf-4xl);\n --eui-f-4xl-bold: var(--eui-bf-4xl-b-p);\n --eui-f-4xl-bold-prolonged: var(--eui-bf-4xl-b-p);\n --eui-f-4xl-bold-compact: var(--eui-bf-4xl-b);\n --eui-f-5xl: var(--eui-bf-5xl-p);\n --eui-f-5xl-prolonged: var(--eui-bf-5xl-p);\n --eui-f-5xl-compact: var(--eui-bf-5xl);\n --eui-f-5xl-bold: var(--eui-bf-5xl-b-p);\n --eui-f-5xl-bold-prolonged: var(--eui-bf-5xl-b-p);\n --eui-f-5xl-bold-compact: var(--eui-bf-5xl-b);\n --eui-f-6xl: var(--eui-bf-6xl-p);\n --eui-f-6xl-prolonged: var(--eui-bf-6xl-p);\n --eui-f-6xl-compact: var(--eui-bf-6xl);\n --eui-f-6xl-bold: var(--eui-bf-6xl-b-p);\n --eui-f-6xl-bold-prolonged: var(--eui-bf-6xl-b-p);\n --eui-f-6xl-bold-compact: var(--eui-bf-6xl-b);\n --eui-f-size-2xs: var(--eui-bf-size-2xs);\n --eui-f-size-xs: var(--eui-bf-size-xs);\n --eui-f-size-s: var(--eui-bf-size-s);\n --eui-f-size-m: var(--eui-bf-size-m);\n --eui-f-size-l: var(--eui-bf-size-l);\n --eui-f-size-xl: var(--eui-bf-size-xl);\n --eui-f-size-2xl: var(--eui-bf-size-2xl);\n --eui-f-size-3xl: var(--eui-bf-size-3xl);\n --eui-f-size-4xl: var(--eui-bf-size-4xl);\n --eui-f-size-5xl: var(--eui-bf-size-5xl);\n --eui-f-size-6xl: var(--eui-bf-size-6xl);\n --eui-f: var(--eui-bf-m);\n --eui-f-bold: var(--eui-bf-m-b);\n}\n\n:root {\n --eui-bs-none: 0;\n --eui-bs-2xs: 0.25rem;\n --eui-bs-xs: 0.5rem;\n --eui-bs-s: 0.75rem;\n --eui-bs-m: 1rem;\n --eui-bs-l: 1.25rem;\n --eui-bs-xl: 1.5rem;\n --eui-bs-2xl: 2rem;\n --eui-bs-3xl: 2.5rem;\n --eui-bs-4xl: 3rem;\n --eui-bs-5xl: 3.5rem;\n --eui-bs-6xl: 4rem;\n}\n\n:root {\n --eui-br-none: var(--eui-bbr-none);\n --eui-br-s: var(--eui-bbr-s);\n --eui-br-m: var(--eui-bbr-m);\n --eui-br-l: var(--eui-bbr-l);\n --eui-br-xl: var(--eui-bbr-xl);\n --eui-br-2xl: var(--eui-bbr-2xl);\n --eui-br-3xl: var(--eui-bbr-3xl);\n --eui-br-4xl: var(--eui-bbr-4xl);\n --eui-br-max: var(--eui-bbr-max);\n}\n\n:root {\n --eui-bsh-none: none;\n --eui-bsh-ecl-1: 0 0 1px rgba(38, 50, 75, 0.06), 2px 2px 2px rgba(38, 50, 75, 0.05), 4px 4px 6px rgba(38, 50, 75, 0.05), 0 1px 0 #e0e5f5 inset;\n --eui-bsh-ecl-6: 0 0 6px rgba(38, 50, 75, 0.06), 12px 12px 12px rgba(38, 50, 75, 0.05), 24px 24px 36px rgba(38, 50, 75, 0.05), 0 1px 0 #e0e5f5 inset;\n --eui-bsh-ecl-12: 0 0 12px rgba(38, 50, 75, 0.06), 24px 24px 24px rgba(38, 50, 75, 0.05), 48px 48px 72px rgba(38, 50, 75, 0.05), 0 1px 0 #e0e5f5 inset;\n --eui-bsh-ecl-16: 0 0 16px rgba(38, 50, 75, 0.06), 32px 32px 32px rgba(38, 50, 75, 0.05), 64px 64px 96px rgba(38, 50, 75, 0.05), 0 1px 0 #e0e5f5 inset;\n --eui-bsh-1: 0 2px 1px -1px rgba(0, 0, 0, 0.2), 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 1px 3px 0 rgba(0, 0, 0, 0.12);\n --eui-bsh-2: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);\n --eui-bsh-3: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 3px 4px 0 rgba(0, 0, 0, 0.14), 0 1px 8px 0 rgba(0, 0, 0, 0.12);\n --eui-bsh-4: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12);\n --eui-bsh-6: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);\n --eui-bsh-8: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);\n --eui-bsh-9: 0px 5px 6px -3px rgba(0, 0, 0, 0.2), 0px 9px 12px 1px rgba(0, 0, 0, 0.14), 0px 3px 16px 2px rgba(0, 0, 0, 0.12);\n --eui-bsh-12: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);\n --eui-bsh-16: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);\n --eui-bsh-24: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);\n --eui-bsh-z-depth-0: 0 1px 0 rgba(0, 0, 0, 0.08), 0 1px 1px rgba(0, 0, 0, 0.08);\n --eui-bsh-z-depth-1: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);\n --eui-bsh-z-depth-2: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);\n --eui-bsh-z-depth-3: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);\n --eui-bsh-z-depth-4: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);\n --eui-bsh-z-depth-5: 0 19px 38px rgba(0, 0, 0, 0.3), 0 15px 12px rgba(0, 0, 0, 0.22);\n}\n\n:root {\n --eui-sh-none: var(--eui-bsh-none);\n --eui-sh-ecl-1: var(--eui-bsh-ecl-1);\n --eui-sh-ecl-6: var(--eui-bsh-ecl-6);\n --eui-sh-ecl-12: var(--eui-bsh-ecl-12);\n --eui-sh-ecl-16: var(--eui-bsh-ecl-16);\n --eui-sh-1: var(--eui-bsh-1);\n --eui-sh-2: var(--eui-bsh-2);\n --eui-sh-3: var(--eui-bsh-3);\n --eui-sh-4: var(--eui-bsh-4);\n --eui-sh-6: var(--eui-bsh-6);\n --eui-sh-8: var(--eui-bsh-8);\n --eui-sh-9: var(--eui-bsh-9);\n --eui-sh-12: var(--eui-bsh-12);\n --eui-sh-16: var(--eui-bsh-16);\n --eui-sh-24: var(--eui-bsh-24);\n --eui-sh-z-depth-0: var(--eui-bsh-z-depth-0);\n --eui-sh-z-depth-1: var(--eui-bsh-z-depth-1);\n --eui-sh-z-depth-2: var(--eui-bsh-z-depth-2);\n --eui-sh-z-depth-3: var(--eui-bsh-z-depth-3);\n --eui-sh-z-depth-4: var(--eui-bsh-z-depth-4);\n --eui-sh-z-depth-5: var(--eui-bsh-z-depth-5);\n}\n\n:root {\n --eui-bis-2xs: 0.75rem;\n --eui-bis-xs: 1rem;\n --eui-bis-s: 1.25rem;\n --eui-bis-m: 1.5rem;\n --eui-bis-l: 2rem;\n --eui-bis-xl: 2.5rem;\n --eui-bis-2xl: 3rem;\n --eui-bis-3xl: 3.5rem;\n --eui-bis-4xl: 4rem;\n --eui-bis-fluid: 1em;\n --eui-is-2xs: var(--eui-bis-2xs);\n --eui-is-xs: var(--eui-bis-xs);\n --eui-is-s: var(--eui-bis-s);\n --eui-is-m: var(--eui-bis-m);\n --eui-is-l: var(--eui-bis-l);\n --eui-is-xl: var(--eui-bis-xl);\n --eui-is-2xl: var(--eui-bis-2xl);\n --eui-is-3xl: var(--eui-bis-3xl);\n --eui-is-4xl: var(--eui-bis-4xl);\n --eui-is-fluid: var(--eui-bis-fluid);\n --eui-bzi-auto: auto;\n --eui-bzi-zero: 0;\n --eui-bzi-root: 1;\n --eui-bzi-input-maxlength: 2;\n --eui-bzi-clearable-icon: 3;\n --eui-bzi-header: 5;\n --eui-bzi-top-message: 8;\n --eui-bzi-nav: 10;\n --eui-bzi-loading-indicator: 20;\n --eui-bzi-cdk-overlay-pane: 999;\n --eui-bzi-logo: 1000;\n --eui-bzi-sticky: 1040;\n --eui-bzi-sidebar: 1044;\n --eui-bzi-overlay: 1045;\n --eui-bzi-btn-floating: 1046;\n --eui-bzi-highlighted: 1047;\n --eui-bzi-footer-action-bar: 1048;\n --eui-bzi-modal-backdrop: 1049;\n --eui-bzi-modal: 1050;\n --eui-bzi-menu: 1060;\n --eui-bzi-tooltip: 1070;\n --eui-bzi-max: 9999;\n --eui-bzi-cdk-overlay-container: 10000;\n --eui-bzi-block-document: 10010;\n --eui-bzi-growl-message: 99999;\n --eui-zi-auto: var(--eui-bzi-auto);\n --eui-zi-zero: var(--eui-bzi-zero);\n --eui-zi-root: var(--eui-bzi-root);\n --eui-zi-input-maxlength: var(--eui-bzi-input-maxlength);\n --eui-zi-clearable-icon: var(--eui-bzi-clearable-icon);\n --eui-zi-header: var(--eui-bzi-header);\n --eui-zi-top-message: var(--eui-bzi-top-message);\n --eui-zi-nav: var(--eui-bzi-nav);\n --eui-zi-loading-indicator: var(--eui-bzi-loading-indicator);\n --eui-zi-cdk-overlay-pane: var(--eui-bzi-cdk-overlay-pane);\n --eui-zi-logo: var(--eui-bzi-logo);\n --eui-zi-sticky: var(--eui-bzi-sticky);\n --eui-zi-sidebar: var(--eui-bzi-sidebar);\n --eui-zi-overlay: var(--eui-bzi-overlay);\n --eui-zi-btn-floating: var(--eui-bzi-btn-floating);\n --eui-zi-highlighted: var(--eui-bzi-highlighted);\n --eui-zi-footer-action-bar: var(--eui-bzi-footer-action-bar);\n --eui-zi-modal-backdrop: var(--eui-bzi-modal-backdrop);\n --eui-zi-modal: var(--eui-bzi-modal);\n --eui-zi-menu: var(--eui-bzi-menu);\n --eui-zi-tooltip: var(--eui-bzi-tooltip);\n --eui-zi-max: var(--eui-bzi-max);\n --eui-zi-cdk-overlay-container: var(--eui-bzi-cdk-overlay-container);\n --eui-zi-block-document: var(--eui-bzi-block-document);\n --eui-zi-growl-message: var(--eui-bzi-growl-message);\n}\n\n:root {\n --eui-base-line-height: 1.5;\n --eui-base-scale-factor: 1;\n --eui-base-disabled-opacity: 0.5;\n --eui-base-border-state-width: var(--eui-s-xs);\n --eui-base-border: 1px solid var(--eui-color-grey-lighter);\n --eui-base-border-light: 1px solid var(--eui-color-grey-light);\n --eui-base-border-lighter: 1px solid var(--eui-color-grey-lighter);\n --eui-base-border-lightest: 1px solid var(--eui-color-grey-lightest);\n --eui-base-animation-linear-out-slow-in-timing-function: cubic-bezier(0, 0, 0.2, 1);\n --eui-base-animation-fast-out-slow-in-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --eui-base-animation-fast-out-linear-in-timing-function: cubic-bezier(0.4, 0, 1, 1);\n --eui-base-animation-ease-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);\n --eui-base-animation-ease-in-out-timing-function: ease-in-out;\n --eui-base-animation-duration-fast: 0.25s;\n --eui-base-animation-duration-medium: 0.5s;\n --eui-base-animation-duration-slow: 1s;\n --eui-base-animation-duration-base: 500ms;\n --eui-base-animation-duration: var(--eui-base-animation-duration-base);\n --eui-base-animation-transition-base: all 0.2s var(--eui-base-animation-linear-out-slow-in-timing-function);\n --eui-base-animation-transition-ease: all 0.2s var(--eui-base-animation-ease-timing-function);\n --eui-base-animation-transition-ease-in-out: all 0.2s var(--eui-base-animation-ease-in-out-timing-function);\n --eui-base-animation-transition-ease-in-out-1s: all 1s var(--eui-base-animation-ease-in-out-timing-function);\n --eui-base-animation-delay: 0s;\n --eui-base-animation-direction: normal;\n --eui-base-animation-fill-mode: forwards;\n --eui-base-animation-background-color: var(--eui-c-primary-lighter);\n}\n\n:root {\n --eui-internal-icon-checkmark-path: url(\"@eui/styles/dist/assets/icons/eui-internals/checkmark.svg\");\n --eui-internal-icon-remove-path: url(\"@eui/styles/dist/assets/icons/eui-internals/remove.svg\");\n --eui-internal-icon-ellipse-path: url(\"@eui/styles/dist/assets/icons/eui-internals/ellipse.svg\");\n --eui-internal-icon-external-path: url(\"@eui/styles/dist/assets/icons/eui-internals/external.svg\");\n --eui-internal-icon-chevron-down-path: url(\"@eui/styles/dist/assets/icons/eui-internals/chevron-down.svg\");\n}\n\n:root {\n --eui-app-header-height-default: 0px;\n --eui-app-header-height: 0px;\n --eui-app-header-height-active: 90px;\n --eui-app-header-height-shrink: 0px;\n --eui-app-breadcrumb-height-default: 0px;\n --eui-app-breadcrumb-height: 0px;\n --eui-app-breadcrumb-height-active: 20px;\n --eui-app-top-message-height-default: 0px;\n --eui-app-top-message-height: 0px;\n --eui-app-top-message-height-active: 42px;\n --eui-app-toolbar-height-default: 0px;\n --eui-app-toolbar-height: 0px;\n --eui-app-toolbar-height-active: 55px;\n --eui-app-sidebar-width-default: 0px;\n --eui-app-sidebar-width: 0px;\n --eui-app-sidebar-width-active: 300px;\n --eui-app-sidebar-width-close-default: 0px;\n --eui-app-sidebar-width-close: 0px;\n --eui-app-sidebar-width-close-active: 64px;\n --eui-app-sidebar-header-height: 0px;\n --eui-app-sidebar-header-height-default: 0px;\n --eui-app-sidebar-header-height-active: 48px;\n --eui-app-sidebar-header-user-profile: 64px;\n --eui-app-sidebar-footer-height: 0px;\n --eui-app-sidebar-footer-height-default: 0px;\n --eui-app-sidebar-footer-height-active: 24px;\n --eui-page-header-with-subtitle-height: 4rem;\n --eui-page-header-without-subtitle-height: 2rem;\n --eui-page-column--size-s: 50px;\n --eui-page-column--size-m: 150px;\n --eui-page-column--size-l: 200px;\n --eui-page-column--size-xl: 250px;\n --eui-page-column--size-xxl: 300px;\n --eui-page-column--size-xxxl: 350px;\n --eui-page-column-footer-height: 3.5rem;\n}\n\n.xs, .sm {\n --eui-app-header-height: 0px;\n}\n\n.eui-icon-svg {\n fill: currentColor;\n margin: 0;\n transform: scaleX(1) scaleY(1) rotateZ(0deg);\n transition: transform 300ms ease-in-out;\n display: inline-flex;\n align-items: center;\n}\n\n.row {\n --bs-gutter-x: 1.5rem;\n --bs-gutter-y: 0;\n display: flex;\n flex-wrap: wrap;\n margin-top: calc(-1 * var(--bs-gutter-y));\n margin-right: calc(-0.5 * var(--bs-gutter-x));\n margin-left: calc(-0.5 * var(--bs-gutter-x));\n}\n.row > * {\n box-sizing: border-box;\n flex-shrink: 0;\n width: 100%;\n max-width: 100%;\n padding-right: calc(var(--bs-gutter-x) * 0.5);\n padding-left: calc(var(--bs-gutter-x) * 0.5);\n margin-top: var(--bs-gutter-y);\n}\n\n.col {\n flex: 1 0 0%;\n}\n\n.row-cols-auto > * {\n flex: 0 0 auto;\n width: auto;\n}\n\n.row-cols-1 > * {\n flex: 0 0 auto;\n width: 100%;\n}\n\n.row-cols-2 > * {\n flex: 0 0 auto;\n width: 50%;\n}\n\n.row-cols-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n}\n\n.row-cols-4 > * {\n flex: 0 0 auto;\n width: 25%;\n}\n\n.row-cols-5 > * {\n flex: 0 0 auto;\n width: 20%;\n}\n\n.row-cols-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n}\n\n.col-auto {\n flex: 0 0 auto;\n width: auto;\n}\n\n.col-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n}\n\n.col-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n}\n\n.col-3 {\n flex: 0 0 auto;\n width: 25%;\n}\n\n.col-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n}\n\n.col-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n}\n\n.col-6 {\n flex: 0 0 auto;\n width: 50%;\n}\n\n.col-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n}\n\n.col-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n}\n\n.col-9 {\n flex: 0 0 auto;\n width: 75%;\n}\n\n.col-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n}\n\n.col-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n}\n\n.col-12 {\n flex: 0 0 auto;\n width: 100%;\n}\n\n.offset-1 {\n margin-left: 8.33333333%;\n}\n\n.offset-2 {\n margin-left: 16.66666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.33333333%;\n}\n\n.offset-5 {\n margin-left: 41.66666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.33333333%;\n}\n\n.offset-8 {\n margin-left: 66.66666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.33333333%;\n}\n\n.offset-11 {\n margin-left: 91.66666667%;\n}\n\n.g-0,\n.gx-0 {\n --bs-gutter-x: 0;\n}\n\n.g-0,\n.gy-0 {\n --bs-gutter-y: 0;\n}\n\n.g-1,\n.gx-1 {\n --bs-gutter-x: 0.25rem;\n}\n\n.g-1,\n.gy-1 {\n --bs-gutter-y: 0.25rem;\n}\n\n.g-2,\n.gx-2 {\n --bs-gutter-x: 0.5rem;\n}\n\n.g-2,\n.gy-2 {\n --bs-gutter-y: 0.5rem;\n}\n\n.g-3,\n.gx-3 {\n --bs-gutter-x: 1rem;\n}\n\n.g-3,\n.gy-3 {\n --bs-gutter-y: 1rem;\n}\n\n.g-4,\n.gx-4 {\n --bs-gutter-x: 1.5rem;\n}\n\n.g-4,\n.gy-4 {\n --bs-gutter-y: 1.5rem;\n}\n\n.g-5,\n.gx-5 {\n --bs-gutter-x: 3rem;\n}\n\n.g-5,\n.gy-5 {\n --bs-gutter-y: 3rem;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n flex: 1 0 0%;\n }\n .row-cols-sm-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-sm-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-sm-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-sm-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-sm-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-sm-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-sm-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-sm-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-sm-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-sm-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-sm-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-sm-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-sm-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-sm-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-sm-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-sm-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-sm-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-sm-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-sm-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-sm-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.33333333%;\n }\n .offset-sm-2 {\n margin-left: 16.66666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.33333333%;\n }\n .offset-sm-5 {\n margin-left: 41.66666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.33333333%;\n }\n .offset-sm-8 {\n margin-left: 66.66666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.33333333%;\n }\n .offset-sm-11 {\n margin-left: 91.66666667%;\n }\n .g-sm-0,\n .gx-sm-0 {\n --bs-gutter-x: 0;\n }\n .g-sm-0,\n .gy-sm-0 {\n --bs-gutter-y: 0;\n }\n .g-sm-1,\n .gx-sm-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-sm-1,\n .gy-sm-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-sm-2,\n .gx-sm-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-sm-2,\n .gy-sm-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-sm-3,\n .gx-sm-3 {\n --bs-gutter-x: 1rem;\n }\n .g-sm-3,\n .gy-sm-3 {\n --bs-gutter-y: 1rem;\n }\n .g-sm-4,\n .gx-sm-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-sm-4,\n .gy-sm-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-sm-5,\n .gx-sm-5 {\n --bs-gutter-x: 3rem;\n }\n .g-sm-5,\n .gy-sm-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 768px) {\n .col-md {\n flex: 1 0 0%;\n }\n .row-cols-md-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-md-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-md-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-md-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-md-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-md-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-md-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-md-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-md-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-md-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-md-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-md-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-md-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-md-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-md-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-md-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-md-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-md-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-md-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-md-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.33333333%;\n }\n .offset-md-2 {\n margin-left: 16.66666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.33333333%;\n }\n .offset-md-5 {\n margin-left: 41.66666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.33333333%;\n }\n .offset-md-8 {\n margin-left: 66.66666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.33333333%;\n }\n .offset-md-11 {\n margin-left: 91.66666667%;\n }\n .g-md-0,\n .gx-md-0 {\n --bs-gutter-x: 0;\n }\n .g-md-0,\n .gy-md-0 {\n --bs-gutter-y: 0;\n }\n .g-md-1,\n .gx-md-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-md-1,\n .gy-md-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-md-2,\n .gx-md-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-md-2,\n .gy-md-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-md-3,\n .gx-md-3 {\n --bs-gutter-x: 1rem;\n }\n .g-md-3,\n .gy-md-3 {\n --bs-gutter-y: 1rem;\n }\n .g-md-4,\n .gx-md-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-md-4,\n .gy-md-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-md-5,\n .gx-md-5 {\n --bs-gutter-x: 3rem;\n }\n .g-md-5,\n .gy-md-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 992px) {\n .col-lg {\n flex: 1 0 0%;\n }\n .row-cols-lg-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-lg-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-lg-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-lg-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-lg-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-lg-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-lg-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-lg-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-lg-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-lg-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-lg-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-lg-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-lg-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-lg-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-lg-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-lg-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-lg-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-lg-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-lg-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-lg-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.33333333%;\n }\n .offset-lg-2 {\n margin-left: 16.66666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.33333333%;\n }\n .offset-lg-5 {\n margin-left: 41.66666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.33333333%;\n }\n .offset-lg-8 {\n margin-left: 66.66666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.33333333%;\n }\n .offset-lg-11 {\n margin-left: 91.66666667%;\n }\n .g-lg-0,\n .gx-lg-0 {\n --bs-gutter-x: 0;\n }\n .g-lg-0,\n .gy-lg-0 {\n --bs-gutter-y: 0;\n }\n .g-lg-1,\n .gx-lg-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-lg-1,\n .gy-lg-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-lg-2,\n .gx-lg-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-lg-2,\n .gy-lg-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-lg-3,\n .gx-lg-3 {\n --bs-gutter-x: 1rem;\n }\n .g-lg-3,\n .gy-lg-3 {\n --bs-gutter-y: 1rem;\n }\n .g-lg-4,\n .gx-lg-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-lg-4,\n .gy-lg-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-lg-5,\n .gx-lg-5 {\n --bs-gutter-x: 3rem;\n }\n .g-lg-5,\n .gy-lg-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1200px) {\n .col-xl {\n flex: 1 0 0%;\n }\n .row-cols-xl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xl-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xl-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-xl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xl-11 {\n margin-left: 91.66666667%;\n }\n .g-xl-0,\n .gx-xl-0 {\n --bs-gutter-x: 0;\n }\n .g-xl-0,\n .gy-xl-0 {\n --bs-gutter-y: 0;\n }\n .g-xl-1,\n .gx-xl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xl-1,\n .gy-xl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xl-2,\n .gx-xl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xl-2,\n .gy-xl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xl-3,\n .gx-xl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xl-3,\n .gy-xl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xl-4,\n .gx-xl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xl-4,\n .gy-xl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xl-5,\n .gx-xl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xl-5,\n .gy-xl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1400px) {\n .col-xxl {\n flex: 1 0 0%;\n }\n .row-cols-xxl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xxl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xxl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xxl-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xxl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xxl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xxl-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xxl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-xxl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xxl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xxl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xxl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xxl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xxl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xxl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xxl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xxl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xxl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xxl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xxl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xxl-0 {\n margin-left: 0;\n }\n .offset-xxl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xxl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xxl-3 {\n margin-left: 25%;\n }\n .offset-xxl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xxl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xxl-6 {\n margin-left: 50%;\n }\n .offset-xxl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xxl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xxl-9 {\n margin-left: 75%;\n }\n .offset-xxl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xxl-11 {\n margin-left: 91.66666667%;\n }\n .g-xxl-0,\n .gx-xxl-0 {\n --bs-gutter-x: 0;\n }\n .g-xxl-0,\n .gy-xxl-0 {\n --bs-gutter-y: 0;\n }\n .g-xxl-1,\n .gx-xxl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xxl-1,\n .gy-xxl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xxl-2,\n .gx-xxl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xxl-2,\n .gy-xxl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xxl-3,\n .gx-xxl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xxl-3,\n .gy-xxl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xxl-4,\n .gx-xxl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xxl-4,\n .gy-xxl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xxl-5,\n .gx-xxl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xxl-5,\n .gy-xxl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1900px) {\n .col-xxxl {\n flex: 1 0 0%;\n }\n .row-cols-xxxl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xxxl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xxxl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xxxl-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xxxl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xxxl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xxxl-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xxxl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-xxxl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xxxl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xxxl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xxxl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xxxl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xxxl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xxxl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xxxl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xxxl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xxxl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xxxl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xxxl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xxxl-0 {\n margin-left: 0;\n }\n .offset-xxxl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xxxl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xxxl-3 {\n margin-left: 25%;\n }\n .offset-xxxl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xxxl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xxxl-6 {\n margin-left: 50%;\n }\n .offset-xxxl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xxxl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xxxl-9 {\n margin-left: 75%;\n }\n .offset-xxxl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xxxl-11 {\n margin-left: 91.66666667%;\n }\n .g-xxxl-0,\n .gx-xxxl-0 {\n --bs-gutter-x: 0;\n }\n .g-xxxl-0,\n .gy-xxxl-0 {\n --bs-gutter-y: 0;\n }\n .g-xxxl-1,\n .gx-xxxl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xxxl-1,\n .gy-xxxl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xxxl-2,\n .gx-xxxl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xxxl-2,\n .gy-xxxl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xxxl-3,\n .gx-xxxl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xxxl-3,\n .gy-xxxl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xxxl-4,\n .gx-xxxl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xxxl-4,\n .gy-xxxl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xxxl-5,\n .gx-xxxl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xxxl-5,\n .gy-xxxl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n.mat-ripple {\n overflow: hidden;\n position: relative;\n}\n.mat-ripple:not(:empty) {\n transform: translateZ(0);\n}\n\n.mat-ripple.mat-ripple-unbounded {\n overflow: visible;\n}\n\n.mat-ripple-element {\n position: absolute;\n border-radius: 50%;\n pointer-events: none;\n transition: opacity, transform 0ms cubic-bezier(0, 0, 0.2, 1);\n transform: scale3d(0, 0, 0);\n background-color: var(--mat-ripple-color, rgba(0, 0, 0, 0.1));\n}\n.cdk-high-contrast-active .mat-ripple-element {\n display: none;\n}\n\n.cdk-visually-hidden {\n border: 0;\n clip: rect(0 0 0 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n width: 1px;\n white-space: nowrap;\n outline: 0;\n -webkit-appearance: none;\n -moz-appearance: none;\n left: 0;\n}\n[dir=rtl] .cdk-visually-hidden {\n left: auto;\n right: 0;\n}\n\n.cdk-overlay-container, .cdk-global-overlay-wrapper {\n pointer-events: none;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n}\n\n.cdk-overlay-container {\n position: fixed;\n z-index: 1000;\n}\n.cdk-overlay-container:empty {\n display: none;\n}\n\n.cdk-global-overlay-wrapper {\n display: flex;\n position: absolute;\n z-index: 1000;\n}\n\n.cdk-overlay-pane {\n position: absolute;\n pointer-events: auto;\n box-sizing: border-box;\n z-index: 1000;\n display: flex;\n max-width: 100%;\n max-height: 100%;\n}\n\n.cdk-overlay-backdrop {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 1000;\n pointer-events: auto;\n -webkit-tap-highlight-color: transparent;\n transition: opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1);\n opacity: 0;\n}\n.cdk-overlay-backdrop.cdk-overlay-backdrop-showing {\n opacity: 1;\n}\n.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing {\n opacity: 0.6;\n}\n\n.cdk-overlay-dark-backdrop {\n background: rgba(0, 0, 0, 0.32);\n}\n\n.cdk-overlay-transparent-backdrop {\n transition: visibility 1ms linear, opacity 1ms linear;\n visibility: hidden;\n opacity: 1;\n}\n.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing {\n opacity: 0;\n visibility: visible;\n}\n\n.cdk-overlay-backdrop-noop-animation {\n transition: none;\n}\n\n.cdk-overlay-connected-position-bounding-box {\n position: absolute;\n z-index: 1000;\n display: flex;\n flex-direction: column;\n min-width: 1px;\n min-height: 1px;\n}\n\n.cdk-global-scrollblock {\n position: fixed;\n width: 100%;\n overflow-y: scroll;\n}\n\ntextarea.cdk-textarea-autosize {\n resize: none;\n}\n\ntextarea.cdk-textarea-autosize-measuring {\n padding: 2px 0 !important;\n box-sizing: content-box !important;\n height: auto !important;\n overflow: hidden !important;\n}\n\ntextarea.cdk-textarea-autosize-measuring-firefox {\n padding: 2px 0 !important;\n box-sizing: content-box !important;\n height: 0 !important;\n}\n\n@keyframes cdk-text-field-autofill-start { /*!*/ }\n@keyframes cdk-text-field-autofill-end { /*!*/ }\n.cdk-text-field-autofill-monitored:-webkit-autofill {\n animation: cdk-text-field-autofill-start 0s 1ms;\n}\n\n.cdk-text-field-autofill-monitored:not(:-webkit-autofill) {\n animation: cdk-text-field-autofill-end 0s 1ms;\n}\n\n.mat-focus-indicator {\n position: relative;\n}\n.mat-focus-indicator::before {\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n position: absolute;\n box-sizing: border-box;\n pointer-events: none;\n display: var(--mat-focus-indicator-display, none);\n border: var(--mat-focus-indicator-border-width, 3px) var(--mat-focus-indicator-border-style, solid) var(--mat-focus-indicator-border-color, transparent);\n border-radius: var(--mat-focus-indicator-border-radius, 4px);\n}\n.mat-focus-indicator:focus::before {\n content: \"\";\n}\n\n.cdk-high-contrast-active {\n --mat-focus-indicator-display: block;\n}\n\n.mat-mdc-focus-indicator {\n position: relative;\n}\n.mat-mdc-focus-indicator::before {\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n position: absolute;\n box-sizing: border-box;\n pointer-events: none;\n display: var(--mat-mdc-focus-indicator-display, none);\n border: var(--mat-mdc-focus-indicator-border-width, 3px) var(--mat-mdc-focus-indicator-border-style, solid) var(--mat-mdc-focus-indicator-border-color, transparent);\n border-radius: var(--mat-mdc-focus-indicator-border-radius, 4px);\n}\n.mat-mdc-focus-indicator:focus::before {\n content: \"\";\n}\n\n.cdk-high-contrast-active {\n --mat-mdc-focus-indicator-display: block;\n}\n\n.mat-app-background {\n background-color: var(--mat-app-background-color, transparent);\n color: var(--mat-app-text-color, inherit);\n}\n\nhtml {\n --mat-datepicker-calendar-container-shape: 4px;\n --mat-datepicker-calendar-container-touch-shape: 4px;\n --mat-datepicker-calendar-container-elevation-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);\n --mat-datepicker-calendar-container-touch-elevation-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);\n}\n\nhtml {\n --mat-datepicker-calendar-date-selected-state-text-color: white;\n --mat-datepicker-calendar-date-selected-state-background-color: #004494;\n --mat-datepicker-calendar-date-selected-disabled-state-background-color: rgba(0, 68, 148, 0.4);\n --mat-datepicker-calendar-date-today-selected-state-outline-color: white;\n --mat-datepicker-calendar-date-focus-state-background-color: rgba(0, 68, 148, 0.3);\n --mat-datepicker-calendar-date-hover-state-background-color: rgba(0, 68, 148, 0.3);\n --mat-datepicker-toggle-active-state-icon-color: #004494;\n --mat-datepicker-calendar-date-in-range-state-background-color: rgba(0, 68, 148, 0.2);\n --mat-datepicker-calendar-date-in-comparison-range-state-background-color: rgba(249, 171, 0, 0.2);\n --mat-datepicker-calendar-date-in-overlap-range-state-background-color: #a8dab5;\n --mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color: #46a35e;\n --mat-datepicker-toggle-icon-color: rgba(0, 0, 0, 0.54);\n --mat-datepicker-calendar-body-label-text-color: rgba(0, 0, 0, 0.54);\n --mat-datepicker-calendar-period-button-text-color: black;\n --mat-datepicker-calendar-period-button-icon-color: rgba(0, 0, 0, 0.54);\n --mat-datepicker-calendar-navigation-button-icon-color: rgba(0, 0, 0, 0.54);\n --mat-datepicker-calendar-header-divider-color: rgba(0, 0, 0, 0.12);\n --mat-datepicker-calendar-header-text-color: rgba(0, 0, 0, 0.54);\n --mat-datepicker-calendar-date-today-outline-color: rgba(0, 0, 0, 0.38);\n --mat-datepicker-calendar-date-today-disabled-state-outline-color: rgba(0, 0, 0, 0.18);\n --mat-datepicker-calendar-date-text-color: rgba(0, 0, 0, 0.87);\n --mat-datepicker-calendar-date-outline-color: transparent;\n --mat-datepicker-calendar-date-disabled-state-text-color: rgba(0, 0, 0, 0.38);\n --mat-datepicker-calendar-date-preview-state-outline-color: rgba(0, 0, 0, 0.24);\n --mat-datepicker-range-input-separator-color: rgba(0, 0, 0, 0.87);\n --mat-datepicker-range-input-disabled-state-separator-color: rgba(0, 0, 0, 0.38);\n --mat-datepicker-range-input-disabled-state-text-color: rgba(0, 0, 0, 0.38);\n --mat-datepicker-calendar-container-background-color: white;\n --mat-datepicker-calendar-container-text-color: rgba(0, 0, 0, 0.87);\n}\n\n.mat-datepicker-content.mat-accent {\n --mat-datepicker-calendar-date-selected-state-text-color: #999999;\n --mat-datepicker-calendar-date-selected-state-background-color: #fffcf4;\n --mat-datepicker-calendar-date-selected-disabled-state-background-color: rgba(255, 252, 244, 0.4);\n --mat-datepicker-calendar-date-today-selected-state-outline-color: #999999;\n --mat-datepicker-calendar-date-focus-state-background-color: rgba(255, 252, 244, 0.3);\n --mat-datepicker-calendar-date-hover-state-background-color: rgba(255, 252, 244, 0.3);\n --mat-datepicker-calendar-date-in-range-state-background-color: rgba(255, 252, 244, 0.2);\n --mat-datepicker-calendar-date-in-comparison-range-state-background-color: rgba(249, 171, 0, 0.2);\n --mat-datepicker-calendar-date-in-overlap-range-state-background-color: #a8dab5;\n --mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color: #46a35e;\n}\n.mat-datepicker-content.mat-warn {\n --mat-datepicker-calendar-date-selected-state-text-color: white;\n --mat-datepicker-calendar-date-selected-state-background-color: #f44336;\n --mat-datepicker-calendar-date-selected-disabled-state-background-color: rgba(244, 67, 54, 0.4);\n --mat-datepicker-calendar-date-today-selected-state-outline-color: white;\n --mat-datepicker-calendar-date-focus-state-background-color: rgba(244, 67, 54, 0.3);\n --mat-datepicker-calendar-date-hover-state-background-color: rgba(244, 67, 54, 0.3);\n --mat-datepicker-calendar-date-in-range-state-background-color: rgba(244, 67, 54, 0.2);\n --mat-datepicker-calendar-date-in-comparison-range-state-background-color: rgba(249, 171, 0, 0.2);\n --mat-datepicker-calendar-date-in-overlap-range-state-background-color: #a8dab5;\n --mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color: #46a35e;\n}\n\n.mat-datepicker-toggle-active.mat-accent {\n --mat-datepicker-toggle-active-state-icon-color: #fffcf4;\n}\n.mat-datepicker-toggle-active.mat-warn {\n --mat-datepicker-toggle-active-state-icon-color: #f44336;\n}\n\n.mat-calendar-controls {\n --mat-icon-button-touch-target-display: none;\n}\n.mat-calendar-controls .mat-mdc-icon-button.mat-mdc-button-base {\n --mdc-icon-button-state-layer-size: 40px;\n width: var(--mdc-icon-button-state-layer-size);\n height: var(--mdc-icon-button-state-layer-size);\n padding: 8px;\n}\n\n.mat-calendar {\n font-size: small !important;\n font-family: var(--eui-f-family) !important;\n}\n.mat-calendar.mat-calendar-year .mat-calendar-period-button {\n display: none;\n}\n\n.cdk-drag-handle {\n cursor: move !important;\n}\n\n.cdk-drop-list {\n display: flex;\n min-width: 100%;\n}\n.cdk-drop-list:not(.cdk-drop-list-disabled) {\n min-height: var(--eui-s-xl);\n}\n\n.cdk-drop-list-dragging .cdk-drag {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n.cdk-drag-animating {\n transition: transform 300ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n.cdk-drag-preview {\n background-color: transparent;\n box-shadow: none;\n cursor: grab !important;\n display: table;\n margin: 0 !important;\n opacity: 1;\n position: relative;\n}\n\n.cdk-drag-dragging {\n opacity: 1;\n}\n\n.cdk-drag-placeholder {\n background-color: transparent;\n opacity: 0.35;\n}\n.cdk-drag-placeholder:hover {\n outline: 2px dashed var(--eui-c-neutral-lighter);\n outline-offset: 2px;\n}\n\n.cdk-global-scrollblock {\n position: fixed;\n overflow-y: visible;\n width: 100%;\n left: 0 !important;\n}\n.cdk-global-scrollblock::-webkit-scrollbar {\n display: inherit;\n height: 10px;\n width: 10px;\n background-color: var(--eui-c-neutral-bg-light);\n}\n.cdk-global-scrollblock::-webkit-scrollbar-thumb {\n background-color: var(--eui-c-neutral-lightest);\n border-radius: 5rem;\n}\n.cdk-global-scrollblock::-webkit-scrollbar-thumb:hover {\n background-color: var(--eui-c-neutral-lighter);\n}\n.cdk-global-scrollblock::-webkit-scrollbar-track {\n background-color: var(--eui-c-neutral-bg-light);\n border-radius: 0;\n}\n\n@media screen and (max-width: 767px) {\n .cdk-global-scrollblock {\n height: 100%;\n overflow: auto;\n position: fixed;\n width: 100%;\n }\n .cdk-global-scrollblock::-webkit-scrollbar {\n display: inherit;\n height: 10px;\n width: 10px;\n background-color: var(--eui-c-neutral-bg-light);\n }\n .cdk-global-scrollblock::-webkit-scrollbar-thumb {\n background-color: var(--eui-c-neutral-lightest);\n border-radius: 5rem;\n }\n .cdk-global-scrollblock::-webkit-scrollbar-thumb:hover {\n background-color: var(--eui-c-neutral-lighter);\n }\n .cdk-global-scrollblock::-webkit-scrollbar-track {\n background-color: var(--eui-c-neutral-bg-light);\n border-radius: 0;\n }\n}\n.cdk-overlay-container {\n z-index: var(--eui-zi-cdk-overlay-container);\n}\n.cdk-overlay-container .mat-menu-panel {\n max-width: inherit;\n min-height: var(--eui-s-l);\n}\n.cdk-overlay-container .mat-menu-panel::-webkit-scrollbar {\n display: inherit;\n height: 10px;\n width: 10px;\n background-color: var(--eui-c-neutral-bg-light);\n}\n.cdk-overlay-container .mat-menu-panel::-webkit-scrollbar-thumb {\n background-color: var(--eui-c-neutral-lightest);\n border-radius: 5rem;\n}\n.cdk-overlay-container .mat-menu-panel::-webkit-scrollbar-thumb:hover {\n background-color: var(--eui-c-neutral-lighter);\n}\n.cdk-overlay-container .mat-menu-panel::-webkit-scrollbar-track {\n background-color: var(--eui-c-neutral-bg-light);\n border-radius: 0;\n}\n.cdk-overlay-container .mat-autocomplete-panel::-webkit-scrollbar {\n display: inherit;\n height: 10px;\n width: 10px;\n background-color: var(--eui-c-neutral-bg-light);\n}\n.cdk-overlay-container .mat-autocomplete-panel::-webkit-scrollbar-thumb {\n background-color: var(--eui-c-neutral-lightest);\n border-radius: 5rem;\n}\n.cdk-overlay-container .mat-autocomplete-panel::-webkit-scrollbar-thumb:hover {\n background-color: var(--eui-c-neutral-lighter);\n}\n.cdk-overlay-container .mat-autocomplete-panel::-webkit-scrollbar-track {\n background-color: var(--eui-c-neutral-bg-light);\n border-radius: 0;\n}\n\n@media screen and (max-width: 767px) {\n .cdk-overlay-container {\n height: 100vh;\n height: calc(var(--eui-app-vh, 1vh) * 100);\n left: 0;\n position: fixed;\n top: 0;\n width: 100vw;\n }\n}\n.cdk-overlay-pane {\n background-color: var(--eui-c-white);\n z-index: var(--eui-zi-cdk-overlay-pane);\n}\n\n.cdk-virtual-scrollable::-webkit-scrollbar {\n display: inherit;\n height: 10px;\n width: 10px;\n background-color: var(--eui-c-neutral-bg-light);\n}\n.cdk-virtual-scrollable::-webkit-scrollbar-thumb {\n background-color: var(--eui-c-neutral-lightest);\n border-radius: 5rem;\n}\n.cdk-virtual-scrollable::-webkit-scrollbar-thumb:hover {\n background-color: var(--eui-c-neutral-lighter);\n}\n.cdk-virtual-scrollable::-webkit-scrollbar-track {\n background-color: var(--eui-c-neutral-bg-light);\n border-radius: 0;\n}\n\n:focus,\n:focus-visible {\n outline: none;\n}\n\nbutton,\nhtml [type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: none;\n appearance: none;\n}\n\nhtml {\n display: block;\n height: 100%;\n font-size: var(--eui-f-size-base);\n line-height: var(--eui-base-line-height);\n}\n\nbody {\n background-color: var(--eui-c-bg);\n color: var(--eui-c-text);\n font-family: var(--eui-f-family);\n font-feature-settings: \"liga\";\n font-size: var(--eui-f-size-base);\n -moz-font-smoothing: antialiased;\n -webkit-font-smoothing: antialiased;\n font-style: normal;\n font-weight: normal;\n height: 100%;\n line-height: var(--eui-base-line-height);\n margin: 0;\n text-align: start;\n text-rendering: optimizeLegibility;\n}\n\n@-ms-viewport {\n width: device-width;\n}\n/* ==========================================================================\n #BOX-SIZING\n ========================================================================== */\n/**\n * More sensible default box-sizing:\n * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice\n */\nhtml {\n box-sizing: border-box;\n}\n\n*::before, *::after, * {\n box-sizing: inherit;\n}\n\na,\narea,\nbutton,\n[role=button],\ninput,\nlabel,\nselect,\nsummary,\ntextarea {\n touch-action: manipulation;\n}\n\n[hidden] {\n display: none !important;\n}\n\np,\nlabel,\nblockquote,\nabbr,\nmark,\ndel {\n font-size: var(--eui-f-size-base);\n}\n\nb, strong {\n font-weight: bold !important;\n}\n\ntable.eui-table-default {\n background-color: transparent;\n border-collapse: collapse;\n border-spacing: 0;\n color: var(--eui-c-text);\n max-width: 100%;\n overflow: auto;\n position: relative;\n}\ntable.eui-table-default th,\ntable.eui-table-default td {\n border: 1px solid var(--eui-c-neutral-bg-light);\n}\ntable.eui-table-default th:first-child,\ntable.eui-table-default td:first-child {\n border-left: 0;\n}\ntable.eui-table-default th:last-child,\ntable.eui-table-default td:last-child {\n border-right: 0;\n}\ntable.eui-table-default thead > tr > th,\ntable.eui-table-default tbody > tr > td,\ntable.eui-table-default tfoot > tr > td {\n vertical-align: top;\n}\ntable.eui-table-default tr > th,\ntable.eui-table-default tr > td {\n padding: var(--eui-s-s);\n text-align: left;\n}\ntable.eui-table-default thead th {\n color: var(--eui-c-text);\n font-size: var(--eui-f-size-base);\n padding: var(--eui-s-m) var(--eui-s-s);\n vertical-align: middle;\n font: var(--eui-f-m-bold);\n}\ntable.eui-table-default thead tr {\n background: var(--eui-c-neutral-bg);\n border-top: 0;\n}\ntable.eui-table-default tbody {\n -webkit-overflow-scrolling: touch;\n}\ntable.eui-table-default tbody tr:nth-of-type(odd) {\n background-color: var(--eui-c-bg);\n}\ntable.eui-table-default tbody tr:nth-of-type(odd):hover {\n background-color: var(--eui-c-primary-bg);\n}\ntable.eui-table-default tbody tr:nth-of-type(odd) td:hover {\n background-color: var(--eui-c-primary-lightest);\n}\ntable.eui-table-default tbody tr:nth-of-type(even) {\n background-color: var(--eui-c-neutral-bg-light);\n}\ntable.eui-table-default tbody tr:nth-of-type(even):hover {\n background-color: var(--eui-c-primary-bg);\n}\ntable.eui-table-default tbody tr:nth-of-type(even) td:hover {\n background-color: var(--eui-c-primary-lightest);\n}\ntable.eui-table-default tfoot tr {\n background: var(--eui-c-neutral-bg);\n}\ntable.eui-table-default tr {\n border-bottom: 1px solid var(--eui-c-bg0);\n display: table-row;\n}\ntable.eui-table-default--compact thead th {\n padding: var(--eui-s-xs) var(--eui-s-s);\n}\ntable.eui-table-default--compact tr > td {\n padding: var(--eui-s-2xs) var(--eui-s-s);\n}\ntable.eui-table-default--responsive {\n display: table;\n width: 100%;\n}\ntable.eui-table-default--responsive--bordered {\n border: 0;\n}\ntable.eui-table-default--nowrap {\n white-space: nowrap;\n}\ntable.eui-table-default--nowrap thead > tr > th,\ntable.eui-table-default--nowrap tbody > tr > td,\ntable.eui-table-default--nowrap tfoot > tr > td {\n white-space: nowrap;\n}\ntable.eui-table-default--centered {\n display: table;\n margin: 0 auto;\n width: auto;\n}\ntable.eui-table-default--align-middle thead > tr > th,\ntable.eui-table-default--align-middle tbody > tr > td,\ntable.eui-table-default--align-middle tfoot > tr > td {\n vertical-align: middle;\n}\n\n.eui-clearable-wrapper {\n align-items: center;\n display: flex;\n position: relative;\n width: 100%;\n}\n.eui-clearable-wrapper .eui-input-text--clearable-icon {\n bottom: calc(var(--eui-s-s) - 2px);\n cursor: pointer;\n position: absolute;\n right: var(--eui-s-s);\n user-select: none;\n visibility: visible;\n z-index: var(--eui-zi-clearable-icon);\n}\n.eui-clearable-wrapper .eui-input-text--clearable-icon:focus:not([readonly]) {\n outline: 2px solid var(--eui-c-focus) !important;\n outline-offset: -2px !important;\n transition: none;\n}\n.eui-clearable-wrapper .eui-input-text--clearable-icon:focus-visible:not([readonly]) {\n outline: 2px solid var(--eui-c-focus-visible) !important;\n outline-offset: -2px !important;\n transition: none;\n}\n.eui-clearable-wrapper .eui-input-text--clearable-icon [tabindex=\"0\"]:focus:not([readonly]) {\n outline: 2px solid var(--eui-c-focus-visible) !important;\n outline-offset: -2px !important;\n transition: none;\n}\n.eui-clearable-wrapper .eui-input-text--clearable-icon > svg {\n fill: var(--eui-c-neutral-lighter);\n}\n.eui-clearable-wrapper .eui-input-text--clearable-icon > svg:hover {\n fill: var(--eui-c-danger);\n}\n\n.eui-input-maxlength-wrapper {\n position: relative;\n width: 100%;\n}\n.eui-input-maxlength-wrapper .eui-input-maxlength {\n font: var(--eui-f-xs);\n background-color: var(--eui-c-neutral-bg);\n border: 1px solid var(--eui-c-neutral-lighter);\n border-radius: var(--eui-br-m);\n color: var(--eui-c-text);\n padding: 0 var(--eui-s-2xs);\n position: absolute;\n right: calc(-1 * var(--eui-s-xs));\n top: calc(-1 * var(--eui-s-xs));\n z-index: var(--eui-zi-input-maxlength);\n}\n.eui-input-maxlength-wrapper .eui-input-maxlength--invalid {\n background-color: var(--eui-c-warning);\n border-color: var(--eui-c-warning);\n color: var(--eui-c-white);\n}\n\n@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {\n img[src$=\".svg\"] {\n width: 100%;\n }\n}\n@media screen {\n img {\n background-repeat: no-repeat;\n background-size: 100%;\n -ms-interpolation-mode: bicubic;\n }\n}\n.cookie-consent-banner {\n display: block !important;\n min-width: 50% !important;\n position: absolute !important;\n right: 50% !important;\n top: var(--eui-s-m) !important;\n transform: translateX(50%) !important;\n z-index: var(--eui-zi-max) !important;\n box-shadow: var(--eui-sh-24) !important;\n background: var(--eui-c-primary) !important;\n color: var(eui-c-white) !important;\n}\n\n#loader-wrapper {\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n width: 100%;\n z-index: 1000;\n}\n#loader-wrapper #loader {\n -webkit-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */\n animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n animation: hourglass 5s linear infinite;\n border: 10px solid transparent;\n border-radius: 50%;\n border-top-color: var(--eui-c-warning);\n display: block;\n height: 200px;\n left: 50%;\n margin: -100px 0 0 -100px;\n position: relative;\n top: 50%;\n width: 200px;\n}\n#loader-wrapper #loader::before {\n -webkit-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */\n animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n animation: hourglass 4s linear infinite;\n border: 10px solid transparent;\n border-radius: 50%;\n border-top-color: var(--eui-c-danger);\n bottom: 5px;\n content: \"\";\n left: 5px;\n position: absolute;\n right: 5px;\n top: 5px;\n}\n#loader-wrapper #loader::after {\n -webkit-animation: spin 1s linear infinite; /* Chrome, Opera 15+, Safari 5+ */\n animation: spin 1s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n animation: hourglass 3s linear infinite;\n border: 10px solid transparent;\n border-radius: 50%;\n border-top-color: var(--eui-c-primary);\n bottom: 20px;\n content: \"\";\n left: 20px;\n position: absolute;\n right: 20px;\n top: 20px;\n}\n\n/* stylelint-enable */\n@-webkit-keyframes spin {\n 0% {\n -webkit-transform: rotate(0deg);\n -ms-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n -ms-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n@keyframes spin {\n 0% {\n -webkit-transform: rotate(0deg);\n -ms-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n -ms-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n@-webkit-keyframes hourglass {\n 0% {\n transform: rotate(0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n 50% {\n transform: rotate(900deg);\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n 100% {\n transform: rotate(1800deg);\n }\n}\n@keyframes hourglass {\n 0% {\n transform: rotate(0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n 50% {\n transform: rotate(900deg);\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n 100% {\n transform: rotate(1800deg);\n }\n}\n\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9iYXNlLzAwLXJlc2V0L19tb2R1bGUuc2NzcyIsIi4uL2Jhc2UvMDMtdmFycy9jb2xvcnMvdGhlbWUtZGVmYXVsdC1iYXNlLnNjc3MiLCIuLi9iYXNlLzAzLXZhcnMvY29sb3JzL3RoZW1lLWRlZmF1bHQtY29udGV4dC5zY3NzIiwiLi4vYmFzZS8wMy12YXJzL3NwYWNpbmdzL3RoZW1lLWRlZmF1bHQtYmFzZS5zY3NzIiwiLi4vYmFzZS8wMy12YXJzL3NwYWNpbmdzL3RoZW1lLWRlZmF1bHQtY29udGV4dC5zY3NzIiwiLi4vYmFzZS8wMy12YXJzL3R5cG9ncmFwaHkvdGhlbWUtZGVmYXVsdC1iYXNlLnNjc3MiLCIuLi9iYXNlLzAzLXZhcnMvdHlwb2dyYXBoeS90aGVtZS1kZWZhdWx0LWNvbnRleHQuc2NzcyIsIi4uL2Jhc2UvMDMtdmFycy9ib3JkZXItcmFkaXVzL3RoZW1lLWRlZmF1bHQtYmFzZS5zY3NzIiwiLi4vYmFzZS8wMy12YXJzL2JvcmRlci1yYWRpdXMvdGhlbWUtZGVmYXVsdC1jb250ZXh0LnNjc3MiLCIuLi9iYXNlLzAzLXZhcnMvc2hhZG93cy90aGVtZS1kZWZhdWx0LWJhc2Uuc2NzcyIsIi4uL2Jhc2UvMDMtdmFycy9zaGFkb3dzL3RoZW1lLWRlZmF1bHQtY29udGV4dC5zY3NzIiwiLi4vYmFzZS8wMy12YXJzL190b2tlbnMudmFycy5zY3NzIiwiLi4vYmFzZS8wMy12YXJzL19vdGhlci52YXJzLnNjc3MiLCIuLi9iYXNlLzAzLXZhcnMvX2ludGVybmFsLWljb25zLnZhcnMuc2NzcyIsIjAyLXZhcnMvX2xheW91dC52YXJzLnNjc3MiLCIuLi9iYXNlLzA1LWFzc2V0cy9pY29ucy1zdmcvX2ljb25zLWdlbmVyaWNzLnNjc3MiLCIwNC12ZW5kb3JzL2xpYnMvYm9vdHN0cmFwL3Njc3MvX2dyaWQuc2NzcyIsIjA0LXZlbmRvcnMvbGlicy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIjA0LXZlbmRvcnMvbGlicy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZS9yaXBwbGUvX3JpcHBsZS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bhbmd1bGFyL2Nkay9hMTF5L19pbmRleC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bhbmd1bGFyL2Nkay9vdmVybGF5L19pbmRleC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bhbmd1bGFyL2Nkay90ZXh0LWZpZWxkL19pbmRleC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUvZm9jdXMtaW5kaWNhdG9ycy9fcHJpdmF0ZS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUvc3R5bGUvX2xheW91dC1jb21tb24uc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AYW5ndWxhci9tYXRlcmlhbC9jb3JlL19jb3JlLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsL3RoZW1lL19jc3Muc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AYW5ndWxhci9tYXRlcmlhbC9jb3JlL3N0eWxlL19zYXNzLXV0aWxzLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlci9fZGF0ZXBpY2tlci10aGVtZS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbi9faWNvbi1idXR0b24tdGhlbWUuc2NzcyIsIjA1LW1hdGVyaWFsL292ZXJyaWRlcy9fY2FsZW5kYXIuc2NzcyIsIjA1LW1hdGVyaWFsL292ZXJyaWRlcy9fY2RrLWRyYWcuc2NzcyIsIjA1LW1hdGVyaWFsL292ZXJyaWRlcy9fY2RrLWdsb2JhbC1zY3JvbGxibG9jay5zY3NzIiwiMDItYmFzZS9taXhpbnMvX2V1aS1zY3JvbGxiYXJzLnNjc3MiLCIuLi9iYXNlLzAxLWJhc2UvbWl4aW5zL19tZWRpYS5taXhpbnMuc2NzcyIsIjA1LW1hdGVyaWFsL292ZXJyaWRlcy9fY2RrLW92ZXJsYXktY29udGFpbmVyLnNjc3MiLCIwNS1tYXRlcmlhbC9vdmVycmlkZXMvX2Nkay1vdmVybGF5LWNvbnRhaW5lci5tcS5zY3NzIiwiMDUtbWF0ZXJpYWwvb3ZlcnJpZGVzL19jZGstb3ZlcmxheS1wYW5lLnNjc3MiLCIwNi1zaGFyZWQvX21vZHVsZS5zY3NzIiwiLi4vYmFzZS8wNC1lbGVtZW50cy9faHRtbC5zY3NzIiwiLi4vYmFzZS8wNC1lbGVtZW50cy9fYm9keS5zY3NzIiwiLi4vYmFzZS8wNC1lbGVtZW50cy9fc2hhcmVkLnNjc3MiLCIwNy1lbGVtZW50cy9ldWktdGFibGUtZGVmYXVsdC9fZXVpLXRhYmxlLWRlZmF1bHQuc2NzcyIsIjA3LWVsZW1lbnRzL2RpcmVjdGl2ZXMvX2V1aS1jbGVhcmFibGUtaW5wdXQuc2NzcyIsIi4uL2Jhc2UvMDEtYmFzZS9taXhpbnMvX2FjY2Vzc2liaWxpdHkubWl4aW5zLnNjc3MiLCIwNy1lbGVtZW50cy9kaXJlY3RpdmVzL19ldWktaW5wdXQtbWF4bGVuZ3RoLnNjc3MiLCIxMC1tZWRpYS9faWVpbWdmaXguc2NzcyIsIjExLWV4dHJhcy9fY29va2llLWNvbnNlbnQuc2NzcyIsIjExLWV4dHJhcy9fcHJlbG9hZGVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFFQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFLQztFQUNHO0VBQ0E7OztBQUdGO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7RUFDQTs7O0FBR0Y7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDRTtFQUNBOzs7QUFHRjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFO0VBQ0E7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7QUFBQTtFQUVFOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtFQUdFO0VBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFHRjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUtFO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUEsUUFDUTtFQUNOOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUEsU0FDUztFQUNQOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtFQUlFOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0VBSUU7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7RUFFRTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUU7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDRTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7RUFDQTs7O0FBR0Y7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUMzVko7RUFDSTtFQUNBO0VBQ0E7RUFLUTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTs7O0FDVFo7RUFDSTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQU9ZO0VBQ0E7RUFFQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBSkE7RUFDQTtFQUVBO0VBQ0E7RUFEQTtFQUNBO0VBSkE7RUFDQTtFQUVBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFKQTtFQUNBO0VBRUE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQUpBO0VBQ0E7RUFFQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQUpBO0VBQ0E7RUFFQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQUpBO0VBQ0E7RUFFQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQUpBO0VBQ0E7RUFFQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBOzs7QUN4QmhCO0VBRVE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBOzs7QUNGUjtFQUVRO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTs7O0FDRlI7RUFFUTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTs7O0FDTlI7RUFFSTtFQUdBO0VBR0E7RUFJSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFLQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUo7RUFDQTs7O0FDdEJKO0VBRVE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBOzs7QUNGUjtFQUVRO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTs7O0FDRlI7RUFFUTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7OztBQ0ZSO0VBRVE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBOzs7QUNGUjtFQUlRO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBR0E7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFLQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUdBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBOzs7QUNmUjtFQUNJO0VBQ0E7RUFDQTtFQUVBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7OztBQ2pDSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQ0xKO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FDL0NKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUNERjtFQ0FBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBOztBREpFO0VDU0Y7RUFJQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQStDSTtFQUNFOzs7QUFHRjtFQXBDSjtFQUNBOzs7QUFjQTtFQUNFO0VBQ0E7OztBQUZGO0VBQ0U7RUFDQTs7O0FBRkY7RUFDRTtFQUNBOzs7QUFGRjtFQUNFO0VBQ0E7OztBQUZGO0VBQ0U7RUFDQTs7O0FBRkY7RUFDRTtFQUNBOzs7QUErQkU7RUFoREo7RUFDQTs7O0FBcURRO0VBaEVOO0VBQ0E7OztBQStETTtFQWhFTjtFQUNBOzs7QUErRE07RUFoRU47RUFDQTs7O0FBK0RNO0VBaEVOO0VBQ0E7OztBQStETTtFQWhFTjtFQUNBOzs7QUErRE07RUFoRU47RUFDQTs7O0FBK0RNO0VBaEVOO0VBQ0E7OztBQStETTtFQWhFTjtFQUNBOzs7QUErRE07RUFoRU47RUFDQTs7O0FBK0RNO0VBaEVOO0VBQ0E7OztBQStETTtFQWhFTjtFQUNBOzs7QUErRE07RUFoRU47RUFDQTs7O0FBdUVRO0VBeERWOzs7QUF3RFU7RUF4RFY7OztBQXdEVTtFQXhEVjs7O0FBd0RVO0VBeERWOzs7QUF3RFU7RUF4RFY7OztBQXdEVTtFQXhEVjs7O0FBd0RVO0VBeERWOzs7QUF3RFU7RUF4RFY7OztBQXdEVTtFQXhEVjs7O0FBd0RVO0VBeERWOzs7QUF3RFU7RUF4RFY7OztBQW1FTTtBQUFBO0VBRUU7OztBQUdGO0FBQUE7RUFFRTs7O0FBUEY7QUFBQTtFQUVFOzs7QUFHRjtBQUFBO0VBRUU7OztBQVBGO0FBQUE7RUFFRTs7O0FBR0Y7QUFBQTtFQUVFOzs7QUFQRjtBQUFBO0VBRUU7OztBQUdGO0FBQUE7RUFFRTs7O0FBUEY7QUFBQTtFQUVFOzs7QUFHRjtBQUFBO0VBRUU7OztBQVBGO0FBQUE7RUFFRTs7O0FBR0Y7QUFBQTtFQUVFOzs7QUMxRE47RURVRTtJQUNFOztFQUdGO0lBcENKO0lBQ0E7O0VBY0E7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBK0JFO0lBaERKO0lBQ0E7O0VBcURRO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBdUVRO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBbUVNO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOzs7QUMxRE47RURVRTtJQUNFOztFQUdGO0lBcENKO0lBQ0E7O0VBY0E7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBK0JFO0lBaERKO0lBQ0E7O0VBcURRO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBdUVRO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBbUVNO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOzs7QUMxRE47RURVRTtJQUNFOztFQUdGO0lBcENKO0lBQ0E7O0VBY0E7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBK0JFO0lBaERKO0lBQ0E7O0VBcURRO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBdUVRO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBbUVNO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOzs7QUMxRE47RURVRTtJQUNFOztFQUdGO0lBcENKO0lBQ0E7O0VBY0E7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBK0JFO0lBaERKO0lBQ0E7O0VBcURRO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBdUVRO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBbUVNO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOzs7QUMxRE47RURVRTtJQUNFOztFQUdGO0lBcENKO0lBQ0E7O0VBY0E7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBK0JFO0lBaERKO0lBQ0E7O0VBcURRO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBdUVRO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBbUVNO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFB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b3VyY2VzQ29udGVudCI6WyIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbiBodG1sIHtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tZXVpLWJhc2UtbGluZS1oZWlnaHQpOyAvKiAxICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gIH1cblxuICAvKiBTZWN0aW9uc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAgICovXG5cbiAgbWFpbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvKipcbiAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICAgKi9cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuXG4gIC8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKipcbiAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gICAqL1xuXG4gIGhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICAgIGhlaWdodDogMDsgLyogMSAqL1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gIH1cblxuICAvKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gIH1cblxuICAvKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gICAqL1xuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLyoqXG4gICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAqL1xuXG4gIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgKi9cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAvKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gIH1cblxuICAvKipcbiAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICogYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKipcbiAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAgICovXG5cbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cblxuICAvKiBGb3Jtc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgKi9cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgICBsaW5lLWhlaWdodDogMTsgLyogMSAqLyAgIC8vIGVVSSBhZGFwYXRpb25zIGZvcmNlZCB0byBcIjFcIlxuICAgIG1hcmdpbjogMDsgLyogMiAqL1xuICB9XG5cbiAgLyoqXG4gICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgKi9cblxuICBidXR0b24sXG4gIGlucHV0IHsgLyogMSAqL1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAqL1xuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLyogMSAqL1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLyoqXG4gICAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAqL1xuXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgKi9cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvKipcbiAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgKi9cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG5cbiAgLyoqXG4gICAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICovXG5cbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG4gIGxlZ2VuZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gICAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwOyAvKiAzICovXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAqL1xuXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gICAqL1xuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8qKlxuICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICAgKi9cblxuICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgcGFkZGluZzogMDsgLyogMiAqL1xuICB9XG5cbiAgLyoqXG4gICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICovXG5cbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvKipcbiAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgKi9cblxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICovXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAqL1xuXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICB9XG5cbiAgLyogSW50ZXJhY3RpdmVcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICAgKi9cblxuICBkZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8qXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG5cbiAgLyogTWlzY1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gICAqL1xuXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICAgKi9cblxuICBbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuIiwiOnJvb3Qge1xuICAgIC0tZXVpLWJjLXdoaXRlOiAjZmZmO1xuICAgIC0tZXVpLWJjLWJsYWNrOiAjMDAwO1xuICAgIC0tZXVpLWJjLXRyYW5zcGFyZW50OiB0cmFuc3BhcmVudDtcblxuICAgIC8vIENPTE9SIFNIQURFU1xuICAgIEBlYWNoICRjb2xvciwgJHNoYWRlcyBpbiAkZXVpLWJhc2UtdG9rZW5zLWNvbG9ycyB7XG4gICAgICAgIEBlYWNoICRzaGFkZSwgJHZhbHVlIGluICRzaGFkZXMge1xuICAgICAgICAgICAgLS1ldWktYmMtI3skY29sb3IgKyAnLScgKyAkc2hhZGV9OiAjeyR2YWx1ZX07XG4gICAgICAgICAgICAtLWV1aS1iYy0jeyRjb2xvciArICctJyArICRzaGFkZX0tY29udHJhc3Q6ICN7Z2V0Q29udHJhc3QoJHZhbHVlKX07XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI6cm9vdCB7XG4gICAgLS1ldWktYy13aGl0ZTogdmFyKC0tZXVpLWJjLXdoaXRlKTtcbiAgICAtLWV1aS1jLWJsYWNrOiB2YXIoLS1ldWktYmMtYmxhY2spO1xuXG4gICAgLS1ldWktYy1iZzogdmFyKC0tZXVpLWJjLW5ldXRyYWwtMik7XG4gICAgLS1ldWktYy10ZXh0OiB2YXIoLS1ldWktYmMtbmV1dHJhbC0xMDApO1xuXG4gICAgLS1ldWktYy1mb2N1cy12aXNpYmxlOiB2YXIoLS1ldWktYmMtcHJpbWFyeS0xMDApO1xuICAgIC0tZXVpLWMtZm9jdXM6IHZhcigtLWV1aS1iYy1wcmltYXJ5LTQwKTtcblxuICAgIC0tZXVpLWMtaG92ZXI6IHZhcigtLWV1aS1iYy1wcmltYXJ5LTUpO1xuICAgIC0tZXVpLWMtaG92ZXItZGlzYWJsZWQ6IHZhcigtLWV1aS1iYy1uZXV0cmFsLTEwKTtcbiAgICAtLWV1aS1jLWFjdGl2ZTogdmFyKC0tZXVpLWJjLXByaW1hcnktMTApO1xuICAgIC0tZXVpLWMtZGlzYWJsZWQ6IHZhcigtLWV1aS1iYy1uZXV0cmFsLTYwKTtcblxuICAgIEBlYWNoICRjb2xvciwgJHNoYWRlcyBpbiAkZXVpLWJhc2UtY29udGV4dC1jb2xvcnMge1xuICAgICAgICBAZWFjaCAkc2hhZGUsICR2YWx1ZSBpbiAkc2hhZGVzIHtcbiAgICAgICAgICAgICRiYXNlLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgICAgIEBpZiAkc2hhZGUgPT0gYmFzZSB7XG4gICAgICAgICAgICAgICAgLS1ldWktYy0jeyRjb2xvcn06IHZhcigtLWV1aS1iYy0jeyRiYXNlLWNvbG9yICsgJy0nICsgJHZhbHVlfSk7XG4gICAgICAgICAgICAgICAgLS1ldWktYy0jeyRjb2xvcn0tY29udHJhc3Q6IHZhcigtLWV1aS1iYy0jeyRiYXNlLWNvbG9yICsgJy0nICsgJHZhbHVlfS1jb250cmFzdCk7XG4gICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICAtLWV1aS1jLSN7JGNvbG9yICsgJy0nICsgJHNoYWRlfTogdmFyKC0tZXVpLWJjLSN7JGJhc2UtY29sb3IgKyAnLScgKyAkdmFsdWV9KTtcbiAgICAgICAgICAgICAgICAtLWV1aS1jLSN7JGNvbG9yICsgJy0nICsgJHNoYWRlfS1jb250cmFzdDogdmFyKC0tZXVpLWJjLSN7JGJhc2UtY29sb3IgKyAnLScgKyAkdmFsdWV9LWNvbnRyYXN0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjpyb290IHtcbiAgICBAZWFjaCAkYnIsICR2YWx1ZSBpbiAkZXVpLWJhc2UtdG9rZW5zLWJvcmRlci1yYWRpdXMge1xuICAgICAgICAtLWV1aS1iYnItI3skYnJ9OiAjeyR2YWx1ZX07XG4gICAgfVxufVxuIiwiOnJvb3Qge1xuICAgIEBlYWNoICRzcGFjaW5nLCAkdmFsdWUgaW4gJGV1aS1iYXNlLWNvbnRleHQtc3BhY2luZ3Mge1xuICAgICAgICAtLWV1aS1zLSN7JHNwYWNpbmd9OiB2YXIoLS1ldWktYnMtI3skc3BhY2luZ30pO1xuICAgIH1cbn1cbiIsIjpyb290IHtcbiAgICBAZWFjaCAkc2l6ZSwgJGRlZiBpbiAkZXVpLWJhc2UtdG9rZW5zLWZvbnRzIHtcbiAgICAgICAgLS1ldWktYmYtI3skc2l6ZX06ICN7JGRlZn07XG4gICAgfVxuXG4gICAgQGVhY2ggJHNpemUsICRkZWYgaW4gJGV1aS1iYXNlLXRva2Vucy1mb250LXNpemVzIHtcbiAgICAgICAgLS1ldWktYmYtc2l6ZS0jeyRzaXplfTogI3skZGVmfTtcbiAgICB9XG59XG4iLCI6cm9vdCB7XG4gICAgLy8gRk9OVFMgREVGSU5JVElPTlNcbiAgICAtLWV1aS1mLWZhbWlseTogQXJpYWwsICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgICAvLyAtLWV1aS1mLWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsIHNhbnMtc2VyaWY7ICA8bGluayBocmVmPVwiaHR0cHM6Ly9mb250cy5jZG5mb250cy5jb20vY3NzL3NvdXJjZS1zYW5zLXByb1wiIHJlbD1cInN0eWxlc2hlZXRcIj5cbiAgICAvLyAtLWV1aS1mLWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7ICA8bGluayBocmVmPVwiaHR0cHM6Ly9mb250cy5jZG5mb250cy5jb20vY3NzL3JvYm90b1wiIHJlbD1cInN0eWxlc2hlZXRcIj5cbiAgICAtLWV1aS1mLWZhbWlseS1tb25vc3BhY2U6ICdDb25zb2xhcycsICdMaWJlcmF0aW9uIE1vbm8nLCAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7XG5cbiAgICAvLyBCQVNFIEZPTlQgU0laRVxuICAgIC0tZXVpLWYtc2l6ZS1iYXNlOiAxNnB4O1xuXG4gICAgLy8gRk9OVFMgVkFSSUFOVFNcbiAgICBAZWFjaCAkZm9udCwgJGRlZiBpbiAkZXVpLWJhc2UtY29udGV4dC1mb250cyB7XG4gICAgICAgIC0tZXVpLWYtI3skZm9udH06IHZhcigtLWV1aS1iZi0jeyRkZWZ9KTtcbiAgICB9XG5cbiAgICAvLyBGT05UUyBWQVJJQU5UU1xuICAgIEBlYWNoICRmb250LCAkZGVmIGluICRldWktYmFzZS1jb250ZXh0LWZvbnQtc2l6ZXMge1xuICAgICAgICAtLWV1aS1mLXNpemUtI3skZm9udH06IHZhcigtLWV1aS1iZi1zaXplLSN7JGRlZn0pO1xuICAgIH1cblxuICAgIC8vIEFMSUFTRVNcbiAgICAtLWV1aS1mOiB2YXIoLS1ldWktYmYtbSk7XG4gICAgLS1ldWktZi1ib2xkOiB2YXIoLS1ldWktYmYtbS1iKTtcbn1cbiIsIjpyb290IHtcbiAgICBAZWFjaCAkc3BhY2luZywgJHZhbHVlIGluICRldWktYmFzZS10b2tlbnMtc3BhY2luZ3Mge1xuICAgICAgICAtLWV1aS1icy0jeyRzcGFjaW5nfTogI3skdmFsdWV9O1xuICAgIH1cbn1cbiIsIjpyb290IHtcbiAgICBAZWFjaCAkYnIsICR2YWx1ZSBpbiAkZXVpLWJhc2UtY29udGV4dC1ib3JkZXItcmFkaXVzIHtcbiAgICAgICAgLS1ldWktYnItI3skYnJ9OiB2YXIoLS1ldWktYmJyLSN7JGJyfSk7XG4gICAgfVxufVxuIiwiOnJvb3Qge1xuICAgIEBlYWNoICRzaCwgJHZhbHVlIGluICRldWktYmFzZS10b2tlbnMtc2hhZG93cyB7XG4gICAgICAgIC0tZXVpLWJzaC0jeyRzaH06ICN7JHZhbHVlfTtcbiAgICB9XG59XG4iLCI6cm9vdCB7XG4gICAgQGVhY2ggJHNoLCAkdmFsdWUgaW4gJGV1aS1iYXNlLXRva2Vucy1zaGFkb3dzIHtcbiAgICAgICAgLS1ldWktc2gtI3skc2h9OiB2YXIoLS1ldWktYnNoLSN7JHNofSk7XG4gICAgfVxufVxuIiwiOnJvb3Qge1xuXG4gICAgLy8gSUNPTi1TSVpFU1xuICAgIEBlYWNoICRpY29uLXNpemUsICR2YWx1ZSBpbiAkZXVpLWJhc2UtdG9rZW5zLWljb24tc2l6ZXMge1xuICAgICAgICAtLWV1aS1iaXMtI3skaWNvbi1zaXplfTogI3skdmFsdWV9O1xuICAgIH1cbiAgICBAZWFjaCAkaWNvbi1zaXplLCAkdmFsdWUgaW4gJGV1aS1iYXNlLXRva2Vucy1pY29uLXNpemVzIHtcbiAgICAgICAgLS1ldWktaXMtI3skaWNvbi1zaXplfTogdmFyKC0tZXVpLWJpcy0jeyRpY29uLXNpemV9KTtcbiAgICB9XG5cbiAgICAvLyBaLUlOREVYRVNcbiAgICBAZWFjaCAkaWR4LCAkdmFsdWUgaW4gJGV1aS1iYXNlLXRva2Vucy16LWluZGV4ZXMge1xuICAgICAgICAtLWV1aS1iemktI3skaWR4fTogI3skdmFsdWV9O1xuICAgIH1cbiAgICBAZWFjaCAkaWR4LCAkdmFsdWUgaW4gJGV1aS1iYXNlLXRva2Vucy16LWluZGV4ZXMge1xuICAgICAgICAtLWV1aS16aS0jeyRpZHh9OiB2YXIoLS1ldWktYnppLSN7JGlkeH0pO1xuICAgIH1cbn1cbiIsIjpyb290IHtcbiAgICAtLWV1aS1iYXNlLWxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgLS1ldWktYmFzZS1zY2FsZS1mYWN0b3I6IDE7XG4gICAgLS1ldWktYmFzZS1kaXNhYmxlZC1vcGFjaXR5OiAwLjU7XG5cbiAgICAtLWV1aS1iYXNlLWJvcmRlci1zdGF0ZS13aWR0aDogdmFyKC0tZXVpLXMteHMpO1xuXG4gICAgLS1ldWktYmFzZS1ib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ldWktY29sb3ItZ3JleS1saWdodGVyKTtcbiAgICAtLWV1aS1iYXNlLWJvcmRlci1saWdodDogMXB4IHNvbGlkIHZhcigtLWV1aS1jb2xvci1ncmV5LWxpZ2h0KTtcbiAgICAtLWV1aS1iYXNlLWJvcmRlci1saWdodGVyOiAxcHggc29saWQgdmFyKC0tZXVpLWNvbG9yLWdyZXktbGlnaHRlcik7XG4gICAgLS1ldWktYmFzZS1ib3JkZXItbGlnaHRlc3Q6IDFweCBzb2xpZCB2YXIoLS1ldWktY29sb3ItZ3JleS1saWdodGVzdCk7XG5cbiAgICAvLyBBbmltYXRpb25zIHJlbGF0ZWRcbiAgICAtLWV1aS1iYXNlLWFuaW1hdGlvbi1saW5lYXItb3V0LXNsb3ctaW4tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgICAtLWV1aS1iYXNlLWFuaW1hdGlvbi1mYXN0LW91dC1zbG93LWluLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICAtLWV1aS1iYXNlLWFuaW1hdGlvbi1mYXN0LW91dC1saW5lYXItaW4tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAxLCAxKTtcbiAgICAtLWV1aS1iYXNlLWFuaW1hdGlvbi1lYXNlLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuMSwgMC4yNSwgMSk7ICAgIC8vIGVhc2VcbiAgICAtLWV1aS1iYXNlLWFuaW1hdGlvbi1lYXNlLWluLW91dC10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuXG4gICAgLS1ldWktYmFzZS1hbmltYXRpb24tZHVyYXRpb24tZmFzdDogMC4yNXM7XG4gICAgLS1ldWktYmFzZS1hbmltYXRpb24tZHVyYXRpb24tbWVkaXVtOiAwLjVzO1xuICAgIC0tZXVpLWJhc2UtYW5pbWF0aW9uLWR1cmF0aW9uLXNsb3c6IDFzO1xuICAgIC0tZXVpLWJhc2UtYW5pbWF0aW9uLWR1cmF0aW9uLWJhc2U6IDUwMG1zO1xuICAgIC0tZXVpLWJhc2UtYW5pbWF0aW9uLWR1cmF0aW9uOiB2YXIoLS1ldWktYmFzZS1hbmltYXRpb24tZHVyYXRpb24tYmFzZSk7XG5cbiAgICAtLWV1aS1iYXNlLWFuaW1hdGlvbi10cmFuc2l0aW9uLWJhc2U6IGFsbCAwLjJzICN7dmFyKC0tZXVpLWJhc2UtYW5pbWF0aW9uLWxpbmVhci1vdXQtc2xvdy1pbi10aW1pbmctZnVuY3Rpb24pfTtcbiAgICAtLWV1aS1iYXNlLWFuaW1hdGlvbi10cmFuc2l0aW9uLWVhc2U6IGFsbCAwLjJzICN7dmFyKC0tZXVpLWJhc2UtYW5pbWF0aW9uLWVhc2UtdGltaW5nLWZ1bmN0aW9uKX07XG4gICAgLS1ldWktYmFzZS1hbmltYXRpb24tdHJhbnNpdGlvbi1lYXNlLWluLW91dDogYWxsIDAuMnMgI3t2YXIoLS1ldWktYmFzZS1hbmltYXRpb24tZWFzZS1pbi1vdXQtdGltaW5nLWZ1bmN0aW9uKX07XG4gICAgLS1ldWktYmFzZS1hbmltYXRpb24tdHJhbnNpdGlvbi1lYXNlLWluLW91dC0xczogYWxsIDFzICN7dmFyKC0tZXVpLWJhc2UtYW5pbWF0aW9uLWVhc2UtaW4tb3V0LXRpbWluZy1mdW5jdGlvbil9O1xuXG4gICAgLS1ldWktYmFzZS1hbmltYXRpb24tZGVsYXk6IDBzO1xuICAgIC0tZXVpLWJhc2UtYW5pbWF0aW9uLWRpcmVjdGlvbjogbm9ybWFsO1xuICAgIC0tZXVpLWJhc2UtYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7ICAgIC8vIHRoaXMgcHJldmVudHMgdGhlIGFuaW1hdGlvbiBmcm9tIHJlc3RhcnRpbmdcbiAgICAtLWV1aS1iYXNlLWFuaW1hdGlvbi1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ldWktYy1wcmltYXJ5LWxpZ2h0ZXIpOyAgLy8gI2NmY2ZkZjtcbn1cbiIsIjpyb290IHtcbiAgICAtLWV1aS1pbnRlcm5hbC1pY29uLWNoZWNrbWFyay1wYXRoOiB1cmwoJyN7JGV1aS1hc3NldHMtYmFzZS1wYXRofS9pY29ucy9ldWktaW50ZXJuYWxzL2NoZWNrbWFyay5zdmcnKTtcbiAgICAtLWV1aS1pbnRlcm5hbC1pY29uLXJlbW92ZS1wYXRoOiB1cmwoJyN7JGV1aS1hc3NldHMtYmFzZS1wYXRofS9pY29ucy9ldWktaW50ZXJuYWxzL3JlbW92ZS5zdmcnKTtcbiAgICAtLWV1aS1pbnRlcm5hbC1pY29uLWVsbGlwc2UtcGF0aDogdXJsKCcjeyRldWktYXNzZXRzLWJhc2UtcGF0aH0vaWNvbnMvZXVpLWludGVybmFscy9lbGxpcHNlLnN2ZycpO1xuICAgIC0tZXVpLWludGVybmFsLWljb24tZXh0ZXJuYWwtcGF0aDogdXJsKCcjeyRldWktYXNzZXRzLWJhc2UtcGF0aH0vaWNvbnMvZXVpLWludGVybmFscy9leHRlcm5hbC5zdmcnKTtcbiAgICAtLWV1aS1pbnRlcm5hbC1pY29uLWNoZXZyb24tZG93bi1wYXRoOiB1cmwoJyN7JGV1aS1hc3NldHMtYmFzZS1wYXRofS9pY29ucy9ldWktaW50ZXJuYWxzL2NoZXZyb24tZG93bi5zdmcnKTtcbn1cbiIsIjpyb290IHtcbiAgICAvLyBlVUkgQVBQXG4gICAgLS1ldWktYXBwLWhlYWRlci1oZWlnaHQtZGVmYXVsdDogMHB4O1xuICAgIC0tZXVpLWFwcC1oZWFkZXItaGVpZ2h0OiAwcHg7XG4gICAgLS1ldWktYXBwLWhlYWRlci1oZWlnaHQtYWN0aXZlOiA5MHB4O1xuICAgIC0tZXVpLWFwcC1oZWFkZXItaGVpZ2h0LXNocmluazogMHB4O1xuXG4gICAgLS1ldWktYXBwLWJyZWFkY3J1bWItaGVpZ2h0LWRlZmF1bHQ6IDBweDtcbiAgICAtLWV1aS1hcHAtYnJlYWRjcnVtYi1oZWlnaHQ6IDBweDtcbiAgICAtLWV1aS1hcHAtYnJlYWRjcnVtYi1oZWlnaHQtYWN0aXZlOiAyMHB4O1xuXG4gICAgLS1ldWktYXBwLXRvcC1tZXNzYWdlLWhlaWdodC1kZWZhdWx0OiAwcHg7XG4gICAgLS1ldWktYXBwLXRvcC1tZXNzYWdlLWhlaWdodDogMHB4O1xuICAgIC0tZXVpLWFwcC10b3AtbWVzc2FnZS1oZWlnaHQtYWN0aXZlOiA0MnB4O1xuXG4gICAgLS1ldWktYXBwLXRvb2xiYXItaGVpZ2h0LWRlZmF1bHQ6IDBweDtcbiAgICAtLWV1aS1hcHAtdG9vbGJhci1oZWlnaHQ6IDBweDtcbiAgICAtLWV1aS1hcHAtdG9vbGJhci1oZWlnaHQtYWN0aXZlOiA1NXB4O1xuXG4gICAgLS1ldWktYXBwLXNpZGViYXItd2lkdGgtZGVmYXVsdDogMHB4O1xuICAgIC0tZXVpLWFwcC1zaWRlYmFyLXdpZHRoOiAwcHg7XG4gICAgLS1ldWktYXBwLXNpZGViYXItd2lkdGgtYWN0aXZlOiAzMDBweDtcbiAgICAtLWV1aS1hcHAtc2lkZWJhci13aWR0aC1jbG9zZS1kZWZhdWx0OiAwcHg7XG4gICAgLS1ldWktYXBwLXNpZGViYXItd2lkdGgtY2xvc2U6IDBweDtcbiAgICAtLWV1aS1hcHAtc2lkZWJhci13aWR0aC1jbG9zZS1hY3RpdmU6IDY0cHg7XG4gICAgLS1ldWktYXBwLXNpZGViYXItaGVhZGVyLWhlaWdodDogMHB4O1xuICAgIC0tZXVpLWFwcC1zaWRlYmFyLWhlYWRlci1oZWlnaHQtZGVmYXVsdDogMHB4O1xuICAgIC0tZXVpLWFwcC1zaWRlYmFyLWhlYWRlci1oZWlnaHQtYWN0aXZlOiA0OHB4O1xuICAgIC0tZXVpLWFwcC1zaWRlYmFyLWhlYWRlci11c2VyLXByb2ZpbGU6IDY0cHg7XG4gICAgLS1ldWktYXBwLXNpZGViYXItZm9vdGVyLWhlaWdodDogMHB4O1xuICAgIC0tZXVpLWFwcC1zaWRlYmFyLWZvb3Rlci1oZWlnaHQtZGVmYXVsdDogMHB4O1xuICAgIC0tZXVpLWFwcC1zaWRlYmFyLWZvb3Rlci1oZWlnaHQtYWN0aXZlOiAyNHB4O1xuXG4gICAgLy8gUGFnZSBMYXlvdXRcbiAgICAtLWV1aS1wYWdlLWhlYWRlci13aXRoLXN1YnRpdGxlLWhlaWdodDogNHJlbTtcbiAgICAtLWV1aS1wYWdlLWhlYWRlci13aXRob3V0LXN1YnRpdGxlLWhlaWdodDogMnJlbTtcblxuICAgIC0tZXVpLXBhZ2UtY29sdW1uLS1zaXplLXM6IDUwcHg7XG4gICAgLS1ldWktcGFnZS1jb2x1bW4tLXNpemUtbTogMTUwcHg7XG4gICAgLS1ldWktcGFnZS1jb2x1bW4tLXNpemUtbDogMjAwcHg7XG4gICAgLS1ldWktcGFnZS1jb2x1bW4tLXNpemUteGw6IDI1MHB4O1xuICAgIC0tZXVpLXBhZ2UtY29sdW1uLS1zaXplLXh4bDogMzAwcHg7XG4gICAgLS1ldWktcGFnZS1jb2x1bW4tLXNpemUteHh4bDogMzUwcHg7XG4gICAgLS1ldWktcGFnZS1jb2x1bW4tZm9vdGVyLWhlaWdodDogMy41cmVtO1xufVxuXG4ueHMsIC5zbSB7XG4gICAgLS1ldWktYXBwLWhlYWRlci1oZWlnaHQ6IDBweDtcbn1cbiIsIi5ldWktaWNvbi1zdmcge1xuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICBtYXJnaW46IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMSkgc2NhbGVZKDEpIHJvdGF0ZVooMGRlZyk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGVhc2UtaW4tb3V0O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbiIsIi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG5cbiAgICA+ICoge1xuICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtcmVhZHkoKTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRlbmFibGUtY3NzZ3JpZCB7XG4gIC5ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1yb3dzLCAxKSwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCh2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Y29sdW1ucywgI3skZ3JpZC1jb2x1bW5zfSksIDFmcik7XG4gICAgZ2FwOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z2FwLCAjeyRncmlkLWd1dHRlci13aWR0aH0pO1xuXG4gICAgQGluY2x1ZGUgbWFrZS1jc3NncmlkKCk7XG4gIH1cbn1cblxuXG4vLyBDb2x1bW5zXG4vL1xuLy8gQ29tbW9uIHN0eWxlcyBmb3Igc21hbGwgYW5kIGxhcmdlIGdyaWQgY29sdW1uc1xuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQtY29sdW1ucygpO1xufVxuIiwiLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXg6ICN7JGd1dHRlcn07XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIC8vIFRPRE86IFJldmlzaXQgY2FsYyBvcmRlciBhZnRlciBodHRwczovL2dpdGh1Yi5jb20vcmVhY3QtYm9vdHN0cmFwL3JlYWN0LWJvb3RzdHJhcC9pc3N1ZXMvNjAzOSBpcyBmaXhlZFxuICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLS41ICogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLy8gQWRkIGJveCBzaXppbmcgaWYgb25seSB0aGUgZ3JpZCBpcyBsb2FkZWRcbiAgYm94LXNpemluZzogaWYodmFyaWFibGUtZXhpc3RzKGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcpIGFuZCAkaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZywgYm9yZGVyLWJveCwgbnVsbCk7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSBzZXQgdGhlIHdpZHRoXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFByZXZlbnQgYC5jb2wtYXV0b2AsIGAuY29sYCAoJiByZXNwb25zaXZlIHZhcmlhbnRzKSBmcm9tIGJyZWFraW5nIG91dCB0aGUgZ3JpZFxuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tdG9wOiB2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXkpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemU6IGZhbHNlLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBAaWYgJHNpemUge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcblxuICB9IEBlbHNlIHtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogZGl2aWRlKCRzaXplLCAkY29sdW1ucyk7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgfVxufVxuXG4vLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleDogMSAwIDAlOyAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIH1cblxuICAgICAgLnJvdy1jb2xzI3skaW5maXh9LWF1dG8gPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICAvL1xuICAgICAgLy8gTWFrZSB1c2Ugb2YgYC5nLSpgLCBgLmd4LSpgIG9yIGAuZ3ktKmAgdXRpbGl0aWVzIHRvIGNoYW5nZSBzcGFjaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4gICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGd1dHRlcnMge1xuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3gjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXg6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neSN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNzc2dyaWQoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmctY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdGFydCB3aXRoIGAxYCBiZWNhdXNlIGAwYCBpcyBhbmQgaW52YWxpZCB2YWx1ZS5cbiAgICAgICAgLy8gRW5kcyB3aXRoIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZS5cbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgLmctc3RhcnQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6ICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgcmVkdWNlZCBieSAwLjAycHggdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mXG4vLyBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KG1kLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiAgYnJlYWtwb2ludC1tYXgoJG5leHQpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgJ0Bhbmd1bGFyL2Nkayc7XG5AdXNlICcuLi90b2tlbnMvbTIvbWF0L3JpcHBsZScgYXMgdG9rZW5zLW1hdC1yaXBwbGU7XG5AdXNlICcuLi90b2tlbnMvdG9rZW4tdXRpbHMnO1xuXG5AbWl4aW4gcmlwcGxlKCkge1xuICAvLyBUaGUgaG9zdCBlbGVtZW50IG9mIGFuIG1hdC1yaXBwbGUgZGlyZWN0aXZlIHNob3VsZCBhbHdheXMgaGF2ZSBhIHBvc2l0aW9uIG9mIFwiYWJzb2x1dGVcIiBvclxuICAvLyBcInJlbGF0aXZlXCIgc28gdGhhdCB0aGUgcmlwcGxlcyBpbnNpZGUgYXJlIGNvcnJlY3RseSBwb3NpdGlvbmVkIHJlbGF0aXZlbHkgdG8gdGhlIGNvbnRhaW5lci5cbiAgLm1hdC1yaXBwbGUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAvLyBCeSBkZWZhdWx0LCBldmVyeSByaXBwbGUgY29udGFpbmVyIHNob3VsZCBoYXZlIHBvc2l0aW9uOiByZWxhdGl2ZSBpbiBmYXZvciBvZiBjcmVhdGluZyBhblxuICAgIC8vIGVhc3kgQVBJIGZvciBkZXZlbG9wZXJzIHVzaW5nIHRoZSBNYXRSaXBwbGUgZGlyZWN0aXZlLlxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIFByb21vdGUgY29udGFpbmVycyB0aGF0IGhhdmUgcmlwcGxlcyB0byBhIG5ldyBsYXllci4gV2Ugd2FudCB0byB0YXJnZXQgYDpub3QoOmVtcHR5KWAsXG4gICAgLy8gYmVjYXVzZSB3ZSBkb24ndCB3YW50IGFsbCByaXBwbGUgY29udGFpbmVycyB0byBoYXZlIHRoZWlyIG93biBsYXllciBzaW5jZSB0aGV5J3JlIHVzZWQgaW4gYVxuICAgIC8vIGxvdCBvZiBwbGFjZXMgYW5kIHRoZSBsYXllciBpcyBvbmx5IHJlbGV2YW50IHdoaWxlIGFuaW1hdGluZy4gTm90ZSB0aGF0IGlkZWFsbHkgd2UnZCB1c2VcbiAgICAvLyB0aGUgYGNvbnRhaW5gIHByb3BlcnR5IGhlcmUgKHNlZSAjMTMxNzUpLCBiZWNhdXNlIGA6ZW1wdHlgIGNhbiBiZSBicm9rZW4gYnkgaGF2aW5nIGV4dHJhXG4gICAgLy8gdGV4dCBpbnNpZGUgdGhlIGVsZW1lbnQsIGJ1dCBpdCBpc24ndCB2ZXJ5IHdlbGwgc3VwcG9ydGVkIHlldC5cbiAgICAmOm5vdCg6ZW1wdHkpIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICB9XG4gIH1cblxuICAubWF0LXJpcHBsZS5tYXQtcmlwcGxlLXVuYm91bmRlZCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAubWF0LXJpcHBsZS1lbGVtZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSwgdHJhbnNmb3JtIDBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcblxuICAgIC8vIFdlIHVzZSBhIDNkIHRyYW5zZm9ybSBoZXJlIGluIG9yZGVyIHRvIGF2b2lkIGFuIGlzc3VlIGluIFNhZmFyaSB3aGVyZVxuICAgIC8vIHRoZSByaXBwbGVzIGFyZW4ndCBjbGlwcGVkIHdoZW4gaW5zaWRlIHRoZSBzaGFkb3cgRE9NIChzZWUgIzI0MDI4KS5cbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMCwgMCwgMCk7XG5cbiAgICBAaW5jbHVkZSB0b2tlbi11dGlscy51c2UtdG9rZW5zKFxuICAgICAgdG9rZW5zLW1hdC1yaXBwbGUuJHByZWZpeCwgdG9rZW5zLW1hdC1yaXBwbGUuZ2V0LXRva2VuLXNsb3RzKCkpIHtcbiAgICAgIC8vIFdlIGhhdmUgdG8gZW1pdCBhIGZhbGxiYWNrIHZhbHVlIGhlcmUsIGJlY2F1c2Ugc29tZSBpbnRlcm5hbCBidWlsZHMgZGVwZW5kIG9uIGl0LlxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCN7dG9rZW4tdXRpbHMuZ2V0LXRva2VuLXZhcmlhYmxlKGNvbG9yKX0sIHJnYmEoIzAwMCwgMC4xKSk7XG4gICAgfVxuXG4gICAgLy8gSW4gaGlnaCBjb250cmFzdCBtb2RlIHRoZSByaXBwbGUgaXMgb3BhcXVlLCBjYXVzaW5nIGl0IHRvIG9ic3RydWN0IHRoZSBjb250ZW50LlxuICAgIEBpbmNsdWRlIGNkay5oaWdoLWNvbnRyYXN0KGFjdGl2ZSwgb2ZmKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIEVtaXRzIGEgQ1NTIGNsYXNzLCBgLmNkay12aXN1YWxseS1oaWRkZW5gLiBUaGlzIGNsYXNzIGNhbiBiZSBhcHBsaWVkIHRvIGFuIGVsZW1lbnRcbi8vLyB0byBtYWtlIHRoYXQgZWxlbWVudCB2aXN1YWxseSBoaWRkZW4gd2hpbGUgcmVtYWluaW5nIGF2YWlsYWJsZSB0byBhc3Npc3RpdmUgdGVjaG5vbG9neS5cbkBtaXhpbiBhMTF5LXZpc3VhbGx5LWhpZGRlbigpIHtcbiAgLmNkay12aXN1YWxseS1oaWRkZW4ge1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG5cbiAgICAvLyBUaGlzIHdvcmtzIGFyb3VuZCBhIENocm9tZSBidWcgdGhhdCBjYW4gY2F1c2UgdGhlIHRhYiB0byBjcmFzaCB3aGVuIGxhcmdlIGFtb3VudHMgb2ZcbiAgICAvLyBub24tRW5nbGlzaCB0ZXh0IGdldCB3cmFwcGVkOiBodHRwczovL2J1Z3MuY2hyb21pdW0ub3JnL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD0xMjAxNDQ0XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIC8vIEF2b2lkIGJyb3dzZXJzIHJlbmRlcmluZyB0aGUgZm9jdXMgcmluZyBpbiBzb21lIGNhc2VzLlxuICAgIG91dGxpbmU6IDA7XG5cbiAgICAvLyBBdm9pZCBzb21lIGNhc2VzIHdoZXJlIHRoZSBicm93c2VyIHdpbGwgc3RpbGwgcmVuZGVyIHRoZSBuYXRpdmUgY29udHJvbHMgKHNlZSAjOTA0OSkuXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcblxuICAgIC8vIFdlIG5lZWQgYXQgbGVhc3Qgb25lIG9mIHRvcC9ib3R0b20vbGVmdC9yaWdodCBpbiBvcmRlciB0byBwcmV2ZW50IGNhc2VzIHdoZXJlIHRoZVxuICAgIC8vIGFic29sdXRlLXBvc2l0aW9uZWQgZWxlbWVudCBpcyBwdXNoZWQgZG93biBhbmQgY2FuIGFmZmVjdCBzY3JvbGxpbmcgKHNlZSAjMjQ1OTcpLlxuICAgIC8vIGBsZWZ0YCB3YXMgY2hvc2VuIGhlcmUsIGJlY2F1c2UgaXQncyB0aGUgbGVhc3QgbGlrZWx5IHRvIGJyZWFrIG92ZXJyaWRlcyB3aGVyZSB0aGVcbiAgICAvLyBlbGVtZW50IG1pZ2h0IGhhdmUgYmVlbiBwb3NpdGlvbmVkIChlLmcuIGBtYXQtY2hlY2tib3hgKS5cbiAgICBsZWZ0OiAwO1xuXG4gICAgW2Rpcj0ncnRsJ10gJiB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vLyBAZGVwcmVjYXRlZCBVc2UgYGExMXktdmlzdWFsbHktaGlkZGVuYC5cbkBtaXhpbiBhMTF5KCkge1xuICBAaW5jbHVkZSBhMTF5LXZpc3VhbGx5LWhpZGRlbjtcbn1cblxuLy8vIEVtaXRzIHRoZSBtaXhpbidzIGNvbnRlbnQgbmVzdGVkIHVuZGVyIGAkc2VsZWN0b3ItY29udGV4dGAgaWYgYCRzZWxlY3Rvci1jb250ZXh0YFxuLy8vIGlzIG5vbi1lbXB0eS5cbi8vLyBAcGFyYW0ge1N0cmluZ30gc2VsZWN0b3ItY29udGV4dCBUaGUgc2VsZWN0b3IgdW5kZXIgd2hpY2ggdG8gbmVzdCB0aGUgbWl4aW4ncyBjb250ZW50LlxuQG1peGluIF9vcHRpb25hbGx5LW5lc3QtY29udGVudCgkc2VsZWN0b3ItY29udGV4dCkge1xuICBAaWYgKCRzZWxlY3Rvci1jb250ZXh0ID09ICcnKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgICN7JHNlbGVjdG9yLWNvbnRleHR9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyBzdHlsZXMgZm9yIHVzZXJzIGluIGhpZ2ggY29udHJhc3QgbW9kZS4gTm90ZSB0aGF0IHRoaXMgb25seSBhcHBsaWVzXG4vLy8gdG8gTWljcm9zb2Z0IGJyb3dzZXJzLiBDaHJvbWUgY2FuIGJlIGluY2x1ZGVkIGJ5IGNoZWNraW5nIGZvciB0aGUgYGh0bWxbaGNdYFxuLy8vIGF0dHJpYnV0ZSwgaG93ZXZlciBDaHJvbWUgaGFuZGxlcyBoaWdoIGNvbnRyYXN0IGRpZmZlcmVudGx5LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9IHRhcmdldCBUeXBlIG9mIGhpZ2ggY29udHJhc3Qgc2V0dGluZyB0byB0YXJnZXQuIERlZmF1bHRzIHRvIGBhY3RpdmVgLCBjYW4gYmVcbi8vLyAgICAgYHdoaXRlLW9uLWJsYWNrYCBvciBgYmxhY2stb24td2hpdGVgLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSBlbmNhcHN1bGF0aW9uIFdoZXRoZXIgdG8gZW1pdCBzdHlsZXMgZm9yIHZpZXcgZW5jYXBzdWxhdGlvbi4gVmFsdWVzIGFyZTpcbi8vLyAgICAgKiBgb25gIC0gd29ya3MgZm9yIGBFbXVsYXRlZGAsIGBOYXRpdmVgLCBhbmQgYFNoYWRvd0RvbWBcbi8vLyAgICAgKiBgb2ZmYCAtIHdvcmtzIGZvciBgTm9uZWBcbi8vLyAgICAgKiBgYW55YCAtIHdvcmtzIGZvciBhbGwgZW5jYXBzdWxhdGlvbiBtb2RlcyBieSBlbWl0dGluZyB0aGUgQ1NTIHR3aWNlIChkZWZhdWx0KS5cbkBtaXhpbiBoaWdoLWNvbnRyYXN0KCR0YXJnZXQ6IGFjdGl2ZSwgJGVuY2Fwc3VsYXRpb246ICdhbnknKSB7XG4gIEBpZiAoJHRhcmdldCAhPSAnYWN0aXZlJyBhbmQgJHRhcmdldCAhPSAnYmxhY2stb24td2hpdGUnIGFuZCAkdGFyZ2V0ICE9ICd3aGl0ZS1vbi1ibGFjaycpIHtcbiAgICBAZXJyb3IgJ1Vua25vd24gY2RrLWhpZ2gtY29udHJhc3QgdmFsdWUgXCIjeyR0YXJnZXR9XCIgcHJvdmlkZWQuICcgK1xuICAgICAgICAgICAnQWxsb3dlZCB2YWx1ZXMgYXJlIFwiYWN0aXZlXCIsIFwiYmxhY2stb24td2hpdGVcIiwgYW5kIFwid2hpdGUtb24tYmxhY2tcIic7XG4gIH1cblxuICBAaWYgKCRlbmNhcHN1bGF0aW9uICE9ICdvbicgYW5kICRlbmNhcHN1bGF0aW9uICE9ICdvZmYnIGFuZCAkZW5jYXBzdWxhdGlvbiAhPSAnYW55Jykge1xuICAgIEBlcnJvciAnVW5rbm93biBjZGstaGlnaC1jb250cmFzdCBlbmNhcHN1bGF0aW9uIFwiI3skZW5jYXBzdWxhdGlvbn1cIiBwcm92aWRlZC4gJyArXG4gICAgICAgICAgICdBbGxvd2VkIHZhbHVlcyBhcmUgXCJvblwiLCBcIm9mZlwiLCBhbmQgXCJhbnlcIic7XG4gIH1cblxuICAvLyBJZiB0aGUgc2VsZWN0b3IgY29udGV4dCBoYXMgbXVsdGlwbGUgcGFydHMsIHN1Y2ggYXMgYC5zZWN0aW9uLCAucmVnaW9uYCwganVzdCBkb2luZ1xuICAvLyBgLmNkay1oaWdoLWNvbnRyYXN0LXh4eCAjeyZ9YCB3aWxsIG9ubHkgYXBwbHkgdGhlIHBhcmVudCBzZWxlY3RvciB0byB0aGUgZmlyc3QgcGFydCBvZiB0aGVcbiAgLy8gY29udGV4dC4gV2UgYWRkcmVzcyB0aGlzIGJ5IG5lc3RpbmcgdGhlIHNlbGVjdG9yIGNvbnRleHQgdW5kZXIgLmNkay1oaWdoLWNvbnRyYXN0LlxuICBAYXQtcm9vdCB7XG4gICAgJHNlbGVjdG9yLWNvbnRleHQ6ICN7Jn07XG5cbiAgICBAaWYgKCRlbmNhcHN1bGF0aW9uICE9ICdvbicpIHtcbiAgICAgIC8vIE5vdGUgdGhhdCBpZiB0aGlzIHNlbGVjdG9yIGlzIHVwZGF0ZWQsIHRoZSBzYW1lIGNoYW5nZSBoYXMgdG8gYmUgbWFkZSBpbnNpZGVcbiAgICAgIC8vIGBfb3ZlcmxheS5zY3NzYCB3aGljaCBjYW4ndCBkZXBlbmQgb24gdGhpcyBtaXhpbiBkdWUgdG8gc29tZSBpbmZyYXN0cnVjdHVyZSBsaW1pdGF0aW9ucy5cbiAgICAgIC5jZGstaGlnaC1jb250cmFzdC0jeyR0YXJnZXR9IHtcbiAgICAgICAgQGluY2x1ZGUgX29wdGlvbmFsbHktbmVzdC1jb250ZW50KCRzZWxlY3Rvci1jb250ZXh0KSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKCRlbmNhcHN1bGF0aW9uICE9ICdvZmYnKSB7XG4gICAgICAuY2RrLWhpZ2gtY29udHJhc3QtI3skdGFyZ2V0fSA6aG9zdCB7XG4gICAgICAgIEBpbmNsdWRlIF9vcHRpb25hbGx5LW5lc3QtY29udGVudCgkc2VsZWN0b3ItY29udGV4dCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBXZSB3YW50IG92ZXJsYXlzIHRvIGFsd2F5cyBhcHBlYXIgb3ZlciB1c2VyIGNvbnRlbnQsIHNvIHNldCBhIGJhc2VsaW5lXG4vLyB2ZXJ5IGhpZ2ggei1pbmRleCBmb3IgdGhlIG92ZXJsYXkgY29udGFpbmVyLCB3aGljaCBpcyB3aGVyZSB3ZSBjcmVhdGUgdGhlIG5ld1xuLy8gc3RhY2tpbmcgY29udGV4dCBmb3IgYWxsIG92ZXJsYXlzLlxuJG92ZXJsYXktY29udGFpbmVyLXotaW5kZXg6IDEwMDAgIWRlZmF1bHQ7XG4kb3ZlcmxheS16LWluZGV4OiAxMDAwICFkZWZhdWx0O1xuJG92ZXJsYXktYmFja2Ryb3Atei1pbmRleDogMTAwMCAhZGVmYXVsdDtcblxuLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYWxsIG9mIHRoZSBiYWNrZHJvcHNcbiRvdmVybGF5LWJhY2tkcm9wLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzIpICFkZWZhdWx0O1xuXG4vLyBEZWZhdWx0IGJhY2tkcm9wIGFuaW1hdGlvbiBpcyBiYXNlZCBvbiB0aGUgTWF0ZXJpYWwgRGVzaWduIHN3aWZ0LWVhc2Utb3V0LlxuJGJhY2tkcm9wLWFuaW1hdGlvbi1kdXJhdGlvbjogNDAwbXMgIWRlZmF1bHQ7XG4kYmFja2Ryb3AtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuOCwgMC4yNSwgMSkgIWRlZmF1bHQ7XG5cbi8vLyBFbWl0cyBzdHJ1Y3R1cmFsIHN0eWxlcyByZXF1aXJlZCBmb3IgY2RrL292ZXJsYXkgdG8gZnVuY3Rpb24uXG5AbWl4aW4gb3ZlcmxheSgpIHtcbiAgLmNkay1vdmVybGF5LWNvbnRhaW5lciwgLmNkay1nbG9iYWwtb3ZlcmxheS13cmFwcGVyIHtcbiAgICAvLyBEaXNhYmxlIGV2ZW50cyBmcm9tIGJlaW5nIGNhcHR1cmVkIG9uIHRoZSBvdmVybGF5IGNvbnRhaW5lci5cbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIC8vIFRoZSBjb250YWluZXIgc2hvdWxkIGJlIHRoZSBzaXplIG9mIHRoZSB2aWV3cG9ydC5cbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBUaGUgb3ZlcmxheS1jb250YWluZXIgaXMgYW4gaW52aXNpYmxlIGVsZW1lbnQgd2hpY2ggY29udGFpbnMgYWxsIGluZGl2aWR1YWwgb3ZlcmxheXMuXG4gIC5jZGstb3ZlcmxheS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiAkb3ZlcmxheS1jb250YWluZXItei1pbmRleDtcblxuICAgICY6ZW1wdHkge1xuICAgICAgLy8gSGlkZSB0aGUgZWxlbWVudCB3aGVuIGl0IGRvZXNuJ3QgaGF2ZSBhbnkgY2hpbGQgbm9kZXMuIFRoaXMgZG9lc24ndFxuICAgICAgLy8gaW5jbHVkZSBvdmVybGF5cyB0aGF0IGhhdmUgYmVlbiBkZXRhY2hlZCwgcmF0aGVyIHRoYW4gZGlzcG9zZWQuXG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIFdlIHVzZSBhbiBleHRyYSB3cmFwcGVyIGVsZW1lbnQgaW4gb3JkZXIgdG8gdXNlIG1ha2UgdGhlIG92ZXJsYXkgaXRzZWxmIGEgZmxleCBpdGVtLlxuICAvLyBUaGlzIG1ha2VzIGNlbnRlcmluZyB0aGUgb3ZlcmxheSBlYXN5IHdpdGhvdXQgcnVubmluZyBpbnRvIHRoZSBzdWJwaXhlbCByZW5kZXJpbmdcbiAgLy8gcHJvYmxlbXMgdGllZCB0byB1c2luZyBgdHJhbnNmb3JtYCBhbmQgd2l0aG91dCBpbnRlcmZlcmluZyB3aXRoIHRoZSBvdGhlciBwb3NpdGlvblxuICAvLyBzdHJhdGVnaWVzLlxuICAuY2RrLWdsb2JhbC1vdmVybGF5LXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6ICRvdmVybGF5LXotaW5kZXg7XG4gIH1cblxuICAvLyBBIHNpbmdsZSBvdmVybGF5IHBhbmUuXG4gIC5jZGstb3ZlcmxheS1wYW5lIHtcbiAgICAvLyBOb3RlOiBpdCdzIGltcG9ydGFudCBmb3IgdGhpcyBvbmUgdG8gc3RhcnQgb2ZmIGBhYnNvbHV0ZWAsXG4gICAgLy8gaW4gb3JkZXIgZm9yIHVzIHRvIGJlIGFibGUgdG8gbWVhc3VyZSBpdCBjb3JyZWN0bHkuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgei1pbmRleDogJG92ZXJsYXktei1pbmRleDtcblxuICAgIC8vIEZvciBjb25uZWN0ZWQtcG9zaXRpb24gb3ZlcmxheXMsIHdlIHNldCBgZGlzcGxheTogZmxleGAgaW5cbiAgICAvLyBvcmRlciB0byBmb3JjZSBgbWF4LXdpZHRoYCBhbmQgYG1heC1oZWlnaHRgIHRvIHRha2UgZWZmZWN0LlxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuY2RrLW92ZXJsYXktYmFja2Ryb3Age1xuICAgIC8vIFRPRE8oamVsYm91cm4pOiByZXVzZSBzaWRlbmF2IGZ1bGxzY3JlZW4gbWl4aW4uXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcblxuICAgIHotaW5kZXg6ICRvdmVybGF5LWJhY2tkcm9wLXotaW5kZXg7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRiYWNrZHJvcC1hbmltYXRpb24tZHVyYXRpb24gJGJhY2tkcm9wLWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb247XG4gICAgb3BhY2l0eTogMDtcblxuICAgICYuY2RrLW92ZXJsYXktYmFja2Ryb3Atc2hvd2luZyB7XG4gICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAvLyBOb3RlIHRoYXQgd2UgY2FuJ3QgaW1wb3J0IGFuZCB1c2UgdGhlIGBoaWdoLWNvbnRyYXN0YCBtaXhpbiBmcm9tIGBfYTExeS5zY3NzYCwgYmVjYXVzZVxuICAgICAgLy8gdGhpcyBmaWxlIHdpbGwgYmUgY29waWVkIHRvIHRoZSB0b3AtbGV2ZWwgYGNka2AgcGFja2FnZSB3aGVuIHB1dHRpbmcgdG9nZXRoZXIgdGhlIGZpbGVzXG4gICAgICAvLyBmb3IgbnBtLiBBbnkgcmVsYXRpdmUgaW1wb3J0IHBhdGhzIHdlIHVzZSBoZXJlIHdpbGwgYmVjb21lIGludmFsaWQgb25jZSB0aGUgZmlsZSBpcyBjb3BpZWQuXG4gICAgICAuY2RrLWhpZ2gtY29udHJhc3QtYWN0aXZlICYge1xuICAgICAgICAvLyBJbiBoaWdoIGNvbnRyYXN0IG1vZGUgdGhlIHJnYmEgYmFja2dyb3VuZCB3aWxsIGJlY29tZSBzb2xpZFxuICAgICAgICAvLyBzbyB3ZSBuZWVkIHRvIGZhbGwgYmFjayB0byBtYWtpbmcgaXQgb3BhcXVlIHVzaW5nIGBvcGFjaXR5YC5cbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jZGstb3ZlcmxheS1kYXJrLWJhY2tkcm9wIHtcbiAgICBiYWNrZ3JvdW5kOiAkb3ZlcmxheS1iYWNrZHJvcC1jb2xvcjtcbiAgfVxuXG4gIC5jZGstb3ZlcmxheS10cmFuc3BhcmVudC1iYWNrZHJvcCB7XG4gICAgLy8gRGVmaW5lIGEgdHJhbnNpdGlvbiBvbiB0aGUgdmlzaWJpbGl0eSBzbyB0aGF0IHRoZSBgdHJhbnNpdGlvbmVuZGAgZXZlbnQgY2FuIGZpcmUgaW1tZWRpYXRlbHkuXG4gICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAxbXMgbGluZWFyLCBvcGFjaXR5IDFtcyBsaW5lYXI7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDE7XG5cbiAgICAvLyBOb3RlOiBhcyBvZiBGaXJlZm94IDU3LCBoYXZpbmcgdGhlIGJhY2tkcm9wIGJlIGBiYWNrZ3JvdW5kOiBub25lYCB3aWxsIHByZXZlbnQgaXQgZnJvbVxuICAgIC8vIGNhcHR1cmluZyB0aGUgdXNlcidzIG1vdXNlIHNjcm9sbCBldmVudHMuIFNpbmNlIHdlIGFsc28gY2FuJ3QgdXNlIHNvbWV0aGluZyBsaWtlXG4gICAgLy8gYHJnYmEoMCwgMCwgMCwgMClgLCB3ZSB3b3JrIGFyb3VuZCB0aGUgaW5jb25zaXN0ZW5jeSBieSBub3Qgc2V0dGluZyB0aGUgYmFja2dyb3VuZCBhdFxuICAgIC8vIGFsbCBhbmQgdXNpbmcgYG9wYWNpdHlgIHRvIG1ha2UgdGhlIGVsZW1lbnQgdHJhbnNwYXJlbnQuXG4gICAgJi5jZGstb3ZlcmxheS1iYWNrZHJvcC1zaG93aW5nIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cbiAgfVxuXG4gIC5jZGstb3ZlcmxheS1iYWNrZHJvcC1ub29wLWFuaW1hdGlvbiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIE92ZXJsYXkgcGFyZW50IGVsZW1lbnQgdXNlZCB3aXRoIHRoZSBjb25uZWN0ZWQgcG9zaXRpb24gc3RyYXRlZ3kuIFVzZWQgdG8gY29uc3RyYWluIHRoZVxuICAvLyBvdmVybGF5IGVsZW1lbnQncyBzaXplIHRvIGZpdCB3aXRoaW4gdGhlIHZpZXdwb3J0LlxuICAuY2RrLW92ZXJsYXktY29ubmVjdGVkLXBvc2l0aW9uLWJvdW5kaW5nLWJveCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6ICRvdmVybGF5LXotaW5kZXg7XG5cbiAgICAvLyBXZSB1c2UgYGRpc3BsYXk6IGZsZXhgIG9uIHRoaXMgZWxlbWVudCBleGNsdXNpdmVseSBmb3IgY2VudGVyaW5nIGNvbm5lY3RlZCBvdmVybGF5cy5cbiAgICAvLyBXaGVuICpub3QqIGNlbnRlcmluZywgYSB0b3AvbGVmdC9ib3R0b20vcmlnaHQgd2lsbCBiZSBzZXQgd2hpY2ggb3ZlcnJpZGVzIHRoZSBub3JtYWxcbiAgICAvLyBmbGV4IGxheW91dC5cbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgLy8gV2UgdXNlIHRoZSBgY29sdW1uYCBkaXJlY3Rpb24gaGVyZSB0byBhdm9pZCBzb21lIGZsZXhib3ggaXNzdWVzIGluIEVkZ2VcbiAgICAvLyB3aGVuIHVzaW5nIHRoZSBcImdyb3cgYWZ0ZXIgb3BlblwiIG9wdGlvbnMuXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgIC8vIEFkZCBzb21lIGRpbWVuc2lvbnMgc28gdGhlIGVsZW1lbnQgaGFzIGFuIGBpbm5lclRleHRgIHdoaWNoIHNvbWUgcGVvcGxlIGRlcGVuZCBvbiBpbiB0ZXN0cy5cbiAgICBtaW4td2lkdGg6IDFweDtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gIH1cblxuICAvLyBVc2VkIHdoZW4gZGlzYWJsaW5nIGdsb2JhbCBzY3JvbGxpbmcuXG4gIC5jZGstZ2xvYmFsLXNjcm9sbGJsb2NrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG5cbiAgICAvLyBOZWNlc3NhcnkgZm9yIHRoZSBjb250ZW50IG5vdCB0byBsb3NlIGl0cyB3aWR0aC4gTm90ZSB0aGF0IHdlJ3JlIHVzaW5nIDEwMCUsIGluc3RlYWQgb2ZcbiAgICAvLyAxMDB2dywgYmVjYXVzZSAxMDB2dyBpbmNsdWRlcyB0aGUgd2lkdGggcGx1cyB0aGUgc2Nyb2xsYmFyLCB3aGVyZWFzIDEwMCUgaXMgdGhlIHdpZHRoXG4gICAgLy8gdGhhdCB0aGUgZWxlbWVudCBoYWQgYmVmb3JlIHdlIG1hZGUgaXQgYGZpeGVkYC5cbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC8vIE5vdGU6IHRoaXMgd2lsbCBhbHdheXMgYWRkIGEgc2Nyb2xsYmFyIHRvIHdoYXRldmVyIGVsZW1lbnQgaXQgaXMgb24sIHdoaWNoIGNhblxuICAgIC8vIHBvdGVudGlhbGx5IHJlc3VsdCBpbiBkb3VibGUgc2Nyb2xsYmFycy4gSXQgc2hvdWxkbid0IGJlIGFuIGlzc3VlLCBiZWNhdXNlIHdlIHdvbid0XG4gICAgLy8gYmxvY2sgc2Nyb2xsaW5nIG9uIGEgcGFnZSB0aGF0IGRvZXNuJ3QgaGF2ZSBhIHNjcm9sbGJhciBpbiB0aGUgZmlyc3QgcGxhY2UuXG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICB9XG59XG4iLCIvLyBTdHJ1Y3R1cmFsIHN0eWxlcyBmb3IgdGhlIGF1dG9zaXplIHRleHQgZmllbGRzLlxuQG1peGluIHRleHQtZmllbGQtYXV0b3NpemUoKSB7XG4gIC8vIFJlbW92ZSB0aGUgcmVzaXplIGhhbmRsZSBvbiBhdXRvc2l6aW5nIHRleHRhcmVhcywgYmVjYXVzZSB3aGF0ZXZlciBoZWlnaHRcbiAgLy8gdGhlIHVzZXIgcmVzaXplZCB0byB3aWxsIGJlIG92ZXJ3cml0dGVuIG9uY2UgdGhleSBzdGFydCB0eXBpbmcgYWdhaW4uXG4gIHRleHRhcmVhLmNkay10ZXh0YXJlYS1hdXRvc2l6ZSB7XG4gICAgcmVzaXplOiBub25lO1xuICB9XG5cbiAgLy8gVGhpcyBjbGFzcyBpcyB0ZW1wb3JhcmlseSBhcHBsaWVkIHRvIHRoZSB0ZXh0YXJlYSB3aGVuIGl0IGlzIGJlaW5nIG1lYXN1cmVkLiBJdCBpcyBpbW1lZGlhdGVseVxuICAvLyByZW1vdmVkIHdoZW4gbWVhc3VyaW5nIGlzIGNvbXBsZXRlLiBXZSB1c2UgYCFpbXBvcnRhbnRgIHJ1bGVzIGhlcmUgdG8gbWFrZSBzdXJlIHVzZXItc3BlY2lmaWVkXG4gIC8vIHJ1bGVzIGRvIG5vdCBpbnRlcmZlcmUgd2l0aCB0aGUgbWVhc3VyZW1lbnQuXG4gIHRleHRhcmVhLmNkay10ZXh0YXJlYS1hdXRvc2l6ZS1tZWFzdXJpbmcge1xuICAgIEBpbmNsdWRlIF9hdXRvc2l6ZS1tZWFzdXJpbmctYmFzZTtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBTaW1pbGFyIHRvIHRoZSBgY2RrLXRleHRhcmVhLWF1dG9zaXplLW1lYXN1cmluZ2AgY2xhc3MsIGJ1dCBvbmx5IGFwcGxpZWQgb24gRmlyZWZveC4gV2UgbmVlZFxuICAvLyB0byB1c2UgdGhpcyBjbGFzcywgYmVjYXVzZSBGaXJlZm94IGhhcyBhIGJ1ZyB3aGVyZSBjaGFuZ2luZyB0aGUgYG92ZXJmbG93YCBicmVha3MgdGhlIHVzZXInc1xuICAvLyBhYmlsaXR5IHRvIHVuZG8vcmVkbyB3aGF0IHRoZXkgd2VyZSB0eXBpbmcgKHNlZSAjMTY2MjkpLiBUaGlzIGNsYXNzIGlzIG9ubHkgc2NvcGVkIHRvIEZpcmVmb3gsXG4gIC8vIGJlY2F1c2UgdGhlIG1lYXN1cmVtZW50cyB0aGVyZSBkb24ndCBzZWVtIHRvIGJlIGFmZmVjdGVkIGJ5IHRoZSBgaGVpZ2h0OiAwYCwgd2hlcmVhcyBvbiBvdGhlclxuICAvLyBicm93c2VycyB0aGV5IGFyZSwgZS5nLiBDaHJvbWUgZGV0ZWN0cyBsb25nZXIgdGV4dCBhbmQgSUUgZG9lcyd0IHJlc2l6ZSBiYWNrIHRvIG5vcm1hbC5cbiAgLy8gSWRlbnRpY2FsIGlzc3VlIHJlcG9ydDogaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDQ4Nzg0XG4gIHRleHRhcmVhLmNkay10ZXh0YXJlYS1hdXRvc2l6ZS1tZWFzdXJpbmctZmlyZWZveCB7XG4gICAgQGluY2x1ZGUgX2F1dG9zaXplLW1lYXN1cmluZy1iYXNlO1xuICAgIGhlaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIENvcmUgc3R5bGVzIHRoYXQgZW5hYmxlIG1vbml0b3JpbmcgYXV0b2ZpbGwgc3RhdGUgb2YgdGV4dCBmaWVsZHMuXG5AbWl4aW4gdGV4dC1maWVsZC1hdXRvZmlsbCgpIHtcbiAgLy8gS2V5ZnJhbWVzIHRoYXQgYXBwbHkgbm8gc3R5bGVzLCBidXQgYWxsb3cgdXMgdG8gbW9uaXRvciB3aGVuIGFuIHRleHQgZmllbGQgYmVjb21lcyBhdXRvZmlsbGVkXG4gIC8vIGJ5IHdhdGNoaW5nIGZvciB0aGUgYW5pbWF0aW9uIGV2ZW50cyB0aGF0IGFyZSBmaXJlZCB3aGVuIHRoZXkgc3RhcnQuIE5vdGU6IHRoZSAvKiEqLyBjb21tZW50IGlzXG4gIC8vIG5lZWRlZCB0byBwcmV2ZW50IExpYlNhc3MgZnJvbSBzdHJpcHBpbmcgdGhlIGtleWZyYW1lcyBvdXQuXG4gIC8vIEJhc2VkIG9uOiBodHRwczovL21lZGl1bS5jb20vQGJydW5uL2RldGVjdGluZy1hdXRvZmlsbGVkLWZpZWxkcy1pbi1qYXZhc2NyaXB0LWFlZDU5OGQyNWRhN1xuICBAa2V5ZnJhbWVzIGNkay10ZXh0LWZpZWxkLWF1dG9maWxsLXN0YXJ0IHsvKiEqL31cbiAgQGtleWZyYW1lcyBjZGstdGV4dC1maWVsZC1hdXRvZmlsbC1lbmQgey8qISovfVxuXG4gIC5jZGstdGV4dC1maWVsZC1hdXRvZmlsbC1tb25pdG9yZWQ6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgLy8gU2luY2UgQ2hyb21lIDgwIHdlIG5lZWQgYSAxbXMgZGVsYXksIG9yIHRoZSBhbmltYXRpb25zdGFydCBldmVudCB3b24ndCBmaXJlLlxuICAgIGFuaW1hdGlvbjogY2RrLXRleHQtZmllbGQtYXV0b2ZpbGwtc3RhcnQgMHMgMW1zO1xuICB9XG5cbiAgLmNkay10ZXh0LWZpZWxkLWF1dG9maWxsLW1vbml0b3JlZDpub3QoOi13ZWJraXQtYXV0b2ZpbGwpIHtcbiAgICAvLyBTaW5jZSBDaHJvbWUgODAgd2UgbmVlZCBhIDFtcyBkZWxheSwgb3IgdGhlIGFuaW1hdGlvbnN0YXJ0IGV2ZW50IHdvbid0IGZpcmUuXG4gICAgYW5pbWF0aW9uOiBjZGstdGV4dC1maWVsZC1hdXRvZmlsbC1lbmQgMHMgMW1zO1xuICB9XG59XG5cbkBtaXhpbiBfYXV0b3NpemUtbWVhc3VyaW5nLWJhc2Uge1xuICAvLyBIYXZpbmcgMnB4IHRvcCBhbmQgYm90dG9tIHBhZGRpbmcgc2VlbXMgdG8gZml4IGEgYnVnIHdoZXJlIENocm9tZSBnZXRzIGFuIGluY29ycmVjdFxuICAvLyBtZWFzdXJlbWVudC4gV2UganVzdCBoYXZlIHRvIGFjY291bnQgZm9yIGl0IGxhdGVyIGFuZCBzdWJ0cmFjdCBpdCBvZmYgdGhlIGZpbmFsIHJlc3VsdC5cbiAgcGFkZGluZzogMnB4IDAgIWltcG9ydGFudDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3ggIWltcG9ydGFudDtcbn1cblxuLy8gVXNlZCB0byBnZW5lcmF0ZSBVSURzIGZvciBrZXlmcmFtZXMgdXNlZCB0byBjaGFuZ2UgdGhlIHRleHQgZmllbGQgYXV0b2ZpbGwgc3R5bGVzLlxuJGF1dG9maWxsLWNvbG9yLWZyYW1lLWNvdW50OiAwO1xuXG4vLyBNaXhpbiB1c2VkIHRvIGFwcGx5IGN1c3RvbSBiYWNrZ3JvdW5kIGFuZCBmb3JlZ3JvdW5kIGNvbG9ycyB0byBhbiBhdXRvZmlsbGVkIHRleHQgZmllbGQuXG4vLyBCYXNlZCBvbjogaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMjc4MTU0OS9cbi8vIHJlbW92aW5nLWlucHV0LWJhY2tncm91bmQtY29sb3VyLWZvci1jaHJvbWUtYXV0b2NvbXBsZXRlI2Fuc3dlci0zNzQzMjI2MFxuQG1peGluIHRleHQtZmllbGQtYXV0b2ZpbGwtY29sb3IoJGJhY2tncm91bmQsICRmb3JlZ3JvdW5kOicnKSB7XG4gIEBrZXlmcmFtZXMgY2RrLXRleHQtZmllbGQtYXV0b2ZpbGwtY29sb3ItI3skYXV0b2ZpbGwtY29sb3ItZnJhbWUtY291bnR9IHtcbiAgICB0byB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICAgIEBpZiAkZm9yZWdyb3VuZCAhPSAnJyB7IGNvbG9yOiAkZm9yZWdyb3VuZDsgfVxuICAgIH1cbiAgfVxuXG4gICY6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgYW5pbWF0aW9uOiBjZGstdGV4dC1maWVsZC1hdXRvZmlsbC1jb2xvci0jeyRhdXRvZmlsbC1jb2xvci1mcmFtZS1jb3VudH0gYm90aDtcbiAgfVxuXG4gICYuY2RrLXRleHQtZmllbGQtYXV0b2ZpbGwtbW9uaXRvcmVkOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgIC8vIFNpbmNlIENocm9tZSA4MCB3ZSBuZWVkIGEgMW1zIGRlbGF5IGZvciBjZGstdGV4dC1maWVsZC1hdXRvZmlsbC1zdGFydCwgb3IgdGhlIGFuaW1hdGlvbnN0YXJ0XG4gICAgLy8gZXZlbnQgd29uJ3QgZmlyZS5cbiAgICBhbmltYXRpb246IGNkay10ZXh0LWZpZWxkLWF1dG9maWxsLXN0YXJ0IDBzIDFtcyxcbiAgICAgICAgICAgICAgIGNkay10ZXh0LWZpZWxkLWF1dG9maWxsLWNvbG9yLSN7JGF1dG9maWxsLWNvbG9yLWZyYW1lLWNvdW50fSBib3RoO1xuICB9XG5cbiAgJGF1dG9maWxsLWNvbG9yLWZyYW1lLWNvdW50OiAkYXV0b2ZpbGwtY29sb3ItZnJhbWUtY291bnQgKyAxICFnbG9iYWw7XG59XG5cbi8vIEBkZXByZWNhdGVkIFVzZSBgYXV0b3NpemVgIGFuZCBgYXV0b2ZpbGxgIGluc3RlYWQuXG5AbWl4aW4gdGV4dC1maWVsZCB7XG4gIEBpbmNsdWRlIHRleHQtZmllbGQtYXV0b3NpemUoKTtcbiAgQGluY2x1ZGUgdGV4dC1maWVsZC1hdXRvZmlsbCgpO1xufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuQHVzZSAnc2FzczptZXRhJztcbkB1c2UgJ0Bhbmd1bGFyL2Nkayc7XG5AdXNlICcuLi9zdHlsZS9sYXlvdXQtY29tbW9uJztcbkB1c2UgJy4uL3RoZW1pbmcvdGhlbWluZyc7XG5AdXNlICcuLi90aGVtaW5nL2luc3BlY3Rpb24nO1xuXG4vLyBQcml2YXRlIHNhc3MgdmFyaWFibGVzIHRoYXQgd2lsbCBiZSB1c2VkIGFzIHJlZmVyZW5jZSB0aHJvdWdob3V0IGNvbXBvbmVudCBzdHlsZXNoZWV0cy5cbiRkZWZhdWx0LWJvcmRlci13aWR0aDogM3B4O1xuJGRlZmF1bHQtYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiRkZWZhdWx0LWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4kZGVmYXVsdC1ib3JkZXItcmFkaXVzOiA0cHg7XG5cbi8vIE1peGluIHRoYXQgcmVuZGVycyB0aGUgZm9jdXMgaW5kaWNhdG9yIHN0cnVjdHVyYWwgc3R5bGVzLlxuQG1peGluIHN0cnVjdHVyYWwtc3R5bGluZygkcHJlZml4KSB7XG4gIC4jeyRwcmVmaXh9LWZvY3VzLWluZGljYXRvciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGxheW91dC1jb21tb24uZmlsbCgpO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZGlzcGxheTogdmFyKC0tI3skcHJlZml4fS1mb2N1cy1pbmRpY2F0b3ItZGlzcGxheSwgbm9uZSk7IC8vIEhpZGUgdGhlIGluZGljYXRvciBieSBkZWZhdWx0LlxuICAgICAgYm9yZGVyOiB2YXIoXG4gICAgICAgICAgLS0jeyRwcmVmaXh9LWZvY3VzLWluZGljYXRvci1ib3JkZXItd2lkdGgsXG4gICAgICAgICAgI3skZGVmYXVsdC1ib3JkZXItd2lkdGh9XG4gICAgICAgIClcbiAgICAgICAgdmFyKFxuICAgICAgICAgIC0tI3skcHJlZml4fS1mb2N1cy1pbmRpY2F0b3ItYm9yZGVyLXN0eWxlLFxuICAgICAgICAgICN7JGRlZmF1bHQtYm9yZGVyLXN0eWxlfVxuICAgICAgICApXG4gICAgICAgIHZhcihcbiAgICAgICAgICAtLSN7JHByZWZpeH0tZm9jdXMtaW5kaWNhdG9yLWJvcmRlci1jb2xvcixcbiAgICAgICAgICAjeyRkZWZhdWx0LWJvcmRlci1jb2xvcn1cbiAgICAgICAgKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcihcbiAgICAgICAgLS0jeyRwcmVmaXh9LWZvY3VzLWluZGljYXRvci1ib3JkZXItcmFkaXVzLFxuICAgICAgICAjeyRkZWZhdWx0LWJvcmRlci1yYWRpdXN9XG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIEJ5IGRlZmF1bHQsIHJlbmRlciB0aGUgZm9jdXMgaW5kaWNhdG9yIHdoZW4gdGhlIGZvY3VzIGluZGljYXRvciBob3N0IGVsZW1lbnQgdGFrZXMgZm9jdXMuXG4gICAgLy8gRGVmaW5pbmcgYSBwc2V1ZG8gZWxlbWVudCdzIGNvbnRlbnQgd2lsbCBjYXVzZSBpdCB0byByZW5kZXIuXG4gICAgJjpmb2N1czo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVuYWJsZSB0aGUgaW5kaWNhdG9yIGluIGhpZ2ggY29udHJhc3QgbW9kZS5cbiAgQGluY2x1ZGUgY2RrLmhpZ2gtY29udHJhc3QoYWN0aXZlLCBvZmYpIHtcbiAgICBAaW5jbHVkZSBjdXN0b21pemUtZm9jdXMtaW5kaWNhdG9ycygoZGlzcGxheTogYmxvY2spLCAkcHJlZml4KTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZXMgQ1NTIHZhcmlhYmxlIGRlY2xhcmF0aW9ucyBmcm9tIGEgbWFwLlxuQG1peGluIF9vdXRwdXQtdmFyaWFibGVzKCRtYXApIHtcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgIEBpZiAoJHZhbHVlKSB7XG4gICAgICAtLSN7JGtleX06ICN7JHZhbHVlfTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWl4aW4gdGhhdCBkZWR1cHMgQ1NTIHZhcmlhYmxlcyBmb3IgdGhlIHN0cm9uZy1mb2N1cy1pbmRpY2F0b3JzIG1peGluLlxuQG1peGluIGN1c3RvbWl6ZS1mb2N1cy1pbmRpY2F0b3JzKCRjb25maWcsICRwcmVmaXgpIHtcbiAgJGJvcmRlci1zdHlsZTogbWFwLmdldCgkY29uZmlnLCBib3JkZXItc3R5bGUpO1xuICAkYm9yZGVyLXdpZHRoOiBtYXAuZ2V0KCRjb25maWcsIGJvcmRlci13aWR0aCk7XG4gICRib3JkZXItcmFkaXVzOiBtYXAuZ2V0KCRjb25maWcsIGJvcmRlci1yYWRpdXMpO1xuICAkYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCRjb25maWcsIGJvcmRlci1jb2xvcik7XG4gICRkaXNwbGF5OiBtYXAuZ2V0KCRjb25maWcsIGRpc3BsYXkpO1xuICAkbWFwOiAoXG4gICAgJyN7JHByZWZpeH0tZm9jdXMtaW5kaWNhdG9yLWJvcmRlci1zdHlsZSc6ICRib3JkZXItc3R5bGUsXG4gICAgJyN7JHByZWZpeH0tZm9jdXMtaW5kaWNhdG9yLWJvcmRlci13aWR0aCc6ICRib3JkZXItd2lkdGgsXG4gICAgJyN7JHByZWZpeH0tZm9jdXMtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMnOiAkYm9yZGVyLXJhZGl1cyxcbiAgICAnI3skcHJlZml4fS1mb2N1cy1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yJzogJGJvcmRlci1jb2xvcixcbiAgICAnI3skcHJlZml4fS1mb2N1cy1pbmRpY2F0b3ItZGlzcGxheSc6ICRkaXNwbGF5LFxuICApO1xuXG4gIEBpZiAoJikge1xuICAgIEBpbmNsdWRlIF9vdXRwdXQtdmFyaWFibGVzKCRtYXApO1xuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBXZSB1c2UgYGh0bWxgIGhlcmUgaW5zdGVhZCBvZiBgOnJvb3RgLCBiZWNhdXNlIHRoZVxuICAgIC8vIGxhdHRlciBjYXVzZXMgc29tZSBpc3N1ZXMgd2l0aCBpbnRlcm5hbCB0b29saW5nLlxuICAgIGh0bWwge1xuICAgICAgQGluY2x1ZGUgX291dHB1dC12YXJpYWJsZXMoJG1hcCk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzdHJvbmctZm9jdXMtaW5kaWNhdG9ycygkY29uZmlnOiAoKSkge1xuICAvLyBEZWZhdWx0IGZvY3VzIGluZGljYXRvciBjb25maWcuXG4gICRkZWZhdWx0LWNvbmZpZzogKFxuICAgICAgYm9yZGVyLWNvbG9yOiBibGFjayxcbiAgICAgIGRpc3BsYXk6IGJsb2NrLFxuICApO1xuXG4gIC8vIE1lcmdlIGRlZmF1bHQgY29uZmlnIHdpdGggdXNlciBjb25maWcuXG4gICRjb25maWc6IG1hcC5tZXJnZSgkZGVmYXVsdC1jb25maWcsICRjb25maWcpO1xuXG4gIEBpbmNsdWRlIGN1c3RvbWl6ZS1mb2N1cy1pbmRpY2F0b3JzKCRjb25maWcsICdtYXQnKTtcbn1cblxuQG1peGluIG1kYy1zdHJvbmctZm9jdXMtaW5kaWNhdG9ycygkY29uZmlnOiAoKSkge1xuICAvLyBEZWZhdWx0IGZvY3VzIGluZGljYXRvciBjb25maWcuXG4gICRkZWZhdWx0LWNvbmZpZzogKFxuICAgICAgYm9yZGVyLWNvbG9yOiBibGFjayxcbiAgICAgIGRpc3BsYXk6IGJsb2NrLFxuICApO1xuXG4gIC8vIE1lcmdlIGRlZmF1bHQgY29uZmlnIHdpdGggdXNlciBjb25maWcuXG4gICRjb25maWc6IG1hcC5tZXJnZSgkZGVmYXVsdC1jb25maWcsICRjb25maWcpO1xuXG4gIEBpbmNsdWRlIGN1c3RvbWl6ZS1mb2N1cy1pbmRpY2F0b3JzKCRjb25maWcsICdtYXQtbWRjJyk7XG59XG5cbkBtaXhpbiBzdHJvbmctZm9jdXMtaW5kaWNhdG9ycy1jb2xvcigkdGhlbWUtb3ItY29sb3IpIHtcbiAgQGlmIG1ldGEudHlwZS1vZigkdGhlbWUtb3ItY29sb3IpID09ICdjb2xvcicge1xuICAgIEBpbmNsdWRlIGN1c3RvbWl6ZS1mb2N1cy1pbmRpY2F0b3JzKChcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGhlbWUtb3ItY29sb3JcbiAgICApLCAnbWF0Jyk7XG4gIH1cbiAgQGVsc2Uge1xuICAgICRib3JkZXItY29sb3I6IGluc3BlY3Rpb24uZ2V0LXRoZW1lLWNvbG9yKCR0aGVtZS1vci1jb2xvciwgcHJpbWFyeSk7XG4gICAgQGluY2x1ZGUgY3VzdG9taXplLWZvY3VzLWluZGljYXRvcnMoKFxuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3JcbiAgICApLCAnbWF0Jyk7XG4gIH1cbn1cblxuQG1peGluIHN0cm9uZy1mb2N1cy1pbmRpY2F0b3JzLXRoZW1lKCR0aGVtZS1vci1jb2xvcikge1xuICBAaWYgbWV0YS50eXBlLW9mKCR0aGVtZS1vci1jb2xvcikgPT0gJ2NvbG9yJyB7XG4gICAgQGluY2x1ZGUgY3VzdG9taXplLWZvY3VzLWluZGljYXRvcnMoKFxuICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1vci1jb2xvclxuICAgICksICdtYXQnKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgdGhlbWluZy5wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLW9yLWNvbG9yLCAnbWF0LWZvY3VzLWluZGljYXRvcnMnKSB7XG4gICAgICBAaWYgaW5zcGVjdGlvbi50aGVtZS1oYXMoJHRoZW1lLW9yLWNvbG9yLCBjb2xvcikge1xuICAgICAgICBAaW5jbHVkZSBzdHJvbmctZm9jdXMtaW5kaWNhdG9ycy1jb2xvcigkdGhlbWUtb3ItY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWRjLXN0cm9uZy1mb2N1cy1pbmRpY2F0b3JzLWNvbG9yKCR0aGVtZS1vci1jb2xvcikge1xuICBAaWYgbWV0YS50eXBlLW9mKCR0aGVtZS1vci1jb2xvcikgPT0gJ2NvbG9yJyB7XG4gICAgQGluY2x1ZGUgY3VzdG9taXplLWZvY3VzLWluZGljYXRvcnMoKFxuICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1vci1jb2xvclxuICAgICksICdtYXQtbWRjJyk7XG4gIH1cbiAgQGVsc2Uge1xuICAgICRib3JkZXItY29sb3I6IGluc3BlY3Rpb24uZ2V0LXRoZW1lLWNvbG9yKCR0aGVtZS1vci1jb2xvciwgcHJpbWFyeSk7XG4gICAgQGluY2x1ZGUgY3VzdG9taXplLWZvY3VzLWluZGljYXRvcnMoKFxuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3JcbiAgICApLCAnbWF0LW1kYycpO1xuICB9XG59XG5cbkBtaXhpbiBtZGMtc3Ryb25nLWZvY3VzLWluZGljYXRvcnMtdGhlbWUoJHRoZW1lLW9yLWNvbG9yKSB7XG4gIEBpZiBtZXRhLnR5cGUtb2YoJHRoZW1lLW9yLWNvbG9yKSA9PSAnY29sb3InIHtcbiAgICBAaW5jbHVkZSBjdXN0b21pemUtZm9jdXMtaW5kaWNhdG9ycygoXG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLW9yLWNvbG9yXG4gICAgKSwgJ21hdC1tZGMnKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgdGhlbWluZy5wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoXG4gICAgICAgICR0aGVtZS1vci1jb2xvciwgJ21hdC1tZGMtZm9jdXMtaW5kaWNhdG9ycycpIHtcbiAgICAgIEBpZiBpbnNwZWN0aW9uLnRoZW1lLWhhcygkdGhlbWUtb3ItY29sb3IsIGNvbG9yKSB7XG4gICAgICAgIEBpbmNsdWRlIG1kYy1zdHJvbmctZm9jdXMtaW5kaWNhdG9ycy1jb2xvcigkdGhlbWUtb3ItY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGhpcyBtaXhpbiBlbnN1cmVzIGFuIGVsZW1lbnQgc3BhbnMgdG8gZmlsbCB0aGUgbmVhcmVzdCBhbmNlc3RvciB3aXRoIGRlZmluZWQgcG9zaXRpb25pbmcuXG5AbWl4aW4gZmlsbCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuIiwiQHVzZSAnQGFuZ3VsYXIvY2RrJztcbkB1c2UgJy4vdG9rZW5zL20yL21hdC9hcHAnIGFzIHRva2Vucy1tYXQtYXBwO1xuQHVzZSAnLi90b2tlbnMvdG9rZW4tdXRpbHMnO1xuQHVzZSAnLi9yaXBwbGUvcmlwcGxlJztcbkB1c2UgJy4vZm9jdXMtaW5kaWNhdG9ycy9wcml2YXRlJztcbkB1c2UgJy4vbWRjLWhlbHBlcnMvbWRjLWhlbHBlcnMnO1xuXG4vLyBNaXhpbiB0aGF0IHJlbmRlcnMgYWxsIG9mIHRoZSBjb3JlIHN0eWxlcyB0aGF0IGFyZSBub3QgdGhlbWUtZGVwZW5kZW50LlxuQG1peGluIGNvcmUoKSB7XG4gIEBpbmNsdWRlIHJpcHBsZS5yaXBwbGUoKTtcbiAgQGluY2x1ZGUgY2RrLmExMXktdmlzdWFsbHktaGlkZGVuKCk7XG4gIEBpbmNsdWRlIGNkay5vdmVybGF5KCk7XG4gIEBpbmNsdWRlIGNkay50ZXh0LWZpZWxkLWF1dG9zaXplKCk7XG4gIEBpbmNsdWRlIGNkay50ZXh0LWZpZWxkLWF1dG9maWxsKCk7XG4gIEBpbmNsdWRlIHByaXZhdGUuc3RydWN0dXJhbC1zdHlsaW5nKCdtYXQnKTtcbiAgQGluY2x1ZGUgcHJpdmF0ZS5zdHJ1Y3R1cmFsLXN0eWxpbmcoJ21hdC1tZGMnKTtcblxuICAvLyBXcmFwcGVyIGVsZW1lbnQgdGhhdCBwcm92aWRlcyB0aGUgdGhlbWUgYmFja2dyb3VuZCB3aGVuIHRoZVxuICAvLyB1c2VyJ3MgY29udGVudCBpc24ndCBpbnNpZGUgb2YgYSBgbWF0LXNpZGVuYXYtY29udGFpbmVyYC5cbiAgQGF0LXJvb3Qge1xuICAgIC5tYXQtYXBwLWJhY2tncm91bmQge1xuICAgICAgQGluY2x1ZGUgbWRjLWhlbHBlcnMuZGlzYWJsZS1tZGMtZmFsbGJhY2stZGVjbGFyYXRpb25zIHtcbiAgICAgICAgQGluY2x1ZGUgdG9rZW4tdXRpbHMudXNlLXRva2Vucyh0b2tlbnMtbWF0LWFwcC4kcHJlZml4LCB0b2tlbnMtbWF0LWFwcC5nZXQtdG9rZW4tc2xvdHMoKSkge1xuICAgICAgICAgIC8vIE5vdGU6IHdlIG5lZWQgdG8gZW1pdCBmYWxsYmFjayB2YWx1ZXMgaGVyZSB0byBhdm9pZCBlcnJvcnMgaW4gaW50ZXJuYWwgYnVpbGRzLlxuICAgICAgICAgIEBpbmNsdWRlIHRva2VuLXV0aWxzLmNyZWF0ZS10b2tlbi1zbG90KGJhY2tncm91bmQtY29sb3IsIGJhY2tncm91bmQtY29sb3IsIHRyYW5zcGFyZW50KTtcbiAgICAgICAgICBAaW5jbHVkZSB0b2tlbi11dGlscy5jcmVhdGUtdG9rZW4tc2xvdChjb2xvciwgdGV4dC1jb2xvciwgaW5oZXJpdCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDb3B5cmlnaHQgMjAyMCBHb29nbGUgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG4vL1xuXG5AdXNlICdzYXNzOmxpc3QnO1xuQHVzZSAnc2FzczptYXAnO1xuQHVzZSAnc2FzczptZXRhJztcbkB1c2UgJy4vZ3NzJztcblxuLy8vIFdoZW4gdHJ1ZSwgYWRkIGFuIGFkZGl0aW9uYWwgcHJvcGVydHkvdmFsdWUgZGVjbGFyYXRpb24gYmVmb3JlIGRlY2xhcmF0aW9uc1xuLy8vIHRoYXQgdXNlIGFkdmFuY2VkIGZlYXR1cmVzIHN1Y2ggYXMgY3VzdG9tIHByb3BlcnRpZXMgb3IgQ1NTIGZ1bmN0aW9ucy4gVGhpc1xuLy8vIGFkZHMgZmFsbGJhY2sgc3VwcG9ydCBmb3Igb2xkZXIgYnJvd3NlcnMgc3VjaCBhcyBJRTExIHRoYXQgZG8gbm90IHN1cHBvcnRcbi8vLyB0aGVzZSBmZWF0dXJlcyBhdCB0aGUgY29zdCBvZiBhZGRpdGlvbmFsIENTUy4gU2V0IHRoaXMgdmFyaWFibGUgdG8gZmFsc2UgdG9cbi8vLyBkaXNhYmxlIGdlbmVyYXRpbmcgZmFsbGJhY2sgZGVjbGFyYXRpb25zLlxuJGVuYWJsZS1mYWxsYmFjay1kZWNsYXJhdGlvbnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBXcml0ZXMgYSBDU1MgcHJvcGVydHkvdmFsdWUgZGVjbGFyYXRpb24uIFRoaXMgbWl4aW4gaXMgdXNlZCB0aHJvdWdob3V0IHRoZVxuLy8vIHRoZW1lIHBhY2thZ2UgZm9yIGNvbnNpc3RlbmN5IGZvciBkeW5hbWljYWxseSBzZXR0aW5nIENTUyBwcm9wZXJ0eSB2YWx1ZXMuXG4vLy9cbi8vLyBUaGlzIG1peGluIG1heSBvcHRpb25hbGx5IHRha2UgYSBmYWxsYmFjayB2YWx1ZS4gRm9yIGFkdmFuY2VkIGZlYXR1cmVzIHN1Y2hcbi8vLyBhcyBjdXN0b20gcHJvcGVydGllcyBvciBDU1MgZnVuY3Rpb25zIGxpa2UgbWluIGFuZCBtYXgsIGEgZmFsbGJhY2sgdmFsdWUgaXNcbi8vLyByZWNvbW1lbmRlZCB0byBzdXBwb3J0IG9sZGVyIGJyb3dzZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwcm9wZXJ0eSAtIFRoZSBDU1MgcHJvcGVydHkgb2YgdGhlIGRlY2xhcmF0aW9uLlxuLy8vIEBwYXJhbSB7Kn0gJHZhbHVlIC0gVGhlIHZhbHVlIG9mIHRoZSBDU1MgZGVjbGFyYXRpb24uIFRoZSB2YWx1ZSBzaG91bGQgYmVcbi8vLyAgICAgcmVzb2x2ZWQgYnkgb3RoZXIgdGhlbWUgZnVuY3Rpb25zIGZpcnN0IChpLmUuIGN1c3RvbSBwcm9wZXJ0eSBNYXBzIGFuZFxuLy8vICAgICBNYXRlcmlhbCB0aGVtZSBrZXlzIGFyZSBub3Qgc3VwcG9ydGVkIGluIHRoaXMgbWl4aW4pLiBJZiB0aGUgdmFsdWUgaXNcbi8vLyAgICAgbnVsbCwgbm8gZGVjbGFyYXRpb25zIHdpbGwgYmUgZW1pdHRlZC5cbi8vLyBAcGFyYW0geyp9ICRmYWxsYmFjayAtIEFuIG9wdGlvbmFsIGZhbGxiYWNrIHZhbHVlIGZvciBvbGRlciBicm93c2Vycy4gSWZcbi8vLyAgICAgcHJvdmlkZWQsIGEgc2Vjb25kIHByb3BlcnR5L3ZhbHVlIGRlY2xhcmF0aW9uIHdpbGwgYmUgYWRkZWQgYmVmb3JlIHRoZVxuLy8vICAgICBtYWluIHByb3BlcnR5L3ZhbHVlIGRlY2xhcmF0aW9uLlxuLy8vIEBwYXJhbSB7TWFwfSAkZ3NzIC0gQW4gb3B0aW9uYWwgTWFwIG9mIEdTUyBhbm5vdGF0aW9ucyB0byBhZGQuXG4vLy8gQHBhcmFtIHtCb29sfSAkaW1wb3J0YW50IC0gSWYgdHJ1ZSwgYWRkIGAhaW1wb3J0YW50YCB0byB0aGUgZGVjbGFyYXRpb24uXG5AbWl4aW4gZGVjbGFyYXRpb24oXG4gICRwcm9wZXJ0eSxcbiAgJHZhbHVlLFxuICAkZmFsbGJhY2stdmFsdWU6IG51bGwsXG4gICRnc3M6ICgpLFxuICAkaW1wb3J0YW50OiBmYWxzZVxuKSB7XG4gIC8vIE5vcm1hbGx5IHNldHRpbmcgYSBudWxsIHZhbHVlIHRvIGEgcHJvcGVydHkgd2lsbCBub3QgZW1pdCBDU1MsIHNvIG1peGluc1xuICAvLyB3b3VsZG4ndCBuZWVkIHRvIGNoZWNrIHRoaXMuIEhvd2V2ZXIsIFNhc3Mgd2lsbCB0aHJvdyBhbiBlcnJvciBpZiB0aGVcbiAgLy8gaW50ZXJwb2xhdGVkIHByb3BlcnR5IGlzIGEgY3VzdG9tIHByb3BlcnR5LlxuICBAaWYgJHZhbHVlICE9IG51bGwge1xuICAgICRpbXBvcnRhbnQtcnVsZTogaWYoJGltcG9ydGFudCwgJyAhaW1wb3J0YW50JywgJycpO1xuXG4gICAgQGlmICRmYWxsYmFjay12YWx1ZSBhbmQgJGVuYWJsZS1mYWxsYmFjay1kZWNsYXJhdGlvbnMge1xuICAgICAgQGluY2x1ZGUgZ3NzLmFubm90YXRlKCRnc3MpO1xuICAgICAgI3skcHJvcGVydHl9OiAjeyRmYWxsYmFjay12YWx1ZX0gI3skaW1wb3J0YW50LXJ1bGV9O1xuXG4gICAgICAvLyBBZGQgQGFsdGVybmF0ZSB0byBhbm5vdGF0aW9ucy5cbiAgICAgICRnc3M6IG1hcC5tZXJnZShcbiAgICAgICAgJGdzcyxcbiAgICAgICAgKFxuICAgICAgICAgIGFsdGVybmF0ZTogdHJ1ZSxcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBnc3MuYW5ub3RhdGUoJGdzcyk7XG4gICAgI3skcHJvcGVydHl9OiAjeyR2YWx1ZX0jeyRpbXBvcnRhbnQtcnVsZX07XG4gIH1cbn1cblxuLy8vIFVucGFja3Mgc2hvcnRoYW5kIHZhbHVlcyBmb3IgQ1NTIHByb3BlcnRpZXMgKGkuZS4gbGlzdHMgb2YgMS0zIHZhbHVlcykuXG4vLy8gSWYgYSBsaXN0IG9mIDQgdmFsdWVzIGlzIGdpdmVuLCBpdCBpcyByZXR1cm5lZCBhcy1pcy5cbi8vL1xuLy8vIEV4YW1wbGVzOlxuLy8vXG4vLy8gdW5wYWNrLXZhbHVlKDRweCkgPT4gNHB4IDRweCA0cHggNHB4XG4vLy8gdW5wYWNrLXZhbHVlKDRweCAycHgpID0+IDRweCAycHggNHB4IDJweFxuLy8vIHVucGFjay12YWx1ZSg0cHggMnB4IDJweCkgPT4gNHB4IDJweCAycHggMnB4XG4vLy8gdW5wYWNrLXZhbHVlKDRweCAycHggMCAycHgpID0+IDRweCAycHggMCAycHhcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyIHwgTWFwIHwgTGlzdH0gJHZhbHVlIC0gTGlzdCBvZiAxIHRvIDQgdmFsdWUgbnVtYmVycy5cbi8vLyBAcmV0dXJuIHtMaXN0fSBhIExpc3Qgb2YgNCB2YWx1ZSBudW1iZXJzLlxuQGZ1bmN0aW9uIHVucGFjay12YWx1ZSgkdmFsdWUpIHtcbiAgQGlmIG1ldGEudHlwZS1vZigkdmFsdWUpID09ICdtYXAnIG9yIGxpc3QubGVuZ3RoKCR2YWx1ZSkgPT0gMSB7XG4gICAgQHJldHVybiAkdmFsdWUgJHZhbHVlICR2YWx1ZSAkdmFsdWU7XG4gIH0gQGVsc2UgaWYgbGlzdC5sZW5ndGgoJHZhbHVlKSA9PSA0IHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfSBAZWxzZSBpZiBsaXN0Lmxlbmd0aCgkdmFsdWUpID09IDMge1xuICAgIEByZXR1cm4gbGlzdC5udGgoJHZhbHVlLCAxKSBsaXN0Lm50aCgkdmFsdWUsIDIpIGxpc3QubnRoKCR2YWx1ZSwgMylcbiAgICAgIGxpc3QubnRoKCR2YWx1ZSwgMik7XG4gIH0gQGVsc2UgaWYgbGlzdC5sZW5ndGgoJHZhbHVlKSA9PSAyIHtcbiAgICBAcmV0dXJuIGxpc3QubnRoKCR2YWx1ZSwgMSkgbGlzdC5udGgoJHZhbHVlLCAyKSBsaXN0Lm50aCgkdmFsdWUsIDEpXG4gICAgICBsaXN0Lm50aCgkdmFsdWUsIDIpO1xuICB9XG5cbiAgQGVycm9yIFwiSW52YWxpZCBDU1MgcHJvcGVydHkgdmFsdWU6ICcjeyR2YWx1ZX0nIGlzIG1vcmUgdGhhbiA0IHZhbHVlc1wiO1xufVxuIiwiQHVzZSAnc2Fzczpjb2xvcic7XG5AdXNlICdzYXNzOmxpc3QnO1xuQHVzZSAnc2FzczptYXAnO1xuQHVzZSAnc2FzczptZXRhJztcblxuLy8vIEluY2x1ZGUgY29udGVudCB1bmRlciB0aGUgY3VycmVudCBzZWxlY3RvciAoJikgb3IgdGhlIGRvY3VtZW50IHJvb3QgaWYgdGhlcmUgaXMgbm8gY3VycmVudFxuLy8vIHNlbGVjdG9yLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcm9vdCBbaHRtbF0gVGhlIGRlZmF1bHQgcm9vdCBzZWxlY3RvciB0byB1c2Ugd2hlbiB0aGVyZSBpcyBubyBjdXJyZW50IHNlbGVjdG9yLlxuLy8vIEBvdXRwdXQgVGhlIGdpdmVuIGNvbnRlbnQgdW5kZXIgdGhlIGN1cnJlbnQgc2VsZWN0b3IsIG9yIHJvb3Qgc2VsZWN0b3IgaWYgdGhlcmUgaXMgbm8gY3VycmVudFxuLy8vICAgICBzZWxlY3Rvci5cbi8vLyBAY29udGVudCBDb250ZW50IHRvIG91dHB1dCB1bmRlciB0aGUgY3VycmVudCBzZWxlY3Rvciwgb3Igcm9vdCBzZWxlY3RvciBpZiB0aGVyZSBpcyBubyBjdXJyZW50XG4vLy8gICAgIHNlbGVjdG9yLlxuQG1peGluIGN1cnJlbnQtc2VsZWN0b3Itb3Itcm9vdCgkcm9vdDogaHRtbCkge1xuICBAaWYgJiB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgICN7JHJvb3R9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQSB2ZXJzaW9uIG9mIHRoZSBzdGFuZGFyZCBgbWFwLm1lcmdlYCBmdW5jdGlvbiB0aGF0IHRha2VzIGEgdmFyaWFibGUgbnVtYmVyIG9mIGFyZ3VtZW50cy5cbi8vLyBFYWNoIGFyZ3VtZW50IGlzIG1lcmdlZCBpbnRvIHRoZSBmaW5hbCByZXN1bHQgZnJvbSBsZWZ0IHRvIHJpZ2h0LlxuLy8vIEBwYXJhbSB7TGlzdH0gJG1hcHMgVGhlIG1hcHMgdG8gY29tYmluZSB3aXRoIG1hcC5tZXJnZVxuLy8vIEByZXR1cm4ge01hcH0gVGhlIGNvbWJpbmVkIHJlc3VsdCBvZiBzdWNjZXNzaXZlbHkgY2FsbGluZyBtYXAubWVyZ2Ugd2l0aCBlYWNoIHBhcmFtZXRlci5cbkBmdW5jdGlvbiBtZXJnZS1hbGwoJG1hcHMuLi4pIHtcbiAgJHJlc3VsdDogKCk7XG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgICRyZXN1bHQ6IG1hcC5tZXJnZSgkcmVzdWx0LCAkbWFwKTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vLyBBIHZlcnNpb24gb2YgdGhlIHN0YW5kYXJkIGBtYXAuZGVlcC1tZXJnZWAgZnVuY3Rpb24gdGhhdCB0YWtlcyBhIHZhcmlhYmxlIG51bWJlciBvZiBhcmd1bWVudHMuXG4vLy8gRWFjaCBhcmd1bWVudCBpcyBkZWVwLW1lcmdlZCBpbnRvIHRoZSBmaW5hbCByZXN1bHQgZnJvbSBsZWZ0IHRvIHJpZ2h0LlxuLy8vIEBwYXJhbSB7TGlzdH0gJG1hcHMgVGhlIG1hcHMgdG8gY29tYmluZSB3aXRoIG1hcC5kZWVwLW1lcmdlXG4vLy8gQHJldHVybiB7TWFwfSBUaGUgY29tYmluZWQgcmVzdWx0IG9mIHN1Y2Nlc3NpdmVseSBjYWxsaW5nIG1hcC5kZWVwLW1lcmdlIHdpdGggZWFjaCBwYXJhbWV0ZXIuXG5AZnVuY3Rpb24gZGVlcC1tZXJnZS1hbGwoJG1hcHMuLi4pIHtcbiAgJHJlc3VsdDogKCk7XG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgICRyZXN1bHQ6IG1hcC5kZWVwLW1lcmdlKCRyZXN1bHQsICRtYXApO1xuICB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8vIENvZXJjZXMgdGhlIGdpdmVuIHZhbHVlIHRvIGEgbGlzdCwgYnkgY29udmVydGluZyBhbnkgbm9uLWxpc3QgdmFsdWUgaW50byBhIHNpbmdsZS1pdGVtIGxpc3QuXG4vLy8gVGhpcyBzaG91bGQgYmUgdXNlZCB3aGVuIGRlYWxpbmcgd2l0aCB1c2VyLXBhc3NlZCBsaXN0cyBvZiBhcmdzIHRvIGF2b2lkIGNvbmZ1c2luZyBlcnJvcnMsXG4vLy8gc2luY2UgU2FzcyB0cmVhdHMgYCgkeClgIGFzIGVxdWl2YWxlbnQgdG8gYCR4YC5cbi8vLyBAcGFyYW0ge0FueX0gJHZhbHVlIFRoZSB2YWx1ZSB0byBjb2VyY2UgdG8gYSBsaXN0LlxuLy8vIEByZXR1cm4ge0xpc3R9IFRoZSBvcmlnaW5hbCAkdmFsdWUgaWYgaXQgd2FzIGEgbGlzdCwgb3RoZXJ3aXNlIGEgc2luZ2xlLWl0ZW0gbGlzdCBjb250YWluaW5nXG4vLy8gICAgICR2YWx1ZS5cbkBmdW5jdGlvbiBjb2VyY2UtdG8tbGlzdCgkdmFsdWUpIHtcbiAgQHJldHVybiBpZihtZXRhLnR5cGUtb2YoJHZhbHVlKSAhPSAnbGlzdCcsICgkdmFsdWUsKSwgJHZhbHVlKTtcbn1cblxuLy8vIEEgdmVyc2lvbiBvZiB0aGUgU2FzcyBgY29sb3IuY2hhbmdlYCBmdW5jdGlvbiB0aGF0IGlzIHNhZmUgb3QgdXNlIHdpdGggQ1NTIHZhcmlhYmxlcy5cbkBmdW5jdGlvbiBzYWZlLWNvbG9yLWNoYW5nZSgkY29sb3IsICRhcmdzLi4uKSB7XG4gICRhcmdzOiBtZXRhLmtleXdvcmRzKCRhcmdzKTtcbiAgQHJldHVybiBpZihtZXRhLnR5cGUtb2YoJGNvbG9yKSA9PSAnY29sb3InLCBjb2xvci5jaGFuZ2UoJGNvbG9yLCAkYXJncy4uLiksICRjb2xvcik7XG59XG5cbi8vLyBHZXRzIHRoZSBnaXZlbiBhcmd1bWVudHMgYXMgYSBtYXAgb2Yga2V5d29yZHMgYW5kIHZhbGlkYXRlcyB0aGF0IG9ubHkgc3VwcG9ydGVkIGFyZ3VtZW50cyB3ZXJlXG4vLy8gcGFzc2VkLlxuLy8vIEBwYXJhbSB7QXJnTGlzdH0gJGFyZ3MgVGhlIGFyZ3VtZW50cyB0byBjb252ZXJ0IHRvIGEga2V5d29yZHMgbWFwLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHN1cHBvcnRlZC1hcmdzIFRoZSBzdXBwb3J0ZWQgYXJndW1lbnQgbmFtZXMuXG4vLy8gQHJldHVybiB7TWFwfSBUaGUgJGFyZ3MgYXMgYSBtYXAgb2YgYXJndW1lbnQgbmFtZSB0byBhcmd1bWVudCB2YWx1ZS5cbkBmdW5jdGlvbiB2YWxpZGF0ZS1rZXl3b3JkLWFyZ3MoJGFyZ3MsICRzdXBwb3J0ZWQtYXJncykge1xuICBAaWYgbGlzdC5sZW5ndGgoJGFyZ3MpID4gMCB7XG4gICAgQGVycm9yICN7J0V4cGVjdGVkIGtleXdvcmQgYXJncywgYnV0IGdvdCBwb3NpdGlvbmFsIGFyZ3M6ICd9I3skYXJnc307XG4gIH1cbiAgJGt3YXJnczogbWV0YS5rZXl3b3JkcygkYXJncyk7XG4gIEBlYWNoICRhcmcsICR2IGluICRrd2FyZ3Mge1xuICAgIEBpZiBsaXN0LmluZGV4KCRzdXBwb3J0ZWQtYXJncywgJGFyZykgPT0gbnVsbCB7XG4gICAgICBAZXJyb3IgI3snVW5zdXBwb3J0ZWQgYXJndW1lbnQgJ30jeyRhcmd9I3snLiBWYWxpZCBhcmd1bWVudHMgYXJlOiAnfSN7JHN1cHBvcnRlZC1hcmdzfTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAka3dhcmdzO1xufVxuIiwiQHVzZSAnc2Fzczpjb2xvcic7XG5AdXNlICdzYXNzOm1hcCc7XG5AdXNlICcuLi9jb3JlL3Rva2Vucy9tMi9tYXQvZGF0ZXBpY2tlcicgYXMgdG9rZW5zLW1hdC1kYXRlcGlja2VyO1xuQHVzZSAnLi4vY29yZS90aGVtaW5nL3RoZW1pbmcnO1xuQHVzZSAnLi4vY29yZS90aGVtaW5nL2luc3BlY3Rpb24nO1xuQHVzZSAnLi4vY29yZS90aGVtaW5nL3ZhbGlkYXRpb24nO1xuQHVzZSAnLi4vY29yZS90b2tlbnMvdG9rZW4tdXRpbHMnO1xuQHVzZSAnLi4vY29yZS9zdHlsZS9zYXNzLXV0aWxzJztcbkB1c2UgJy4uL2NvcmUvdHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcbkB1c2UgJy4uL2J1dHRvbi9pY29uLWJ1dHRvbi10aGVtZSc7XG5cbi8vIFRPRE8oY3Jpc2JldG8pOiB0aGVzZSB2YXJpYWJsZXMgYXJlbid0IHVzZWQgYW55bW9yZSBhbmQgc2hvdWxkIGJlIHJlbW92ZWQuXG4kc2VsZWN0ZWQtdG9kYXktYm94LXNoYWRvdy13aWR0aDogMXB4O1xuJHNlbGVjdGVkLWZhZGUtYW1vdW50OiAwLjY7XG4kcmFuZ2UtZmFkZS1hbW91bnQ6IDAuMjtcbiR0b2RheS1mYWRlLWFtb3VudDogMC4yO1xuJGNhbGVuZGFyLWJvZHktZm9udC1zaXplOiAxM3B4ICFkZWZhdWx0O1xuJGNhbGVuZGFyLXdlZWtkYXktdGFibGUtZm9udC1zaXplOiAxMXB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gX2NhbGVuZGFyLWNvbG9yKCR0aGVtZSwgJHBhbGV0dGUtbmFtZSkge1xuICAkcGFsZXR0ZS1jb2xvcjogaW5zcGVjdGlvbi5nZXQtdGhlbWUtY29sb3IoJHRoZW1lLCAkcGFsZXR0ZS1uYW1lKTtcbiAgJHJhbmdlLWNvbG9yOiB0b2tlbnMtbWF0LWRhdGVwaWNrZXIucHJpdmF0ZS1nZXQtcmFuZ2UtYmFja2dyb3VuZC1jb2xvcigkcGFsZXR0ZS1jb2xvcik7XG4gICRyYW5nZS10b2tlbnM6IHRva2Vucy1tYXQtZGF0ZXBpY2tlci5nZXQtcmFuZ2UtY29sb3ItdG9rZW5zKCRyYW5nZS1jb2xvcik7XG4gICRjYWxlbmRhci10b2tlbnM6XG4gICAgdG9rZW5zLW1hdC1kYXRlcGlja2VyLnByaXZhdGUtZ2V0LWNhbGVuZGFyLWNvbG9yLXBhbGV0dGUtY29sb3ItdG9rZW5zKCR0aGVtZSwgJHBhbGV0dGUtbmFtZSk7XG5cbiAgQGluY2x1ZGUgdG9rZW4tdXRpbHMuY3JlYXRlLXRva2VuLXZhbHVlcyh0b2tlbnMtbWF0LWRhdGVwaWNrZXIuJHByZWZpeCxcbiAgICBtYXAubWVyZ2UoJGNhbGVuZGFyLXRva2VucywgJHJhbmdlLXRva2VucykpO1xufVxuXG4vLy8gT3V0cHV0cyBiYXNlIHRoZW1lIHN0eWxlcyAoc3R5bGVzIG5vdCBkZXBlbmRlbnQgb24gdGhlIGNvbG9yLCB0eXBvZ3JhcGh5LCBvciBkZW5zaXR5IHNldHRpbmdzKVxuLy8vIGZvciB0aGUgbWF0LWRhdGVwaWNrZXIuXG4vLy8gQHBhcmFtIHtNYXB9ICR0aGVtZSBUaGUgdGhlbWUgdG8gZ2VuZXJhdGUgYmFzZSBzdHlsZXMgZm9yLlxuQG1peGluIGJhc2UoJHRoZW1lKSB7XG4gIEBpZiBpbnNwZWN0aW9uLmdldC10aGVtZS12ZXJzaW9uKCR0aGVtZSkgPT0gMSB7XG4gICAgQGluY2x1ZGUgX3RoZW1lLWZyb20tdG9rZW5zKGluc3BlY3Rpb24uZ2V0LXRoZW1lLXRva2VucygkdGhlbWUsIGJhc2UpKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgc2Fzcy11dGlscy5jdXJyZW50LXNlbGVjdG9yLW9yLXJvb3QoKSB7XG4gICAgICBAaW5jbHVkZSB0b2tlbi11dGlscy5jcmVhdGUtdG9rZW4tdmFsdWVzKHRva2Vucy1tYXQtZGF0ZXBpY2tlci4kcHJlZml4LFxuICAgICAgICB0b2tlbnMtbWF0LWRhdGVwaWNrZXIuZ2V0LXVudGhlbWFibGUtdG9rZW5zKCkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gT3V0cHV0cyBjb2xvciB0aGVtZSBzdHlsZXMgZm9yIHRoZSBtYXQtZGF0ZXBpY2tlci5cbi8vLyBAcGFyYW0ge01hcH0gJHRoZW1lIFRoZSB0aGVtZSB0byBnZW5lcmF0ZSBjb2xvciBzdHlsZXMgZm9yLlxuLy8vIEBwYXJhbSB7QXJnTGlzdH0gQWRkaXRpb25hbCBvcHRpb25hbCBhcmd1bWVudHMgKG9ubHkgc3VwcG9ydGVkIGZvciBNMyB0aGVtZXMpOlxuLy8vICAgJGNvbG9yLXZhcmlhbnQ6IFRoZSBjb2xvciB2YXJpYW50IHRvIHVzZSBmb3IgdGhlIG1haW4gc2VsZWN0aW9uOiBwcmltYXJ5LCBzZWNvbmRhcnksIHRlcnRpYXJ5LFxuLy8vICAgICAgb3IgZXJyb3IgKElmIG5vdCBzcGVjaWZpZWQsIGRlZmF1bHQgcHJpbWFyeSBjb2xvciB3aWxsIGJlIHVzZWQpLlxuQG1peGluIGNvbG9yKCR0aGVtZSwgJG9wdGlvbnMuLi4pIHtcbiAgQGlmIGluc3BlY3Rpb24uZ2V0LXRoZW1lLXZlcnNpb24oJHRoZW1lKSA9PSAxIHtcbiAgICBAaW5jbHVkZSBfdGhlbWUtZnJvbS10b2tlbnMoaW5zcGVjdGlvbi5nZXQtdGhlbWUtdG9rZW5zKCR0aGVtZSwgY29sb3IpLCAkb3B0aW9ucy4uLik7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIHNhc3MtdXRpbHMuY3VycmVudC1zZWxlY3Rvci1vci1yb290KCkge1xuICAgICAgQGluY2x1ZGUgdG9rZW4tdXRpbHMuY3JlYXRlLXRva2VuLXZhbHVlcyh0b2tlbnMtbWF0LWRhdGVwaWNrZXIuJHByZWZpeCxcbiAgICAgICAgdG9rZW5zLW1hdC1kYXRlcGlja2VyLmdldC1jb2xvci10b2tlbnMoJHRoZW1lKSk7XG4gICAgfVxuXG4gICAgLm1hdC1kYXRlcGlja2VyLWNvbnRlbnQge1xuICAgICAgJi5tYXQtYWNjZW50IHtcbiAgICAgICAgQGluY2x1ZGUgX2NhbGVuZGFyLWNvbG9yKCR0aGVtZSwgYWNjZW50KTtcbiAgICAgIH1cblxuICAgICAgJi5tYXQtd2FybiB7XG4gICAgICAgIEBpbmNsdWRlIF9jYWxlbmRhci1jb2xvcigkdGhlbWUsIHdhcm4pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tYXQtZGF0ZXBpY2tlci10b2dnbGUtYWN0aXZlIHtcbiAgICAgICYubWF0LWFjY2VudCB7XG4gICAgICAgICRhY2NlbnQtdG9rZW5zOlxuICAgICAgICAgIHRva2Vucy1tYXQtZGF0ZXBpY2tlci5wcml2YXRlLWdldC10b2dnbGUtY29sb3ItcGFsZXR0ZS1jb2xvci10b2tlbnMoJHRoZW1lLCBhY2NlbnQpO1xuICAgICAgICBAaW5jbHVkZSB0b2tlbi11dGlscy5jcmVhdGUtdG9rZW4tdmFsdWVzKHRva2Vucy1tYXQtZGF0ZXBpY2tlci4kcHJlZml4LCAkYWNjZW50LXRva2Vucyk7XG4gICAgICB9XG5cbiAgICAgICYubWF0LXdhcm4ge1xuICAgICAgICAkd2Fybi10b2tlbnM6XG4gICAgICAgICAgdG9rZW5zLW1hdC1kYXRlcGlja2VyLnByaXZhdGUtZ2V0LXRvZ2dsZS1jb2xvci1wYWxldHRlLWNvbG9yLXRva2VucygkdGhlbWUsIHdhcm4pO1xuICAgICAgICBAaW5jbHVkZSB0b2tlbi11dGlscy5jcmVhdGUtdG9rZW4tdmFsdWVzKHRva2Vucy1tYXQtZGF0ZXBpY2tlci4kcHJlZml4LCAkd2Fybi10b2tlbnMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gT3V0cHV0cyB0eXBvZ3JhcGh5IHRoZW1lIHN0eWxlcyBmb3IgdGhlIG1hdC1kYXRlcGlja2VyLlxuLy8vIEBwYXJhbSB7TWFwfSAkdGhlbWUgVGhlIHRoZW1lIHRvIGdlbmVyYXRlIHR5cG9ncmFwaHkgc3R5bGVzIGZvci5cbkBtaXhpbiB0eXBvZ3JhcGh5KCR0aGVtZSkge1xuICBAaWYgaW5zcGVjdGlvbi5nZXQtdGhlbWUtdmVyc2lvbigkdGhlbWUpID09IDEge1xuICAgIEBpbmNsdWRlIF90aGVtZS1mcm9tLXRva2VucyhpbnNwZWN0aW9uLmdldC10aGVtZS10b2tlbnMoJHRoZW1lLCB0eXBvZ3JhcGh5KSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIHNhc3MtdXRpbHMuY3VycmVudC1zZWxlY3Rvci1vci1yb290KCkge1xuICAgICAgQGluY2x1ZGUgdG9rZW4tdXRpbHMuY3JlYXRlLXRva2VuLXZhbHVlcyh0b2tlbnMtbWF0LWRhdGVwaWNrZXIuJHByZWZpeCxcbiAgICAgICAgdG9rZW5zLW1hdC1kYXRlcGlja2VyLmdldC10eXBvZ3JhcGh5LXRva2VucygkdGhlbWUpKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGRhdGUtcmFuZ2UtY29sb3JzKFxuICAkcmFuZ2UtY29sb3IsXG4gICRjb21wYXJpc29uLWNvbG9yOiB0b2tlbnMtbWF0LWRhdGVwaWNrZXIuJHByaXZhdGUtZGVmYXVsdC1jb21wYXJpc29uLWNvbG9yLFxuICAkb3ZlcmxhcC1jb2xvcjogdG9rZW5zLW1hdC1kYXRlcGlja2VyLiRwcml2YXRlLWRlZmF1bHQtb3ZlcmxhcC1jb2xvcixcbiAgJG92ZXJsYXAtc2VsZWN0ZWQtY29sb3I6XG4gICAgdG9rZW5zLW1hdC1kYXRlcGlja2VyLnByaXZhdGUtZ2V0LWRlZmF1bHQtb3ZlcmxhcC1zZWxlY3RlZC1jb2xvcigkb3ZlcmxhcC1jb2xvcikpIHtcbiAgJHRva2VuczogdG9rZW5zLW1hdC1kYXRlcGlja2VyLmdldC1yYW5nZS1jb2xvci10b2tlbnMoXG4gICAgJHJhbmdlLWNvbG9yOiAkcmFuZ2UtY29sb3IsXG4gICAgJGNvbXBhcmlzb24tY29sb3I6ICRjb21wYXJpc29uLWNvbG9yLFxuICAgICRvdmVybGFwLWNvbG9yOiAkb3ZlcmxhcC1jb2xvcixcbiAgICAkb3ZlcmxhcC1zZWxlY3RlZC1jb2xvcjogJG92ZXJsYXAtc2VsZWN0ZWQtY29sb3IsXG4gICk7XG5cbiAgQGluY2x1ZGUgc2Fzcy11dGlscy5jdXJyZW50LXNlbGVjdG9yLW9yLXJvb3QoKSB7XG4gICAgQGluY2x1ZGUgdG9rZW4tdXRpbHMuY3JlYXRlLXRva2VuLXZhbHVlcyh0b2tlbnMtbWF0LWRhdGVwaWNrZXIuJHByZWZpeCwgJHRva2Vucyk7XG4gIH1cbn1cblxuLy8vIE91dHB1dHMgZGVuc2l0eSB0aGVtZSBzdHlsZXMgZm9yIHRoZSBtYXQtZGF0ZXBpY2tlci5cbi8vLyBAcGFyYW0ge01hcH0gJHRoZW1lIFRoZSB0aGVtZSB0byBnZW5lcmF0ZSBkZW5zaXR5IHN0eWxlcyBmb3IuXG5AbWl4aW4gZGVuc2l0eSgkdGhlbWUpIHtcbiAgQGlmIGluc3BlY3Rpb24uZ2V0LXRoZW1lLXZlcnNpb24oJHRoZW1lKSA9PSAxIHtcbiAgICBAaW5jbHVkZSBfdGhlbWUtZnJvbS10b2tlbnMoaW5zcGVjdGlvbi5nZXQtdGhlbWUtdG9rZW5zKCR0aGVtZSwgZGVuc2l0eSkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBUT0RPKGNyaXNiZXRvKTogbW92ZSB0aGlzIGludG8gdGhlIHN0cnVjdHVyYWwgc3R5bGVzXG4gICAgLy8gb25jZSB0aGUgaWNvbiBidXR0b24gZGVuc2l0eSBpcyBzd2l0Y2hlZCB0byB0b2tlbnMuXG5cbiAgICAvLyBSZWdhcmRsZXNzIG9mIHRoZSB1c2VyLXBhc3NlZCBkZW5zaXR5LCB3ZSB3YW50IHRoZSBjYWxlbmRhclxuICAgIC8vIHByZXZpb3VzL25leHQgYnV0dG9ucyB0byByZW1haW4gYXQgZGVuc2l0eSAtMlxuICAgIC5tYXQtY2FsZW5kYXItY29udHJvbHMge1xuICAgICAgQGluY2x1ZGUgaWNvbi1idXR0b24tdGhlbWUuZGVuc2l0eSgtMik7XG4gICAgfVxuICB9XG59XG5cbi8vLyBPdXRwdXRzIGFsbCAoYmFzZSwgY29sb3IsIHR5cG9ncmFwaHksIGFuZCBkZW5zaXR5KSB0aGVtZSBzdHlsZXMgZm9yIHRoZSBtYXQtZGF0ZXBpY2tlci5cbi8vLyBAcGFyYW0ge01hcH0gJHRoZW1lIFRoZSB0aGVtZSB0byBnZW5lcmF0ZSBzdHlsZXMgZm9yLlxuLy8vIEBwYXJhbSB7QXJnTGlzdH0gQWRkaXRpb25hbCBvcHRpb25hbCBhcmd1bWVudHMgKG9ubHkgc3VwcG9ydGVkIGZvciBNMyB0aGVtZXMpOlxuLy8vICAgJGNvbG9yLXZhcmlhbnQ6IFRoZSBjb2xvciB2YXJpYW50IHRvIHVzZSBmb3IgdGhlIG1haW4gc2VsZWN0aW9uOiBwcmltYXJ5LCBzZWNvbmRhcnksIHRlcnRpYXJ5LFxuLy8vICAgICAgb3IgZXJyb3IgKElmIG5vdCBzcGVjaWZpZWQsIGRlZmF1bHQgcHJpbWFyeSBjb2xvciB3aWxsIGJlIHVzZWQpLlxuQG1peGluIHRoZW1lKCR0aGVtZSwgJG9wdGlvbnMuLi4pIHtcbiAgQGluY2x1ZGUgdGhlbWluZy5wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LWRhdGVwaWNrZXInKSB7XG4gICAgQGlmIGluc3BlY3Rpb24uZ2V0LXRoZW1lLXZlcnNpb24oJHRoZW1lKSA9PSAxIHtcbiAgICAgIEBpbmNsdWRlIF90aGVtZS1mcm9tLXRva2VucyhpbnNwZWN0aW9uLmdldC10aGVtZS10b2tlbnMoJHRoZW1lKSwgJG9wdGlvbnMuLi4pO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBiYXNlKCR0aGVtZSk7XG4gICAgICBAaWYgaW5zcGVjdGlvbi50aGVtZS1oYXMoJHRoZW1lLCBjb2xvcikge1xuICAgICAgICBAaW5jbHVkZSBjb2xvcigkdGhlbWUpO1xuICAgICAgfVxuICAgICAgQGlmIGluc3BlY3Rpb24udGhlbWUtaGFzKCR0aGVtZSwgZGVuc2l0eSkge1xuICAgICAgICBAaW5jbHVkZSBkZW5zaXR5KCR0aGVtZSk7XG4gICAgICB9XG4gICAgICBAaWYgaW5zcGVjdGlvbi50aGVtZS1oYXMoJHRoZW1lLCB0eXBvZ3JhcGh5KSB7XG4gICAgICAgIEBpbmNsdWRlIHR5cG9ncmFwaHkoJHRoZW1lKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIF90aGVtZS1mcm9tLXRva2VucygkdG9rZW5zLCAkb3B0aW9ucy4uLikge1xuICBAaW5jbHVkZSB2YWxpZGF0aW9uLnNlbGVjdG9yLWRlZmluZWQoXG4gICAgICAnQ2FsbHMgdG8gQW5ndWxhciBNYXRlcmlhbCB0aGVtZSBtaXhpbnMgd2l0aCBhbiBNMyB0aGVtZSBtdXN0IGJlIHdyYXBwZWQgaW4gYSBzZWxlY3RvcicpO1xuICAkbWF0LWRhdGVwaWNrZXItdG9rZW5zOlxuICAgICAgdG9rZW4tdXRpbHMuZ2V0LXRva2Vucy1mb3IoJHRva2VucywgdG9rZW5zLW1hdC1kYXRlcGlja2VyLiRwcmVmaXgsICRvcHRpb25zLi4uKTtcbiAgQGluY2x1ZGUgdG9rZW4tdXRpbHMuY3JlYXRlLXRva2VuLXZhbHVlcyh0b2tlbnMtbWF0LWRhdGVwaWNrZXIuJHByZWZpeCwgJG1hdC1kYXRlcGlja2VyLXRva2Vucyk7XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5AdXNlICdzYXNzOm1hdGgnO1xuQHVzZSAnQG1hdGVyaWFsL2RlbnNpdHkvZnVuY3Rpb25zJyBhcyBtZGMtZGVuc2l0eS1mdW5jdGlvbnM7XG5AdXNlICdAbWF0ZXJpYWwvaWNvbi1idXR0b24vaWNvbi1idXR0b24tdGhlbWUnIGFzIG1kYy1pY29uLWJ1dHRvbi10aGVtZTtcbkB1c2UgJy4uL2NvcmUvdG9rZW5zL20yL21kYy9pY29uLWJ1dHRvbicgYXMgdG9rZW5zLW1kYy1pY29uLWJ1dHRvbjtcbkB1c2UgJy4uL2NvcmUvdG9rZW5zL20yL21hdC9pY29uLWJ1dHRvbicgYXMgdG9rZW5zLW1hdC1pY29uLWJ1dHRvbjtcbkB1c2UgJy4uL2NvcmUvc3R5bGUvc2Fzcy11dGlscyc7XG5AdXNlICcuLi9jb3JlL3Rva2Vucy90b2tlbi11dGlscyc7XG5AdXNlICcuLi9jb3JlL3RoZW1pbmcvdGhlbWluZyc7XG5AdXNlICcuLi9jb3JlL3RoZW1pbmcvaW5zcGVjdGlvbic7XG5AdXNlICcuLi9jb3JlL3RoZW1pbmcvdmFsaWRhdGlvbic7XG5cblxuQG1peGluIGJhc2UoJHRoZW1lKSB7XG4gIEBpZiBpbnNwZWN0aW9uLmdldC10aGVtZS12ZXJzaW9uKCR0aGVtZSkgPT0gMSB7XG4gICAgQGluY2x1ZGUgX3RoZW1lLWZyb20tdG9rZW5zKGluc3BlY3Rpb24uZ2V0LXRoZW1lLXRva2VucygkdGhlbWUsIGJhc2UpKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gQWRkIGRlZmF1bHQgdmFsdWVzIGZvciB0b2tlbnMgbm90IHJlbGF0ZWQgdG8gY29sb3IsIHR5cG9ncmFwaHksIG9yIGRlbnNpdHkuXG4gICAgQGluY2x1ZGUgc2Fzcy11dGlscy5jdXJyZW50LXNlbGVjdG9yLW9yLXJvb3QoKSB7XG4gICAgICBAaW5jbHVkZSBtZGMtaWNvbi1idXR0b24tdGhlbWUudGhlbWUodG9rZW5zLW1kYy1pY29uLWJ1dHRvbi5nZXQtdW50aGVtYWJsZS10b2tlbnMoKSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBfaWNvbi1idXR0b24tdmFyaWFudCgkdGhlbWUsICRwYWxldHRlKSB7XG4gICRtZGMtdG9rZW5zOiBpZigkcGFsZXR0ZSxcbiAgICB0b2tlbnMtbWRjLWljb24tYnV0dG9uLnByaXZhdGUtZ2V0LWNvbG9yLXBhbGV0dGUtY29sb3ItdG9rZW5zKCR0aGVtZSwgJHBhbGV0dGUpLFxuICAgIHRva2Vucy1tZGMtaWNvbi1idXR0b24uZ2V0LWNvbG9yLXRva2VucygkdGhlbWUpXG4gICk7XG5cbiAgJG1hdC10b2tlbnM6IGlmKCRwYWxldHRlLFxuICAgIHRva2Vucy1tYXQtaWNvbi1idXR0b24ucHJpdmF0ZS1nZXQtY29sb3ItcGFsZXR0ZS1jb2xvci10b2tlbnMoJHRoZW1lLCAkcGFsZXR0ZSksXG4gICAgdG9rZW5zLW1hdC1pY29uLWJ1dHRvbi5nZXQtY29sb3ItdG9rZW5zKCR0aGVtZSlcbiAgKTtcblxuICBAaW5jbHVkZSBtZGMtaWNvbi1idXR0b24tdGhlbWUudGhlbWUoJG1kYy10b2tlbnMpO1xuICBAaW5jbHVkZSB0b2tlbi11dGlscy5jcmVhdGUtdG9rZW4tdmFsdWVzKHRva2Vucy1tYXQtaWNvbi1idXR0b24uJHByZWZpeCwgJG1hdC10b2tlbnMpO1xufVxuXG5AbWl4aW4gY29sb3IoJHRoZW1lKSB7XG4gIEBpZiBpbnNwZWN0aW9uLmdldC10aGVtZS12ZXJzaW9uKCR0aGVtZSkgPT0gMSB7XG4gICAgQGluY2x1ZGUgX3RoZW1lLWZyb20tdG9rZW5zKGluc3BlY3Rpb24uZ2V0LXRoZW1lLXRva2VucygkdGhlbWUsIGNvbG9yKSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIHNhc3MtdXRpbHMuY3VycmVudC1zZWxlY3Rvci1vci1yb290KCkge1xuICAgICAgQGluY2x1ZGUgX2ljb24tYnV0dG9uLXZhcmlhbnQoJHRoZW1lLCBudWxsKTtcblxuICAgICAgLm1hdC1tZGMtaWNvbi1idXR0b24ge1xuICAgICAgICAmLm1hdC1wcmltYXJ5IHtcbiAgICAgICAgICBAaW5jbHVkZSBfaWNvbi1idXR0b24tdmFyaWFudCgkdGhlbWUsIHByaW1hcnkpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tYXQtYWNjZW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBfaWNvbi1idXR0b24tdmFyaWFudCgkdGhlbWUsIGFjY2VudCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLm1hdC13YXJuIHtcbiAgICAgICAgICBAaW5jbHVkZSBfaWNvbi1idXR0b24tdmFyaWFudCgkdGhlbWUsIHdhcm4pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiB0eXBvZ3JhcGh5KCR0aGVtZSkge1xuICBAaWYgaW5zcGVjdGlvbi5nZXQtdGhlbWUtdmVyc2lvbigkdGhlbWUpID09IDEge1xuICAgIEBpbmNsdWRlIF90aGVtZS1mcm9tLXRva2VucyhpbnNwZWN0aW9uLmdldC10aGVtZS10b2tlbnMoJHRoZW1lLCB0eXBvZ3JhcGh5KSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIHNhc3MtdXRpbHMuY3VycmVudC1zZWxlY3Rvci1vci1yb290KCkge1xuICAgICAgQGluY2x1ZGUgdG9rZW4tdXRpbHMuY3JlYXRlLXRva2VuLXZhbHVlcyh0b2tlbnMtbWF0LWljb24tYnV0dG9uLiRwcmVmaXgsXG4gICAgICAgIHRva2Vucy1tYXQtaWNvbi1idXR0b24uZ2V0LXR5cG9ncmFwaHktdG9rZW5zKCR0aGVtZSkpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZGVuc2l0eSgkdGhlbWUpIHtcbiAgQGlmIGluc3BlY3Rpb24uZ2V0LXRoZW1lLXZlcnNpb24oJHRoZW1lKSA9PSAxIHtcbiAgICBAaW5jbHVkZSBfdGhlbWUtZnJvbS10b2tlbnMoaW5zcGVjdGlvbi5nZXQtdGhlbWUtdG9rZW5zKCR0aGVtZSwgZGVuc2l0eSkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkaWNvbi1zaXplOiAyNHB4O1xuICAgICRkZW5zaXR5LXNjYWxlOiBpbnNwZWN0aW9uLmdldC10aGVtZS1kZW5zaXR5KCR0aGVtZSk7XG4gICAgLy8gTWFudWFsbHkgYXBwbHkgdGhlIGV4cGVjdGVkIGRlbnNpdHkgdGhlbWluZywgYW5kIGluY2x1ZGUgdGhlIHBhZGRpbmdcbiAgICAvLyBhcyBpdCB3YXMgYXBwbGllZCBiZWZvcmVcbiAgICAkY2FsY3VsYXRlZC1zaXplOiBtZGMtZGVuc2l0eS1mdW5jdGlvbnMucHJvcC12YWx1ZShcbiAgICAgICRkZW5zaXR5LWNvbmZpZzogKFxuICAgICAgICBzaXplOiAoXG4gICAgICAgICAgZGVmYXVsdDogNDhweCxcbiAgICAgICAgICBtYXhpbXVtOiA0OHB4LFxuICAgICAgICAgIG1pbmltdW06IDI4cHgsXG4gICAgICAgICksXG4gICAgICApLFxuICAgICAgJGRlbnNpdHktc2NhbGU6ICRkZW5zaXR5LXNjYWxlLFxuICAgICAgJHByb3BlcnR5LW5hbWU6IHNpemUsXG4gICAgKTtcblxuICAgIEBpbmNsdWRlIHNhc3MtdXRpbHMuY3VycmVudC1zZWxlY3Rvci1vci1yb290KCkge1xuICAgICAgQGluY2x1ZGUgdG9rZW4tdXRpbHMuY3JlYXRlLXRva2VuLXZhbHVlcyh0b2tlbnMtbWF0LWljb24tYnV0dG9uLiRwcmVmaXgsXG4gICAgICAgIHRva2Vucy1tYXQtaWNvbi1idXR0b24uZ2V0LWRlbnNpdHktdG9rZW5zKCR0aGVtZSkpO1xuICAgIH1cblxuICAgIC8vIFVzZSBgbWF0LW1kYy1idXR0b24tYmFzZWAgdG8gaW5jcmVhc2UgdGhlIHNwZWNpZmljaXR5IG92ZXIgdGhlIGJ1dHRvbidzIHN0cnVjdHVyYWwgc3R5bGVzLlxuICAgIC5tYXQtbWRjLWljb24tYnV0dG9uLm1hdC1tZGMtYnV0dG9uLWJhc2Uge1xuICAgICAgLy8gTWF0Y2ggdGhlIHN0eWxlcyB0aGF0IHVzZWQgdG8gYmUgcHJlc2VudC4gVGhpcyBpcyBuZWNlc3NhcnkgZm9yIGJhY2t3YXJkc1xuICAgICAgLy8gY29tcGF0IHRvIG1hdGNoIHRoZSBwcmV2aW91cyBpbXBsZW1lbnRhdGlvbnMgc2VsZWN0b3IgY291bnQgKHR3byBjbGFzc2VzKS5cbiAgICAgIEBpbmNsdWRlIG1kYy1pY29uLWJ1dHRvbi10aGVtZS50aGVtZSgoXG4gICAgICAgIHN0YXRlLWxheWVyLXNpemU6ICRjYWxjdWxhdGVkLXNpemUsXG4gICAgICApKTtcblxuICAgICAgLy8gVE9ETzogU3dpdGNoIGNhbGN1bGF0ZWQtc2l6ZSB0byBcInZhcigtLW1kYy1pY29uLWJ1dHRvbi1zdGF0ZS1sYXllci1zaXplKVwiXG4gICAgICAvLyBDdXJyZW50bHkgZmFpbHMgdmFsaWRhdGlvbiBiZWNhdXNlIHRoZSB2YXJpYWJsZSBpcyBcInVuZGVmaW5lZFwiXG4gICAgICAvLyBpbiB0aGUgc2FzcyBzdGFjay5cbiAgICAgIC8vIFRPRE86IFN3aXRjaCBpY29uLXNpemUgdG8gXCJ2YXIoLS1tZGMtaWNvbi1idXR0b24taWNvbi1zaXplKVwiLiBDdXJyZW50bHlcbiAgICAgIC8vIGZhaWxzIHZhbGlkYXRpb24gYmVjYXVzZSB0aGUgdmFyaWFibGUgaXMgXCJ1bmRlZmluZWRcIiBpbiB0aGUgc2FzcyBzdGFjay5cbiAgICAgIHdpZHRoOiB2YXIoLS1tZGMtaWNvbi1idXR0b24tc3RhdGUtbGF5ZXItc2l6ZSk7XG4gICAgICBoZWlnaHQ6IHZhcigtLW1kYy1pY29uLWJ1dHRvbi1zdGF0ZS1sYXllci1zaXplKTtcbiAgICAgIHBhZGRpbmc6IG1hdGguZGl2KCRjYWxjdWxhdGVkLXNpemUgLSAkaWNvbi1zaXplLCAyKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRoZW1lKCR0aGVtZSkge1xuICBAaW5jbHVkZSB0aGVtaW5nLnByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtaWNvbi1idXR0b24nKSB7XG4gICAgQGlmIGluc3BlY3Rpb24uZ2V0LXRoZW1lLXZlcnNpb24oJHRoZW1lKSA9PSAxIHtcbiAgICAgIEBpbmNsdWRlIF90aGVtZS1mcm9tLXRva2VucyhpbnNwZWN0aW9uLmdldC10aGVtZS10b2tlbnMoJHRoZW1lKSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGJhc2UoJHRoZW1lKTtcbiAgICAgIEBpZiBpbnNwZWN0aW9uLnRoZW1lLWhhcygkdGhlbWUsIGNvbG9yKSB7XG4gICAgICAgIEBpbmNsdWRlIGNvbG9yKCR0aGVtZSk7XG4gICAgICB9XG4gICAgICBAaWYgaW5zcGVjdGlvbi50aGVtZS1oYXMoJHRoZW1lLCBkZW5zaXR5KSB7XG4gICAgICAgIEBpbmNsdWRlIGRlbnNpdHkoJHRoZW1lKTtcbiAgICAgIH1cbiAgICAgIEBpZiBpbnNwZWN0aW9uLnRoZW1lLWhhcygkdGhlbWUsIHR5cG9ncmFwaHkpIHtcbiAgICAgICAgQGluY2x1ZGUgdHlwb2dyYXBoeSgkdGhlbWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gX3RoZW1lLWZyb20tdG9rZW5zKCR0b2tlbnMpIHtcbiAgQGluY2x1ZGUgdmFsaWRhdGlvbi5zZWxlY3Rvci1kZWZpbmVkKFxuICAgICAgJ0NhbGxzIHRvIEFuZ3VsYXIgTWF0ZXJpYWwgdGhlbWUgbWl4aW5zIHdpdGggYW4gTTMgdGhlbWUgbXVzdCBiZSB3cmFwcGVkIGluIGEgc2VsZWN0b3InKTtcbiAgQGlmICgkdG9rZW5zICE9ICgpKSB7XG4gICAgQGluY2x1ZGUgbWRjLWljb24tYnV0dG9uLXRoZW1lLnRoZW1lKG1hcC5nZXQoJHRva2VucywgdG9rZW5zLW1kYy1pY29uLWJ1dHRvbi4kcHJlZml4KSk7XG4gICAgQGluY2x1ZGUgdG9rZW4tdXRpbHMuY3JlYXRlLXRva2VuLXZhbHVlcyhcbiAgICAgICAgdG9rZW5zLW1hdC1pY29uLWJ1dHRvbi4kcHJlZml4LCBtYXAuZ2V0KCR0b2tlbnMsIHRva2Vucy1tYXQtaWNvbi1idXR0b24uJHByZWZpeCkpO1xuICB9XG59XG4iLCIubWF0LWNhbGVuZGFyIHtcbiAgICBmb250LXNpemU6IHNtYWxsICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IHYoZXVpLWYtZmFtaWx5KSAhaW1wb3J0YW50O1xuXG4gICAgJi5tYXQtY2FsZW5kYXIteWVhciB7XG4gICAgICAgIC5tYXQtY2FsZW5kYXItcGVyaW9kLWJ1dHRvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gTUFURVJJQUwgRHJhZyAmIERyb3Agb3ZlcnJpZGVzXG4uY2RrLWRyYWctaGFuZGxlIHtcbiAgICBjdXJzb3I6IG1vdmUgIWltcG9ydGFudDtcbn1cblxuLmNkay1kcm9wLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuXG4gICAgJjpub3QoLmNkay1kcm9wLWxpc3QtZGlzYWJsZWQpIHtcbiAgICAgICAgbWluLWhlaWdodDogdihldWktcy14bCk7XG4gICAgfVxufVxuXG4vLyBBbmltYXRlIGl0ZW1zIGFzIHRoZXkncmUgYmVpbmcgc29ydGVkXG4uY2RrLWRyb3AtbGlzdC1kcmFnZ2luZyAuY2RrLWRyYWcge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbn1cblxuLy8gQW5pbWF0ZSBhbiBpdGVtIHRoYXQgaGFzIGJlZW4gZHJvcHBlZFxuLmNkay1kcmFnLWFuaW1hdGluZyB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xufVxuXG4vLyBHcmFiYmVkIGVsZW1lbnRcbi5jZGstZHJhZy1wcmV2aWV3IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgIC8vIHYoZXVpLWMtd2hpdGUpO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY3Vyc29yOiBncmFiICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogdGFibGU7ICAgICAvLyB0cmljayB0byBnZXQgdGhlIGZ1bGwgcm93IHdpZHRoXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jZGstZHJhZy1kcmFnZ2luZyB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLmNkay1kcmFnLXBsYWNlaG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAwLjM1O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIG91dGxpbmU6IDJweCBkYXNoZWQgdihldWktYy1uZXV0cmFsLWxpZ2h0ZXIpO1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICAgIH1cbn1cbiIsIi8vIERpc2FibGUgZ2xvYmFsIHNjcm9sbGJhcnMgKHVzZWQgaW4gZnVsbCBzY3JlZW4gZXVpLWRpYWxvZyBmb3IgZXhhbXBsZSlcbi5jZGstZ2xvYmFsLXNjcm9sbGJsb2NrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZTsgICAgIC8vIE1hdGVyaWFsIGRlZmF1bHQ6IHNjcm9sbFxuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGV1aS1zY3JvbGxiYXJzO1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbn1cbkBpbmNsdWRlIG1lZGlhKCRldWktYmtwLW1vYmlsZSkge1xuICAgIC5jZGstZ2xvYmFsLXNjcm9sbGJsb2NrIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgQGluY2x1ZGUgZXVpLXNjcm9sbGJhcnM7XG4gICAgfVxufVxuIiwiQG1peGluIGV1aS1zY3JvbGxiYXJzKCAkc2l6ZTogMTBweCwgJGZvcmVncm91bmQtY29sb3I6IHYoZXVpLWMtbmV1dHJhbC1saWdodGVzdCksICRiYWNrZ3JvdW5kLWNvbG9yOiB2KGV1aS1jLW5ldXRyYWwtYmctbGlnaHQpLCAkYm9yZGVyLXJhZGl1czogNXJlbSwgJHN0YXRlOiBhY3RpdmUgKSB7XG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgICAgICBoZWlnaHQ6ICRzaXplOyAgICAgIC8vIGhvcml6b250YWwgc2Nyb2xsXG4gICAgICAgIHdpZHRoOiAkc2l6ZTsgICAgICAgLy8gdmVydGljYWwgc2Nyb2xsXG4gICAgICAgIEBpZiAoJHN0YXRlID09IGFjdGl2ZSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUaGlzIGlzIHRoZSBzY3JvbGxpbmcgYmFyXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICBAaWYgKCRzdGF0ZSA9PSBhY3RpdmUpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHYoZXVpLWMtbmV1dHJhbC1saWdodGVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRoaXMgaXMgdGhlIHNjcm9sbCBjb250YWluZXJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICAgIEBpZiAoJHN0YXRlID09IGFjdGl2ZSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuQG1peGluIGV1aS1zY3JvbGxiYXJzLWluYWN0aXZlKCRzaXplOiA4cHgpIHtcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgICAgICBoZWlnaHQ6ICRzaXplOyAgICAgIC8vIGhvcml6b250YWwgc2Nyb2xsXG4gICAgICAgIHdpZHRoOiAkc2l6ZTsgICAgICAgLy8gdmVydGljYWwgc2Nyb2xsXG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbiIsIiRkZWZhdWx0LWZlYXR1cmU6IFwibWluLXdpZHRoXCI7XG5AbWl4aW4gbWVkaWEoJHF1ZXJ5OiAkZmVhdHVyZSAkdmFsdWUgJGNvbHVtbnMpIHtcbiAgICBAaWYgbGVuZ3RoKCRxdWVyeSkgPT0gMSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgkZGVmYXVsdC1mZWF0dXJlOiBudGgoJHF1ZXJ5LCAxKSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICAkbG9vcC10bzogbGVuZ3RoKCRxdWVyeSk7XG4gICAgICAgICRtZWRpYS1xdWVyeTogXCJzY3JlZW4gYW5kIFwiO1xuICAgICAgICBAaWYgaXMtbm90KGlzLWV2ZW4obGVuZ3RoKCRxdWVyeSkpKSB7XG4gICAgICAgICAgICAkbG9vcC10bzogJGxvb3AtdG8gLSAxO1xuICAgICAgICB9XG4gICAgICAgICRpOiAxO1xuICAgICAgICBAd2hpbGUgJGkgPD0kbG9vcC10byB7XG4gICAgICAgICAgICAkbWVkaWEtcXVlcnk6ICRtZWRpYS1xdWVyeSArIFwiKFwiICsgbnRoKCRxdWVyeSwgJGkpICsgXCI6IFwiICsgbnRoKCRxdWVyeSwgJGkgKyAxKSArIFwiKSBcIjtcbiAgICAgICAgICAgIEBpZiAoJGkgKyAxKSAhPSAkbG9vcC10byB7XG4gICAgICAgICAgICAgICAgJG1lZGlhLXF1ZXJ5OiAkbWVkaWEtcXVlcnkgKyBcImFuZCBcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICRpOiAkaSsyO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRtZWRpYS1xdWVyeX0ge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuY2RrLW92ZXJsYXktY29udGFpbmVyIHtcbiAgICB6LWluZGV4OiB2KGV1aS16aS1jZGstb3ZlcmxheS1jb250YWluZXIpOyAgIC8vIE1EOiAxMDAwXG5cbiAgICAubWF0LW1lbnUtcGFuZWwge1xuICAgICAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHYoZXVpLXMtbCk7XG4gICAgICAgIEBpbmNsdWRlIGV1aS1zY3JvbGxiYXJzO1xuICAgIH1cblxuICAgIC5tYXQtYXV0b2NvbXBsZXRlLXBhbmVsIHtcbiAgICAgICAgQGluY2x1ZGUgZXVpLXNjcm9sbGJhcnM7XG4gICAgfVxufVxuIiwiQGluY2x1ZGUgbWVkaWEoJGV1aS1ia3AtbW9iaWxlKSB7XG4gICAgLmNkay1vdmVybGF5LWNvbnRhaW5lciB7XG4gICAgICAgIGhlaWdodDogMTAwdmg7ICAvLyBGYWxsYmFja1xuICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tZXVpLWFwcC12aCwgMXZoKSAqIDEwMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgfVxufVxuIiwiLmNkay1vdmVybGF5LXBhbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHYoZXVpLWMtd2hpdGUpO1xuICAgIHotaW5kZXg6IHYoZXVpLXppLWNkay1vdmVybGF5LXBhbmUpOyAgLy8gRHluYW1pY2FsbHkgY2hhbmdlcyBiYXNlZCBvbiBDREsgY29udGV4dFxufVxuIiwiLy8gSGlkZSBicm93c2VyIGFnZW50IGRlZmF1bHQgKGJsYWNrKSBjb2xvclxuOmZvY3VzLFxuOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IG5vbmU7XG59XG5cbi8vIFJlc29sdmVzIGlzc3VlIGluIEZpcmVmb3ggd2l0aCBleHRyYSBib3JkZXJzXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7ICAgLy8gRGVmYXVsdDogYnV0dG9uXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbn1cbiIsImh0bWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmb250LXNpemU6IHZhcigtLWV1aS1mLXNpemUtYmFzZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWV1aS1iYXNlLWxpbmUtaGVpZ2h0KTtcbn1cbiIsImJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWV1aS1jLWJnKTtcbiAgICBjb2xvcjogdmFyKC0tZXVpLWMtdGV4dCk7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWV1aS1mLWZhbWlseSk7XG4gICAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYSc7XG4gICAgZm9udC1zaXplOiB2YXIoLS1ldWktZi1zaXplLWJhc2UpO1xuICAgIC1tb3otZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tZXVpLWJhc2UtbGluZS1oZWlnaHQpO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuIiwiLy8gTWFrZSB2aWV3cG9ydCByZXNwb25zaXZlXG4vL1xuLy8gQHZpZXdwb3J0IGlzIG5lZWRlZCBiZWNhdXNlIElFIDEwKyBkb2Vzbid0IGhvbm9yIDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiPiBpblxuLy8gc29tZSBjYXNlcy4gU2VlIGh0dHBzOi8vdGlta2FkbGVjLmNvbS8yMDEyLzEwL2llMTAtc25hcC1tb2RlLWFuZC1yZXNwb25zaXZlLWRlc2lnbi8uXG4vLyBFdmVudHVhbGx5IEB2aWV3cG9ydCB3aWxsIHJlcGxhY2UgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCI+LlxuLy9cbi8vIEhvd2V2ZXIsIGBkZXZpY2Utd2lkdGhgIGlzIGJyb2tlbiBvbiBJRSAxMCBvbiBXaW5kb3dzIChQaG9uZSkgOCxcbi8vIChzZWUgaHR0cHM6Ly90aW1rYWRsZWMuY29tLzIwMTMvMDEvd2luZG93cy1waG9uZS04LWFuZC1kZXZpY2Utd2lkdGgvIGFuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwNDk3KVxuLy8gYW5kIHRoZSBmaXggZm9yIHRoYXQgaW52b2x2ZXMgYSBzbmlwcGV0IG9mIEphdmFTY3JpcHQgdG8gc25pZmYgdGhlIHVzZXIgYWdlbnRcbi8vIGFuZCBhcHBseSBzb21lIGNvbmRpdGlvbmFsIENTUy5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jc3VwcG9ydC1pZTEwLXdpZHRoIGZvciB0aGUgcmVsZXZhbnQgaGFjay5cbi8vXG4vLyBXcmFwIGBAdmlld3BvcnRgIHdpdGggYEBhdC1yb290YCBmb3Igd2hlbiBmb2xrcyBkbyBhIG5lc3RlZCBpbXBvcnQgKGUuZy4sXG4vLyBgLmNsYXNzLW5hbWUgeyBAaW1wb3J0IFwiYm9vdHN0cmFwXCI7IH1gKS5cbkBhdC1yb290IHtcbiAgICBALW1zLXZpZXdwb3J0IHtcbiAgICAgICAgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAjQk9YLVNJWklOR1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBNb3JlIHNlbnNpYmxlIGRlZmF1bHQgYm94LXNpemluZzpcbiAqIGNzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZVxuICovXG5cbmh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbioge1xuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlcixcbiAgICAmIHtcbiAgICAgICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgICB9XG59XG5cbi8vIEF2b2lkIDMwMG1zIGNsaWNrIGRlbGF5IG9uIHRvdWNoIGRldmljZXMgdGhhdCBzdXBwb3J0IHRoZSBgdG91Y2gtYWN0aW9uYCBDU1MgcHJvcGVydHkuXG4vL1xuLy8gSW4gcGFydGljdWxhciwgdW5saWtlIG1vc3Qgb3RoZXIgYnJvd3NlcnMsIElFMTErRWRnZSBvbiBXaW5kb3dzIDEwIG9uIHRvdWNoIGRldmljZXMgYW5kIElFIE1vYmlsZSAxMC0xMVxuLy8gRE9OJ1QgcmVtb3ZlIHRoZSBjbGljayBkZWxheSB3aGVuIGA8bWV0YSBuYW1lPVwidmlld3BvcnRcIiBjb250ZW50PVwid2lkdGg9ZGV2aWNlLXdpZHRoXCI+YCBpcyBwcmVzZW50LlxuLy8gSG93ZXZlciwgdGhleSBETyBzdXBwb3J0IHJlbW92aW5nIHRoZSBjbGljayBkZWxheSB2aWEgYHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uYC5cbi8vIFNlZTpcbi8vICogaHR0cHM6Ly92NC1hbHBoYS5nZXRib290c3RyYXAuY29tL2NvbnRlbnQvcmVib290LyNjbGljay1kZWxheS1vcHRpbWl6YXRpb24tZm9yLXRvdWNoXG4vLyAqIGh0dHA6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtdG91Y2gtYWN0aW9uXG4vLyAqIGh0dHBzOi8vcGF0cmlja2hsYXVrZS5naXRodWIuaW8vdG91Y2gvdGVzdHMvcmVzdWx0cy8jc3VwcHJlc3NpbmctMzAwbXMtZGVsYXlcblxuYSxcbmFyZWEsXG5idXR0b24sXG5bcm9sZT1cImJ1dHRvblwiXSxcbmlucHV0LFxubGFiZWwsXG5zZWxlY3QsXG5zdW1tYXJ5LFxudGV4dGFyZWEge1xuICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLy8gTk9STUFMSVpFIHJlc2V0IGFsaWduZW1lbnRzIChzZWUgMDAtcmVzZXQpXG5wLFxubGFiZWwsXG5ibG9ja3F1b3RlLFxuYWJicixcbm1hcmssXG5kZWwge1xuICAgIGZvbnQtc2l6ZTogdihldWktZi1zaXplLWJhc2UpO1xufVxuXG5iLCBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG59XG4iLCJ0YWJsZS5ldWktdGFibGUtZGVmYXVsdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBjb2xvcjogdihldWktYy10ZXh0KTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLy8gQWRkIGRlZmF1bHQgYm9yZGVyc1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdihldWktYy1uZXV0cmFsLWJnLWxpZ2h0KTtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE92ZXJhbGwgc2V0dGluZ3MgKGRlZmF1bHQpXG4gICAgdGhlYWQgPiB0ciA+IHRoLFxuICAgIHRib2R5ID4gdHIgPiB0ZCxcbiAgICB0Zm9vdCA+IHRyID4gdGQge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cblxuICAgIHRyID4gdGgsXG4gICAgdHIgPiB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IHYoZXVpLXMtcyk7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgdGhlYWQge1xuICAgICAgICB0aCB7XG4gICAgICAgICAgICBjb2xvcjogdihldWktYy10ZXh0KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdihldWktZi1zaXplLWJhc2UpO1xuICAgICAgICAgICAgcGFkZGluZzogdihldWktcy1tKSB2KGV1aS1zLXMpO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIGZvbnQ6IHZhcigtLWV1aS1mLW0tYm9sZCk7XG4gICAgICAgIH1cblxuICAgICAgICB0ciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2KGV1aS1jLW5ldXRyYWwtYmcpO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFN0cmlwZWQgJiBob3ZlcmVkIHRhYmxlcyBieSBkZWZhdWx0IChVWClcbiAgICB0Ym9keSB7XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgIC8vIG9wdGlvbmFsIC0gZW5hYmxlIGlPUyBtb21lbnR1bSBzY3JvbGxpbmdcblxuICAgICAgICB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHYoZXVpLWMtYmcpO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2KGV1aS1jLXByaW1hcnktYmcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHYoZXVpLWMtcHJpbWFyeS1saWdodGVzdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdHI6bnRoLW9mLXR5cGUoZXZlbikge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdihldWktYy1uZXV0cmFsLWJnLWxpZ2h0KTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdihldWktYy1wcmltYXJ5LWJnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2KGV1aS1jLXByaW1hcnktbGlnaHRlc3QpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRmb290IHtcbiAgICAgICAgdHIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdihldWktYy1uZXV0cmFsLWJnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHYoZXVpLWMtYmcwKTtcbiAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgIH1cblxuICAgIC8vIENvbXBhY3QgdGFibGVcbiAgICAmLS1jb21wYWN0IHtcbiAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHYoZXVpLXMteHMpIHYoZXVpLXMtcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0ciA+IHRkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHYoZXVpLXMtMnhzKSB2KGV1aS1zLXMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSB0YWJsZVxuICAgICYtLXJlc3BvbnNpdmUge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJi0tYm9yZGVyZWQge1xuICAgICAgICAgICAgYm9yZGVyOiAwOyAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5vV3JhcCB0YWJsZSBjb250ZW50IChhbHNvIGRpc2FibGVzIGVsbGlwc2lzKVxuICAgICYtLW5vd3JhcCB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgdGhlYWQgPiB0ciA+IHRoLFxuICAgICAgICB0Ym9keSA+IHRyID4gdGQsXG4gICAgICAgIHRmb290ID4gdHIgPiB0ZCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2VudGVyZWQgdGFibGVcbiAgICAmLS1jZW50ZXJlZCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gTWlkZGxlIGFsaWduZWQgY2VsbHMgY29udGVudFxuICAgICYtLWFsaWduLW1pZGRsZSB7XG4gICAgICAgIHRoZWFkID4gdHIgPiB0aCxcbiAgICAgICAgdGJvZHkgPiB0ciA+IHRkLFxuICAgICAgICB0Zm9vdCA+IHRyID4gdGQge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIFNldHMgdGhlIGxheW91dCBvZiB0aGUgZXVpQ2xlYXJhYmxlIGRpcmVjdGl2ZVxuLmV1aS1jbGVhcmFibGUtd3JhcHBlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC5ldWktaW5wdXQtdGV4dC0tY2xlYXJhYmxlLWljb24ge1xuICAgICAgICBib3R0b206IGNhbGMoI3t2KGV1aS1zLXMpfSAtIDJweCk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogdihldWktcy1zKTtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIHotaW5kZXg6IHYoZXVpLXppLWNsZWFyYWJsZS1pY29uKTtcbiAgICAgICAgQGluY2x1ZGUgZXVpLWFjY2Vzc2libGUtZm9jdXMoKTtcblxuICAgICAgICA+IHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiB2KGV1aS1jLW5ldXRyYWwtbGlnaHRlcik7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGZpbGw6IHYoZXVpLWMtZGFuZ2VyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIiRvdXRsaW5lLW9mZnNldDogLTJweDtcbiRvdXRsaW5lLXNpemU6IDJweDtcblxuLy8gQ2FsbCB0aGlzIG1peGluIHRvIGVuZm9yY2UgdGhlIGFjY2Vzc2liaWxpdHkgdmlzdWFscyB3aGVuIG9uIGZvY3VzL2FjdGl2ZVxuQG1peGluIGV1aS1hY2Nlc3NpYmxlLWZvY3VzKCRvZmZzZXQ6ICRvdXRsaW5lLW9mZnNldCwgJHNpemU6ICRvdXRsaW5lLXNpemUpIHtcbiAgICAmOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XG4gICAgICAgIG91dGxpbmU6ICRzaXplIHNvbGlkIHZhcigtLWV1aS1jLWZvY3VzKSAhaW1wb3J0YW50O1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogJG9mZnNldCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cblxuICAgICY6Zm9jdXMtdmlzaWJsZTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgICBvdXRsaW5lOiAkc2l6ZSBzb2xpZCB2YXIoLS1ldWktYy1mb2N1cy12aXNpYmxlKSAhaW1wb3J0YW50O1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogJG9mZnNldCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC8vIEZvcmNlZCBmb2N1c2FibGUgZWxlbWVudFxuICAgIFt0YWJpbmRleD1cIjBcIl0ge1xuICAgICAgICAvLyAmOmFjdGl2ZTpub3QoW3JlYWRvbmx5XSksXG4gICAgICAgICY6Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcbiAgICAgICAgICAgIG91dGxpbmU6ICRzaXplIHNvbGlkIHZhcigtLWV1aS1jLWZvY3VzLXZpc2libGUpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogJG9mZnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGV1aS1hY2Nlc3NpYmxlLWZvY3VzLWJvcmRlcigpIHtcbiAgICBib3JkZXItbGVmdDogdihldWktcy0yeHMpIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgJjpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgICBib3JkZXI6IHZhcigtLWV1aS1zLTJ4cykgc29saWQgdmFyKC0tZXVpLWMtZm9jdXMtdmlzaWJsZSkgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG59XG4iLCIuZXVpLWlucHV0LW1heGxlbmd0aC13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuZXVpLWlucHV0LW1heGxlbmd0aCB7XG4gICAgICAgIGZvbnQ6IHZhcigtLWV1aS1mLXhzKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdihldWktYy1uZXV0cmFsLWJnKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdihldWktYy1uZXV0cmFsLWxpZ2h0ZXIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2KGV1aS1ici1tKTtcbiAgICAgICAgY29sb3I6IHYoZXVpLWMtdGV4dCk7XG4gICAgICAgIHBhZGRpbmc6IDAgdihldWktcy0yeHMpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiBjYWxjKC0xICogI3t2KGV1aS1zLXhzKX0pO1xuICAgICAgICB0b3A6IGNhbGMoLTEgKiAje3YoZXVpLXMteHMpfSk7XG4gICAgICAgIHotaW5kZXg6IHYoZXVpLXppLWlucHV0LW1heGxlbmd0aCk7XG5cbiAgICAgICAgJi0taW52YWxpZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2KGV1aS1jLXdhcm5pbmcpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2KGV1aS1jLXdhcm5pbmcpO1xuICAgICAgICAgICAgY29sb3I6IHYoZXVpLWMtd2hpdGUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gSUUxMCsgU1ZHJ3MgYXNwZWN0IHJhdGlvcyBhbmQgc2l6ZXMgZml4XG5AbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgIGltZ1tzcmMkPVwiLnN2Z1wiXSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cbkBtZWRpYSBzY3JlZW4ge1xuICAgIC8vIElFIEZpeDogQmljdWJpYyBTY2FsaW5nIGZvciBJbWFnZXMgJiBmdWxsIHdpZHRoIGJhY2tncm91bmQgKEVDIGxvZ28pXG4gICAgaW1nIHtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICAgIH1cbn1cbiIsIi8vIENPT0tJRSBDT05TRU5UXG4uY29va2llLWNvbnNlbnQtYmFubmVyIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIHRvcDogdihldWktcy1tKSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpICFpbXBvcnRhbnQ7XG4gICAgei1pbmRleDogdihldWktemktbWF4KSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IHYoZXVpLXNoLTI0KSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHYoZXVpLWMtcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKGV1aS1jLXdoaXRlKSAhaW1wb3J0YW50O1xufVxuIiwiI2xvYWRlci13cmFwcGVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDEwMDA7XG5cbiAgICAjbG9hZGVyIHtcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4gMnMgbGluZWFyIGluZmluaXRlOyAvKiBDaHJvbWUsIE9wZXJhIDE1KywgU2FmYXJpIDUrICovXG4gICAgICAgIGFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7IC8qIENocm9tZSwgRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgICAgICAgYW5pbWF0aW9uOiBob3VyZ2xhc3MgNXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICBib3JkZXI6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdihldWktYy13YXJuaW5nKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luOiAtMTAwcHggMCAwIC0xMDBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7IC8qIENocm9tZSwgT3BlcmEgMTUrLCBTYWZhcmkgNSsgKi9cbiAgICAgICAgICAgIGFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7IC8qIENocm9tZSwgRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgICAgICAgICAgIGFuaW1hdGlvbjogaG91cmdsYXNzIDRzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHYoZXVpLWMtZGFuZ2VyKTtcbiAgICAgICAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGxlZnQ6IDVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTsgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSA1KyAqL1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTsgLyogQ2hyb21lLCBGaXJlZm94IDE2KywgSUUgMTArLCBPcGVyYSAqL1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBob3VyZ2xhc3MgM3MgbGluZWFyIGluZmluaXRlO1xuICAgICAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdihldWktYy1wcmltYXJ5KTtcbiAgICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcbiAgICAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuQGtleWZyYW1lcyBzcGluIHtcbiAgICAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGhvdXJnbGFzcyAge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MDBkZWcpO1xuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MDBkZWcpO1xuICAgIH1cbn1cbkBrZXlmcmFtZXMgaG91cmdsYXNzIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICB9XG4gICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTAwZGVnKTtcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODAwZGVnKTtcbiAgICB9XG59XG4iXX0= */",":root {\n --eui-bc-white: #fff;\n --eui-bc-black: #000;\n --eui-bc-transparent: transparent;\n\n // COLOR SHADES\n @each $color, $shades in $eui-base-tokens-colors {\n @each $shade, $value in $shades {\n --eui-bc-#{$color + '-' + $shade}: #{$value};\n --eui-bc-#{$color + '-' + $shade}-contrast: #{getContrast($value)};\n }\n }\n}\n",":root {\n --eui-c-white: var(--eui-bc-white);\n --eui-c-black: var(--eui-bc-black);\n\n --eui-c-bg: var(--eui-bc-neutral-2);\n --eui-c-text: var(--eui-bc-neutral-100);\n\n --eui-c-focus-visible: var(--eui-bc-primary-100);\n --eui-c-focus: var(--eui-bc-primary-40);\n\n --eui-c-hover: var(--eui-bc-primary-5);\n --eui-c-hover-disabled: var(--eui-bc-neutral-10);\n --eui-c-active: var(--eui-bc-primary-10);\n --eui-c-disabled: var(--eui-bc-neutral-60);\n\n @each $color, $shades in $eui-base-context-colors {\n @each $shade, $value in $shades {\n $base-color: $color;\n\n @if $shade == base {\n --eui-c-#{$color}: var(--eui-bc-#{$base-color + '-' + $value});\n --eui-c-#{$color}-contrast: var(--eui-bc-#{$base-color + '-' + $value}-contrast);\n } @else {\n --eui-c-#{$color + '-' + $shade}: var(--eui-bc-#{$base-color + '-' + $value});\n --eui-c-#{$color + '-' + $shade}-contrast: var(--eui-bc-#{$base-color + '-' + $value}-contrast);\n }\n }\n }\n}\n",":root {\n @each $br, $value in $eui-base-tokens-border-radius {\n --eui-bbr-#{$br}: #{$value};\n }\n}\n",":root {\n @each $spacing, $value in $eui-base-context-spacings {\n --eui-s-#{$spacing}: var(--eui-bs-#{$spacing});\n }\n}\n",":root {\n @each $size, $def in $eui-base-tokens-fonts {\n --eui-bf-#{$size}: #{$def};\n }\n\n @each $size, $def in $eui-base-tokens-font-sizes {\n --eui-bf-size-#{$size}: #{$def};\n }\n}\n",":root {\n // FONTS DEFINITIONS\n --eui-f-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;\n // --eui-f-family: 'Source Sans Pro', sans-serif; <link href=\"https://fonts.cdnfonts.com/css/source-sans-pro\" rel=\"stylesheet\">\n // --eui-f-family: 'Roboto', sans-serif; <link href=\"https://fonts.cdnfonts.com/css/roboto\" rel=\"stylesheet\">\n --eui-f-family-monospace: 'Consolas', 'Liberation Mono', 'Courier New', monospace;\n\n // BASE FONT SIZE\n --eui-f-size-base: 16px;\n\n // FONTS VARIANTS\n @each $font, $def in $eui-base-context-fonts {\n --eui-f-#{$font}: var(--eui-bf-#{$def});\n }\n\n // FONTS VARIANTS\n @each $font, $def in $eui-base-context-font-sizes {\n --eui-f-size-#{$font}: var(--eui-bf-size-#{$def});\n }\n\n // ALIASES\n --eui-f: var(--eui-bf-m);\n --eui-f-bold: var(--eui-bf-m-b);\n}\n",":root {\n @each $spacing, $value in $eui-base-tokens-spacings {\n --eui-bs-#{$spacing}: #{$value};\n }\n}\n",":root {\n @each $br, $value in $eui-base-context-border-radius {\n --eui-br-#{$br}: var(--eui-bbr-#{$br});\n }\n}\n",":root {\n @each $sh, $value in $eui-base-tokens-shadows {\n --eui-bsh-#{$sh}: #{$value};\n }\n}\n",":root {\n @each $sh, $value in $eui-base-tokens-shadows {\n --eui-sh-#{$sh}: var(--eui-bsh-#{$sh});\n }\n}\n",":root {\n\n // ICON-SIZES\n @each $icon-size, $value in $eui-base-tokens-icon-sizes {\n --eui-bis-#{$icon-size}: #{$value};\n }\n @each $icon-size, $value in $eui-base-tokens-icon-sizes {\n --eui-is-#{$icon-size}: var(--eui-bis-#{$icon-size});\n }\n\n // Z-INDEXES\n @each $idx, $value in $eui-base-tokens-z-indexes {\n --eui-bzi-#{$idx}: #{$value};\n }\n @each $idx, $value in $eui-base-tokens-z-indexes {\n --eui-zi-#{$idx}: var(--eui-bzi-#{$idx});\n }\n}\n",":root {\n --eui-base-line-height: 1.5;\n --eui-base-scale-factor: 1;\n --eui-base-disabled-opacity: 0.5;\n\n --eui-base-border-state-width: var(--eui-s-xs);\n\n --eui-base-border: 1px solid var(--eui-color-grey-lighter);\n --eui-base-border-light: 1px solid var(--eui-color-grey-light);\n --eui-base-border-lighter: 1px solid var(--eui-color-grey-lighter);\n --eui-base-border-lightest: 1px solid var(--eui-color-grey-lightest);\n\n // Animations related\n --eui-base-animation-linear-out-slow-in-timing-function: cubic-bezier(0, 0, 0.2, 1);\n --eui-base-animation-fast-out-slow-in-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --eui-base-animation-fast-out-linear-in-timing-function: cubic-bezier(0.4, 0, 1, 1);\n --eui-base-animation-ease-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1); // ease\n --eui-base-animation-ease-in-out-timing-function: ease-in-out;\n\n --eui-base-animation-duration-fast: 0.25s;\n --eui-base-animation-duration-medium: 0.5s;\n --eui-base-animation-duration-slow: 1s;\n --eui-base-animation-duration-base: 500ms;\n --eui-base-animation-duration: var(--eui-base-animation-duration-base);\n\n --eui-base-animation-transition-base: all 0.2s #{var(--eui-base-animation-linear-out-slow-in-timing-function)};\n --eui-base-animation-transition-ease: all 0.2s #{var(--eui-base-animation-ease-timing-function)};\n --eui-base-animation-transition-ease-in-out: all 0.2s #{var(--eui-base-animation-ease-in-out-timing-function)};\n --eui-base-animation-transition-ease-in-out-1s: all 1s #{var(--eui-base-animation-ease-in-out-timing-function)};\n\n --eui-base-animation-delay: 0s;\n --eui-base-animation-direction: normal;\n --eui-base-animation-fill-mode: forwards; // this prevents the animation from restarting\n --eui-base-animation-background-color: var(--eui-c-primary-lighter); // #cfcfdf;\n}\n",":root {\n --eui-internal-icon-checkmark-path: url('#{$eui-assets-base-path}/icons/eui-internals/checkmark.svg');\n --eui-internal-icon-remove-path: url('#{$eui-assets-base-path}/icons/eui-internals/remove.svg');\n --eui-internal-icon-ellipse-path: url('#{$eui-assets-base-path}/icons/eui-internals/ellipse.svg');\n --eui-internal-icon-external-path: url('#{$eui-assets-base-path}/icons/eui-internals/external.svg');\n --eui-internal-icon-chevron-down-path: url('#{$eui-assets-base-path}/icons/eui-internals/chevron-down.svg');\n}\n",":root {\n // eUI APP\n --eui-app-header-height-default: 0px;\n --eui-app-header-height: 0px;\n --eui-app-header-height-active: 90px;\n --eui-app-header-height-shrink: 0px;\n\n --eui-app-breadcrumb-height-default: 0px;\n --eui-app-breadcrumb-height: 0px;\n --eui-app-breadcrumb-height-active: 20px;\n\n --eui-app-top-message-height-default: 0px;\n --eui-app-top-message-height: 0px;\n --eui-app-top-message-height-active: 42px;\n\n --eui-app-toolbar-height-default: 0px;\n --eui-app-toolbar-height: 0px;\n --eui-app-toolbar-height-active: 55px;\n\n --eui-app-sidebar-width-default: 0px;\n --eui-app-sidebar-width: 0px;\n --eui-app-sidebar-width-active: 300px;\n --eui-app-sidebar-width-close-default: 0px;\n --eui-app-sidebar-width-close: 0px;\n --eui-app-sidebar-width-close-active: 64px;\n --eui-app-sidebar-header-height: 0px;\n --eui-app-sidebar-header-height-default: 0px;\n --eui-app-sidebar-header-height-active: 48px;\n --eui-app-sidebar-header-user-profile: 64px;\n --eui-app-sidebar-footer-height: 0px;\n --eui-app-sidebar-footer-height-default: 0px;\n --eui-app-sidebar-footer-height-active: 24px;\n\n // Page Layout\n --eui-page-header-with-subtitle-height: 4rem;\n --eui-page-header-without-subtitle-height: 2rem;\n\n --eui-page-column--size-s: 50px;\n --eui-page-column--size-m: 150px;\n --eui-page-column--size-l: 200px;\n --eui-page-column--size-xl: 250px;\n --eui-page-column--size-xxl: 300px;\n --eui-page-column--size-xxxl: 350px;\n --eui-page-column-footer-height: 3.5rem;\n}\n\n.xs, .sm {\n --eui-app-header-height: 0px;\n}\n",".eui-icon-svg {\n fill: currentColor;\n margin: 0;\n transform: scaleX(1) scaleY(1) rotateZ(0deg);\n transition: transform 300ms ease-in-out;\n display: inline-flex;\n align-items: center;\n}\n\n","// Row\n//\n// Rows contain your columns.\n\n@if $enable-grid-classes {\n .row {\n @include make-row();\n\n > * {\n @include make-col-ready();\n }\n }\n}\n\n@if $enable-cssgrid {\n .grid {\n display: grid;\n grid-template-rows: repeat(var(--#{$variable-prefix}rows, 1), 1fr);\n grid-template-columns: repeat(var(--#{$variable-prefix}columns, #{$grid-columns}), 1fr);\n gap: var(--#{$variable-prefix}gap, #{$grid-gutter-width});\n\n @include make-cssgrid();\n }\n}\n\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n@if $enable-grid-classes {\n @include make-grid-columns();\n}\n","// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n@mixin make-row($gutter: $grid-gutter-width) {\n --#{$variable-prefix}gutter-x: #{$gutter};\n --#{$variable-prefix}gutter-y: 0;\n display: flex;\n flex-wrap: wrap;\n // TODO: Revisit calc order after https://github.com/react-bootstrap/react-bootstrap/issues/6039 is fixed\n margin-top: calc(-1 * var(--#{$variable-prefix}gutter-y)); // stylelint-disable-line function-disallowed-list\n margin-right: calc(-.5 * var(--#{$variable-prefix}gutter-x)); // stylelint-disable-line function-disallowed-list\n margin-left: calc(-.5 * var(--#{$variable-prefix}gutter-x)); // stylelint-disable-line function-disallowed-list\n}\n\n@mixin make-col-ready($gutter: $grid-gutter-width) {\n // Add box sizing if only the grid is loaded\n box-sizing: if(variable-exists(include-column-box-sizing) and $include-column-box-sizing, border-box, null);\n // Prevent columns from becoming too narrow when at smaller grid tiers by\n // always setting `width: 100%;`. This works because we set the width\n // later on to override this initial width.\n flex-shrink: 0;\n width: 100%;\n max-width: 100%; // Prevent `.col-auto`, `.col` (& responsive variants) from breaking out the grid\n padding-right: calc(var(--#{$variable-prefix}gutter-x) * .5); // stylelint-disable-line function-disallowed-list\n padding-left: calc(var(--#{$variable-prefix}gutter-x) * .5); // stylelint-disable-line function-disallowed-list\n margin-top: var(--#{$variable-prefix}gutter-y);\n}\n\n@mixin make-col($size: false, $columns: $grid-columns) {\n @if $size {\n flex: 0 0 auto;\n width: percentage(divide($size, $columns));\n\n } @else {\n flex: 1 1 0;\n max-width: 100%;\n }\n}\n\n@mixin make-col-auto() {\n flex: 0 0 auto;\n width: auto;\n}\n\n@mixin make-col-offset($size, $columns: $grid-columns) {\n $num: divide($size, $columns);\n margin-left: if($num == 0, 0, percentage($num));\n}\n\n// Row columns\n//\n// Specify on a parent element(e.g., .row) to force immediate children into NN\n// numberof columns. Supports wrapping to new lines, but does not do a Masonry\n// style grid.\n@mixin row-cols($count) {\n > * {\n flex: 0 0 auto;\n width: divide(100%, $count);\n }\n}\n\n// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `$grid-columns`.\n\n@mixin make-grid-columns($columns: $grid-columns, $gutter: $grid-gutter-width, $breakpoints: $grid-breakpoints) {\n @each $breakpoint in map-keys($breakpoints) {\n $infix: breakpoint-infix($breakpoint, $breakpoints);\n\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n // Provide basic `.col-{bp}` classes for equal-width flexbox columns\n .col#{$infix} {\n flex: 1 0 0%; // Flexbugs #4: https://github.com/philipwalton/flexbugs#flexbug-4\n }\n\n .row-cols#{$infix}-auto > * {\n @include make-col-auto();\n }\n\n @if $grid-row-columns > 0 {\n @for $i from 1 through $grid-row-columns {\n .row-cols#{$infix}-#{$i} {\n @include row-cols($i);\n }\n }\n }\n\n .col#{$infix}-auto {\n @include make-col-auto();\n }\n\n @if $columns > 0 {\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @include make-col($i, $columns);\n }\n }\n\n // `$columns - 1` because offsetting by the width of an entire row isn't possible\n @for $i from 0 through ($columns - 1) {\n @if not ($infix == \"\" and $i == 0) { // Avoid emitting useless .offset-0\n .offset#{$infix}-#{$i} {\n @include make-col-offset($i, $columns);\n }\n }\n }\n }\n\n // Gutters\n //\n // Make use of `.g-*`, `.gx-*` or `.gy-*` utilities to change spacing between the columns.\n @each $key, $value in $gutters {\n .g#{$infix}-#{$key},\n .gx#{$infix}-#{$key} {\n --#{$variable-prefix}gutter-x: #{$value};\n }\n\n .g#{$infix}-#{$key},\n .gy#{$infix}-#{$key} {\n --#{$variable-prefix}gutter-y: #{$value};\n }\n }\n }\n }\n}\n\n@mixin make-cssgrid($columns: $grid-columns, $breakpoints: $grid-breakpoints) {\n @each $breakpoint in map-keys($breakpoints) {\n $infix: breakpoint-infix($breakpoint, $breakpoints);\n\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n @if $columns > 0 {\n @for $i from 1 through $columns {\n .g-col#{$infix}-#{$i} {\n grid-column: auto / span $i;\n }\n }\n\n // Start with `1` because `0` is and invalid value.\n // Ends with `$columns - 1` because offsetting by the width of an entire row isn't possible.\n @for $i from 1 through ($columns - 1) {\n .g-start#{$infix}-#{$i} {\n grid-column-start: $i;\n }\n }\n }\n }\n }\n}\n","// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @if not $n {\n @error \"breakpoint `#{$name}` not found in `#{$breakpoints}`\";\n }\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {\n $min: map-get($breakpoints, $name);\n @return if($min != 0, $min, null);\n}\n\n// Maximum breakpoint width.\n// The maximum value is reduced by 0.02px to work around the limitations of\n// `min-` and `max-` prefixes and viewports with fractional widths.\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(md, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {\n $max: map-get($breakpoints, $name);\n @return if($max and $max > 0, $max - .02, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media that spans multiple breakpoint widths.\n// Makes the @content apply between the min and max breakpoints\n@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($lower, $breakpoints);\n $max: breakpoint-max($upper, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($lower, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($upper, $breakpoints) {\n @content;\n }\n }\n}\n\n// Media between the breakpoint's minimum and maximum widths.\n// No minimum for the smallest breakpoint, and no maximum for the largest one.\n// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.\n@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n $next: breakpoint-next($name, $breakpoints);\n $max: breakpoint-max($next);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($name, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($next, $breakpoints) {\n @content;\n }\n }\n}\n","@use '@angular/cdk';\n@use '../tokens/m2/mat/ripple' as tokens-mat-ripple;\n@use '../tokens/token-utils';\n\n@mixin ripple() {\n // The host element of an mat-ripple directive should always have a position of \"absolute\" or\n // \"relative\" so that the ripples inside are correctly positioned relatively to the container.\n .mat-ripple {\n overflow: hidden;\n\n // By default, every ripple container should have position: relative in favor of creating an\n // easy API for developers using the MatRipple directive.\n position: relative;\n\n // Promote containers that have ripples to a new layer. We want to target `:not(:empty)`,\n // because we don't want all ripple containers to have their own layer since they're used in a\n // lot of places and the layer is only relevant while animating. Note that ideally we'd use\n // the `contain` property here (see #13175), because `:empty` can be broken by having extra\n // text inside the element, but it isn't very well supported yet.\n &:not(:empty) {\n transform: translateZ(0);\n }\n }\n\n .mat-ripple.mat-ripple-unbounded {\n overflow: visible;\n }\n\n .mat-ripple-element {\n position: absolute;\n border-radius: 50%;\n pointer-events: none;\n\n transition: opacity, transform 0ms cubic-bezier(0, 0, 0.2, 1);\n\n // We use a 3d transform here in order to avoid an issue in Safari where\n // the ripples aren't clipped when inside the shadow DOM (see #24028).\n transform: scale3d(0, 0, 0);\n\n @include token-utils.use-tokens(\n tokens-mat-ripple.$prefix, tokens-mat-ripple.get-token-slots()) {\n // We have to emit a fallback value here, because some internal builds depend on it.\n background-color: var(#{token-utils.get-token-variable(color)}, rgba(#000, 0.1));\n }\n\n // In high contrast mode the ripple is opaque, causing it to obstruct the content.\n @include cdk.high-contrast(active, off) {\n display: none;\n }\n }\n}\n","/// Emits a CSS class, `.cdk-visually-hidden`. This class can be applied to an element\n/// to make that element visually hidden while remaining available to assistive technology.\n@mixin a11y-visually-hidden() {\n .cdk-visually-hidden {\n border: 0;\n clip: rect(0 0 0 0);\n height: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n width: 1px;\n\n // This works around a Chrome bug that can cause the tab to crash when large amounts of\n // non-English text get wrapped: https://bugs.chromium.org/p/chromium/issues/detail?id=1201444\n white-space: nowrap;\n\n // Avoid browsers rendering the focus ring in some cases.\n outline: 0;\n\n // Avoid some cases where the browser will still render the native controls (see #9049).\n -webkit-appearance: none;\n -moz-appearance: none;\n\n // We need at least one of top/bottom/left/right in order to prevent cases where the\n // absolute-positioned element is pushed down and can affect scrolling (see #24597).\n // `left` was chosen here, because it's the least likely to break overrides where the\n // element might have been positioned (e.g. `mat-checkbox`).\n left: 0;\n\n [dir='rtl'] & {\n left: auto;\n right: 0;\n }\n }\n}\n\n/// @deprecated Use `a11y-visually-hidden`.\n@mixin a11y() {\n @include a11y-visually-hidden;\n}\n\n/// Emits the mixin's content nested under `$selector-context` if `$selector-context`\n/// is non-empty.\n/// @param {String} selector-context The selector under which to nest the mixin's content.\n@mixin _optionally-nest-content($selector-context) {\n @if ($selector-context == '') {\n @content;\n }\n @else {\n #{$selector-context} {\n @content;\n }\n }\n}\n\n/// Applies styles for users in high contrast mode. Note that this only applies\n/// to Microsoft browsers. Chrome can be included by checking for the `html[hc]`\n/// attribute, however Chrome handles high contrast differently.\n///\n/// @param {String} target Type of high contrast setting to target. Defaults to `active`, can be\n/// `white-on-black` or `black-on-white`.\n/// @param {String} encapsulation Whether to emit styles for view encapsulation. Values are:\n/// * `on` - works for `Emulated`, `Native`, and `ShadowDom`\n/// * `off` - works for `None`\n/// * `any` - works for all encapsulation modes by emitting the CSS twice (default).\n@mixin high-contrast($target: active, $encapsulation: 'any') {\n @if ($target != 'active' and $target != 'black-on-white' and $target != 'white-on-black') {\n @error 'Unknown cdk-high-contrast value \"#{$target}\" provided. ' +\n 'Allowed values are \"active\", \"black-on-white\", and \"white-on-black\"';\n }\n\n @if ($encapsulation != 'on' and $encapsulation != 'off' and $encapsulation != 'any') {\n @error 'Unknown cdk-high-contrast encapsulation \"#{$encapsulation}\" provided. ' +\n 'Allowed values are \"on\", \"off\", and \"any\"';\n }\n\n // If the selector context has multiple parts, such as `.section, .region`, just doing\n // `.cdk-high-contrast-xxx #{&}` will only apply the parent selector to the first part of the\n // context. We address this by nesting the selector context under .cdk-high-contrast.\n @at-root {\n $selector-context: #{&};\n\n @if ($encapsulation != 'on') {\n // Note that if this selector is updated, the same change has to be made inside\n // `_overlay.scss` which can't depend on this mixin due to some infrastructure limitations.\n .cdk-high-contrast-#{$target} {\n @include _optionally-nest-content($selector-context) {\n @content;\n }\n }\n }\n\n @if ($encapsulation != 'off') {\n .cdk-high-contrast-#{$target} :host {\n @include _optionally-nest-content($selector-context) {\n @content;\n }\n }\n }\n }\n}\n","// We want overlays to always appear over user content, so set a baseline\n// very high z-index for the overlay container, which is where we create the new\n// stacking context for all overlays.\n$overlay-container-z-index: 1000 !default;\n$overlay-z-index: 1000 !default;\n$overlay-backdrop-z-index: 1000 !default;\n\n// Background color for all of the backdrops\n$overlay-backdrop-color: rgba(0, 0, 0, 0.32) !default;\n\n// Default backdrop animation is based on the Material Design swift-ease-out.\n$backdrop-animation-duration: 400ms !default;\n$backdrop-animation-timing-function: cubic-bezier(0.25, 0.8, 0.25, 1) !default;\n\n/// Emits structural styles required for cdk/overlay to function.\n@mixin overlay() {\n .cdk-overlay-container, .cdk-global-overlay-wrapper {\n // Disable events from being captured on the overlay container.\n pointer-events: none;\n\n // The container should be the size of the viewport.\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n }\n\n // The overlay-container is an invisible element which contains all individual overlays.\n .cdk-overlay-container {\n position: fixed;\n z-index: $overlay-container-z-index;\n\n &:empty {\n // Hide the element when it doesn't have any child nodes. This doesn't\n // include overlays that have been detached, rather than disposed.\n display: none;\n }\n }\n\n // We use an extra wrapper element in order to use make the overlay itself a flex item.\n // This makes centering the overlay easy without running into the subpixel rendering\n // problems tied to using `transform` and without interfering with the other position\n // strategies.\n .cdk-global-overlay-wrapper {\n display: flex;\n position: absolute;\n z-index: $overlay-z-index;\n }\n\n // A single overlay pane.\n .cdk-overlay-pane {\n // Note: it's important for this one to start off `absolute`,\n // in order for us to be able to measure it correctly.\n position: absolute;\n pointer-events: auto;\n box-sizing: border-box;\n z-index: $overlay-z-index;\n\n // For connected-position overlays, we set `display: flex` in\n // order to force `max-width` and `max-height` to take effect.\n display: flex;\n max-width: 100%;\n max-height: 100%;\n }\n\n .cdk-overlay-backdrop {\n // TODO(jelbourn): reuse sidenav fullscreen mixin.\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n\n z-index: $overlay-backdrop-z-index;\n pointer-events: auto;\n -webkit-tap-highlight-color: transparent;\n transition: opacity $backdrop-animation-duration $backdrop-animation-timing-function;\n opacity: 0;\n\n &.cdk-overlay-backdrop-showing {\n opacity: 1;\n\n // Note that we can't import and use the `high-contrast` mixin from `_a11y.scss`, because\n // this file will be copied to the top-level `cdk` package when putting together the files\n // for npm. Any relative import paths we use here will become invalid once the file is copied.\n .cdk-high-contrast-active & {\n // In high contrast mode the rgba background will become solid\n // so we need to fall back to making it opaque using `opacity`.\n opacity: 0.6;\n }\n }\n }\n\n .cdk-overlay-dark-backdrop {\n background: $overlay-backdrop-color;\n }\n\n .cdk-overlay-transparent-backdrop {\n // Define a transition on the visibility so that the `transitionend` event can fire immediately.\n transition: visibility 1ms linear, opacity 1ms linear;\n visibility: hidden;\n opacity: 1;\n\n // Note: as of Firefox 57, having the backdrop be `background: none` will prevent it from\n // capturing the user's mouse scroll events. Since we also can't use something like\n // `rgba(0, 0, 0, 0)`, we work around the inconsistency by not setting the background at\n // all and using `opacity` to make the element transparent.\n &.cdk-overlay-backdrop-showing {\n opacity: 0;\n visibility: visible;\n }\n }\n\n .cdk-overlay-backdrop-noop-animation {\n transition: none;\n }\n\n // Overlay parent element used with the connected position strategy. Used to constrain the\n // overlay element's size to fit within the viewport.\n .cdk-overlay-connected-position-bounding-box {\n position: absolute;\n z-index: $overlay-z-index;\n\n // We use `display: flex` on this element exclusively for centering connected overlays.\n // When *not* centering, a top/left/bottom/right will be set which overrides the normal\n // flex layout.\n display: flex;\n\n // We use the `column` direction here to avoid some flexbox issues in Edge\n // when using the \"grow after open\" options.\n flex-direction: column;\n\n // Add some dimensions so the element has an `innerText` which some people depend on in tests.\n min-width: 1px;\n min-height: 1px;\n }\n\n // Used when disabling global scrolling.\n .cdk-global-scrollblock {\n position: fixed;\n\n // Necessary for the content not to lose its width. Note that we're using 100%, instead of\n // 100vw, because 100vw includes the width plus the scrollbar, whereas 100% is the width\n // that the element had before we made it `fixed`.\n width: 100%;\n\n // Note: this will always add a scrollbar to whatever element it is on, which can\n // potentially result in double scrollbars. It shouldn't be an issue, because we won't\n // block scrolling on a page that doesn't have a scrollbar in the first place.\n overflow-y: scroll;\n }\n}\n","// Structural styles for the autosize text fields.\n@mixin text-field-autosize() {\n // Remove the resize handle on autosizing textareas, because whatever height\n // the user resized to will be overwritten once they start typing again.\n textarea.cdk-textarea-autosize {\n resize: none;\n }\n\n // This class is temporarily applied to the textarea when it is being measured. It is immediately\n // removed when measuring is complete. We use `!important` rules here to make sure user-specified\n // rules do not interfere with the measurement.\n textarea.cdk-textarea-autosize-measuring {\n @include _autosize-measuring-base;\n height: auto !important;\n overflow: hidden !important;\n }\n\n // Similar to the `cdk-textarea-autosize-measuring` class, but only applied on Firefox. We need\n // to use this class, because Firefox has a bug where changing the `overflow` breaks the user's\n // ability to undo/redo what they were typing (see #16629). This class is only scoped to Firefox,\n // because the measurements there don't seem to be affected by the `height: 0`, whereas on other\n // browsers they are, e.g. Chrome detects longer text and IE does't resize back to normal.\n // Identical issue report: https://bugzilla.mozilla.org/show_bug.cgi?id=448784\n textarea.cdk-textarea-autosize-measuring-firefox {\n @include _autosize-measuring-base;\n height: 0 !important;\n }\n}\n\n// Core styles that enable monitoring autofill state of text fields.\n@mixin text-field-autofill() {\n // Keyframes that apply no styles, but allow us to monitor when an text field becomes autofilled\n // by watching for the animation events that are fired when they start. Note: the /*!*/ comment is\n // needed to prevent LibSass from stripping the keyframes out.\n // Based on: https://medium.com/@brunn/detecting-autofilled-fields-in-javascript-aed598d25da7\n @keyframes cdk-text-field-autofill-start {/*!*/}\n @keyframes cdk-text-field-autofill-end {/*!*/}\n\n .cdk-text-field-autofill-monitored:-webkit-autofill {\n // Since Chrome 80 we need a 1ms delay, or the animationstart event won't fire.\n animation: cdk-text-field-autofill-start 0s 1ms;\n }\n\n .cdk-text-field-autofill-monitored:not(:-webkit-autofill) {\n // Since Chrome 80 we need a 1ms delay, or the animationstart event won't fire.\n animation: cdk-text-field-autofill-end 0s 1ms;\n }\n}\n\n@mixin _autosize-measuring-base {\n // Having 2px top and bottom padding seems to fix a bug where Chrome gets an incorrect\n // measurement. We just have to account for it later and subtract it off the final result.\n padding: 2px 0 !important;\n box-sizing: content-box !important;\n}\n\n// Used to generate UIDs for keyframes used to change the text field autofill styles.\n$autofill-color-frame-count: 0;\n\n// Mixin used to apply custom background and foreground colors to an autofilled text field.\n// Based on: https://stackoverflow.com/questions/2781549/\n// removing-input-background-colour-for-chrome-autocomplete#answer-37432260\n@mixin text-field-autofill-color($background, $foreground:'') {\n @keyframes cdk-text-field-autofill-color-#{$autofill-color-frame-count} {\n to {\n background: $background;\n @if $foreground != '' { color: $foreground; }\n }\n }\n\n &:-webkit-autofill {\n animation: cdk-text-field-autofill-color-#{$autofill-color-frame-count} both;\n }\n\n &.cdk-text-field-autofill-monitored:-webkit-autofill {\n // Since Chrome 80 we need a 1ms delay for cdk-text-field-autofill-start, or the animationstart\n // event won't fire.\n animation: cdk-text-field-autofill-start 0s 1ms,\n cdk-text-field-autofill-color-#{$autofill-color-frame-count} both;\n }\n\n $autofill-color-frame-count: $autofill-color-frame-count + 1 !global;\n}\n\n// @deprecated Use `autosize` and `autofill` instead.\n@mixin text-field {\n @include text-field-autosize();\n @include text-field-autofill();\n}\n","@use 'sass:map';\n@use 'sass:meta';\n@use '@angular/cdk';\n@use '../style/layout-common';\n@use '../theming/theming';\n@use '../theming/inspection';\n\n// Private sass variables that will be used as reference throughout component stylesheets.\n$default-border-width: 3px;\n$default-border-style: solid;\n$default-border-color: transparent;\n$default-border-radius: 4px;\n\n// Mixin that renders the focus indicator structural styles.\n@mixin structural-styling($prefix) {\n .#{$prefix}-focus-indicator {\n position: relative;\n\n &::before {\n @include layout-common.fill();\n box-sizing: border-box;\n pointer-events: none;\n display: var(--#{$prefix}-focus-indicator-display, none); // Hide the indicator by default.\n border: var(\n --#{$prefix}-focus-indicator-border-width,\n #{$default-border-width}\n )\n var(\n --#{$prefix}-focus-indicator-border-style,\n #{$default-border-style}\n )\n var(\n --#{$prefix}-focus-indicator-border-color,\n #{$default-border-color}\n );\n border-radius: var(\n --#{$prefix}-focus-indicator-border-radius,\n #{$default-border-radius}\n );\n }\n\n // By default, render the focus indicator when the focus indicator host element takes focus.\n // Defining a pseudo element's content will cause it to render.\n &:focus::before {\n content: '';\n }\n }\n\n // Enable the indicator in high contrast mode.\n @include cdk.high-contrast(active, off) {\n @include customize-focus-indicators((display: block), $prefix);\n }\n}\n\n// Generates CSS variable declarations from a map.\n@mixin _output-variables($map) {\n @each $key, $value in $map {\n @if ($value) {\n --#{$key}: #{$value};\n }\n }\n}\n\n// Mixin that dedups CSS variables for the strong-focus-indicators mixin.\n@mixin customize-focus-indicators($config, $prefix) {\n $border-style: map.get($config, border-style);\n $border-width: map.get($config, border-width);\n $border-radius: map.get($config, border-radius);\n $border-color: map.get($config, border-color);\n $display: map.get($config, display);\n $map: (\n '#{$prefix}-focus-indicator-border-style': $border-style,\n '#{$prefix}-focus-indicator-border-width': $border-width,\n '#{$prefix}-focus-indicator-border-radius': $border-radius,\n '#{$prefix}-focus-indicator-border-color': $border-color,\n '#{$prefix}-focus-indicator-display': $display,\n );\n\n @if (&) {\n @include _output-variables($map);\n }\n @else {\n // We use `html` here instead of `:root`, because the\n // latter causes some issues with internal tooling.\n html {\n @include _output-variables($map);\n }\n }\n}\n\n@mixin strong-focus-indicators($config: ()) {\n // Default focus indicator config.\n $default-config: (\n border-color: black,\n display: block,\n );\n\n // Merge default config with user config.\n $config: map.merge($default-config, $config);\n\n @include customize-focus-indicators($config, 'mat');\n}\n\n@mixin mdc-strong-focus-indicators($config: ()) {\n // Default focus indicator config.\n $default-config: (\n border-color: black,\n display: block,\n );\n\n // Merge default config with user config.\n $config: map.merge($default-config, $config);\n\n @include customize-focus-indicators($config, 'mat-mdc');\n}\n\n@mixin strong-focus-indicators-color($theme-or-color) {\n @if meta.type-of($theme-or-color) == 'color' {\n @include customize-focus-indicators((\n border-color: $theme-or-color\n ), 'mat');\n }\n @else {\n $border-color: inspection.get-theme-color($theme-or-color, primary);\n @include customize-focus-indicators((\n border-color: $border-color\n ), 'mat');\n }\n}\n\n@mixin strong-focus-indicators-theme($theme-or-color) {\n @if meta.type-of($theme-or-color) == 'color' {\n @include customize-focus-indicators((\n border-color: $theme-or-color\n ), 'mat');\n }\n @else {\n @include theming.private-check-duplicate-theme-styles($theme-or-color, 'mat-focus-indicators') {\n @if inspection.theme-has($theme-or-color, color) {\n @include strong-focus-indicators-color($theme-or-color);\n }\n }\n }\n}\n\n@mixin mdc-strong-focus-indicators-color($theme-or-color) {\n @if meta.type-of($theme-or-color) == 'color' {\n @include customize-focus-indicators((\n border-color: $theme-or-color\n ), 'mat-mdc');\n }\n @else {\n $border-color: inspection.get-theme-color($theme-or-color, primary);\n @include customize-focus-indicators((\n border-color: $border-color\n ), 'mat-mdc');\n }\n}\n\n@mixin mdc-strong-focus-indicators-theme($theme-or-color) {\n @if meta.type-of($theme-or-color) == 'color' {\n @include customize-focus-indicators((\n border-color: $theme-or-color\n ), 'mat-mdc');\n }\n @else {\n @include theming.private-check-duplicate-theme-styles(\n $theme-or-color, 'mat-mdc-focus-indicators') {\n @if inspection.theme-has($theme-or-color, color) {\n @include mdc-strong-focus-indicators-color($theme-or-color);\n }\n }\n }\n}\n","// This mixin ensures an element spans to fill the nearest ancestor with defined positioning.\n@mixin fill {\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n position: absolute;\n}\n","@use '@angular/cdk';\n@use './tokens/m2/mat/app' as tokens-mat-app;\n@use './tokens/token-utils';\n@use './ripple/ripple';\n@use './focus-indicators/private';\n@use './mdc-helpers/mdc-helpers';\n\n// Mixin that renders all of the core styles that are not theme-dependent.\n@mixin core() {\n @include ripple.ripple();\n @include cdk.a11y-visually-hidden();\n @include cdk.overlay();\n @include cdk.text-field-autosize();\n @include cdk.text-field-autofill();\n @include private.structural-styling('mat');\n @include private.structural-styling('mat-mdc');\n\n // Wrapper element that provides the theme background when the\n // user's content isn't inside of a `mat-sidenav-container`.\n @at-root {\n .mat-app-background {\n @include mdc-helpers.disable-mdc-fallback-declarations {\n @include token-utils.use-tokens(tokens-mat-app.$prefix, tokens-mat-app.get-token-slots()) {\n // Note: we need to emit fallback values here to avoid errors in internal builds.\n @include token-utils.create-token-slot(background-color, background-color, transparent);\n @include token-utils.create-token-slot(color, text-color, inherit);\n }\n }\n }\n }\n}\n","//\n// Copyright 2020 Google Inc.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to deal\n// in the Software without restriction, including without limitation the rights\n// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n// THE SOFTWARE.\n//\n\n@use 'sass:list';\n@use 'sass:map';\n@use 'sass:meta';\n@use './gss';\n\n/// When true, add an additional property/value declaration before declarations\n/// that use advanced features such as custom properties or CSS functions. This\n/// adds fallback support for older browsers such as IE11 that do not support\n/// these features at the cost of additional CSS. Set this variable to false to\n/// disable generating fallback declarations.\n$enable-fallback-declarations: true !default;\n\n/// Writes a CSS property/value declaration. This mixin is used throughout the\n/// theme package for consistency for dynamically setting CSS property values.\n///\n/// This mixin may optionally take a fallback value. For advanced features such\n/// as custom properties or CSS functions like min and max, a fallback value is\n/// recommended to support older browsers.\n///\n/// @param {String} $property - The CSS property of the declaration.\n/// @param {*} $value - The value of the CSS declaration. The value should be\n/// resolved by other theme functions first (i.e. custom property Maps and\n/// Material theme keys are not supported in this mixin). If the value is\n/// null, no declarations will be emitted.\n/// @param {*} $fallback - An optional fallback value for older browsers. If\n/// provided, a second property/value declaration will be added before the\n/// main property/value declaration.\n/// @param {Map} $gss - An optional Map of GSS annotations to add.\n/// @param {Bool} $important - If true, add `!important` to the declaration.\n@mixin declaration(\n $property,\n $value,\n $fallback-value: null,\n $gss: (),\n $important: false\n) {\n // Normally setting a null value to a property will not emit CSS, so mixins\n // wouldn't need to check this. However, Sass will throw an error if the\n // interpolated property is a custom property.\n @if $value != null {\n $important-rule: if($important, ' !important', '');\n\n @if $fallback-value and $enable-fallback-declarations {\n @include gss.annotate($gss);\n #{$property}: #{$fallback-value} #{$important-rule};\n\n // Add @alternate to annotations.\n $gss: map.merge(\n $gss,\n (\n alternate: true,\n )\n );\n }\n\n @include gss.annotate($gss);\n #{$property}: #{$value}#{$important-rule};\n }\n}\n\n/// Unpacks shorthand values for CSS properties (i.e. lists of 1-3 values).\n/// If a list of 4 values is given, it is returned as-is.\n///\n/// Examples:\n///\n/// unpack-value(4px) => 4px 4px 4px 4px\n/// unpack-value(4px 2px) => 4px 2px 4px 2px\n/// unpack-value(4px 2px 2px) => 4px 2px 2px 2px\n/// unpack-value(4px 2px 0 2px) => 4px 2px 0 2px\n///\n/// @param {Number | Map | List} $value - List of 1 to 4 value numbers.\n/// @return {List} a List of 4 value numbers.\n@function unpack-value($value) {\n @if meta.type-of($value) == 'map' or list.length($value) == 1 {\n @return $value $value $value $value;\n } @else if list.length($value) == 4 {\n @return $value;\n } @else if list.length($value) == 3 {\n @return list.nth($value, 1) list.nth($value, 2) list.nth($value, 3)\n list.nth($value, 2);\n } @else if list.length($value) == 2 {\n @return list.nth($value, 1) list.nth($value, 2) list.nth($value, 1)\n list.nth($value, 2);\n }\n\n @error \"Invalid CSS property value: '#{$value}' is more than 4 values\";\n}\n","@use 'sass:color';\n@use 'sass:list';\n@use 'sass:map';\n@use 'sass:meta';\n\n/// Include content under the current selector (&) or the document root if there is no current\n/// selector.\n/// @param {String} $root [html] The default root selector to use when there is no current selector.\n/// @output The given content under the current selector, or root selector if there is no current\n/// selector.\n/// @content Content to output under the current selector, or root selector if there is no current\n/// selector.\n@mixin current-selector-or-root($root: html) {\n @if & {\n @content;\n }\n @else {\n #{$root} {\n @content;\n }\n }\n}\n\n/// A version of the standard `map.merge` function that takes a variable number of arguments.\n/// Each argument is merged into the final result from left to right.\n/// @param {List} $maps The maps to combine with map.merge\n/// @return {Map} The combined result of successively calling map.merge with each parameter.\n@function merge-all($maps...) {\n $result: ();\n @each $map in $maps {\n $result: map.merge($result, $map);\n }\n @return $result;\n}\n\n/// A version of the standard `map.deep-merge` function that takes a variable number of arguments.\n/// Each argument is deep-merged into the final result from left to right.\n/// @param {List} $maps The maps to combine with map.deep-merge\n/// @return {Map} The combined result of successively calling map.deep-merge with each parameter.\n@function deep-merge-all($maps...) {\n $result: ();\n @each $map in $maps {\n $result: map.deep-merge($result, $map);\n }\n @return $result;\n}\n\n/// Coerces the given value to a list, by converting any non-list value into a single-item list.\n/// This should be used when dealing with user-passed lists of args to avoid confusing errors,\n/// since Sass treats `($x)` as equivalent to `$x`.\n/// @param {Any} $value The value to coerce to a list.\n/// @return {List} The original $value if it was a list, otherwise a single-item list containing\n/// $value.\n@function coerce-to-list($value) {\n @return if(meta.type-of($value) != 'list', ($value,), $value);\n}\n\n/// A version of the Sass `color.change` function that is safe ot use with CSS variables.\n@function safe-color-change($color, $args...) {\n $args: meta.keywords($args);\n @return if(meta.type-of($color) == 'color', color.change($color, $args...), $color);\n}\n\n/// Gets the given arguments as a map of keywords and validates that only supported arguments were\n/// passed.\n/// @param {ArgList} $args The arguments to convert to a keywords map.\n/// @param {List} $supported-args The supported argument names.\n/// @return {Map} The $args as a map of argument name to argument value.\n@function validate-keyword-args($args, $supported-args) {\n @if list.length($args) > 0 {\n @error #{'Expected keyword args, but got positional args: '}#{$args};\n }\n $kwargs: meta.keywords($args);\n @each $arg, $v in $kwargs {\n @if list.index($supported-args, $arg) == null {\n @error #{'Unsupported argument '}#{$arg}#{'. Valid arguments are: '}#{$supported-args};\n }\n }\n @return $kwargs;\n}\n","@use 'sass:color';\n@use 'sass:map';\n@use '../core/tokens/m2/mat/datepicker' as tokens-mat-datepicker;\n@use '../core/theming/theming';\n@use '../core/theming/inspection';\n@use '../core/theming/validation';\n@use '../core/tokens/token-utils';\n@use '../core/style/sass-utils';\n@use '../core/typography/typography';\n@use '../button/icon-button-theme';\n\n// TODO(crisbeto): these variables aren't used anymore and should be removed.\n$selected-today-box-shadow-width: 1px;\n$selected-fade-amount: 0.6;\n$range-fade-amount: 0.2;\n$today-fade-amount: 0.2;\n$calendar-body-font-size: 13px !default;\n$calendar-weekday-table-font-size: 11px !default;\n\n@mixin _calendar-color($theme, $palette-name) {\n $palette-color: inspection.get-theme-color($theme, $palette-name);\n $range-color: tokens-mat-datepicker.private-get-range-background-color($palette-color);\n $range-tokens: tokens-mat-datepicker.get-range-color-tokens($range-color);\n $calendar-tokens:\n tokens-mat-datepicker.private-get-calendar-color-palette-color-tokens($theme, $palette-name);\n\n @include token-utils.create-token-values(tokens-mat-datepicker.$prefix,\n map.merge($calendar-tokens, $range-tokens));\n}\n\n/// Outputs base theme styles (styles not dependent on the color, typography, or density settings)\n/// for the mat-datepicker.\n/// @param {Map} $theme The theme to generate base styles for.\n@mixin base($theme) {\n @if inspection.get-theme-version($theme) == 1 {\n @include _theme-from-tokens(inspection.get-theme-tokens($theme, base));\n }\n @else {\n @include sass-utils.current-selector-or-root() {\n @include token-utils.create-token-values(tokens-mat-datepicker.$prefix,\n tokens-mat-datepicker.get-unthemable-tokens());\n }\n }\n}\n\n/// Outputs color theme styles for the mat-datepicker.\n/// @param {Map} $theme The theme to generate color styles for.\n/// @param {ArgList} Additional optional arguments (only supported for M3 themes):\n/// $color-variant: The color variant to use for the main selection: primary, secondary, tertiary,\n/// or error (If not specified, default primary color will be used).\n@mixin color($theme, $options...) {\n @if inspection.get-theme-version($theme) == 1 {\n @include _theme-from-tokens(inspection.get-theme-tokens($theme, color), $options...);\n }\n @else {\n @include sass-utils.current-selector-or-root() {\n @include token-utils.create-token-values(tokens-mat-datepicker.$prefix,\n tokens-mat-datepicker.get-color-tokens($theme));\n }\n\n .mat-datepicker-content {\n &.mat-accent {\n @include _calendar-color($theme, accent);\n }\n\n &.mat-warn {\n @include _calendar-color($theme, warn);\n }\n }\n\n .mat-datepicker-toggle-active {\n &.mat-accent {\n $accent-tokens:\n tokens-mat-datepicker.private-get-toggle-color-palette-color-tokens($theme, accent);\n @include token-utils.create-token-values(tokens-mat-datepicker.$prefix, $accent-tokens);\n }\n\n &.mat-warn {\n $warn-tokens:\n tokens-mat-datepicker.private-get-toggle-color-palette-color-tokens($theme, warn);\n @include token-utils.create-token-values(tokens-mat-datepicker.$prefix, $warn-tokens);\n }\n }\n }\n}\n\n/// Outputs typography theme styles for the mat-datepicker.\n/// @param {Map} $theme The theme to generate typography styles for.\n@mixin typography($theme) {\n @if inspection.get-theme-version($theme) == 1 {\n @include _theme-from-tokens(inspection.get-theme-tokens($theme, typography));\n }\n @else {\n @include sass-utils.current-selector-or-root() {\n @include token-utils.create-token-values(tokens-mat-datepicker.$prefix,\n tokens-mat-datepicker.get-typography-tokens($theme));\n }\n }\n}\n\n@mixin date-range-colors(\n $range-color,\n $comparison-color: tokens-mat-datepicker.$private-default-comparison-color,\n $overlap-color: tokens-mat-datepicker.$private-default-overlap-color,\n $overlap-selected-color:\n tokens-mat-datepicker.private-get-default-overlap-selected-color($overlap-color)) {\n $tokens: tokens-mat-datepicker.get-range-color-tokens(\n $range-color: $range-color,\n $comparison-color: $comparison-color,\n $overlap-color: $overlap-color,\n $overlap-selected-color: $overlap-selected-color,\n );\n\n @include sass-utils.current-selector-or-root() {\n @include token-utils.create-token-values(tokens-mat-datepicker.$prefix, $tokens);\n }\n}\n\n/// Outputs density theme styles for the mat-datepicker.\n/// @param {Map} $theme The theme to generate density styles for.\n@mixin density($theme) {\n @if inspection.get-theme-version($theme) == 1 {\n @include _theme-from-tokens(inspection.get-theme-tokens($theme, density));\n }\n @else {\n // TODO(crisbeto): move this into the structural styles\n // once the icon button density is switched to tokens.\n\n // Regardless of the user-passed density, we want the calendar\n // previous/next buttons to remain at density -2\n .mat-calendar-controls {\n @include icon-button-theme.density(-2);\n }\n }\n}\n\n/// Outputs all (base, color, typography, and density) theme styles for the mat-datepicker.\n/// @param {Map} $theme The theme to generate styles for.\n/// @param {ArgList} Additional optional arguments (only supported for M3 themes):\n/// $color-variant: The color variant to use for the main selection: primary, secondary, tertiary,\n/// or error (If not specified, default primary color will be used).\n@mixin theme($theme, $options...) {\n @include theming.private-check-duplicate-theme-styles($theme, 'mat-datepicker') {\n @if inspection.get-theme-version($theme) == 1 {\n @include _theme-from-tokens(inspection.get-theme-tokens($theme), $options...);\n }\n @else {\n @include base($theme);\n @if inspection.theme-has($theme, color) {\n @include color($theme);\n }\n @if inspection.theme-has($theme, density) {\n @include density($theme);\n }\n @if inspection.theme-has($theme, typography) {\n @include typography($theme);\n }\n }\n }\n}\n\n@mixin _theme-from-tokens($tokens, $options...) {\n @include validation.selector-defined(\n 'Calls to Angular Material theme mixins with an M3 theme must be wrapped in a selector');\n $mat-datepicker-tokens:\n token-utils.get-tokens-for($tokens, tokens-mat-datepicker.$prefix, $options...);\n @include token-utils.create-token-values(tokens-mat-datepicker.$prefix, $mat-datepicker-tokens);\n}\n","@use 'sass:map';\n@use 'sass:math';\n@use '@material/density/functions' as mdc-density-functions;\n@use '@material/icon-button/icon-button-theme' as mdc-icon-button-theme;\n@use '../core/tokens/m2/mdc/icon-button' as tokens-mdc-icon-button;\n@use '../core/tokens/m2/mat/icon-button' as tokens-mat-icon-button;\n@use '../core/style/sass-utils';\n@use '../core/tokens/token-utils';\n@use '../core/theming/theming';\n@use '../core/theming/inspection';\n@use '../core/theming/validation';\n\n\n@mixin base($theme) {\n @if inspection.get-theme-version($theme) == 1 {\n @include _theme-from-tokens(inspection.get-theme-tokens($theme, base));\n }\n @else {\n // Add default values for tokens not related to color, typography, or density.\n @include sass-utils.current-selector-or-root() {\n @include mdc-icon-button-theme.theme(tokens-mdc-icon-button.get-unthemable-tokens());\n }\n }\n}\n\n@mixin _icon-button-variant($theme, $palette) {\n $mdc-tokens: if($palette,\n tokens-mdc-icon-button.private-get-color-palette-color-tokens($theme, $palette),\n tokens-mdc-icon-button.get-color-tokens($theme)\n );\n\n $mat-tokens: if($palette,\n tokens-mat-icon-button.private-get-color-palette-color-tokens($theme, $palette),\n tokens-mat-icon-button.get-color-tokens($theme)\n );\n\n @include mdc-icon-button-theme.theme($mdc-tokens);\n @include token-utils.create-token-values(tokens-mat-icon-button.$prefix, $mat-tokens);\n}\n\n@mixin color($theme) {\n @if inspection.get-theme-version($theme) == 1 {\n @include _theme-from-tokens(inspection.get-theme-tokens($theme, color));\n }\n @else {\n @include sass-utils.current-selector-or-root() {\n @include _icon-button-variant($theme, null);\n\n .mat-mdc-icon-button {\n &.mat-primary {\n @include _icon-button-variant($theme, primary);\n }\n\n &.mat-accent {\n @include _icon-button-variant($theme, accent);\n }\n\n &.mat-warn {\n @include _icon-button-variant($theme, warn);\n }\n }\n }\n }\n}\n\n@mixin typography($theme) {\n @if inspection.get-theme-version($theme) == 1 {\n @include _theme-from-tokens(inspection.get-theme-tokens($theme, typography));\n }\n @else {\n @include sass-utils.current-selector-or-root() {\n @include token-utils.create-token-values(tokens-mat-icon-button.$prefix,\n tokens-mat-icon-button.get-typography-tokens($theme));\n }\n }\n}\n\n@mixin density($theme) {\n @if inspection.get-theme-version($theme) == 1 {\n @include _theme-from-tokens(inspection.get-theme-tokens($theme, density));\n }\n @else {\n $icon-size: 24px;\n $density-scale: inspection.get-theme-density($theme);\n // Manually apply the expected density theming, and include the padding\n // as it was applied before\n $calculated-size: mdc-density-functions.prop-value(\n $density-config: (\n size: (\n default: 48px,\n maximum: 48px,\n minimum: 28px,\n ),\n ),\n $density-scale: $density-scale,\n $property-name: size,\n );\n\n @include sass-utils.current-selector-or-root() {\n @include token-utils.create-token-values(tokens-mat-icon-button.$prefix,\n tokens-mat-icon-button.get-density-tokens($theme));\n }\n\n // Use `mat-mdc-button-base` to increase the specificity over the button's structural styles.\n .mat-mdc-icon-button.mat-mdc-button-base {\n // Match the styles that used to be present. This is necessary for backwards\n // compat to match the previous implementations selector count (two classes).\n @include mdc-icon-button-theme.theme((\n state-layer-size: $calculated-size,\n ));\n\n // TODO: Switch calculated-size to \"var(--mdc-icon-button-state-layer-size)\"\n // Currently fails validation because the variable is \"undefined\"\n // in the sass stack.\n // TODO: Switch icon-size to \"var(--mdc-icon-button-icon-size)\". Currently\n // fails validation because the variable is \"undefined\" in the sass stack.\n width: var(--mdc-icon-button-state-layer-size);\n height: var(--mdc-icon-button-state-layer-size);\n padding: math.div($calculated-size - $icon-size, 2);\n }\n }\n}\n\n@mixin theme($theme) {\n @include theming.private-check-duplicate-theme-styles($theme, 'mat-icon-button') {\n @if inspection.get-theme-version($theme) == 1 {\n @include _theme-from-tokens(inspection.get-theme-tokens($theme));\n }\n @else {\n @include base($theme);\n @if inspection.theme-has($theme, color) {\n @include color($theme);\n }\n @if inspection.theme-has($theme, density) {\n @include density($theme);\n }\n @if inspection.theme-has($theme, typography) {\n @include typography($theme);\n }\n }\n }\n}\n\n@mixin _theme-from-tokens($tokens) {\n @include validation.selector-defined(\n 'Calls to Angular Material theme mixins with an M3 theme must be wrapped in a selector');\n @if ($tokens != ()) {\n @include mdc-icon-button-theme.theme(map.get($tokens, tokens-mdc-icon-button.$prefix));\n @include token-utils.create-token-values(\n tokens-mat-icon-button.$prefix, map.get($tokens, tokens-mat-icon-button.$prefix));\n }\n}\n",".mat-calendar {\n font-size: small !important;\n font-family: v(eui-f-family) !important;\n\n &.mat-calendar-year {\n .mat-calendar-period-button {\n display: none;\n }\n }\n}\n","// MATERIAL Drag & Drop overrides\n.cdk-drag-handle {\n cursor: move !important;\n}\n\n.cdk-drop-list {\n display: flex;\n min-width: 100%;\n\n &:not(.cdk-drop-list-disabled) {\n min-height: v(eui-s-xl);\n }\n}\n\n// Animate items as they're being sorted\n.cdk-drop-list-dragging .cdk-drag {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n// Animate an item that has been dropped\n.cdk-drag-animating {\n transition: transform 300ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n// Grabbed element\n.cdk-drag-preview {\n background-color: transparent; // v(eui-c-white);\n box-shadow: none;\n cursor: grab !important;\n display: table; // trick to get the full row width\n margin: 0 !important;\n opacity: 1;\n position: relative;\n}\n\n.cdk-drag-dragging {\n opacity: 1;\n}\n\n.cdk-drag-placeholder {\n background-color: transparent;\n opacity: 0.35;\n\n &:hover {\n outline: 2px dashed v(eui-c-neutral-lighter);\n outline-offset: 2px;\n }\n}\n","// Disable global scrollbars (used in full screen eui-dialog for example)\n.cdk-global-scrollblock {\n position: fixed;\n overflow-y: visible; // Material default: scroll\n width: 100%;\n @include eui-scrollbars;\n left: 0 !important;\n}\n@include media($eui-bkp-mobile) {\n .cdk-global-scrollblock {\n height: 100%;\n overflow: auto;\n position: fixed;\n width: 100%;\n @include eui-scrollbars;\n }\n}\n","@mixin eui-scrollbars( $size: 10px, $foreground-color: v(eui-c-neutral-lightest), $background-color: v(eui-c-neutral-bg-light), $border-radius: 5rem, $state: active ) {\n &::-webkit-scrollbar {\n display: inherit;\n height: $size; // horizontal scroll\n width: $size; // vertical scroll\n @if ($state == active) {\n background-color: $background-color;\n }\n @else {\n background-color: transparent;\n }\n }\n\n // This is the scrolling bar\n &::-webkit-scrollbar-thumb {\n @if ($state == active) {\n background-color: $foreground-color;\n border-radius: $border-radius;\n\n &:hover {\n background-color: v(eui-c-neutral-lighter);\n }\n }\n @else {\n background-color: transparent;\n }\n }\n\n // This is the scroll container\n &::-webkit-scrollbar-track {\n @if ($state == active) {\n background-color: $background-color;\n border-radius: 0;\n }\n @else {\n background-color: transparent;\n }\n }\n}\n@mixin eui-scrollbars-inactive($size: 8px) {\n &::-webkit-scrollbar {\n background-color: transparent;\n display: inherit;\n height: $size; // horizontal scroll\n width: $size; // vertical scroll\n }\n\n &::-webkit-scrollbar-thumb {\n background-color: transparent;\n }\n\n &::-webkit-scrollbar-track {\n background-color: transparent;\n }\n}\n","$default-feature: \"min-width\";\n@mixin media($query: $feature $value $columns) {\n @if length($query) == 1 {\n @media screen and ($default-feature: nth($query, 1)) {\n @content;\n }\n }\n @else {\n $loop-to: length($query);\n $media-query: \"screen and \";\n @if is-not(is-even(length($query))) {\n $loop-to: $loop-to - 1;\n }\n $i: 1;\n @while $i <=$loop-to {\n $media-query: $media-query + \"(\" + nth($query, $i) + \": \" + nth($query, $i + 1) + \") \";\n @if ($i + 1) != $loop-to {\n $media-query: $media-query + \"and \";\n }\n $i: $i+2;\n }\n @media #{$media-query} {\n @content;\n }\n }\n}\n",".cdk-overlay-container {\n z-index: v(eui-zi-cdk-overlay-container); // MD: 1000\n\n .mat-menu-panel {\n max-width: inherit;\n min-height: v(eui-s-l);\n @include eui-scrollbars;\n }\n\n .mat-autocomplete-panel {\n @include eui-scrollbars;\n }\n}\n","@include media($eui-bkp-mobile) {\n .cdk-overlay-container {\n height: 100vh; // Fallback\n height: calc(var(--eui-app-vh, 1vh) * 100);\n left: 0;\n position: fixed;\n top: 0;\n width: 100vw;\n }\n}\n",".cdk-overlay-pane {\n background-color: v(eui-c-white);\n z-index: v(eui-zi-cdk-overlay-pane); // Dynamically changes based on CDK context\n}\n","// Hide browser agent default (black) color\n:focus,\n:focus-visible {\n outline: none;\n}\n\n// Resolves issue in Firefox with extra borders\nbutton,\nhtml [type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: none; // Default: button\n appearance: none;\n}\n","html {\n display: block;\n height: 100%;\n font-size: var(--eui-f-size-base);\n line-height: var(--eui-base-line-height);\n}\n","body {\n background-color: var(--eui-c-bg);\n color: var(--eui-c-text);\n font-family: var(--eui-f-family);\n font-feature-settings: 'liga';\n font-size: var(--eui-f-size-base);\n -moz-font-smoothing: antialiased;\n -webkit-font-smoothing: antialiased;\n font-style: normal;\n font-weight: normal;\n height: 100%;\n line-height: var(--eui-base-line-height);\n margin: 0;\n text-align: start;\n text-rendering: optimizeLegibility;\n}\n","// Make viewport responsive\n//\n// @viewport is needed because IE 10+ doesn't honor <meta name=\"viewport\"> in\n// some cases. See https://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/.\n// Eventually @viewport will replace <meta name=\"viewport\">.\n//\n// However, `device-width` is broken on IE 10 on Windows (Phone) 8,\n// (see https://timkadlec.com/2013/01/windows-phone-8-and-device-width/ and https://github.com/twbs/bootstrap/issues/10497)\n// and the fix for that involves a snippet of JavaScript to sniff the user agent\n// and apply some conditional CSS.\n//\n// See https://getbootstrap.com/getting-started/#support-ie10-width for the relevant hack.\n//\n// Wrap `@viewport` with `@at-root` for when folks do a nested import (e.g.,\n// `.class-name { @import \"bootstrap\"; }`).\n@at-root {\n @-ms-viewport {\n width: device-width;\n }\n}\n\n/* ==========================================================================\n #BOX-SIZING\n ========================================================================== */\n\n/**\n * More sensible default box-sizing:\n * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice\n */\n\nhtml {\n box-sizing: border-box;\n}\n\n* {\n &::before,\n &::after,\n & {\n box-sizing: inherit;\n }\n}\n\n// Avoid 300ms click delay on touch devices that support the `touch-action` CSS property.\n//\n// In particular, unlike most other browsers, IE11+Edge on Windows 10 on touch devices and IE Mobile 10-11\n// DON'T remove the click delay when `<meta name=\"viewport\" content=\"width=device-width\">` is present.\n// However, they DO support removing the click delay via `touch-action: manipulation`.\n// See:\n// * https://v4-alpha.getbootstrap.com/content/reboot/#click-delay-optimization-for-touch\n// * http://caniuse.com/#feat=css-touch-action\n// * https://patrickhlauke.github.io/touch/tests/results/#suppressing-300ms-delay\n\na,\narea,\nbutton,\n[role=\"button\"],\ninput,\nlabel,\nselect,\nsummary,\ntextarea {\n touch-action: manipulation;\n}\n\n// Always hide an element with the `hidden` HTML attribute (from PureCSS).\n[hidden] {\n display: none !important;\n}\n\n// NORMALIZE reset alignements (see 00-reset)\np,\nlabel,\nblockquote,\nabbr,\nmark,\ndel {\n font-size: v(eui-f-size-base);\n}\n\nb, strong {\n font-weight: bold !important;\n}\n","table.eui-table-default {\n background-color: transparent;\n border-collapse: collapse;\n border-spacing: 0;\n color: v(eui-c-text);\n max-width: 100%;\n overflow: auto;\n position: relative;\n\n // Add default borders\n th,\n td {\n border: 1px solid v(eui-c-neutral-bg-light);\n\n &:first-child {\n border-left: 0;\n }\n\n &:last-child {\n border-right: 0;\n }\n }\n\n // Overall settings (default)\n thead > tr > th,\n tbody > tr > td,\n tfoot > tr > td {\n vertical-align: top;\n }\n\n tr > th,\n tr > td {\n padding: v(eui-s-s);\n text-align: left;\n }\n\n thead {\n th {\n color: v(eui-c-text);\n font-size: v(eui-f-size-base);\n padding: v(eui-s-m) v(eui-s-s);\n vertical-align: middle;\n font: var(--eui-f-m-bold);\n }\n\n tr {\n background: v(eui-c-neutral-bg);\n border-top: 0;\n }\n }\n\n // Striped & hovered tables by default (UX)\n tbody {\n -webkit-overflow-scrolling: touch; // optional - enable iOS momentum scrolling\n\n tr:nth-of-type(odd) {\n background-color: v(eui-c-bg);\n\n &:hover {\n background-color: v(eui-c-primary-bg);\n }\n\n td {\n &:hover {\n background-color: v(eui-c-primary-lightest);\n }\n }\n }\n\n tr:nth-of-type(even) {\n background-color: v(eui-c-neutral-bg-light);\n\n &:hover {\n background-color: v(eui-c-primary-bg);\n }\n\n td {\n &:hover {\n background-color: v(eui-c-primary-lightest);\n }\n }\n }\n }\n\n tfoot {\n tr {\n background: v(eui-c-neutral-bg);\n }\n }\n\n tr {\n border-bottom: 1px solid v(eui-c-bg0);\n display: table-row;\n }\n\n // Compact table\n &--compact {\n thead {\n th {\n padding: v(eui-s-xs) v(eui-s-s);\n }\n }\n\n tr > td {\n padding: v(eui-s-2xs) v(eui-s-s);\n }\n }\n\n // Responsive table\n &--responsive {\n display: table;\n width: 100%;\n\n &--bordered {\n border: 0; // Prevent double border on horizontal scroll due to use of `display: block;`\n }\n }\n\n // NoWrap table content (also disables ellipsis)\n &--nowrap {\n white-space: nowrap;\n\n thead > tr > th,\n tbody > tr > td,\n tfoot > tr > td {\n white-space: nowrap;\n }\n }\n\n // Centered table\n &--centered {\n display: table;\n margin: 0 auto;\n width: auto;\n }\n\n // Middle aligned cells content\n &--align-middle {\n thead > tr > th,\n tbody > tr > td,\n tfoot > tr > td {\n vertical-align: middle;\n }\n }\n}\n","// Sets the layout of the euiClearable directive\n.eui-clearable-wrapper {\n align-items: center;\n display: flex;\n position: relative;\n width: 100%;\n\n .eui-input-text--clearable-icon {\n bottom: calc(#{v(eui-s-s)} - 2px);\n cursor: pointer;\n position: absolute;\n right: v(eui-s-s);\n user-select: none;\n visibility: visible;\n z-index: v(eui-zi-clearable-icon);\n @include eui-accessible-focus();\n\n > svg {\n fill: v(eui-c-neutral-lighter);\n\n &:hover {\n fill: v(eui-c-danger);\n }\n }\n }\n}\n","$outline-offset: -2px;\n$outline-size: 2px;\n\n// Call this mixin to enforce the accessibility visuals when on focus/active\n@mixin eui-accessible-focus($offset: $outline-offset, $size: $outline-size) {\n &:focus:not([readonly]) {\n outline: $size solid var(--eui-c-focus) !important;\n outline-offset: $offset !important;\n transition: none;\n }\n\n &:focus-visible:not([readonly]) {\n outline: $size solid var(--eui-c-focus-visible) !important;\n outline-offset: $offset !important;\n transition: none;\n }\n\n // Forced focusable element\n [tabindex=\"0\"] {\n // &:active:not([readonly]),\n &:focus:not([readonly]) {\n outline: $size solid var(--eui-c-focus-visible) !important;\n outline-offset: $offset !important;\n transition: none;\n }\n }\n}\n\n@mixin eui-accessible-focus-border() {\n border-left: v(eui-s-2xs) solid transparent;\n\n &:focus:not([readonly]) {\n border: var(--eui-s-2xs) solid var(--eui-c-focus-visible) !important;\n transition: none;\n }\n}\n",".eui-input-maxlength-wrapper {\n position: relative;\n width: 100%;\n\n .eui-input-maxlength {\n font: var(--eui-f-xs);\n background-color: v(eui-c-neutral-bg);\n border: 1px solid v(eui-c-neutral-lighter);\n border-radius: v(eui-br-m);\n color: v(eui-c-text);\n padding: 0 v(eui-s-2xs);\n position: absolute;\n right: calc(-1 * #{v(eui-s-xs)});\n top: calc(-1 * #{v(eui-s-xs)});\n z-index: v(eui-zi-input-maxlength);\n\n &--invalid {\n background-color: v(eui-c-warning);\n border-color: v(eui-c-warning);\n color: v(eui-c-white);\n }\n }\n}\n","// IE10+ SVG's aspect ratios and sizes fix\n@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {\n img[src$=\".svg\"] {\n width: 100%;\n }\n}\n@media screen {\n // IE Fix: Bicubic Scaling for Images & full width background (EC logo)\n img {\n background-repeat: no-repeat;\n background-size: 100%;\n -ms-interpolation-mode: bicubic;\n }\n}\n","// COOKIE CONSENT\n.cookie-consent-banner {\n display: block !important;\n min-width: 50% !important;\n position: absolute !important;\n right: 50% !important;\n top: v(eui-s-m) !important;\n transform: translateX(50%) !important;\n z-index: v(eui-zi-max) !important;\n box-shadow: v(eui-sh-24) !important;\n background: v(eui-c-primary) !important;\n color: var(eui-c-white) !important;\n}\n","#loader-wrapper {\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n width: 100%;\n z-index: 1000;\n\n #loader {\n -webkit-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */\n animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n animation: hourglass 5s linear infinite;\n border: 10px solid transparent;\n border-radius: 50%;\n border-top-color: v(eui-c-warning);\n display: block;\n height: 200px;\n left: 50%;\n margin: -100px 0 0 -100px;\n position: relative;\n top: 50%;\n width: 200px;\n\n &::before {\n -webkit-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */\n animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n animation: hourglass 4s linear infinite;\n border: 10px solid transparent;\n border-radius: 50%;\n border-top-color: v(eui-c-danger);\n bottom: 5px;\n content: \"\";\n left: 5px;\n position: absolute;\n right: 5px;\n top: 5px;\n }\n\n &::after {\n -webkit-animation: spin 1s linear infinite; /* Chrome, Opera 15+, Safari 5+ */\n animation: spin 1s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n animation: hourglass 3s linear infinite;\n border: 10px solid transparent;\n border-radius: 50%;\n border-top-color: v(eui-c-primary);\n bottom: 20px;\n content: \"\";\n left: 20px;\n position: absolute;\n right: 20px;\n top: 20px;\n }\n }\n}\n\n/* stylelint-enable */\n@-webkit-keyframes spin {\n 0% {\n -webkit-transform: rotate(0deg);\n -ms-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(360deg);\n -ms-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n@keyframes spin {\n 0% {\n -webkit-transform: rotate(0deg);\n -ms-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(360deg);\n -ms-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n@-webkit-keyframes hourglass {\n 0% {\n transform: rotate(0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n 50% {\n transform: rotate(900deg);\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n 100% {\n transform: rotate(1800deg);\n }\n}\n@keyframes hourglass {\n 0% {\n transform: rotate(0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n 50% {\n transform: rotate(900deg);\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n 100% {\n transform: rotate(1800deg);\n }\n}\n"]}
1
+ {"version":3,"sources":["../base/00-reset/_module.scss","eui.scss","../base/03-vars/colors/theme-default-base.scss","../base/03-vars/colors/theme-default-context.scss","../base/03-vars/spacings/theme-default-base.scss","../base/03-vars/spacings/theme-default-context.scss","../base/03-vars/typography/theme-default-base.scss","../base/03-vars/typography/theme-default-context.scss","../base/03-vars/border-radius/theme-default-base.scss","../base/03-vars/border-radius/theme-default-context.scss","../base/03-vars/shadows/theme-default-base.scss","../base/03-vars/shadows/theme-default-context.scss","../base/03-vars/_tokens.vars.scss","../base/03-vars/_other.vars.scss","../base/03-vars/_internal-icons.vars.scss","02-vars/_layout.vars.scss","../base/05-assets/icons-svg/_icons-generics.scss","04-vendors/libs/bootstrap/scss/_grid.scss","04-vendors/libs/bootstrap/scss/mixins/_grid.scss","04-vendors/libs/bootstrap/scss/mixins/_breakpoints.scss","05-material/_material-generated.scss","05-material/overrides/_calendar.scss","05-material/overrides/_cdk-drag.scss","05-material/overrides/_cdk-global-scrollblock.scss","02-base/mixins/_eui-scrollbars.scss","../base/01-base/mixins/_media.mixins.scss","05-material/overrides/_cdk-overlay-container.scss","05-material/overrides/_cdk-overlay-container.mq.scss","05-material/overrides/_cdk-overlay-pane.scss","06-shared/_module.scss","../base/04-elements/_html.scss","../base/04-elements/_body.scss","../base/04-elements/_shared.scss","07-elements/eui-table-default/_eui-table-default.scss","07-elements/directives/_eui-clearable-input.scss","../base/01-base/mixins/_accessibility.mixins.scss","07-elements/directives/_eui-input-maxlength.scss","10-media/_ieimgfix.scss","11-extras/_cookie-consent.scss","11-extras/_preloader.scss"],"names":[],"mappings":"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+8BR,CiB58BM,iBApCJ,aAAA,CACA,UjBo/BF,CiBt+BE,cACE,aAAA,CACA,UjBy+BJ,CiB3+BE,cACE,aAAA,CACA,SjB8+BJ,CiBh/BE,cACE,aAAA,CACA,oBjBm/BJ,CiBr/BE,cACE,aAAA,CACA,SjBw/BJ,CiB1/BE,cACE,aAAA,CACA,SjB6/BJ,CiB//BE,cACE,aAAA,CACA,oBjBkgCJ,CiBn+BM,UAhDJ,aAAA,CACA,UjBuhCF,CiBl+BU,OAhEN,aAAA,CACA,iBjBsiCJ,CiBv+BU,OAhEN,aAAA,CACA,kBjB2iCJ,CiB5+BU,OAhEN,aAAA,CACA,SjBgjCJ,CiBj/BU,OAhEN,aAAA,CACA,kBjBqjCJ,CiBt/BU,OAhEN,aAAA,CACA,kBjB0jCJ,CiB3/BU,OAhEN,aAAA,CACA,SjB+jCJ,CiBhgCU,OAhEN,aAAA,CACA,kBjBokCJ,CiBrgCU,OAhEN,aAAA,CACA,kBjBykCJ,CiB1gCU,OAhEN,aAAA,CACA,SjB8kCJ,CiB/gCU,QAhEN,aAAA,CACA,kBjBmlCJ,CiBphCU,QAhEN,aAAA,CACA,kBjBwlCJ,CiBzhCU,QAhEN,aAAA,CACA,UjB6lCJ,CiBthCY,UAxDV,uBjBklCF,CiB1hCY,UAxDV,wBjBslCF,CiB9hCY,UAxDV,ejB0lCF,CiBliCY,UAxDV,wBjB8lCF,CiBtiCY,UAxDV,wBjBkmCF,CiB1iCY,UAxDV,ejBsmCF,CiB9iCY,UAxDV,wBjB0mCF,CiBljCY,UAxDV,wBjB8mCF,CiBtjCY,UAxDV,ejBknCF,CiB1jCY,WAxDV,wBjBsnCF,CiB9jCY,WAxDV,wBjB0nCF,CiBvjCQ,WAEE,ejB0jCV,CiBvjCQ,WAEE,ejB0jCV,CiBjkCQ,WAEE,qBjBokCV,CiBjkCQ,WAEE,qBjBokCV,CiB3kCQ,WAEE,oBjB8kCV,CiB3kCQ,WAEE,oBjB8kCV,CiBrlCQ,WAEE,kBjBwlCV,CiBrlCQ,WAEE,kBjBwlCV,CiB/lCQ,WAEE,oBjBkmCV,CiB/lCQ,WAEE,oBjBkmCV,CiBzmCQ,WAEE,kBjB4mCV,CiBzmCQ,WAEE,kBjB4mCV,CkBtqCI,yBDUE,QACE,WjBgqCN,CiB7pCI,oBApCJ,aAAA,CACA,UjBosCA,CiBtrCA,iBACE,aAAA,CACA,UjBwrCF,CiB1rCA,iBACE,aAAA,CACA,SjB4rCF,CiB9rCA,iBACE,aAAA,CACA,oBjBgsCF,CiBlsCA,iBACE,aAAA,CACA,SjBosCF,CiBtsCA,iBACE,aAAA,CACA,SjBwsCF,CiB1sCA,iBACE,aAAA,CACA,oBjB4sCF,CiB7qCI,aAhDJ,aAAA,CACA,UjBguCA,CiB3qCQ,UAhEN,aAAA,CACA,iBjB8uCF,CiB/qCQ,UAhEN,aAAA,CACA,kBjBkvCF,CiBnrCQ,UAhEN,aAAA,CACA,SjBsvCF,CiBvrCQ,UAhEN,aAAA,CACA,kBjB0vCF,CiB3rCQ,UAhEN,aAAA,CACA,kBjB8vCF,CiB/rCQ,UAhEN,aAAA,CACA,SjBkwCF,CiBnsCQ,UAhEN,aAAA,CACA,kBjBswCF,CiBvsCQ,UAhEN,aAAA,CACA,kBjB0wCF,CiB3sCQ,UAhEN,aAAA,CACA,SjB8wCF,CiB/sCQ,WAhEN,aAAA,CACA,kBjBkxCF,CiBntCQ,WAhEN,aAAA,CACA,kBjBsxCF,CiBvtCQ,WAhEN,aAAA,CACA,UjB0xCF,CiBntCU,aAxDV,ajB8wCA,CiBttCU,aAxDV,uBjBixCA,CiBztCU,aAxDV,wBjBoxCA,CiB5tCU,aAxDV,ejBuxCA,CiB/tCU,aAxDV,wBjB0xCA,CiBluCU,aAxDV,wBjB6xCA,CiBruCU,aAxDV,ejBgyCA,CiBxuCU,aAxDV,wBjBmyCA,CiB3uCU,aAxDV,wBjBsyCA,CiB9uCU,aAxDV,ejByyCA,CiBjvCU,cAxDV,wBjB4yCA,CiBpvCU,cAxDV,wBjB+yCA,CiB5uCM,iBAEE,ejB8uCR,CiB3uCM,iBAEE,ejB6uCR,CiBpvCM,iBAEE,qBjBsvCR,CiBnvCM,iBAEE,qBjBqvCR,CiB5vCM,iBAEE,oBjB8vCR,CiB3vCM,iBAEE,oBjB6vCR,CiBpwCM,iBAEE,kBjBswCR,CiBnwCM,iBAEE,kBjBqwCR,CiB5wCM,iBAEE,oBjB8wCR,CiB3wCM,iBAEE,oBjB6wCR,CiBpxCM,iBAEE,kBjBsxCR,CiBnxCM,iBAEE,kBjBqxCR,CACF,CkBh1CI,yBDUE,QACE,WjBy0CN,CiBt0CI,oBApCJ,aAAA,CACA,UjB62CA,CiB/1CA,iBACE,aAAA,CACA,UjBi2CF,CiBn2CA,iBACE,aAAA,CACA,SjBq2CF,CiBv2CA,iBACE,aAAA,CACA,oBjBy2CF,CiB32CA,iBACE,aAAA,CACA,SjB62CF,CiB/2CA,iBACE,aAAA,CACA,SjBi3CF,CiBn3CA,iBACE,aAAA,CACA,oBjBq3CF,CiBt1CI,aAhDJ,aAAA,CACA,UjBy4CA,CiBp1CQ,UAhEN,aAAA,CACA,iBjBu5CF,CiBx1CQ,UAhEN,aAAA,CACA,kBjB25CF,CiB51CQ,UAhEN,aAAA,CACA,SjB+5CF,CiBh2CQ,UAhEN,aAAA,CACA,kBjBm6CF,CiBp2CQ,UAhEN,aAAA,CACA,kBjBu6CF,CiBx2CQ,UAhEN,aAAA,CACA,SjB26CF,CiB52CQ,UAhEN,aAAA,CACA,kBjB+6CF,CiBh3CQ,UAhEN,aAAA,CACA,kBjBm7CF,CiBp3CQ,UAhEN,aAAA,CACA,SjBu7CF,CiBx3CQ,WAhEN,aAAA,CACA,kBjB27CF,CiB53CQ,WAhEN,aAAA,CACA,kBjB+7CF,CiBh4CQ,WAhEN,aAAA,CACA,UjBm8CF,CiB53CU,aAxDV,ajBu7CA,CiB/3CU,aAxDV,uBjB07CA,CiBl4CU,aAxDV,wBjB67CA,CiBr4CU,aAxDV,ejBg8CA,CiBx4CU,aAxDV,wBjBm8CA,CiB34CU,aAxDV,wBjBs8CA,CiB94CU,aAxDV,ejBy8CA,CiBj5CU,aAxDV,wBjB48CA,CiBp5CU,aAxDV,wBjB+8CA,CiBv5CU,aAxDV,ejBk9CA,CiB15CU,cAxDV,wBjBq9CA,CiB75CU,cAxDV,wBjBw9CA,CiBr5CM,iBAEE,ejBu5CR,CiBp5CM,iBAEE,ejBs5CR,CiB75CM,iBAEE,qBjB+5CR,CiB55CM,iBAEE,qBjB85CR,CiBr6CM,iBAEE,oBjBu6CR,CiBp6CM,iBAEE,oBjBs6CR,CiB76CM,iBAEE,kBjB+6CR,CiB56CM,iBAEE,kBjB86CR,CiBr7CM,iBAEE,oBjBu7CR,CiBp7CM,iBAEE,oBjBs7CR,CiB77CM,iBAEE,kBjB+7CR,CiB57CM,iBAEE,kBjB87CR,CACF,CkBz/CI,yBDUE,QACE,WjBk/CN,CiB/+CI,oBApCJ,aAAA,CACA,UjBshDA,CiBxgDA,iBACE,aAAA,CACA,UjB0gDF,CiB5gDA,iBACE,aAAA,CACA,SjB8gDF,CiBhhDA,iBACE,aAAA,CACA,oBjBkhDF,CiBphDA,iBACE,aAAA,CACA,SjBshDF,CiBxhDA,iBACE,aAAA,CACA,SjB0hDF,CiB5hDA,iBACE,aAAA,CACA,oBjB8hDF,CiB//CI,aAhDJ,aAAA,CACA,UjBkjDA,CiB7/CQ,UAhEN,aAAA,CACA,iBjBgkDF,CiBjgDQ,UAhEN,aAAA,CACA,kBjBokDF,CiBrgDQ,UAhEN,aAAA,CACA,SjBwkDF,CiBzgDQ,UAhEN,aAAA,CACA,kBjB4kDF,CiB7gDQ,UAhEN,aAAA,CACA,kBjBglDF,CiBjhDQ,UAhEN,aAAA,CACA,SjBolDF,CiBrhDQ,UAhEN,aAAA,CACA,kBjBwlDF,CiBzhDQ,UAhEN,aAAA,CACA,kBjB4lDF,CiB7hDQ,UAhEN,aAAA,CACA,SjBgmDF,CiBjiDQ,WAhEN,aAAA,CACA,kBjBomDF,CiBriDQ,WAhEN,aAAA,CACA,kBjBwmDF,CiBziDQ,WAhEN,aAAA,CACA,UjB4mDF,CiBriDU,aAxDV,ajBgmDA,CiBxiDU,aAxDV,uBjBmmDA,CiB3iDU,aAxDV,wBjBsmDA,CiB9iDU,aAxDV,ejBymDA,CiBjjDU,aAxDV,wBjB4mDA,CiBpjDU,aAxDV,wBjB+mDA,CiBvjDU,aAxDV,ejBknDA,CiB1jDU,aAxDV,wBjBqnDA,CiB7jDU,aAxDV,wBjBwnDA,CiBhkDU,aAxDV,ejB2nDA,CiBnkDU,cAxDV,wBjB8nDA,CiBtkDU,cAxDV,wBjBioDA,CiB9jDM,iBAEE,ejBgkDR,CiB7jDM,iBAEE,ejB+jDR,CiBtkDM,iBAEE,qBjBwkDR,CiBrkDM,iBAEE,qBjBukDR,CiB9kDM,iBAEE,oBjBglDR,CiB7kDM,iBAEE,oBjB+kDR,CiBtlDM,iBAEE,kBjBwlDR,CiBrlDM,iBAEE,kBjBulDR,CiB9lDM,iBAEE,oBjBgmDR,CiB7lDM,iBAEE,oBjB+lDR,CiBtmDM,iBAEE,kBjBwmDR,CiBrmDM,iBAEE,kBjBumDR,CACF,CkBlqDI,0BDUE,QACE,WjB2pDN,CiBxpDI,oBApCJ,aAAA,CACA,UjB+rDA,CiBjrDA,iBACE,aAAA,CACA,UjBmrDF,CiBrrDA,iBACE,aAAA,CACA,SjBurDF,CiBzrDA,iBACE,aAAA,CACA,oBjB2rDF,CiB7rDA,iBACE,aAAA,CACA,SjB+rDF,CiBjsDA,iBACE,aAAA,CACA,SjBmsDF,CiBrsDA,iBACE,aAAA,CACA,oBjBusDF,CiBxqDI,aAhDJ,aAAA,CACA,UjB2tDA,CiBtqDQ,UAhEN,aAAA,CACA,iBjByuDF,CiB1qDQ,UAhEN,aAAA,CACA,kBjB6uDF,CiB9qDQ,UAhEN,aAAA,CACA,SjBivDF,CiBlrDQ,UAhEN,aAAA,CACA,kBjBqvDF,CiBtrDQ,UAhEN,aAAA,CACA,kBjByvDF,CiB1rDQ,UAhEN,aAAA,CACA,SjB6vDF,CiB9rDQ,UAhEN,aAAA,CACA,kBjBiwDF,CiBlsDQ,UAhEN,aAAA,CACA,kBjBqwDF,CiBtsDQ,UAhEN,aAAA,CACA,SjBywDF,CiB1sDQ,WAhEN,aAAA,CACA,kBjB6wDF,CiB9sDQ,WAhEN,aAAA,CACA,kBjBixDF,CiBltDQ,WAhEN,aAAA,CACA,UjBqxDF,CiB9sDU,aAxDV,ajBywDA,CiBjtDU,aAxDV,uBjB4wDA,CiBptDU,aAxDV,wBjB+wDA,CiBvtDU,aAxDV,ejBkxDA,CiB1tDU,aAxDV,wBjBqxDA,CiB7tDU,aAxDV,wBjBwxDA,CiBhuDU,aAxDV,ejB2xDA,CiBnuDU,aAxDV,wBjB8xDA,CiBtuDU,aAxDV,wBjBiyDA,CiBzuDU,aAxDV,ejBoyDA,CiB5uDU,cAxDV,wBjBuyDA,CiB/uDU,cAxDV,wBjB0yDA,CiBvuDM,iBAEE,ejByuDR,CiBtuDM,iBAEE,ejBwuDR,CiB/uDM,iBAEE,qBjBivDR,CiB9uDM,iBAEE,qBjBgvDR,CiBvvDM,iBAEE,oBjByvDR,CiBtvDM,iBAEE,oBjBwvDR,CiB/vDM,iBAEE,kBjBiwDR,CiB9vDM,iBAEE,kBjBgwDR,CiBvwDM,iBAEE,oBjBywDR,CiBtwDM,iBAEE,oBjBwwDR,CiB/wDM,iBAEE,kBjBixDR,CiB9wDM,iBAEE,kBjBgxDR,CACF,CkB30DI,0BDUE,SACE,WjBo0DN,CiBj0DI,qBApCJ,aAAA,CACA,UjBw2DA,CiB11DA,kBACE,aAAA,CACA,UjB41DF,CiB91DA,kBACE,aAAA,CACA,SjBg2DF,CiBl2DA,kBACE,aAAA,CACA,oBjBo2DF,CiBt2DA,kBACE,aAAA,CACA,SjBw2DF,CiB12DA,kBACE,aAAA,CACA,SjB42DF,CiB92DA,kBACE,aAAA,CACA,oBjBg3DF,CiBj1DI,cAhDJ,aAAA,CACA,UjBo4DA,CiB/0DQ,WAhEN,aAAA,CACA,iBjBk5DF,CiBn1DQ,WAhEN,aAAA,CACA,kBjBs5DF,CiBv1DQ,WAhEN,aAAA,CACA,SjB05DF,CiB31DQ,WAhEN,aAAA,CACA,kBjB85DF,CiB/1DQ,WAhEN,aAAA,CACA,kBjBk6DF,CiBn2DQ,WAhEN,aAAA,CACA,SjBs6DF,CiBv2DQ,WAhEN,aAAA,CACA,kBjB06DF,CiB32DQ,WAhEN,aAAA,CACA,kBjB86DF,CiB/2DQ,WAhEN,aAAA,CACA,SjBk7DF,CiBn3DQ,YAhEN,aAAA,CACA,kBjBs7DF,CiBv3DQ,YAhEN,aAAA,CACA,kBjB07DF,CiB33DQ,YAhEN,aAAA,CACA,UjB87DF,CiBv3DU,cAxDV,ajBk7DA,CiB13DU,cAxDV,uBjBq7DA,CiB73DU,cAxDV,wBjBw7DA,CiBh4DU,cAxDV,ejB27DA,CiBn4DU,cAxDV,wBjB87DA,CiBt4DU,cAxDV,wBjBi8DA,CiBz4DU,cAxDV,ejBo8DA,CiB54DU,cAxDV,wBjBu8DA,CiB/4DU,cAxDV,wBjB08DA,CiBl5DU,cAxDV,ejB68DA,CiBr5DU,eAxDV,wBjBg9DA,CiBx5DU,eAxDV,wBjBm9DA,CiBh5DM,mBAEE,ejBk5DR,CiB/4DM,mBAEE,ejBi5DR,CiBx5DM,mBAEE,qBjB05DR,CiBv5DM,mBAEE,qBjBy5DR,CiBh6DM,mBAEE,oBjBk6DR,CiB/5DM,mBAEE,oBjBi6DR,CiBx6DM,mBAEE,kBjB06DR,CiBv6DM,mBAEE,kBjBy6DR,CiBh7DM,mBAEE,oBjBk7DR,CiB/6DM,mBAEE,oBjBi7DR,CiBx7DM,mBAEE,kBjB07DR,CiBv7DM,mBAEE,kBjBy7DR,CACF,CkBp/DI,0BDUE,UACE,WjB6+DN,CiB1+DI,sBApCJ,aAAA,CACA,UjBihEA,CiBngEA,mBACE,aAAA,CACA,UjBqgEF,CiBvgEA,mBACE,aAAA,CACA,SjBygEF,CiB3gEA,mBACE,aAAA,CACA,oBjB6gEF,CiB/gEA,mBACE,aAAA,CACA,SjBihEF,CiBnhEA,mBACE,aAAA,CACA,SjBqhEF,CiBvhEA,mBACE,aAAA,CACA,oBjByhEF,CiB1/DI,eAhDJ,aAAA,CACA,UjB6iEA,CiBx/DQ,YAhEN,aAAA,CACA,iBjB2jEF,CiB5/DQ,YAhEN,aAAA,CACA,kBjB+jEF,CiBhgEQ,YAhEN,aAAA,CACA,SjBmkEF,CiBpgEQ,YAhEN,aAAA,CACA,kBjBukEF,CiBxgEQ,YAhEN,aAAA,CACA,kBjB2kEF,CiB5gEQ,YAhEN,aAAA,CACA,SjB+kEF,CiBhhEQ,YAhEN,aAAA,CACA,kBjBmlEF,CiBphEQ,YAhEN,aAAA,CACA,kBjBulEF,CiBxhEQ,YAhEN,aAAA,CACA,SjB2lEF,CiB5hEQ,aAhEN,aAAA,CACA,kBjB+lEF,CiBhiEQ,aAhEN,aAAA,CACA,kBjBmmEF,CiBpiEQ,aAhEN,aAAA,CACA,UjBumEF,CiBhiEU,eAxDV,ajB2lEA,CiBniEU,eAxDV,uBjB8lEA,CiBtiEU,eAxDV,wBjBimEA,CiBziEU,eAxDV,ejBomEA,CiB5iEU,eAxDV,wBjBumEA,CiB/iEU,eAxDV,wBjB0mEA,CiBljEU,eAxDV,ejB6mEA,CiBrjEU,eAxDV,wBjBgnEA,CiBxjEU,eAxDV,wBjBmnEA,CiB3jEU,eAxDV,ejBsnEA,CiB9jEU,gBAxDV,wBjBynEA,CiBjkEU,gBAxDV,wBjB4nEA,CiBzjEM,qBAEE,ejB2jER,CiBxjEM,qBAEE,ejB0jER,CiBjkEM,qBAEE,qBjBmkER,CiBhkEM,qBAEE,qBjBkkER,CiBzkEM,qBAEE,oBjB2kER,CiBxkEM,qBAEE,oBjB0kER,CiBjl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","file":"eui.css","sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\n html {\n line-height: var(--eui-base-line-height); /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n }\n\n /* Sections\n ========================================================================== */\n\n /**\n * Remove the margin in all browsers.\n */\n\n body {\n margin: 0;\n }\n\n /**\n * Render the `main` element consistently in IE.\n */\n\n main {\n display: block;\n }\n\n /**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\n h1 {\n font-size: 2em;\n margin: 0.67em 0;\n }\n\n /* Grouping content\n ========================================================================== */\n\n /**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\n hr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n }\n\n /**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\n pre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n }\n\n /* Text-level semantics\n ========================================================================== */\n\n /**\n * Remove the gray background on active links in IE 10.\n */\n\n a {\n background-color: transparent;\n }\n\n /**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\n abbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n }\n\n /**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\n b,\n strong {\n font-weight: bolder;\n }\n\n /**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\n code,\n kbd,\n samp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n }\n\n /**\n * Add the correct font size in all browsers.\n */\n\n small {\n font-size: 80%;\n }\n\n /**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\n sub,\n sup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n }\n\n sub {\n bottom: -0.25em;\n }\n\n sup {\n top: -0.5em;\n }\n\n /* Embedded content\n ========================================================================== */\n\n /**\n * Remove the border on images inside links in IE 10.\n */\n\n img {\n border-style: none;\n }\n\n /* Forms\n ========================================================================== */\n\n /**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\n button,\n input,\n optgroup,\n select,\n textarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1; /* 1 */ // eUI adapations forced to \"1\"\n margin: 0; /* 2 */\n }\n\n /**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\n button,\n input { /* 1 */\n overflow: visible;\n }\n\n /**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\n button,\n select { /* 1 */\n text-transform: none;\n }\n\n /**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\n button,\n [type=\"button\"],\n [type=\"reset\"],\n [type=\"submit\"] {\n -webkit-appearance: button;\n }\n\n /**\n * Remove the inner border and padding in Firefox.\n */\n\n button::-moz-focus-inner,\n [type=\"button\"]::-moz-focus-inner,\n [type=\"reset\"]::-moz-focus-inner,\n [type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n }\n\n /**\n * Restore the focus styles unset by the previous rule.\n */\n\n button:-moz-focusring,\n [type=\"button\"]:-moz-focusring,\n [type=\"reset\"]:-moz-focusring,\n [type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n }\n\n /**\n * Correct the padding in Firefox.\n */\n\n fieldset {\n padding: 0.35em 0.75em 0.625em;\n }\n\n /**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\n legend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n }\n\n /**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\n progress {\n vertical-align: baseline;\n }\n\n /**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\n textarea {\n overflow: auto;\n }\n\n /**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n [type=\"checkbox\"],\n [type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n }\n\n /**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n [type=\"number\"]::-webkit-inner-spin-button,\n [type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n }\n\n /**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n [type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n }\n\n /**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n [type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n\n /**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n ::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n }\n\n /* Interactive\n ========================================================================== */\n\n /*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\n details {\n display: block;\n }\n\n /*\n * Add the correct display in all browsers.\n */\n\n summary {\n display: list-item;\n }\n\n /* Misc\n ========================================================================== */\n\n /**\n * Add the correct display in IE 10+.\n */\n\n template {\n display: none;\n }\n\n /**\n * Add the correct display in IE 10.\n */\n\n [hidden] {\n display: none;\n }\n","/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n/* Document\n ========================================================================== */\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\nhtml {\n line-height: var(--eui-base-line-height); /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n/**\n * Remove the margin in all browsers.\n */\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n/**\n * Remove the gray background on active links in IE 10.\n */\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n/**\n * Remove the border on images inside links in IE 10.\n */\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\nbutton::-moz-focus-inner,\n[type=button]::-moz-focus-inner,\n[type=reset]::-moz-focus-inner,\n[type=submit]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\nbutton:-moz-focusring,\n[type=button]:-moz-focusring,\n[type=reset]:-moz-focusring,\n[type=submit]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n[type=checkbox],\n[type=radio] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n[type=number]::-webkit-inner-spin-button,\n[type=number]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n[type=search] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n[type=search]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n/**\n * Add the correct display in IE 10+.\n */\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n[hidden] {\n display: none;\n}\n\n:root {\n --eui-bc-transparent: transparent;\n --eui-bc-branding-120: #003676;\n --eui-bc-branding-120-contrast: #ffffff;\n --eui-bc-branding-100: #004494;\n --eui-bc-branding-100-contrast: #ffffff;\n --eui-bc-branding-80: #3369a9;\n --eui-bc-branding-80-contrast: #ffffff;\n --eui-bc-primary-160: #0a1f6c;\n --eui-bc-primary-160-contrast: #ffffff;\n --eui-bc-primary-140: #0f2fa2;\n --eui-bc-primary-140-contrast: #ffffff;\n --eui-bc-primary-130: #2743a6;\n --eui-bc-primary-130-contrast: #ffffff;\n --eui-bc-primary-120: #143fd9;\n --eui-bc-primary-120-contrast: #ffffff;\n --eui-bc-primary-110: #3256d5;\n --eui-bc-primary-110-contrast: #ffffff;\n --eui-bc-primary-100: #3860ed;\n --eui-bc-primary-100-contrast: #ffffff;\n --eui-bc-primary-80: #5577f0;\n --eui-bc-primary-80-contrast: #ffffff;\n --eui-bc-primary-60: #89a1f4;\n --eui-bc-primary-60-contrast: #000000;\n --eui-bc-primary-40: #b1c0f8;\n --eui-bc-primary-40-contrast: #000000;\n --eui-bc-primary-20: #d8e0fb;\n --eui-bc-primary-20-contrast: #000000;\n --eui-bc-primary-10: #ebeffd;\n --eui-bc-primary-10-contrast: #000000;\n --eui-bc-primary-5: #f5f7fe;\n --eui-bc-primary-5-contrast: #000000;\n --eui-bc-primary-0: white;\n --eui-bc-primary-0-contrast: #000000;\n --eui-bc-neutral-160: #131313;\n --eui-bc-neutral-160-contrast: #ffffff;\n --eui-bc-neutral-140: #1d1d1d;\n --eui-bc-neutral-140-contrast: #ffffff;\n --eui-bc-neutral-130: #222222;\n --eui-bc-neutral-130-contrast: #ffffff;\n --eui-bc-neutral-120: #262626;\n --eui-bc-neutral-120-contrast: #ffffff;\n --eui-bc-neutral-110: #2b2b2b;\n --eui-bc-neutral-110-contrast: #ffffff;\n --eui-bc-neutral-100: #303030;\n --eui-bc-neutral-100-contrast: #ffffff;\n --eui-bc-neutral-80: #595959;\n --eui-bc-neutral-80-contrast: #ffffff;\n --eui-bc-neutral-60: #838383;\n --eui-bc-neutral-60-contrast: #ffffff;\n --eui-bc-neutral-40: #acacac;\n --eui-bc-neutral-40-contrast: #000000;\n --eui-bc-neutral-20: #d6d6d6;\n --eui-bc-neutral-20-contrast: #000000;\n --eui-bc-neutral-10: #eaeaea;\n --eui-bc-neutral-10-contrast: #000000;\n --eui-bc-neutral-5: whitesmoke;\n --eui-bc-neutral-5-contrast: #000000;\n --eui-bc-neutral-2: #fcfcfc;\n --eui-bc-neutral-2-contrast: #000000;\n --eui-bc-neutral-0: white;\n --eui-bc-neutral-0-contrast: #000000;\n --eui-bc-info-160: #16265f;\n --eui-bc-info-160-contrast: #ffffff;\n --eui-bc-info-140: #223a8e;\n --eui-bc-info-140-contrast: #ffffff;\n --eui-bc-info-130: #2743a6;\n --eui-bc-info-130-contrast: #ffffff;\n --eui-bc-info-120: #2d4dbe;\n --eui-bc-info-120-contrast: #ffffff;\n --eui-bc-info-110: #3256d5;\n --eui-bc-info-110-contrast: #ffffff;\n --eui-bc-info-100: #3860ed;\n --eui-bc-info-100-contrast: #ffffff;\n --eui-bc-info-80: #6080f1;\n --eui-bc-info-80-contrast: #ffffff;\n --eui-bc-info-60: #88a0f4;\n --eui-bc-info-60-contrast: #000000;\n --eui-bc-info-40: #afbff8;\n --eui-bc-info-40-contrast: #000000;\n --eui-bc-info-20: #d7dffb;\n --eui-bc-info-20-contrast: #000000;\n --eui-bc-info-10: #ebeffd;\n --eui-bc-info-10-contrast: #000000;\n --eui-bc-info-5: #f5f7fe;\n --eui-bc-info-5-contrast: #000000;\n --eui-bc-info-0: white;\n --eui-bc-info-0-contrast: #000000;\n --eui-bc-success-160: #0e401d;\n --eui-bc-success-160-contrast: #ffffff;\n --eui-bc-success-140: #16612b;\n --eui-bc-success-140-contrast: #ffffff;\n --eui-bc-success-130: #197132;\n --eui-bc-success-130-contrast: #ffffff;\n --eui-bc-success-120: #1d813a;\n --eui-bc-success-120-contrast: #ffffff;\n --eui-bc-success-110: #209141;\n --eui-bc-success-110-contrast: #ffffff;\n --eui-bc-success-100: #24a148;\n --eui-bc-success-100-contrast: #ffffff;\n --eui-bc-success-80: #50b46d;\n --eui-bc-success-80-contrast: #ffffff;\n --eui-bc-success-60: #7cc791;\n --eui-bc-success-60-contrast: #000000;\n --eui-bc-success-40: #a7d9b6;\n --eui-bc-success-40-contrast: #000000;\n --eui-bc-success-20: #d3ecda;\n --eui-bc-success-20-contrast: #000000;\n --eui-bc-success-10: #e9f6ed;\n --eui-bc-success-10-contrast: #000000;\n --eui-bc-success-5: #f4faf6;\n --eui-bc-success-5-contrast: #000000;\n --eui-bc-success-0: white;\n --eui-bc-success-0-contrast: #000000;\n --eui-bc-warning-160: #613d07;\n --eui-bc-warning-160-contrast: #ffffff;\n --eui-bc-warning-140: #925b0a;\n --eui-bc-warning-140-contrast: #ffffff;\n --eui-bc-warning-130: #aa6a0c;\n --eui-bc-warning-130-contrast: #ffffff;\n --eui-bc-warning-120: #c27a0e;\n --eui-bc-warning-120-contrast: #ffffff;\n --eui-bc-warning-110: #db890f;\n --eui-bc-warning-110-contrast: #000000;\n --eui-bc-warning-100: #f39811;\n --eui-bc-warning-100-contrast: #000000;\n --eui-bc-warning-80: #f5ad41;\n --eui-bc-warning-80-contrast: #000000;\n --eui-bc-warning-60: #f8c170;\n --eui-bc-warning-60-contrast: #000000;\n --eui-bc-warning-40: #fad6a0;\n --eui-bc-warning-40-contrast: #000000;\n --eui-bc-warning-20: #fdeacf;\n --eui-bc-warning-20-contrast: #000000;\n --eui-bc-warning-10: #fef5e7;\n --eui-bc-warning-10-contrast: #000000;\n --eui-bc-warning-5: #fefaf3;\n --eui-bc-warning-5-contrast: #000000;\n --eui-bc-warning-0: white;\n --eui-bc-warning-0-contrast: #000000;\n --eui-bc-danger-160: #570c10;\n --eui-bc-danger-160-contrast: #ffffff;\n --eui-bc-danger-140: #831218;\n --eui-bc-danger-140-contrast: #ffffff;\n --eui-bc-danger-130: #99151c;\n --eui-bc-danger-130-contrast: #ffffff;\n --eui-bc-danger-120: #ae1820;\n --eui-bc-danger-120-contrast: #ffffff;\n --eui-bc-danger-110: #c41b24;\n --eui-bc-danger-110-contrast: #ffffff;\n --eui-bc-danger-100: #da1e28;\n --eui-bc-danger-100-contrast: #ffffff;\n --eui-bc-danger-80: #e14b53;\n --eui-bc-danger-80-contrast: #ffffff;\n --eui-bc-danger-60: #e9787e;\n --eui-bc-danger-60-contrast: #000000;\n --eui-bc-danger-40: #f0a5a9;\n --eui-bc-danger-40-contrast: #000000;\n --eui-bc-danger-20: #f8d2d4;\n --eui-bc-danger-20-contrast: #000000;\n --eui-bc-danger-10: #fbe9ea;\n --eui-bc-danger-10-contrast: #000000;\n --eui-bc-danger-5: #fdf4f4;\n --eui-bc-danger-5-contrast: #000000;\n --eui-bc-danger-0: white;\n --eui-bc-danger-0-contrast: #000000;\n --eui-bc-accent-160: #e08700;\n --eui-bc-accent-160-contrast: #000000;\n --eui-bc-accent-140: #ff9d0a;\n --eui-bc-accent-140-contrast: #000000;\n --eui-bc-accent-130: #f2a83a;\n --eui-bc-accent-130-contrast: #000000;\n --eui-bc-accent-120: #ffad33;\n --eui-bc-accent-120-contrast: #000000;\n --eui-bc-accent-110: #f0b55d;\n --eui-bc-accent-110-contrast: #000000;\n --eui-bc-accent-100: #ffbe5c;\n --eui-bc-accent-100-contrast: #000000;\n --eui-bc-accent-80: #ffcb7c;\n --eui-bc-accent-80-contrast: #000000;\n --eui-bc-accent-60: #ffd89d;\n --eui-bc-accent-60-contrast: #000000;\n --eui-bc-accent-40: #ffe5be;\n --eui-bc-accent-40-contrast: #000000;\n --eui-bc-accent-20: #fff2de;\n --eui-bc-accent-20-contrast: #000000;\n --eui-bc-accent-10: #fff9ef;\n --eui-bc-accent-10-contrast: #000000;\n --eui-bc-accent-5: #fffcf7;\n --eui-bc-accent-5-contrast: #000000;\n --eui-bc-accent-0: white;\n --eui-bc-accent-0-contrast: #000000;\n}\n\n:root {\n --eui-c-white: var(--eui-bc-neutral-0);\n --eui-c-black: var(--eui-bc-neutral-160);\n --eui-c-bg: var(--eui-bc-neutral-2);\n --eui-c-text: var(--eui-bc-neutral-100);\n --eui-c-focus-visible: var(--eui-bc-primary-100);\n --eui-c-focus: var(--eui-bc-primary-40);\n --eui-c-hover: var(--eui-bc-primary-5);\n --eui-c-hover-disabled: var(--eui-bc-neutral-10);\n --eui-c-active: var(--eui-bc-primary-10);\n --eui-c-disabled: var(--eui-bc-neutral-60);\n --eui-c-neutral: var(--eui-bc-neutral-100);\n --eui-c-neutral-contrast: var(--eui-bc-neutral-100-contrast);\n --eui-c-neutral-darker: var(--eui-bc-neutral-140);\n --eui-c-neutral-darker-contrast: var(--eui-bc-neutral-140-contrast);\n --eui-c-neutral-dark: var(--eui-bc-neutral-120);\n --eui-c-neutral-dark-contrast: var(--eui-bc-neutral-120-contrast);\n --eui-c-neutral-light: var(--eui-bc-neutral-80);\n --eui-c-neutral-light-contrast: var(--eui-bc-neutral-80-contrast);\n --eui-c-neutral-lighter: var(--eui-bc-neutral-40);\n --eui-c-neutral-lighter-contrast: var(--eui-bc-neutral-40-contrast);\n --eui-c-neutral-lightest: var(--eui-bc-neutral-20);\n --eui-c-neutral-lightest-contrast: var(--eui-bc-neutral-20-contrast);\n --eui-c-neutral-bg: var(--eui-bc-neutral-10);\n --eui-c-neutral-bg-contrast: var(--eui-bc-neutral-10-contrast);\n --eui-c-neutral-bg-light: var(--eui-bc-neutral-5);\n --eui-c-neutral-bg-light-contrast: var(--eui-bc-neutral-5-contrast);\n --eui-c-branding: var(--eui-bc-branding-100);\n --eui-c-branding-contrast: var(--eui-bc-branding-100-contrast);\n --eui-c-branding-dark: var(--eui-bc-branding-120);\n --eui-c-branding-dark-contrast: var(--eui-bc-branding-120-contrast);\n --eui-c-branding-light: var(--eui-bc-branding-80);\n --eui-c-branding-light-contrast: var(--eui-bc-branding-80-contrast);\n --eui-c-primary: var(--eui-bc-primary-100);\n --eui-c-primary-contrast: var(--eui-bc-primary-100-contrast);\n --eui-c-primary-darker: var(--eui-bc-primary-140);\n --eui-c-primary-darker-contrast: var(--eui-bc-primary-140-contrast);\n --eui-c-primary-dark: var(--eui-bc-primary-120);\n --eui-c-primary-dark-contrast: var(--eui-bc-primary-120-contrast);\n --eui-c-primary-light: var(--eui-bc-primary-80);\n --eui-c-primary-light-contrast: var(--eui-bc-primary-80-contrast);\n --eui-c-primary-lighter: var(--eui-bc-primary-40);\n --eui-c-primary-lighter-contrast: var(--eui-bc-primary-40-contrast);\n --eui-c-primary-lightest: var(--eui-bc-primary-20);\n --eui-c-primary-lightest-contrast: var(--eui-bc-primary-20-contrast);\n --eui-c-primary-bg: var(--eui-bc-primary-10);\n --eui-c-primary-bg-contrast: var(--eui-bc-primary-10-contrast);\n --eui-c-primary-bg-light: var(--eui-bc-primary-5);\n --eui-c-primary-bg-light-contrast: var(--eui-bc-primary-5-contrast);\n --eui-c-info: var(--eui-bc-info-100);\n --eui-c-info-contrast: var(--eui-bc-info-100-contrast);\n --eui-c-info-darker: var(--eui-bc-info-140);\n --eui-c-info-darker-contrast: var(--eui-bc-info-140-contrast);\n --eui-c-info-dark: var(--eui-bc-info-120);\n --eui-c-info-dark-contrast: var(--eui-bc-info-120-contrast);\n --eui-c-info-light: var(--eui-bc-info-80);\n --eui-c-info-light-contrast: var(--eui-bc-info-80-contrast);\n --eui-c-info-lighter: var(--eui-bc-info-40);\n --eui-c-info-lighter-contrast: var(--eui-bc-info-40-contrast);\n --eui-c-info-lightest: var(--eui-bc-info-20);\n --eui-c-info-lightest-contrast: var(--eui-bc-info-20-contrast);\n --eui-c-info-bg: var(--eui-bc-info-10);\n --eui-c-info-bg-contrast: var(--eui-bc-info-10-contrast);\n --eui-c-info-bg-light: var(--eui-bc-info-5);\n --eui-c-info-bg-light-contrast: var(--eui-bc-info-5-contrast);\n --eui-c-success: var(--eui-bc-success-130);\n --eui-c-success-contrast: var(--eui-bc-success-130-contrast);\n --eui-c-success-darker: var(--eui-bc-success-160);\n --eui-c-success-darker-contrast: var(--eui-bc-success-160-contrast);\n --eui-c-success-dark: var(--eui-bc-success-140);\n --eui-c-success-dark-contrast: var(--eui-bc-success-140-contrast);\n --eui-c-success-light: var(--eui-bc-success-100);\n --eui-c-success-light-contrast: var(--eui-bc-success-100-contrast);\n --eui-c-success-bg: var(--eui-bc-success-10);\n --eui-c-success-bg-contrast: var(--eui-bc-success-10-contrast);\n --eui-c-success-bg-light: var(--eui-bc-success-5);\n --eui-c-success-bg-light-contrast: var(--eui-bc-success-5-contrast);\n --eui-c-warning: var(--eui-bc-warning-120);\n --eui-c-warning-contrast: var(--eui-bc-warning-120-contrast);\n --eui-c-warning-darker: var(--eui-bc-warning-140);\n --eui-c-warning-darker-contrast: var(--eui-bc-warning-140-contrast);\n --eui-c-warning-dark: var(--eui-bc-warning-130);\n --eui-c-warning-dark-contrast: var(--eui-bc-warning-130-contrast);\n --eui-c-warning-light: var(--eui-bc-warning-100);\n --eui-c-warning-light-contrast: var(--eui-bc-warning-100-contrast);\n --eui-c-warning-bg: var(--eui-bc-warning-10);\n --eui-c-warning-bg-contrast: var(--eui-bc-warning-10-contrast);\n --eui-c-warning-bg-light: var(--eui-bc-warning-5);\n --eui-c-warning-bg-light-contrast: var(--eui-bc-warning-5-contrast);\n --eui-c-danger: var(--eui-bc-danger-120);\n --eui-c-danger-contrast: var(--eui-bc-danger-120-contrast);\n --eui-c-danger-darker: var(--eui-bc-danger-140);\n --eui-c-danger-darker-contrast: var(--eui-bc-danger-140-contrast);\n --eui-c-danger-dark: var(--eui-bc-danger-130);\n --eui-c-danger-dark-contrast: var(--eui-bc-danger-130-contrast);\n --eui-c-danger-light: var(--eui-bc-danger-100);\n --eui-c-danger-light-contrast: var(--eui-bc-danger-100-contrast);\n --eui-c-danger-bg: var(--eui-bc-danger-10);\n --eui-c-danger-bg-contrast: var(--eui-bc-danger-10-contrast);\n --eui-c-danger-bg-light: var(--eui-bc-danger-5);\n --eui-c-danger-bg-light-contrast: var(--eui-bc-danger-5-contrast);\n --eui-c-accent: var(--eui-bc-accent-120);\n --eui-c-accent-contrast: var(--eui-bc-accent-120-contrast);\n --eui-c-accent-darker: var(--eui-bc-accent-140);\n --eui-c-accent-darker-contrast: var(--eui-bc-accent-140-contrast);\n --eui-c-accent-dark: var(--eui-bc-accent-130);\n --eui-c-accent-dark-contrast: var(--eui-bc-accent-130-contrast);\n --eui-c-accent-light: var(--eui-bc-accent-100);\n --eui-c-accent-light-contrast: var(--eui-bc-accent-100-contrast);\n --eui-c-accent-lighter: var(--eui-bc-accent-80);\n --eui-c-accent-lighter-contrast: var(--eui-bc-accent-80-contrast);\n --eui-c-accent-lightest: var(--eui-bc-accent-40);\n --eui-c-accent-lightest-contrast: var(--eui-bc-accent-40-contrast);\n --eui-c-accent-bg: var(--eui-bc-accent-10);\n --eui-c-accent-bg-contrast: var(--eui-bc-accent-10-contrast);\n --eui-c-accent-bg-light: var(--eui-bc-accent-5);\n --eui-c-accent-bg-light-contrast: var(--eui-bc-accent-5-contrast);\n}\n\n:root {\n --eui-bbr-none: 0;\n --eui-bbr-s: 2px;\n --eui-bbr-m: 4px;\n --eui-bbr-l: 6px;\n --eui-bbr-xl: 8px;\n --eui-bbr-2xl: 12px;\n --eui-bbr-3xl: 16px;\n --eui-bbr-4xl: 20px;\n --eui-bbr-max: 50%;\n}\n\n:root {\n --eui-s-none: var(--eui-bs-none);\n --eui-s-2xs: var(--eui-bs-2xs);\n --eui-s-xs: var(--eui-bs-xs);\n --eui-s-s: var(--eui-bs-s);\n --eui-s-m: var(--eui-bs-m);\n --eui-s-l: var(--eui-bs-l);\n --eui-s-xl: var(--eui-bs-xl);\n --eui-s-2xl: var(--eui-bs-2xl);\n --eui-s-3xl: var(--eui-bs-3xl);\n --eui-s-4xl: var(--eui-bs-4xl);\n --eui-s-5xl: var(--eui-bs-5xl);\n --eui-s-6xl: var(--eui-bs-6xl);\n}\n\n:root {\n --eui-bf-2xs: normal normal 400 0.625rem/1rem var(--eui-f-family);\n --eui-bf-2xs-p: normal normal 400 0.625rem/1rem var(--eui-f-family);\n --eui-bf-2xs-b: normal normal 700 0.625rem/1rem var(--eui-f-family);\n --eui-bf-2xs-b-p: normal normal 700 0.625rem/1rem var(--eui-f-family);\n --eui-bf-xs: normal normal 400 0.75rem/1rem var(--eui-f-family);\n --eui-bf-xs-p: normal normal 400 0.75rem/1.25rem var(--eui-f-family);\n --eui-bf-xs-b: normal normal 700 0.75rem/1rem var(--eui-f-family);\n --eui-bf-xs-b-p: normal normal 700 0.75rem/1.25rem var(--eui-f-family);\n --eui-bf-s: normal normal 400 0.875rem/1rem var(--eui-f-family);\n --eui-bf-s-p: normal normal 400 0.875rem/1.5rem var(--eui-f-family);\n --eui-bf-s-b: normal normal 700 0.875rem/1rem var(--eui-f-family);\n --eui-bf-s-b-p: normal normal 700 0.875rem/1.5rem var(--eui-f-family);\n --eui-bf-m: normal normal 400 1rem/1.25rem var(--eui-f-family);\n --eui-bf-m-p: normal normal 400 1rem/1.75rem var(--eui-f-family);\n --eui-bf-m-b: normal normal 700 1rem/1.25rem var(--eui-f-family);\n --eui-bf-m-b-p: normal normal 700 1rem/1.75rem var(--eui-f-family);\n --eui-bf-l: normal normal 400 1.25rem/1.5rem var(--eui-f-family);\n --eui-bf-l-p: normal normal 400 1.25rem/2rem var(--eui-f-family);\n --eui-bf-l-b: normal normal 700 1.25rem/1.5rem var(--eui-f-family);\n --eui-bf-l-b-p: normal normal 700 1.25rem/2rem var(--eui-f-family);\n --eui-bf-xl: normal normal 400 1.5rem/1.5rem var(--eui-f-family);\n --eui-bf-xl-p: normal normal 400 1.5rem/2.25rem var(--eui-f-family);\n --eui-bf-xl-b: normal normal 700 1.5rem/1.5rem var(--eui-f-family);\n --eui-bf-xl-b-p: normal normal 700 1.5rem/2.25rem var(--eui-f-family);\n --eui-bf-2xl: normal normal 400 1.75rem/1.75rem var(--eui-f-family);\n --eui-bf-2xl-p: normal normal 400 1.75rem/2.5rem var(--eui-f-family);\n --eui-bf-2xl-b: normal normal 700 1.75rem/1.75rem var(--eui-f-family);\n --eui-bf-2xl-b-p: normal normal 700 1.75rem/2.5rem var(--eui-f-family);\n --eui-bf-3xl: normal normal 400 2rem/2rem var(--eui-f-family);\n --eui-bf-3xl-p: normal normal 400 2rem/2.75rem var(--eui-f-family);\n --eui-bf-3xl-b: normal normal 700 2rem/2rem var(--eui-f-family);\n --eui-bf-3xl-b-p: normal normal 700 2rem/2.75rem var(--eui-f-family);\n --eui-bf-4xl: normal normal 400 2.5rem/2.5rem var(--eui-f-family);\n --eui-bf-4xl-p: normal normal 400 2.5rem/3rem var(--eui-f-family);\n --eui-bf-4xl-b: normal normal 700 2.5rem/2.5rem var(--eui-f-family);\n --eui-bf-4xl-b-p: normal normal 700 2.5rem/3rem var(--eui-f-family);\n --eui-bf-5xl: normal normal 400 2.75rem/2.75rem var(--eui-f-family);\n --eui-bf-5xl-p: normal normal 400 2.75rem/3.25rem var(--eui-f-family);\n --eui-bf-5xl-b: normal normal 700 2.75rem/2.75rem var(--eui-f-family);\n --eui-bf-5xl-b-p: normal normal 700 2.75rem/3.25rem var(--eui-f-family);\n --eui-bf-6xl: normal normal 400 3rem/3.25rem var(--eui-f-family);\n --eui-bf-6xl-p: normal normal 400 3rem/3.25rem var(--eui-f-family);\n --eui-bf-6xl-b: normal normal 700 3rem/3.25rem var(--eui-f-family);\n --eui-bf-6xl-b-p: normal normal 700 3rem/3.25rem var(--eui-f-family);\n --eui-bf-size-2xs: 0.625rem;\n --eui-bf-size-xs: 0.75rem;\n --eui-bf-size-s: 0.875rem;\n --eui-bf-size-m: 1rem;\n --eui-bf-size-l: 1.25rem;\n --eui-bf-size-xl: 1.5rem;\n --eui-bf-size-2xl: 1.75rem;\n --eui-bf-size-3xl: 2rem;\n --eui-bf-size-4xl: 2.5rem;\n --eui-bf-size-5xl: 2.75rem;\n --eui-bf-size-6xl: 3rem;\n}\n\n:root {\n --eui-f-family: Arial, \"Helvetica Neue\", Helvetica, sans-serif;\n --eui-f-family-monospace: \"Consolas\", \"Liberation Mono\", \"Courier New\", monospace;\n --eui-f-size-base: 16px;\n --eui-f-2xs: var(--eui-bf-2xs-p);\n --eui-f-2xs-prolonged: var(--eui-bf-2xs-p);\n --eui-f-2xs-compact: var(--eui-bf-2xs);\n --eui-f-2xs-bold: var(--eui-bf-2xs-b-p);\n --eui-f-2xs-bold-prolonged: var(--eui-bf-2xs-b-p);\n --eui-f-2xs-bold-compact: var(--eui-bf-2xs-b);\n --eui-f-xs: var(--eui-bf-xs-p);\n --eui-f-xs-prolonged: var(--eui-bf-xs-p);\n --eui-f-xs-compact: var(--eui-bf-xs);\n --eui-f-xs-bold: var(--eui-bf-xs-b-p);\n --eui-f-xs-bold-prolonged: var(--eui-bf-xs-b-p);\n --eui-f-xs-bold-compact: var(--eui-bf-xs-b);\n --eui-f-s: var(--eui-bf-s-p);\n --eui-f-s-prolonged: var(--eui-bf-s-p);\n --eui-f-s-compact: var(--eui-bf-s);\n --eui-f-s-bold: var(--eui-bf-s-b-p);\n --eui-f-s-bold-prolonged: var(--eui-bf-s-b-p);\n --eui-f-s-bold-compact: var(--eui-bf-s-b);\n --eui-f-m: var(--eui-bf-m-p);\n --eui-f-m-prolonged: var(--eui-bf-m-p);\n --eui-f-m-compact: var(--eui-bf-m);\n --eui-f-m-bold: var(--eui-bf-m-b-p);\n --eui-f-m-bold-prolonged: var(--eui-bf-m-b-p);\n --eui-f-m-bold-compact: var(--eui-bf-m-b);\n --eui-f-l: var(--eui-bf-l-p);\n --eui-f-l-prolonged: var(--eui-bf-l-p);\n --eui-f-l-compact: var(--eui-bf-l);\n --eui-f-l-bold: var(--eui-bf-l-b-p);\n --eui-f-l-bold-prolonged: var(--eui-bf-l-b-p);\n --eui-f-l-bold-compact: var(--eui-bf-l-b);\n --eui-f-xl: var(--eui-bf-xl-p);\n --eui-f-xl-prolonged: var(--eui-bf-xl-p);\n --eui-f-xl-compact: var(--eui-bf-xl);\n --eui-f-xl-bold: var(--eui-bf-xl-b-p);\n --eui-f-xl-bold-prolonged: var(--eui-bf-xl-b-p);\n --eui-f-xl-bold-compact: var(--eui-bf-xl-b);\n --eui-f-2xl: var(--eui-bf-2xl-p);\n --eui-f-2xl-prolonged: var(--eui-bf-2xl-p);\n --eui-f-2xl-compact: var(--eui-bf-2xl);\n --eui-f-2xl-bold: var(--eui-bf-2xl-b-p);\n --eui-f-2xl-bold-prolonged: var(--eui-bf-2xl-b-p);\n --eui-f-2xl-bold-compact: var(--eui-bf-2xl-b);\n --eui-f-3xl: var(--eui-bf-3xl-p);\n --eui-f-3xl-prolonged: var(--eui-bf-3xl-p);\n --eui-f-3xl-compact: var(--eui-bf-3xl);\n --eui-f-3xl-bold: var(--eui-bf-3xl-b-p);\n --eui-f-3xl-bold-prolonged: var(--eui-bf-3xl-b-p);\n --eui-f-3xl-bold-compact: var(--eui-bf-3xl-b);\n --eui-f-4xl: var(--eui-bf-4xl-p);\n --eui-f-4xl-prolonged: var(--eui-bf-4xl-p);\n --eui-f-4xl-compact: var(--eui-bf-4xl);\n --eui-f-4xl-bold: var(--eui-bf-4xl-b-p);\n --eui-f-4xl-bold-prolonged: var(--eui-bf-4xl-b-p);\n --eui-f-4xl-bold-compact: var(--eui-bf-4xl-b);\n --eui-f-5xl: var(--eui-bf-5xl-p);\n --eui-f-5xl-prolonged: var(--eui-bf-5xl-p);\n --eui-f-5xl-compact: var(--eui-bf-5xl);\n --eui-f-5xl-bold: var(--eui-bf-5xl-b-p);\n --eui-f-5xl-bold-prolonged: var(--eui-bf-5xl-b-p);\n --eui-f-5xl-bold-compact: var(--eui-bf-5xl-b);\n --eui-f-6xl: var(--eui-bf-6xl-p);\n --eui-f-6xl-prolonged: var(--eui-bf-6xl-p);\n --eui-f-6xl-compact: var(--eui-bf-6xl);\n --eui-f-6xl-bold: var(--eui-bf-6xl-b-p);\n --eui-f-6xl-bold-prolonged: var(--eui-bf-6xl-b-p);\n --eui-f-6xl-bold-compact: var(--eui-bf-6xl-b);\n --eui-f-size-2xs: var(--eui-bf-size-2xs);\n --eui-f-size-xs: var(--eui-bf-size-xs);\n --eui-f-size-s: var(--eui-bf-size-s);\n --eui-f-size-m: var(--eui-bf-size-m);\n --eui-f-size-l: var(--eui-bf-size-l);\n --eui-f-size-xl: var(--eui-bf-size-xl);\n --eui-f-size-2xl: var(--eui-bf-size-2xl);\n --eui-f-size-3xl: var(--eui-bf-size-3xl);\n --eui-f-size-4xl: var(--eui-bf-size-4xl);\n --eui-f-size-5xl: var(--eui-bf-size-5xl);\n --eui-f-size-6xl: var(--eui-bf-size-6xl);\n --eui-f: var(--eui-bf-m);\n --eui-f-bold: var(--eui-bf-m-b);\n}\n\n:root {\n --eui-bs-none: 0;\n --eui-bs-2xs: 0.25rem;\n --eui-bs-xs: 0.5rem;\n --eui-bs-s: 0.75rem;\n --eui-bs-m: 1rem;\n --eui-bs-l: 1.25rem;\n --eui-bs-xl: 1.5rem;\n --eui-bs-2xl: 2rem;\n --eui-bs-3xl: 2.5rem;\n --eui-bs-4xl: 3rem;\n --eui-bs-5xl: 3.5rem;\n --eui-bs-6xl: 4rem;\n}\n\n:root {\n --eui-br-none: var(--eui-bbr-none);\n --eui-br-s: var(--eui-bbr-s);\n --eui-br-m: var(--eui-bbr-m);\n --eui-br-l: var(--eui-bbr-l);\n --eui-br-xl: var(--eui-bbr-xl);\n --eui-br-2xl: var(--eui-bbr-2xl);\n --eui-br-3xl: var(--eui-bbr-3xl);\n --eui-br-4xl: var(--eui-bbr-4xl);\n --eui-br-max: var(--eui-bbr-max);\n}\n\n:root {\n --eui-bsh-none: none;\n --eui-bsh-ecl-1: 0 0 1px rgba(38, 50, 75, 0.06), 2px 2px 2px rgba(38, 50, 75, 0.05), 4px 4px 6px rgba(38, 50, 75, 0.05), 0 1px 0 #e0e5f5 inset;\n --eui-bsh-ecl-6: 0 0 6px rgba(38, 50, 75, 0.06), 12px 12px 12px rgba(38, 50, 75, 0.05), 24px 24px 36px rgba(38, 50, 75, 0.05), 0 1px 0 #e0e5f5 inset;\n --eui-bsh-ecl-12: 0 0 12px rgba(38, 50, 75, 0.06), 24px 24px 24px rgba(38, 50, 75, 0.05), 48px 48px 72px rgba(38, 50, 75, 0.05), 0 1px 0 #e0e5f5 inset;\n --eui-bsh-ecl-16: 0 0 16px rgba(38, 50, 75, 0.06), 32px 32px 32px rgba(38, 50, 75, 0.05), 64px 64px 96px rgba(38, 50, 75, 0.05), 0 1px 0 #e0e5f5 inset;\n --eui-bsh-1: 0 2px 1px -1px rgba(0, 0, 0, 0.2), 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 1px 3px 0 rgba(0, 0, 0, 0.12);\n --eui-bsh-2: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);\n --eui-bsh-3: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 3px 4px 0 rgba(0, 0, 0, 0.14), 0 1px 8px 0 rgba(0, 0, 0, 0.12);\n --eui-bsh-4: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12);\n --eui-bsh-6: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);\n --eui-bsh-8: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);\n --eui-bsh-9: 0px 5px 6px -3px rgba(0, 0, 0, 0.2), 0px 9px 12px 1px rgba(0, 0, 0, 0.14), 0px 3px 16px 2px rgba(0, 0, 0, 0.12);\n --eui-bsh-12: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);\n --eui-bsh-16: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);\n --eui-bsh-24: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);\n --eui-bsh-z-depth-0: 0 1px 0 rgba(0, 0, 0, 0.08), 0 1px 1px rgba(0, 0, 0, 0.08);\n --eui-bsh-z-depth-1: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);\n --eui-bsh-z-depth-2: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);\n --eui-bsh-z-depth-3: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);\n --eui-bsh-z-depth-4: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);\n --eui-bsh-z-depth-5: 0 19px 38px rgba(0, 0, 0, 0.3), 0 15px 12px rgba(0, 0, 0, 0.22);\n}\n\n:root {\n --eui-sh-none: var(--eui-bsh-none);\n --eui-sh-ecl-1: var(--eui-bsh-ecl-1);\n --eui-sh-ecl-6: var(--eui-bsh-ecl-6);\n --eui-sh-ecl-12: var(--eui-bsh-ecl-12);\n --eui-sh-ecl-16: var(--eui-bsh-ecl-16);\n --eui-sh-1: var(--eui-bsh-1);\n --eui-sh-2: var(--eui-bsh-2);\n --eui-sh-3: var(--eui-bsh-3);\n --eui-sh-4: var(--eui-bsh-4);\n --eui-sh-6: var(--eui-bsh-6);\n --eui-sh-8: var(--eui-bsh-8);\n --eui-sh-9: var(--eui-bsh-9);\n --eui-sh-12: var(--eui-bsh-12);\n --eui-sh-16: var(--eui-bsh-16);\n --eui-sh-24: var(--eui-bsh-24);\n --eui-sh-z-depth-0: var(--eui-bsh-z-depth-0);\n --eui-sh-z-depth-1: var(--eui-bsh-z-depth-1);\n --eui-sh-z-depth-2: var(--eui-bsh-z-depth-2);\n --eui-sh-z-depth-3: var(--eui-bsh-z-depth-3);\n --eui-sh-z-depth-4: var(--eui-bsh-z-depth-4);\n --eui-sh-z-depth-5: var(--eui-bsh-z-depth-5);\n}\n\n:root {\n --eui-bis-2xs: 0.75rem;\n --eui-bis-xs: 1rem;\n --eui-bis-s: 1.25rem;\n --eui-bis-m: 1.5rem;\n --eui-bis-l: 2rem;\n --eui-bis-xl: 2.5rem;\n --eui-bis-2xl: 3rem;\n --eui-bis-3xl: 3.5rem;\n --eui-bis-4xl: 4rem;\n --eui-bis-fluid: 1em;\n --eui-is-2xs: var(--eui-bis-2xs);\n --eui-is-xs: var(--eui-bis-xs);\n --eui-is-s: var(--eui-bis-s);\n --eui-is-m: var(--eui-bis-m);\n --eui-is-l: var(--eui-bis-l);\n --eui-is-xl: var(--eui-bis-xl);\n --eui-is-2xl: var(--eui-bis-2xl);\n --eui-is-3xl: var(--eui-bis-3xl);\n --eui-is-4xl: var(--eui-bis-4xl);\n --eui-is-fluid: var(--eui-bis-fluid);\n --eui-bzi-auto: auto;\n --eui-bzi-zero: 0;\n --eui-bzi-root: 1;\n --eui-bzi-input-maxlength: 2;\n --eui-bzi-clearable-icon: 3;\n --eui-bzi-header: 5;\n --eui-bzi-top-message: 8;\n --eui-bzi-nav: 10;\n --eui-bzi-loading-indicator: 20;\n --eui-bzi-cdk-overlay-pane: 999;\n --eui-bzi-logo: 1000;\n --eui-bzi-sticky: 1040;\n --eui-bzi-sidebar: 1044;\n --eui-bzi-overlay: 1045;\n --eui-bzi-btn-floating: 1046;\n --eui-bzi-highlighted: 1047;\n --eui-bzi-footer-action-bar: 1048;\n --eui-bzi-modal-backdrop: 1049;\n --eui-bzi-modal: 1050;\n --eui-bzi-menu: 1060;\n --eui-bzi-tooltip: 1070;\n --eui-bzi-max: 9999;\n --eui-bzi-cdk-overlay-container: 10000;\n --eui-bzi-block-document: 10010;\n --eui-bzi-growl-message: 99999;\n --eui-zi-auto: var(--eui-bzi-auto);\n --eui-zi-zero: var(--eui-bzi-zero);\n --eui-zi-root: var(--eui-bzi-root);\n --eui-zi-input-maxlength: var(--eui-bzi-input-maxlength);\n --eui-zi-clearable-icon: var(--eui-bzi-clearable-icon);\n --eui-zi-header: var(--eui-bzi-header);\n --eui-zi-top-message: var(--eui-bzi-top-message);\n --eui-zi-nav: var(--eui-bzi-nav);\n --eui-zi-loading-indicator: var(--eui-bzi-loading-indicator);\n --eui-zi-cdk-overlay-pane: var(--eui-bzi-cdk-overlay-pane);\n --eui-zi-logo: var(--eui-bzi-logo);\n --eui-zi-sticky: var(--eui-bzi-sticky);\n --eui-zi-sidebar: var(--eui-bzi-sidebar);\n --eui-zi-overlay: var(--eui-bzi-overlay);\n --eui-zi-btn-floating: var(--eui-bzi-btn-floating);\n --eui-zi-highlighted: var(--eui-bzi-highlighted);\n --eui-zi-footer-action-bar: var(--eui-bzi-footer-action-bar);\n --eui-zi-modal-backdrop: var(--eui-bzi-modal-backdrop);\n --eui-zi-modal: var(--eui-bzi-modal);\n --eui-zi-menu: var(--eui-bzi-menu);\n --eui-zi-tooltip: var(--eui-bzi-tooltip);\n --eui-zi-max: var(--eui-bzi-max);\n --eui-zi-cdk-overlay-container: var(--eui-bzi-cdk-overlay-container);\n --eui-zi-block-document: var(--eui-bzi-block-document);\n --eui-zi-growl-message: var(--eui-bzi-growl-message);\n}\n\n:root {\n --eui-base-line-height: 1.5;\n --eui-base-scale-factor: 1;\n --eui-base-disabled-opacity: 0.5;\n --eui-base-border-state-width: var(--eui-s-xs);\n --eui-base-border: 1px solid var(--eui-color-grey-lighter);\n --eui-base-border-light: 1px solid var(--eui-color-grey-light);\n --eui-base-border-lighter: 1px solid var(--eui-color-grey-lighter);\n --eui-base-border-lightest: 1px solid var(--eui-color-grey-lightest);\n --eui-base-animation-linear-out-slow-in-timing-function: cubic-bezier(0, 0, 0.2, 1);\n --eui-base-animation-fast-out-slow-in-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --eui-base-animation-fast-out-linear-in-timing-function: cubic-bezier(0.4, 0, 1, 1);\n --eui-base-animation-ease-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);\n --eui-base-animation-ease-in-out-timing-function: ease-in-out;\n --eui-base-animation-duration-fast: 0.25s;\n --eui-base-animation-duration-medium: 0.5s;\n --eui-base-animation-duration-slow: 1s;\n --eui-base-animation-duration-base: 500ms;\n --eui-base-animation-duration: var(--eui-base-animation-duration-base);\n --eui-base-animation-transition-base: all 0.2s var(--eui-base-animation-linear-out-slow-in-timing-function);\n --eui-base-animation-transition-ease: all 0.2s var(--eui-base-animation-ease-timing-function);\n --eui-base-animation-transition-ease-in-out: all 0.2s var(--eui-base-animation-ease-in-out-timing-function);\n --eui-base-animation-transition-ease-in-out-1s: all 1s var(--eui-base-animation-ease-in-out-timing-function);\n --eui-base-animation-delay: 0s;\n --eui-base-animation-direction: normal;\n --eui-base-animation-fill-mode: forwards;\n --eui-base-animation-background-color: var(--eui-c-primary-lighter);\n}\n\n:root {\n --eui-internal-icon-checkmark-path: url(\"@eui/styles/dist/assets/icons/eui-internals/checkmark.svg\");\n --eui-internal-icon-remove-path: url(\"@eui/styles/dist/assets/icons/eui-internals/remove.svg\");\n --eui-internal-icon-ellipse-path: url(\"@eui/styles/dist/assets/icons/eui-internals/ellipse.svg\");\n --eui-internal-icon-external-path: url(\"@eui/styles/dist/assets/icons/eui-internals/external.svg\");\n --eui-internal-icon-chevron-down-path: url(\"@eui/styles/dist/assets/icons/eui-internals/chevron-down.svg\");\n}\n\n:root {\n --eui-app-header-height-default: 0px;\n --eui-app-header-height: 0px;\n --eui-app-header-height-active: 90px;\n --eui-app-header-height-shrink: 0px;\n --eui-app-breadcrumb-height-default: 0px;\n --eui-app-breadcrumb-height: 0px;\n --eui-app-breadcrumb-height-active: 20px;\n --eui-app-top-message-height-default: 0px;\n --eui-app-top-message-height: 0px;\n --eui-app-top-message-height-active: 42px;\n --eui-app-toolbar-height-default: 0px;\n --eui-app-toolbar-height: 0px;\n --eui-app-toolbar-height-active: 55px;\n --eui-app-sidebar-width-default: 0px;\n --eui-app-sidebar-width: 0px;\n --eui-app-sidebar-width-active: 300px;\n --eui-app-sidebar-width-close-default: 0px;\n --eui-app-sidebar-width-close: 0px;\n --eui-app-sidebar-width-close-active: 64px;\n --eui-app-sidebar-header-height: 0px;\n --eui-app-sidebar-header-height-default: 0px;\n --eui-app-sidebar-header-height-active: 48px;\n --eui-app-sidebar-header-user-profile: 64px;\n --eui-app-sidebar-footer-height: 0px;\n --eui-app-sidebar-footer-height-default: 0px;\n --eui-app-sidebar-footer-height-active: 24px;\n --eui-page-header-with-subtitle-height: 4rem;\n --eui-page-header-without-subtitle-height: 2rem;\n --eui-page-column--size-s: 50px;\n --eui-page-column--size-m: 150px;\n --eui-page-column--size-l: 200px;\n --eui-page-column--size-xl: 250px;\n --eui-page-column--size-xxl: 300px;\n --eui-page-column--size-xxxl: 350px;\n --eui-page-column-footer-height: 3.5rem;\n}\n\n.xs, .sm {\n --eui-app-header-height: 0px;\n}\n\n.eui-icon-svg {\n fill: currentColor;\n margin: 0;\n transform: scaleX(1) scaleY(1) rotateZ(0deg);\n transition: transform 300ms ease-in-out;\n display: inline-flex;\n align-items: center;\n}\n\n.row {\n --bs-gutter-x: 1.5rem;\n --bs-gutter-y: 0;\n display: flex;\n flex-wrap: wrap;\n margin-top: calc(-1 * var(--bs-gutter-y));\n margin-right: calc(-0.5 * var(--bs-gutter-x));\n margin-left: calc(-0.5 * var(--bs-gutter-x));\n}\n.row > * {\n box-sizing: border-box;\n flex-shrink: 0;\n width: 100%;\n max-width: 100%;\n padding-right: calc(var(--bs-gutter-x) * 0.5);\n padding-left: calc(var(--bs-gutter-x) * 0.5);\n margin-top: var(--bs-gutter-y);\n}\n\n.col {\n flex: 1 0 0%;\n}\n\n.row-cols-auto > * {\n flex: 0 0 auto;\n width: auto;\n}\n\n.row-cols-1 > * {\n flex: 0 0 auto;\n width: 100%;\n}\n\n.row-cols-2 > * {\n flex: 0 0 auto;\n width: 50%;\n}\n\n.row-cols-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n}\n\n.row-cols-4 > * {\n flex: 0 0 auto;\n width: 25%;\n}\n\n.row-cols-5 > * {\n flex: 0 0 auto;\n width: 20%;\n}\n\n.row-cols-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n}\n\n.col-auto {\n flex: 0 0 auto;\n width: auto;\n}\n\n.col-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n}\n\n.col-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n}\n\n.col-3 {\n flex: 0 0 auto;\n width: 25%;\n}\n\n.col-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n}\n\n.col-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n}\n\n.col-6 {\n flex: 0 0 auto;\n width: 50%;\n}\n\n.col-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n}\n\n.col-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n}\n\n.col-9 {\n flex: 0 0 auto;\n width: 75%;\n}\n\n.col-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n}\n\n.col-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n}\n\n.col-12 {\n flex: 0 0 auto;\n width: 100%;\n}\n\n.offset-1 {\n margin-left: 8.33333333%;\n}\n\n.offset-2 {\n margin-left: 16.66666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.33333333%;\n}\n\n.offset-5 {\n margin-left: 41.66666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.33333333%;\n}\n\n.offset-8 {\n margin-left: 66.66666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.33333333%;\n}\n\n.offset-11 {\n margin-left: 91.66666667%;\n}\n\n.g-0,\n.gx-0 {\n --bs-gutter-x: 0;\n}\n\n.g-0,\n.gy-0 {\n --bs-gutter-y: 0;\n}\n\n.g-1,\n.gx-1 {\n --bs-gutter-x: 0.25rem;\n}\n\n.g-1,\n.gy-1 {\n --bs-gutter-y: 0.25rem;\n}\n\n.g-2,\n.gx-2 {\n --bs-gutter-x: 0.5rem;\n}\n\n.g-2,\n.gy-2 {\n --bs-gutter-y: 0.5rem;\n}\n\n.g-3,\n.gx-3 {\n --bs-gutter-x: 1rem;\n}\n\n.g-3,\n.gy-3 {\n --bs-gutter-y: 1rem;\n}\n\n.g-4,\n.gx-4 {\n --bs-gutter-x: 1.5rem;\n}\n\n.g-4,\n.gy-4 {\n --bs-gutter-y: 1.5rem;\n}\n\n.g-5,\n.gx-5 {\n --bs-gutter-x: 3rem;\n}\n\n.g-5,\n.gy-5 {\n --bs-gutter-y: 3rem;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n flex: 1 0 0%;\n }\n .row-cols-sm-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-sm-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-sm-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-sm-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-sm-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-sm-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-sm-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-sm-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-sm-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-sm-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-sm-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-sm-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-sm-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-sm-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-sm-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-sm-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-sm-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-sm-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-sm-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-sm-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.33333333%;\n }\n .offset-sm-2 {\n margin-left: 16.66666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.33333333%;\n }\n .offset-sm-5 {\n margin-left: 41.66666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.33333333%;\n }\n .offset-sm-8 {\n margin-left: 66.66666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.33333333%;\n }\n .offset-sm-11 {\n margin-left: 91.66666667%;\n }\n .g-sm-0,\n .gx-sm-0 {\n --bs-gutter-x: 0;\n }\n .g-sm-0,\n .gy-sm-0 {\n --bs-gutter-y: 0;\n }\n .g-sm-1,\n .gx-sm-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-sm-1,\n .gy-sm-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-sm-2,\n .gx-sm-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-sm-2,\n .gy-sm-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-sm-3,\n .gx-sm-3 {\n --bs-gutter-x: 1rem;\n }\n .g-sm-3,\n .gy-sm-3 {\n --bs-gutter-y: 1rem;\n }\n .g-sm-4,\n .gx-sm-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-sm-4,\n .gy-sm-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-sm-5,\n .gx-sm-5 {\n --bs-gutter-x: 3rem;\n }\n .g-sm-5,\n .gy-sm-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 768px) {\n .col-md {\n flex: 1 0 0%;\n }\n .row-cols-md-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-md-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-md-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-md-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-md-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-md-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-md-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-md-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-md-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-md-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-md-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-md-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-md-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-md-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-md-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-md-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-md-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-md-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-md-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-md-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.33333333%;\n }\n .offset-md-2 {\n margin-left: 16.66666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.33333333%;\n }\n .offset-md-5 {\n margin-left: 41.66666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.33333333%;\n }\n .offset-md-8 {\n margin-left: 66.66666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.33333333%;\n }\n .offset-md-11 {\n margin-left: 91.66666667%;\n }\n .g-md-0,\n .gx-md-0 {\n --bs-gutter-x: 0;\n }\n .g-md-0,\n .gy-md-0 {\n --bs-gutter-y: 0;\n }\n .g-md-1,\n .gx-md-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-md-1,\n .gy-md-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-md-2,\n .gx-md-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-md-2,\n .gy-md-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-md-3,\n .gx-md-3 {\n --bs-gutter-x: 1rem;\n }\n .g-md-3,\n .gy-md-3 {\n --bs-gutter-y: 1rem;\n }\n .g-md-4,\n .gx-md-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-md-4,\n .gy-md-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-md-5,\n .gx-md-5 {\n --bs-gutter-x: 3rem;\n }\n .g-md-5,\n .gy-md-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 992px) {\n .col-lg {\n flex: 1 0 0%;\n }\n .row-cols-lg-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-lg-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-lg-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-lg-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-lg-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-lg-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-lg-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-lg-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-lg-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-lg-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-lg-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-lg-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-lg-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-lg-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-lg-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-lg-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-lg-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-lg-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-lg-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-lg-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.33333333%;\n }\n .offset-lg-2 {\n margin-left: 16.66666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.33333333%;\n }\n .offset-lg-5 {\n margin-left: 41.66666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.33333333%;\n }\n .offset-lg-8 {\n margin-left: 66.66666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.33333333%;\n }\n .offset-lg-11 {\n margin-left: 91.66666667%;\n }\n .g-lg-0,\n .gx-lg-0 {\n --bs-gutter-x: 0;\n }\n .g-lg-0,\n .gy-lg-0 {\n --bs-gutter-y: 0;\n }\n .g-lg-1,\n .gx-lg-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-lg-1,\n .gy-lg-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-lg-2,\n .gx-lg-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-lg-2,\n .gy-lg-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-lg-3,\n .gx-lg-3 {\n --bs-gutter-x: 1rem;\n }\n .g-lg-3,\n .gy-lg-3 {\n --bs-gutter-y: 1rem;\n }\n .g-lg-4,\n .gx-lg-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-lg-4,\n .gy-lg-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-lg-5,\n .gx-lg-5 {\n --bs-gutter-x: 3rem;\n }\n .g-lg-5,\n .gy-lg-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1200px) {\n .col-xl {\n flex: 1 0 0%;\n }\n .row-cols-xl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xl-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xl-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-xl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xl-11 {\n margin-left: 91.66666667%;\n }\n .g-xl-0,\n .gx-xl-0 {\n --bs-gutter-x: 0;\n }\n .g-xl-0,\n .gy-xl-0 {\n --bs-gutter-y: 0;\n }\n .g-xl-1,\n .gx-xl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xl-1,\n .gy-xl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xl-2,\n .gx-xl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xl-2,\n .gy-xl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xl-3,\n .gx-xl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xl-3,\n .gy-xl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xl-4,\n .gx-xl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xl-4,\n .gy-xl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xl-5,\n .gx-xl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xl-5,\n .gy-xl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1400px) {\n .col-xxl {\n flex: 1 0 0%;\n }\n .row-cols-xxl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xxl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xxl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xxl-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xxl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xxl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xxl-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xxl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-xxl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xxl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xxl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xxl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xxl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xxl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xxl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xxl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xxl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xxl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xxl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xxl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xxl-0 {\n margin-left: 0;\n }\n .offset-xxl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xxl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xxl-3 {\n margin-left: 25%;\n }\n .offset-xxl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xxl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xxl-6 {\n margin-left: 50%;\n }\n .offset-xxl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xxl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xxl-9 {\n margin-left: 75%;\n }\n .offset-xxl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xxl-11 {\n margin-left: 91.66666667%;\n }\n .g-xxl-0,\n .gx-xxl-0 {\n --bs-gutter-x: 0;\n }\n .g-xxl-0,\n .gy-xxl-0 {\n --bs-gutter-y: 0;\n }\n .g-xxl-1,\n .gx-xxl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xxl-1,\n .gy-xxl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xxl-2,\n .gx-xxl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xxl-2,\n .gy-xxl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xxl-3,\n .gx-xxl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xxl-3,\n .gy-xxl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xxl-4,\n .gx-xxl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xxl-4,\n .gy-xxl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xxl-5,\n .gx-xxl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xxl-5,\n .gy-xxl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1900px) {\n .col-xxxl {\n flex: 1 0 0%;\n }\n .row-cols-xxxl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xxxl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xxxl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xxxl-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xxxl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xxxl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xxxl-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xxxl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-xxxl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xxxl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xxxl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xxxl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xxxl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xxxl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xxxl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xxxl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xxxl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xxxl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xxxl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xxxl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xxxl-0 {\n margin-left: 0;\n }\n .offset-xxxl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xxxl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xxxl-3 {\n margin-left: 25%;\n }\n .offset-xxxl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xxxl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xxxl-6 {\n margin-left: 50%;\n }\n .offset-xxxl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xxxl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xxxl-9 {\n margin-left: 75%;\n }\n .offset-xxxl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xxxl-11 {\n margin-left: 91.66666667%;\n }\n .g-xxxl-0,\n .gx-xxxl-0 {\n --bs-gutter-x: 0;\n }\n .g-xxxl-0,\n .gy-xxxl-0 {\n --bs-gutter-y: 0;\n }\n .g-xxxl-1,\n .gx-xxxl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xxxl-1,\n .gy-xxxl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xxxl-2,\n .gx-xxxl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xxxl-2,\n .gy-xxxl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xxxl-3,\n .gx-xxxl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xxxl-3,\n .gy-xxxl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xxxl-4,\n .gx-xxxl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xxxl-4,\n .gy-xxxl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xxxl-5,\n .gx-xxxl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xxxl-5,\n .gy-xxxl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n.mat-ripple {\n overflow: hidden;\n position: relative;\n}\n\n.mat-ripple:not(:empty) {\n transform: translateZ(0);\n}\n\n.mat-ripple.mat-ripple-unbounded {\n overflow: visible;\n}\n\n.mat-ripple-element {\n background-color: var(--mat-ripple-color, rgba(0, 0, 0, 0.1019607843));\n border-radius: 50%;\n pointer-events: none;\n position: absolute;\n transform: scale3d(0, 0, 0);\n transition: opacity, transform 0ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n.cdk-high-contrast-active .mat-ripple-element {\n display: none;\n}\n\n.cdk-visually-hidden {\n clip: rect(0 0 0 0);\n -webkit-appearance: none;\n -moz-appearance: none;\n border: 0;\n height: 1px;\n left: 0;\n margin: -1px;\n outline: 0;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n\n[dir=rtl] .cdk-visually-hidden {\n left: auto;\n right: 0;\n}\n\n.cdk-global-overlay-wrapper,\n.cdk-overlay-container {\n height: 100%;\n left: 0;\n pointer-events: none;\n top: 0;\n width: 100%;\n}\n\n.cdk-overlay-container {\n position: fixed;\n z-index: 1000;\n}\n\n.cdk-overlay-container:empty {\n display: none;\n}\n\n.cdk-global-overlay-wrapper,\n.cdk-overlay-pane {\n display: flex;\n position: absolute;\n z-index: 1000;\n}\n\n.cdk-overlay-pane {\n box-sizing: border-box;\n max-height: 100%;\n max-width: 100%;\n pointer-events: auto;\n}\n\n.cdk-overlay-backdrop {\n -webkit-tap-highlight-color: transparent;\n bottom: 0;\n left: 0;\n opacity: 0;\n pointer-events: auto;\n position: absolute;\n right: 0;\n top: 0;\n transition: opacity 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);\n z-index: 1000;\n}\n\n.cdk-overlay-backdrop.cdk-overlay-backdrop-showing {\n opacity: 1;\n}\n\n.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing {\n opacity: 0.6;\n}\n\n.cdk-overlay-dark-backdrop {\n background: rgba(0, 0, 0, 0.3215686275);\n}\n\n.cdk-overlay-transparent-backdrop {\n opacity: 1;\n transition: visibility 1ms linear, opacity 1ms linear;\n visibility: hidden;\n}\n\n.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing {\n opacity: 0;\n visibility: visible;\n}\n\n.cdk-overlay-backdrop-noop-animation {\n transition: none;\n}\n\n.cdk-overlay-connected-position-bounding-box {\n display: flex;\n flex-direction: column;\n min-height: 1px;\n min-width: 1px;\n position: absolute;\n z-index: 1000;\n}\n\n.cdk-global-scrollblock {\n overflow-y: scroll;\n position: fixed;\n width: 100%;\n}\n\ntextarea.cdk-textarea-autosize {\n resize: none;\n}\n\ntextarea.cdk-textarea-autosize-measuring {\n box-sizing: initial !important;\n height: auto !important;\n overflow: hidden !important;\n padding: 2px 0 !important;\n}\n\ntextarea.cdk-textarea-autosize-measuring-firefox {\n box-sizing: initial !important;\n height: 0 !important;\n padding: 2px 0 !important;\n}\n\n@keyframes cdk-text-field-autofill-start {\n /*!*/\n}\n@keyframes cdk-text-field-autofill-end {\n /*!*/\n}\n.cdk-text-field-autofill-monitored:-webkit-autofill {\n animation: cdk-text-field-autofill-start 0s 1ms;\n}\n\n.cdk-text-field-autofill-monitored:not(:-webkit-autofill) {\n animation: cdk-text-field-autofill-end 0s 1ms;\n}\n\n.mat-focus-indicator {\n position: relative;\n}\n\n.mat-focus-indicator:before {\n border: var(--mat-focus-indicator-border-width, 3px) var(--mat-focus-indicator-border-style, solid) var(--mat-focus-indicator-border-color, rgba(0, 0, 0, 0));\n border-radius: var(--mat-focus-indicator-border-radius, 4px);\n bottom: 0;\n box-sizing: border-box;\n display: var(--mat-focus-indicator-display, none);\n left: 0;\n pointer-events: none;\n position: absolute;\n right: 0;\n top: 0;\n}\n\n.mat-focus-indicator:focus:before {\n content: \"\";\n}\n\n.cdk-high-contrast-active {\n --mat-focus-indicator-display: block;\n}\n\n.mat-mdc-focus-indicator {\n position: relative;\n}\n\n.mat-mdc-focus-indicator:before {\n border: var(--mat-mdc-focus-indicator-border-width, 3px) var(--mat-mdc-focus-indicator-border-style, solid) var(--mat-mdc-focus-indicator-border-color, rgba(0, 0, 0, 0));\n border-radius: var(--mat-mdc-focus-indicator-border-radius, 4px);\n bottom: 0;\n box-sizing: border-box;\n display: var(--mat-mdc-focus-indicator-display, none);\n left: 0;\n pointer-events: none;\n position: absolute;\n right: 0;\n top: 0;\n}\n\n.mat-mdc-focus-indicator:focus:before {\n content: \"\";\n}\n\n.cdk-high-contrast-active {\n --mat-mdc-focus-indicator-display: block;\n}\n\n.mat-app-background {\n background-color: var(--mat-app-background-color, rgba(0, 0, 0, 0));\n color: var(--mat-app-text-color, inherit);\n}\n\nhtml {\n --mat-datepicker-calendar-container-shape: 4px;\n --mat-datepicker-calendar-container-touch-shape: 4px;\n --mat-datepicker-calendar-container-elevation-shadow: 0px 2px 4px -1px #0003,\n 0px 4px 5px 0px #00000024, 0px 1px 10px 0px #0000001f;\n --mat-datepicker-calendar-container-touch-elevation-shadow: 0px 11px 15px -7px\n #0003,\n 0px 24px 38px 3px #00000024, 0px 9px 46px 8px #0000001f;\n --mat-datepicker-calendar-date-selected-state-text-color: #fff;\n --mat-datepicker-calendar-date-selected-state-background-color: #004494;\n --mat-datepicker-calendar-date-selected-disabled-state-background-color: #00449466;\n --mat-datepicker-calendar-date-today-selected-state-outline-color: #fff;\n --mat-datepicker-calendar-date-focus-state-background-color: #0044944d;\n --mat-datepicker-calendar-date-hover-state-background-color: #0044944d;\n --mat-datepicker-toggle-active-state-icon-color: #004494;\n --mat-datepicker-calendar-date-in-range-state-background-color: #00449433;\n --mat-datepicker-calendar-date-in-comparison-range-state-background-color: #f9ab0033;\n --mat-datepicker-calendar-date-in-overlap-range-state-background-color: #a8dab5;\n --mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color: #46a35e;\n --mat-datepicker-toggle-icon-color: #0000008a;\n --mat-datepicker-calendar-body-label-text-color: #0000008a;\n --mat-datepicker-calendar-period-button-text-color: #000;\n --mat-datepicker-calendar-period-button-icon-color: #0000008a;\n --mat-datepicker-calendar-navigation-button-icon-color: #0000008a;\n --mat-datepicker-calendar-header-divider-color: #0000001f;\n --mat-datepicker-calendar-header-text-color: #0000008a;\n --mat-datepicker-calendar-date-today-outline-color: #00000061;\n --mat-datepicker-calendar-date-today-disabled-state-outline-color: #0000002e;\n --mat-datepicker-calendar-date-text-color: #000000de;\n --mat-datepicker-calendar-date-outline-color: #0000;\n --mat-datepicker-calendar-date-disabled-state-text-color: #00000061;\n --mat-datepicker-calendar-date-preview-state-outline-color: #0000003d;\n --mat-datepicker-range-input-separator-color: #000000de;\n --mat-datepicker-range-input-disabled-state-separator-color: #00000061;\n --mat-datepicker-range-input-disabled-state-text-color: #00000061;\n --mat-datepicker-calendar-container-background-color: #fff;\n --mat-datepicker-calendar-container-text-color: #000000de;\n}\n\n.mat-datepicker-content.mat-accent {\n --mat-datepicker-calendar-date-selected-state-text-color: #999;\n --mat-datepicker-calendar-date-selected-state-background-color: #fffcf4;\n --mat-datepicker-calendar-date-selected-disabled-state-background-color: #fffcf466;\n --mat-datepicker-calendar-date-today-selected-state-outline-color: #999;\n --mat-datepicker-calendar-date-focus-state-background-color: #fffcf44d;\n --mat-datepicker-calendar-date-hover-state-background-color: #fffcf44d;\n --mat-datepicker-calendar-date-in-range-state-background-color: #fffcf433;\n --mat-datepicker-calendar-date-in-comparison-range-state-background-color: #f9ab0033;\n --mat-datepicker-calendar-date-in-overlap-range-state-background-color: #a8dab5;\n --mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color: #46a35e;\n}\n\n.mat-datepicker-content.mat-warn {\n --mat-datepicker-calendar-date-selected-state-text-color: #fff;\n --mat-datepicker-calendar-date-selected-state-background-color: #f44336;\n --mat-datepicker-calendar-date-selected-disabled-state-background-color: #f4433666;\n --mat-datepicker-calendar-date-today-selected-state-outline-color: #fff;\n --mat-datepicker-calendar-date-focus-state-background-color: #f443364d;\n --mat-datepicker-calendar-date-hover-state-background-color: #f443364d;\n --mat-datepicker-calendar-date-in-range-state-background-color: #f4433633;\n --mat-datepicker-calendar-date-in-comparison-range-state-background-color: #f9ab0033;\n --mat-datepicker-calendar-date-in-overlap-range-state-background-color: #a8dab5;\n --mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color: #46a35e;\n}\n\n.mat-datepicker-toggle-active.mat-accent {\n --mat-datepicker-toggle-active-state-icon-color: #fffcf4;\n}\n\n.mat-datepicker-toggle-active.mat-warn {\n --mat-datepicker-toggle-active-state-icon-color: #f44336;\n}\n\n.mat-calendar-controls {\n --mat-icon-button-touch-target-display: none;\n}\n\n.mat-calendar-controls .mat-mdc-icon-button.mat-mdc-button-base {\n --mdc-icon-button-state-layer-size: 40px;\n height: var(--mdc-icon-button-state-layer-size);\n padding: 8px;\n width: var(--mdc-icon-button-state-layer-size);\n}\n\n.mat-calendar {\n font-size: small !important;\n font-family: var(--eui-f-family) !important;\n}\n.mat-calendar.mat-calendar-year .mat-calendar-period-button {\n display: none;\n}\n\n.cdk-drag-handle {\n cursor: move !important;\n}\n\n.cdk-drop-list {\n display: flex;\n min-width: 100%;\n}\n.cdk-drop-list:not(.cdk-drop-list-disabled) {\n min-height: var(--eui-s-xl);\n}\n\n.cdk-drop-list-dragging .cdk-drag {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n.cdk-drag-animating {\n transition: transform 300ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n.cdk-drag-preview {\n background-color: transparent;\n box-shadow: none;\n cursor: grab !important;\n display: table;\n margin: 0 !important;\n opacity: 1;\n position: relative;\n}\n\n.cdk-drag-dragging {\n opacity: 1;\n}\n\n.cdk-drag-placeholder {\n background-color: transparent;\n opacity: 0.35;\n}\n.cdk-drag-placeholder:hover {\n outline: 2px dashed var(--eui-c-neutral-lighter);\n outline-offset: 2px;\n}\n\n.cdk-global-scrollblock {\n position: fixed;\n overflow-y: visible;\n width: 100%;\n left: 0 !important;\n}\n.cdk-global-scrollblock::-webkit-scrollbar {\n display: inherit;\n height: 10px;\n width: 10px;\n background-color: var(--eui-c-neutral-bg-light);\n}\n.cdk-global-scrollblock::-webkit-scrollbar-thumb {\n background-color: var(--eui-c-neutral-lightest);\n border-radius: 5rem;\n}\n.cdk-global-scrollblock::-webkit-scrollbar-thumb:hover {\n background-color: var(--eui-c-neutral-lighter);\n}\n.cdk-global-scrollblock::-webkit-scrollbar-track {\n background-color: var(--eui-c-neutral-bg-light);\n border-radius: 0;\n}\n\n@media screen and (max-width: 767px) {\n .cdk-global-scrollblock {\n height: 100%;\n overflow: auto;\n position: fixed;\n width: 100%;\n }\n .cdk-global-scrollblock::-webkit-scrollbar {\n display: inherit;\n height: 10px;\n width: 10px;\n background-color: var(--eui-c-neutral-bg-light);\n }\n .cdk-global-scrollblock::-webkit-scrollbar-thumb {\n background-color: var(--eui-c-neutral-lightest);\n border-radius: 5rem;\n }\n .cdk-global-scrollblock::-webkit-scrollbar-thumb:hover {\n background-color: var(--eui-c-neutral-lighter);\n }\n .cdk-global-scrollblock::-webkit-scrollbar-track {\n background-color: var(--eui-c-neutral-bg-light);\n border-radius: 0;\n }\n}\n.cdk-overlay-container {\n z-index: var(--eui-zi-cdk-overlay-container);\n}\n.cdk-overlay-container .mat-menu-panel {\n max-width: inherit;\n min-height: var(--eui-s-l);\n}\n.cdk-overlay-container .mat-menu-panel::-webkit-scrollbar {\n display: inherit;\n height: 10px;\n width: 10px;\n background-color: var(--eui-c-neutral-bg-light);\n}\n.cdk-overlay-container .mat-menu-panel::-webkit-scrollbar-thumb {\n background-color: var(--eui-c-neutral-lightest);\n border-radius: 5rem;\n}\n.cdk-overlay-container .mat-menu-panel::-webkit-scrollbar-thumb:hover {\n background-color: var(--eui-c-neutral-lighter);\n}\n.cdk-overlay-container .mat-menu-panel::-webkit-scrollbar-track {\n background-color: var(--eui-c-neutral-bg-light);\n border-radius: 0;\n}\n.cdk-overlay-container .mat-autocomplete-panel::-webkit-scrollbar {\n display: inherit;\n height: 10px;\n width: 10px;\n background-color: var(--eui-c-neutral-bg-light);\n}\n.cdk-overlay-container .mat-autocomplete-panel::-webkit-scrollbar-thumb {\n background-color: var(--eui-c-neutral-lightest);\n border-radius: 5rem;\n}\n.cdk-overlay-container .mat-autocomplete-panel::-webkit-scrollbar-thumb:hover {\n background-color: var(--eui-c-neutral-lighter);\n}\n.cdk-overlay-container .mat-autocomplete-panel::-webkit-scrollbar-track {\n background-color: var(--eui-c-neutral-bg-light);\n border-radius: 0;\n}\n\n@media screen and (max-width: 767px) {\n .cdk-overlay-container {\n height: 100vh;\n height: calc(var(--eui-app-vh, 1vh) * 100);\n left: 0;\n position: fixed;\n top: 0;\n width: 100vw;\n }\n}\n.cdk-overlay-pane {\n background-color: var(--eui-c-white);\n z-index: var(--eui-zi-cdk-overlay-pane);\n}\n\n.cdk-virtual-scrollable::-webkit-scrollbar {\n display: inherit;\n height: 10px;\n width: 10px;\n background-color: var(--eui-c-neutral-bg-light);\n}\n.cdk-virtual-scrollable::-webkit-scrollbar-thumb {\n background-color: var(--eui-c-neutral-lightest);\n border-radius: 5rem;\n}\n.cdk-virtual-scrollable::-webkit-scrollbar-thumb:hover {\n background-color: var(--eui-c-neutral-lighter);\n}\n.cdk-virtual-scrollable::-webkit-scrollbar-track {\n background-color: var(--eui-c-neutral-bg-light);\n border-radius: 0;\n}\n\n:focus,\n:focus-visible {\n outline: none;\n}\n\nbutton,\nhtml [type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: none;\n appearance: none;\n}\n\nhtml {\n display: block;\n height: 100%;\n font-size: var(--eui-f-size-base);\n line-height: var(--eui-base-line-height);\n}\n\nbody {\n background-color: var(--eui-c-bg);\n color: var(--eui-c-text);\n font-family: var(--eui-f-family);\n font-feature-settings: \"liga\";\n font-size: var(--eui-f-size-base);\n -moz-font-smoothing: antialiased;\n -webkit-font-smoothing: antialiased;\n font-style: normal;\n font-weight: normal;\n height: 100%;\n line-height: var(--eui-base-line-height);\n margin: 0;\n text-align: start;\n text-rendering: optimizeLegibility;\n}\n\n@-ms-viewport {\n width: device-width;\n}\n/* ==========================================================================\n #BOX-SIZING\n ========================================================================== */\n/**\n * More sensible default box-sizing:\n * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice\n */\nhtml {\n box-sizing: border-box;\n}\n\n*::before, *::after, * {\n box-sizing: inherit;\n}\n\na,\narea,\nbutton,\n[role=button],\ninput,\nlabel,\nselect,\nsummary,\ntextarea {\n touch-action: manipulation;\n}\n\n[hidden] {\n display: none !important;\n}\n\np,\nlabel,\nblockquote,\nabbr,\nmark,\ndel {\n font-size: var(--eui-f-size-base);\n}\n\nb, strong {\n font-weight: bold !important;\n}\n\ntable.eui-table-default {\n background-color: transparent;\n border-collapse: collapse;\n border-spacing: 0;\n color: var(--eui-c-text);\n max-width: 100%;\n overflow: auto;\n position: relative;\n}\ntable.eui-table-default th,\ntable.eui-table-default td {\n border: 1px solid var(--eui-c-neutral-bg-light);\n}\ntable.eui-table-default th:first-child,\ntable.eui-table-default td:first-child {\n border-left: 0;\n}\ntable.eui-table-default th:last-child,\ntable.eui-table-default td:last-child {\n border-right: 0;\n}\ntable.eui-table-default thead > tr > th,\ntable.eui-table-default tbody > tr > td,\ntable.eui-table-default tfoot > tr > td {\n vertical-align: top;\n}\ntable.eui-table-default tr > th,\ntable.eui-table-default tr > td {\n padding: var(--eui-s-s);\n text-align: left;\n}\ntable.eui-table-default thead th {\n color: var(--eui-c-text);\n font-size: var(--eui-f-size-base);\n padding: var(--eui-s-m) var(--eui-s-s);\n vertical-align: middle;\n font: var(--eui-f-m-bold);\n}\ntable.eui-table-default thead tr {\n background: var(--eui-c-neutral-bg);\n border-top: 0;\n}\ntable.eui-table-default tbody {\n -webkit-overflow-scrolling: touch;\n}\ntable.eui-table-default tbody tr:nth-of-type(odd) {\n background-color: var(--eui-c-bg);\n}\ntable.eui-table-default tbody tr:nth-of-type(odd):hover {\n background-color: var(--eui-c-primary-bg);\n}\ntable.eui-table-default tbody tr:nth-of-type(odd) td:hover {\n background-color: var(--eui-c-primary-lightest);\n}\ntable.eui-table-default tbody tr:nth-of-type(even) {\n background-color: var(--eui-c-neutral-bg-light);\n}\ntable.eui-table-default tbody tr:nth-of-type(even):hover {\n background-color: var(--eui-c-primary-bg);\n}\ntable.eui-table-default tbody tr:nth-of-type(even) td:hover {\n background-color: var(--eui-c-primary-lightest);\n}\ntable.eui-table-default tfoot tr {\n background: var(--eui-c-neutral-bg);\n}\ntable.eui-table-default tr {\n border-bottom: 1px solid var(--eui-c-bg0);\n display: table-row;\n}\ntable.eui-table-default--compact thead th {\n padding: var(--eui-s-xs) var(--eui-s-s);\n}\ntable.eui-table-default--compact tr > td {\n padding: var(--eui-s-2xs) var(--eui-s-s);\n}\ntable.eui-table-default--responsive {\n display: table;\n width: 100%;\n}\ntable.eui-table-default--responsive--bordered {\n border: 0;\n}\ntable.eui-table-default--nowrap {\n white-space: nowrap;\n}\ntable.eui-table-default--nowrap thead > tr > th,\ntable.eui-table-default--nowrap tbody > tr > td,\ntable.eui-table-default--nowrap tfoot > tr > td {\n white-space: nowrap;\n}\ntable.eui-table-default--centered {\n display: table;\n margin: 0 auto;\n width: auto;\n}\ntable.eui-table-default--align-middle thead > tr > th,\ntable.eui-table-default--align-middle tbody > tr > td,\ntable.eui-table-default--align-middle tfoot > tr > td {\n vertical-align: middle;\n}\n\n.eui-clearable-wrapper {\n align-items: center;\n display: flex;\n position: relative;\n width: 100%;\n}\n.eui-clearable-wrapper .eui-input-text--clearable-icon {\n bottom: calc(var(--eui-s-s) - 2px);\n cursor: pointer;\n position: absolute;\n right: var(--eui-s-s);\n user-select: none;\n visibility: visible;\n z-index: var(--eui-zi-clearable-icon);\n}\n.eui-clearable-wrapper .eui-input-text--clearable-icon:focus:not([readonly]) {\n outline: 2px solid var(--eui-c-focus) !important;\n outline-offset: -2px !important;\n transition: none;\n}\n.eui-clearable-wrapper .eui-input-text--clearable-icon:focus-visible:not([readonly]) {\n outline: 2px solid var(--eui-c-focus-visible) !important;\n outline-offset: -2px !important;\n transition: none;\n}\n.eui-clearable-wrapper .eui-input-text--clearable-icon [tabindex=\"0\"]:focus:not([readonly]) {\n outline: 2px solid var(--eui-c-focus-visible) !important;\n outline-offset: -2px !important;\n transition: none;\n}\n.eui-clearable-wrapper .eui-input-text--clearable-icon > svg {\n fill: var(--eui-c-neutral-lighter);\n}\n.eui-clearable-wrapper .eui-input-text--clearable-icon > svg:hover {\n fill: var(--eui-c-danger);\n}\n\n.eui-input-maxlength-wrapper {\n position: relative;\n width: 100%;\n}\n.eui-input-maxlength-wrapper .eui-input-maxlength {\n font: var(--eui-f-xs);\n background-color: var(--eui-c-neutral-bg);\n border: 1px solid var(--eui-c-neutral-lighter);\n border-radius: var(--eui-br-m);\n color: var(--eui-c-text);\n padding: 0 var(--eui-s-2xs);\n position: absolute;\n right: calc(-1 * var(--eui-s-xs));\n top: calc(-1 * var(--eui-s-xs));\n z-index: var(--eui-zi-input-maxlength);\n}\n.eui-input-maxlength-wrapper .eui-input-maxlength--invalid {\n background-color: var(--eui-c-warning);\n border-color: var(--eui-c-warning);\n color: var(--eui-c-white);\n}\n\n@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {\n img[src$=\".svg\"] {\n width: 100%;\n }\n}\n@media screen {\n img {\n background-repeat: no-repeat;\n background-size: 100%;\n -ms-interpolation-mode: bicubic;\n }\n}\n.cookie-consent-banner {\n display: block !important;\n min-width: 50% !important;\n position: absolute !important;\n right: 50% !important;\n top: var(--eui-s-m) !important;\n transform: translateX(50%) !important;\n z-index: var(--eui-zi-max) !important;\n box-shadow: var(--eui-sh-24) !important;\n background: var(--eui-c-primary) !important;\n color: var(eui-c-white) !important;\n}\n\n#loader-wrapper {\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n width: 100%;\n z-index: 1000;\n}\n#loader-wrapper #loader {\n -webkit-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */\n animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n animation: hourglass 5s linear infinite;\n border: 10px solid transparent;\n border-radius: 50%;\n border-top-color: var(--eui-c-warning);\n display: block;\n height: 200px;\n left: 50%;\n margin: -100px 0 0 -100px;\n position: relative;\n top: 50%;\n width: 200px;\n}\n#loader-wrapper #loader::before {\n -webkit-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */\n animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n animation: hourglass 4s linear infinite;\n border: 10px solid transparent;\n border-radius: 50%;\n border-top-color: var(--eui-c-danger);\n bottom: 5px;\n content: \"\";\n left: 5px;\n position: absolute;\n right: 5px;\n top: 5px;\n}\n#loader-wrapper #loader::after {\n -webkit-animation: spin 1s linear infinite; /* Chrome, Opera 15+, Safari 5+ */\n animation: spin 1s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n animation: hourglass 3s linear infinite;\n border: 10px solid transparent;\n border-radius: 50%;\n border-top-color: var(--eui-c-primary);\n bottom: 20px;\n content: \"\";\n left: 20px;\n position: absolute;\n right: 20px;\n top: 20px;\n}\n\n/* stylelint-enable */\n@-webkit-keyframes spin {\n 0% {\n -webkit-transform: rotate(0deg);\n -ms-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n -ms-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n@keyframes spin {\n 0% {\n -webkit-transform: rotate(0deg);\n -ms-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n -ms-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n@-webkit-keyframes hourglass {\n 0% {\n transform: rotate(0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n 50% {\n transform: rotate(900deg);\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n 100% {\n transform: rotate(1800deg);\n }\n}\n@keyframes hourglass {\n 0% {\n transform: rotate(0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n 50% {\n transform: rotate(900deg);\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n 100% {\n transform: rotate(1800deg);\n }\n}\n\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9iYXNlLzAwLXJlc2V0L19tb2R1bGUuc2NzcyIsIi4uL2Jhc2UvMDMtdmFycy9jb2xvcnMvdGhlbWUtZGVmYXVsdC1iYXNlLnNjc3MiLCIuLi9iYXNlLzAzLXZhcnMvY29sb3JzL3RoZW1lLWRlZmF1bHQtY29udGV4dC5zY3NzIiwiLi4vYmFzZS8wMy12YXJzL3NwYWNpbmdzL3RoZW1lLWRlZmF1bHQtYmFzZS5zY3NzIiwiLi4vYmFzZS8wMy12YXJzL3NwYWNpbmdzL3RoZW1lLWRlZmF1bHQtY29udGV4dC5zY3NzIiwiLi4vYmFzZS8wMy12YXJzL3R5cG9ncmFwaHkvdGhlbWUtZGVmYXVsdC1iYXNlLnNjc3MiLCIuLi9iYXNlLzAzLXZhcnMvdHlwb2dyYXBoeS90aGVtZS1kZWZhdWx0LWNvbnRleHQuc2NzcyIsIi4uL2Jhc2UvMDMtdmFycy9ib3JkZXItcmFkaXVzL3RoZW1lLWRlZmF1bHQtYmFzZS5zY3NzIiwiLi4vYmFzZS8wMy12YXJzL2JvcmRlci1yYWRpdXMvdGhlbWUtZGVmYXVsdC1jb250ZXh0LnNjc3MiLCIuLi9iYXNlLzAzLXZhcnMvc2hhZG93cy90aGVtZS1kZWZhdWx0LWJhc2Uuc2NzcyIsIi4uL2Jhc2UvMDMtdmFycy9zaGFkb3dzL3RoZW1lLWRlZmF1bHQtY29udGV4dC5zY3NzIiwiLi4vYmFzZS8wMy12YXJzL190b2tlbnMudmFycy5zY3NzIiwiLi4vYmFzZS8wMy12YXJzL19vdGhlci52YXJzLnNjc3MiLCIuLi9iYXNlLzAzLXZhcnMvX2ludGVybmFsLWljb25zLnZhcnMuc2NzcyIsIjAyLXZhcnMvX2xheW91dC52YXJzLnNjc3MiLCIuLi9iYXNlLzA1LWFzc2V0cy9pY29ucy1zdmcvX2ljb25zLWdlbmVyaWNzLnNjc3MiLCIwNC12ZW5kb3JzL2xpYnMvYm9vdHN0cmFwL3Njc3MvX2dyaWQuc2NzcyIsIjA0LXZlbmRvcnMvbGlicy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIjA0LXZlbmRvcnMvbGlicy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCIwNS1tYXRlcmlhbC9fbWF0ZXJpYWwtZ2VuZXJhdGVkLnNjc3MiLCIwNS1tYXRlcmlhbC9vdmVycmlkZXMvX2NhbGVuZGFyLnNjc3MiLCIwNS1tYXRlcmlhbC9vdmVycmlkZXMvX2Nkay1kcmFnLnNjc3MiLCIwNS1tYXRlcmlhbC9vdmVycmlkZXMvX2Nkay1nbG9iYWwtc2Nyb2xsYmxvY2suc2NzcyIsIjAyLWJhc2UvbWl4aW5zL19ldWktc2Nyb2xsYmFycy5zY3NzIiwiLi4vYmFzZS8wMS1iYXNlL21peGlucy9fbWVkaWEubWl4aW5zLnNjc3MiLCIwNS1tYXRlcmlhbC9vdmVycmlkZXMvX2Nkay1vdmVybGF5LWNvbnRhaW5lci5zY3NzIiwiMDUtbWF0ZXJpYWwvb3ZlcnJpZGVzL19jZGstb3ZlcmxheS1jb250YWluZXIubXEuc2NzcyIsIjA1LW1hdGVyaWFsL292ZXJyaWRlcy9fY2RrLW92ZXJsYXktcGFuZS5zY3NzIiwiMDYtc2hhcmVkL19tb2R1bGUuc2NzcyIsIi4uL2Jhc2UvMDQtZWxlbWVudHMvX2h0bWwuc2NzcyIsIi4uL2Jhc2UvMDQtZWxlbWVudHMvX2JvZHkuc2NzcyIsIi4uL2Jhc2UvMDQtZWxlbWVudHMvX3NoYXJlZC5zY3NzIiwiMDctZWxlbWVudHMvZXVpLXRhYmxlLWRlZmF1bHQvX2V1aS10YWJsZS1kZWZhdWx0LnNjc3MiLCIwNy1lbGVtZW50cy9kaXJlY3RpdmVzL19ldWktY2xlYXJhYmxlLWlucHV0LnNjc3MiLCIuLi9iYXNlLzAxLWJhc2UvbWl4aW5zL19hY2Nlc3NpYmlsaXR5Lm1peGlucy5zY3NzIiwiMDctZWxlbWVudHMvZGlyZWN0aXZlcy9fZXVpLWlucHV0LW1heGxlbmd0aC5zY3NzIiwiMTAtbWVkaWEvX2llaW1nZml4LnNjc3MiLCIxMS1leHRyYXMvX2Nvb2tpZS1jb25zZW50LnNjc3MiLCIxMS1leHRyYXMvX3ByZWxvYWRlci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBRUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUFBO0FBS0M7RUFDRztFQUNBOzs7QUFHRjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFO0VBQ0E7OztBQUdGO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7RUFDQTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7RUFDQTs7O0FBR0Y7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0FBQUE7RUFFRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7RUFHRTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7RUFFRTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFLRTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBLFFBQ1E7RUFDTjs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBLFNBQ1M7RUFDUDs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7RUFJRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtFQUlFOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0VBRUU7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7QUFBQTtFQUVFOzs7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7RUFDQTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFO0VBQ0E7OztBQUdGO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FBR0Y7QUFBQTtBQUFBO0FBSUE7RUFDRTs7O0FDM1ZKO0VBQ0k7RUFLUTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTs7O0FDUFo7RUFDSTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQU9ZO0VBQ0E7RUFFQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBSkE7RUFDQTtFQUVBO0VBQ0E7RUFEQTtFQUNBO0VBSkE7RUFDQTtFQUVBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFKQTtFQUNBO0VBRUE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQUpBO0VBQ0E7RUFFQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQUpBO0VBQ0E7RUFFQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQUpBO0VBQ0E7RUFFQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQUpBO0VBQ0E7RUFFQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBO0VBREE7RUFDQTtFQURBO0VBQ0E7RUFEQTtFQUNBOzs7QUN4QmhCO0VBRVE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBOzs7QUNGUjtFQUVRO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTs7O0FDRlI7RUFFUTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTs7O0FDTlI7RUFFSTtFQUdBO0VBR0E7RUFJSTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFLQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBSUo7RUFDQTs7O0FDdEJKO0VBRVE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBOzs7QUNGUjtFQUVRO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTs7O0FDRlI7RUFFUTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7OztBQ0ZSO0VBRVE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBOzs7QUNGUjtFQUlRO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBR0E7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFLQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUdBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBOzs7QUNmUjtFQUNJO0VBQ0E7RUFDQTtFQUVBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7OztBQ2pDSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQ0xKO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FDL0NKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUNERjtFQ0FBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBOztBREpFO0VDU0Y7RUFJQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQStDSTtFQUNFOzs7QUFHRjtFQXBDSjtFQUNBOzs7QUFjQTtFQUNFO0VBQ0E7OztBQUZGO0VBQ0U7RUFDQTs7O0FBRkY7RUFDRTtFQUNBOzs7QUFGRjtFQUNFO0VBQ0E7OztBQUZGO0VBQ0U7RUFDQTs7O0FBRkY7RUFDRTtFQUNBOzs7QUErQkU7RUFoREo7RUFDQTs7O0FBcURRO0VBaEVOO0VBQ0E7OztBQStETTtFQWhFTjtFQUNBOzs7QUErRE07RUFoRU47RUFDQTs7O0FBK0RNO0VBaEVOO0VBQ0E7OztBQStETTtFQWhFTjtFQUNBOzs7QUErRE07RUFoRU47RUFDQTs7O0FBK0RNO0VBaEVOO0VBQ0E7OztBQStETTtFQWhFTjtFQUNBOzs7QUErRE07RUFoRU47RUFDQTs7O0FBK0RNO0VBaEVOO0VBQ0E7OztBQStETTtFQWhFTjtFQUNBOzs7QUErRE07RUFoRU47RUFDQTs7O0FBdUVRO0VBeERWOzs7QUF3RFU7RUF4RFY7OztBQXdEVTtFQXhEVjs7O0FBd0RVO0VBeERWOzs7QUF3RFU7RUF4RFY7OztBQXdEVTtFQXhEVjs7O0FBd0RVO0VBeERWOzs7QUF3RFU7RUF4RFY7OztBQXdEVTtFQXhEVjs7O0FBd0RVO0VBeERWOzs7QUF3RFU7RUF4RFY7OztBQW1FTTtBQUFBO0VBRUU7OztBQUdGO0FBQUE7RUFFRTs7O0FBUEY7QUFBQTtFQUVFOzs7QUFHRjtBQUFBO0VBRUU7OztBQVBGO0FBQUE7RUFFRTs7O0FBR0Y7QUFBQTtFQUVFOzs7QUFQRjtBQUFBO0VBRUU7OztBQUdGO0FBQUE7RUFFRTs7O0FBUEY7QUFBQTtFQUVFOzs7QUFHRjtBQUFBO0VBRUU7OztBQVBGO0FBQUE7RUFFRTs7O0FBR0Y7QUFBQTtFQUVFOzs7QUMxRE47RURVRTtJQUNFOztFQUdGO0lBcENKO0lBQ0E7O0VBY0E7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBK0JFO0lBaERKO0lBQ0E7O0VBcURRO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBdUVRO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBbUVNO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOzs7QUMxRE47RURVRTtJQUNFOztFQUdGO0lBcENKO0lBQ0E7O0VBY0E7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBK0JFO0lBaERKO0lBQ0E7O0VBcURRO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBdUVRO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBbUVNO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOzs7QUMxRE47RURVRTtJQUNFOztFQUdGO0lBcENKO0lBQ0E7O0VBY0E7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBK0JFO0lBaERKO0lBQ0E7O0VBcURRO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBdUVRO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBbUVNO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOzs7QUMxRE47RURVRTtJQUNFOztFQUdGO0lBcENKO0lBQ0E7O0VBY0E7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBK0JFO0lBaERKO0lBQ0E7O0VBcURRO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBdUVRO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBbUVNO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOzs7QUMxRE47RURVRTtJQUNFOztFQUdGO0lBcENKO0lBQ0E7O0VBY0E7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBK0JFO0lBaERKO0lBQ0E7O0VBcURRO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBdUVRO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBbUVNO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOzs7QUMxRE47RURVRTtJQUNFOztFQUdGO0lBcENKO0lBQ0E7O0VBY0E7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBRkY7SUFDRTtJQUNBOztFQUZGO0lBQ0U7SUFDQTs7RUFGRjtJQUNFO0lBQ0E7O0VBK0JFO0lBaERKO0lBQ0E7O0VBcURRO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBK0RNO0lBaEVOO0lBQ0E7O0VBdUVRO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBd0RVO0lBeERWOztFQXdEVTtJQXhEVjs7RUF3RFU7SUF4RFY7O0VBbUVNO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOztFQVBGO0FBQUE7SUFFRTs7RUFHRjtBQUFBO0lBRUU7O0VBUEY7QUFBQTtJQUVFOztFQUdGO0FBQUE7SUFFRTs7RUFQRjtBQUFBO0lBRUU7O0VBR0Y7QUFBQTtJQUVFOzs7QUV6SFY7RUFDSTtFQUNBOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFFSjtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFFSjtFQUNJOzs7QUFFSjtBQUFBO0VBRUk7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7OztBQUVKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7RUFDQTtFQUNBOzs7QUFFSjtBQUNJOztBQUVKO0FBQ0k7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtBQUFBO0VBRUE7QUFBQTtBQUFBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTs7O0FBRUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FDeFFKO0VBQ0k7RUFDQTs7QUFHSTtFQUNJOzs7QUNMWjtFQUNJOzs7QUFHSjtFQUNJO0VBQ0E7O0FBRUE7RUFDSTs7O0FBS1I7RUFDSTs7O0FBSUo7RUFDSTs7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7RUFDSTs7O0FBR0o7RUFDSTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7O0FDNUNSO0VBQ0k7RUFDQTtFQUNBO0VBRUE7O0FDTEE7RUFDSTtFQUNBLFFBSHNCO0VBSXRCLE9BSnNCO0VBTWxCLGtCQU55Rjs7QUFjakc7RUFFUSxrQkFoQjJDO0VBaUIzQyxlQWpCb0k7O0FBbUJwSTtFQUNJOztBQVNaO0VBRVEsa0JBL0J5RjtFQWdDekY7OztBQ1hKO0VGWko7SUFDSTtJQUNBO0lBQ0E7SUFDQTs7RUNaSjtJQUNJO0lBQ0EsUUFIc0I7SUFJdEIsT0FKc0I7SUFNbEIsa0JBTnlGOztFQWNqRztJQUVRLGtCQWhCMkM7SUFpQjNDLGVBakJvSTs7RUFtQnBJO0lBQ0k7O0VBU1o7SUFFUSxrQkEvQnlGO0lBZ0N6Rjs7O0FFaENaO0VBQ0k7O0FBRUE7RUFDSTtFQUNBOztBRkpKO0VBQ0k7RUFDQSxRQUhzQjtFQUl0QixPQUpzQjtFQU1sQixrQkFOeUY7O0FBY2pHO0VBRVEsa0JBaEIyQztFQWlCM0MsZUFqQm9JOztBQW1CcEk7RUFDSTs7QUFTWjtFQUVRLGtCQS9CeUY7RUFnQ3pGOztBQS9CUjtFQUNJO0VBQ0EsUUFIc0I7RUFJdEIsT0FKc0I7RUFNbEIsa0JBTnlGOztBQWNqRztFQUVRLGtCQWhCMkM7RUFpQjNDLGVBakJvSTs7QUFtQnBJO0VBQ0k7O0FBU1o7RUFFUSxrQkEvQnlGO0VBZ0N6Rjs7O0FDWEo7RUVwQko7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7OztBQ1BSO0VBQ0k7RUFDQTs7O0FKREE7RUFDSTtFQUNBLFFBSHNCO0VBSXRCLE9BSnNCO0VBTWxCLGtCQU55Rjs7QUFjakc7RUFFUSxrQkFoQjJDO0VBaUIzQyxlQWpCb0k7O0FBbUJwSTtFQUNJOztBQVNaO0VBRVEsa0JBL0J5RjtFQWdDekY7OztBSy9CWjtBQUFBO0VBRUk7OztBQUlKO0FBQUE7QUFBQTtBQUFBO0VBSUk7RUFDQTs7O0FDWko7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7O0FDSko7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUNFQTtFQUNJOztBQUlSO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDSTs7O0FBSUE7RUFHSTs7O0FBY1I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBU0k7OztBQUlKO0VBQ0k7OztBQUlKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQU1JOzs7QUFHSjtFQUNJOzs7QUNoRko7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHQTtBQUFBO0VBRUk7O0FBRUE7QUFBQTtFQUNJOztBQUdKO0FBQUE7RUFDSTs7QUFLUjtBQUFBO0FBQUE7RUFHSTs7QUFHSjtBQUFBO0VBRUk7RUFDQTs7QUFJQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUtSO0VBQ0k7O0FBRUE7RUFDSTs7QUFFQTtFQUNJOztBQUlBO0VBQ0k7O0FBS1o7RUFDSTs7QUFFQTtFQUNJOztBQUlBO0VBQ0k7O0FBT1o7RUFDSTs7QUFJUjtFQUNJO0VBQ0E7O0FBTUk7RUFDSTs7QUFJUjtFQUNJOztBQUtSO0VBQ0k7RUFDQTs7QUFFQTtFQUNJOztBQUtSO0VBQ0k7O0FBRUE7QUFBQTtBQUFBO0VBR0k7O0FBS1I7RUFDSTtFQUNBO0VBQ0E7O0FBS0E7QUFBQTtBQUFBO0VBR0k7OztBQzVJWjtFQUNJO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FDVEo7RUFDSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBTUE7RUFDSTtFQUNBO0VBQ0E7O0FETko7RUFDSTs7QUFFQTtFQUNJOzs7QUVyQmhCO0VBQ0k7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBOzs7QUNsQlo7RUFDSTtJQUNJOzs7QUFHUjtFQUVJO0lBQ0k7SUFDQTtJQUNBOzs7QUNWUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUNYSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFLWjtBQUNBO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7OztBQUdSO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7O0VBR0o7SUFDSTtJQUNBO0lBQ0E7OztBQUdSO0VBQ0k7SUFDSTtJQUNBOztFQUVKO0lBQ0k7SUFDQTs7RUFFSjtJQUNJOzs7QUFHUjtFQUNJO0lBQ0k7SUFDQTs7RUFFSjtJQUNJO0lBQ0E7O0VBRUo7SUFDSSIsImZpbGUiOiJldWkudGVtcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbiBodG1sIHtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tZXVpLWJhc2UtbGluZS1oZWlnaHQpOyAvKiAxICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gIH1cblxuICAvKiBTZWN0aW9uc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAgICovXG5cbiAgbWFpbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvKipcbiAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICAgKi9cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuXG4gIC8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKipcbiAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gICAqL1xuXG4gIGhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICAgIGhlaWdodDogMDsgLyogMSAqL1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gIH1cblxuICAvKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gIH1cblxuICAvKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gICAqL1xuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLyoqXG4gICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAqL1xuXG4gIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgKi9cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAvKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gIH1cblxuICAvKipcbiAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICogYWxsIGJyb3dzZXJzLlxuICAgKi9cblxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKipcbiAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAgICovXG5cbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cblxuICAvKiBGb3Jtc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgKi9cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgICBsaW5lLWhlaWdodDogMTsgLyogMSAqLyAgIC8vIGVVSSBhZGFwYXRpb25zIGZvcmNlZCB0byBcIjFcIlxuICAgIG1hcmdpbjogMDsgLyogMiAqL1xuICB9XG5cbiAgLyoqXG4gICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgKi9cblxuICBidXR0b24sXG4gIGlucHV0IHsgLyogMSAqL1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAqL1xuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLyogMSAqL1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLyoqXG4gICAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAqL1xuXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgKi9cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvKipcbiAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgKi9cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG5cbiAgLyoqXG4gICAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICovXG5cbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG4gIGxlZ2VuZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gICAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwOyAvKiAzICovXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAqL1xuXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gICAqL1xuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8qKlxuICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICAgKi9cblxuICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgcGFkZGluZzogMDsgLyogMiAqL1xuICB9XG5cbiAgLyoqXG4gICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICovXG5cbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvKipcbiAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgKi9cblxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICovXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAqL1xuXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICB9XG5cbiAgLyogSW50ZXJhY3RpdmVcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICAgKi9cblxuICBkZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8qXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG5cbiAgLyogTWlzY1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gICAqL1xuXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICAgKi9cblxuICBbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuIiwiOnJvb3Qge1xuICAgIC0tZXVpLWJjLXRyYW5zcGFyZW50OiB0cmFuc3BhcmVudDtcblxuICAgIC8vIENPTE9SIFNIQURFU1xuICAgIEBlYWNoICRjb2xvciwgJHNoYWRlcyBpbiAkZXVpLWJhc2UtdG9rZW5zLWNvbG9ycyB7XG4gICAgICAgIEBlYWNoICRzaGFkZSwgJHZhbHVlIGluICRzaGFkZXMge1xuICAgICAgICAgICAgLS1ldWktYmMtI3skY29sb3IgKyAnLScgKyAkc2hhZGV9OiAjeyR2YWx1ZX07XG4gICAgICAgICAgICAtLWV1aS1iYy0jeyRjb2xvciArICctJyArICRzaGFkZX0tY29udHJhc3Q6ICN7Z2V0Q29udHJhc3QoJHZhbHVlKX07XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI6cm9vdCB7XG4gICAgLS1ldWktYy13aGl0ZTogdmFyKC0tZXVpLWJjLW5ldXRyYWwtMCk7XG4gICAgLS1ldWktYy1ibGFjazogdmFyKC0tZXVpLWJjLW5ldXRyYWwtMTYwKTtcblxuICAgIC0tZXVpLWMtYmc6IHZhcigtLWV1aS1iYy1uZXV0cmFsLTIpO1xuICAgIC0tZXVpLWMtdGV4dDogdmFyKC0tZXVpLWJjLW5ldXRyYWwtMTAwKTtcblxuICAgIC0tZXVpLWMtZm9jdXMtdmlzaWJsZTogdmFyKC0tZXVpLWJjLXByaW1hcnktMTAwKTtcbiAgICAtLWV1aS1jLWZvY3VzOiB2YXIoLS1ldWktYmMtcHJpbWFyeS00MCk7XG5cbiAgICAtLWV1aS1jLWhvdmVyOiB2YXIoLS1ldWktYmMtcHJpbWFyeS01KTtcbiAgICAtLWV1aS1jLWhvdmVyLWRpc2FibGVkOiB2YXIoLS1ldWktYmMtbmV1dHJhbC0xMCk7XG4gICAgLS1ldWktYy1hY3RpdmU6IHZhcigtLWV1aS1iYy1wcmltYXJ5LTEwKTtcbiAgICAtLWV1aS1jLWRpc2FibGVkOiB2YXIoLS1ldWktYmMtbmV1dHJhbC02MCk7XG5cbiAgICBAZWFjaCAkY29sb3IsICRzaGFkZXMgaW4gJGV1aS1iYXNlLWNvbnRleHQtY29sb3JzIHtcbiAgICAgICAgQGVhY2ggJHNoYWRlLCAkdmFsdWUgaW4gJHNoYWRlcyB7XG4gICAgICAgICAgICAkYmFzZS1jb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICAgICBAaWYgJHNoYWRlID09IGJhc2Uge1xuICAgICAgICAgICAgICAgIC0tZXVpLWMtI3skY29sb3J9OiB2YXIoLS1ldWktYmMtI3skYmFzZS1jb2xvciArICctJyArICR2YWx1ZX0pO1xuICAgICAgICAgICAgICAgIC0tZXVpLWMtI3skY29sb3J9LWNvbnRyYXN0OiB2YXIoLS1ldWktYmMtI3skYmFzZS1jb2xvciArICctJyArICR2YWx1ZX0tY29udHJhc3QpO1xuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAgLS1ldWktYy0jeyRjb2xvciArICctJyArICRzaGFkZX06IHZhcigtLWV1aS1iYy0jeyRiYXNlLWNvbG9yICsgJy0nICsgJHZhbHVlfSk7XG4gICAgICAgICAgICAgICAgLS1ldWktYy0jeyRjb2xvciArICctJyArICRzaGFkZX0tY29udHJhc3Q6IHZhcigtLWV1aS1iYy0jeyRiYXNlLWNvbG9yICsgJy0nICsgJHZhbHVlfS1jb250cmFzdCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI6cm9vdCB7XG4gICAgQGVhY2ggJGJyLCAkdmFsdWUgaW4gJGV1aS1iYXNlLXRva2Vucy1ib3JkZXItcmFkaXVzIHtcbiAgICAgICAgLS1ldWktYmJyLSN7JGJyfTogI3skdmFsdWV9O1xuICAgIH1cbn1cbiIsIjpyb290IHtcbiAgICBAZWFjaCAkc3BhY2luZywgJHZhbHVlIGluICRldWktYmFzZS1jb250ZXh0LXNwYWNpbmdzIHtcbiAgICAgICAgLS1ldWktcy0jeyRzcGFjaW5nfTogdmFyKC0tZXVpLWJzLSN7JHNwYWNpbmd9KTtcbiAgICB9XG59XG4iLCI6cm9vdCB7XG4gICAgQGVhY2ggJHNpemUsICRkZWYgaW4gJGV1aS1iYXNlLXRva2Vucy1mb250cyB7XG4gICAgICAgIC0tZXVpLWJmLSN7JHNpemV9OiAjeyRkZWZ9O1xuICAgIH1cblxuICAgIEBlYWNoICRzaXplLCAkZGVmIGluICRldWktYmFzZS10b2tlbnMtZm9udC1zaXplcyB7XG4gICAgICAgIC0tZXVpLWJmLXNpemUtI3skc2l6ZX06ICN7JGRlZn07XG4gICAgfVxufVxuIiwiOnJvb3Qge1xuICAgIC8vIEZPTlRTIERFRklOSVRJT05TXG4gICAgLS1ldWktZi1mYW1pbHk6IEFyaWFsLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgLy8gLS1ldWktZi1mYW1pbHk6ICdTb3VyY2UgU2FucyBQcm8nLCBzYW5zLXNlcmlmOyAgPGxpbmsgaHJlZj1cImh0dHBzOi8vZm9udHMuY2RuZm9udHMuY29tL2Nzcy9zb3VyY2Utc2Fucy1wcm9cIiByZWw9XCJzdHlsZXNoZWV0XCI+XG4gICAgLy8gLS1ldWktZi1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmOyAgPGxpbmsgaHJlZj1cImh0dHBzOi8vZm9udHMuY2RuZm9udHMuY29tL2Nzcy9yb2JvdG9cIiByZWw9XCJzdHlsZXNoZWV0XCI+XG4gICAgLS1ldWktZi1mYW1pbHktbW9ub3NwYWNlOiAnQ29uc29sYXMnLCAnTGliZXJhdGlvbiBNb25vJywgJ0NvdXJpZXIgTmV3JywgbW9ub3NwYWNlO1xuXG4gICAgLy8gQkFTRSBGT05UIFNJWkVcbiAgICAtLWV1aS1mLXNpemUtYmFzZTogMTZweDtcblxuICAgIC8vIEZPTlRTIFZBUklBTlRTXG4gICAgQGVhY2ggJGZvbnQsICRkZWYgaW4gJGV1aS1iYXNlLWNvbnRleHQtZm9udHMge1xuICAgICAgICAtLWV1aS1mLSN7JGZvbnR9OiB2YXIoLS1ldWktYmYtI3skZGVmfSk7XG4gICAgfVxuXG4gICAgLy8gRk9OVFMgVkFSSUFOVFNcbiAgICBAZWFjaCAkZm9udCwgJGRlZiBpbiAkZXVpLWJhc2UtY29udGV4dC1mb250LXNpemVzIHtcbiAgICAgICAgLS1ldWktZi1zaXplLSN7JGZvbnR9OiB2YXIoLS1ldWktYmYtc2l6ZS0jeyRkZWZ9KTtcbiAgICB9XG5cbiAgICAvLyBBTElBU0VTXG4gICAgLS1ldWktZjogdmFyKC0tZXVpLWJmLW0pO1xuICAgIC0tZXVpLWYtYm9sZDogdmFyKC0tZXVpLWJmLW0tYik7XG59XG4iLCI6cm9vdCB7XG4gICAgQGVhY2ggJHNwYWNpbmcsICR2YWx1ZSBpbiAkZXVpLWJhc2UtdG9rZW5zLXNwYWNpbmdzIHtcbiAgICAgICAgLS1ldWktYnMtI3skc3BhY2luZ306ICN7JHZhbHVlfTtcbiAgICB9XG59XG4iLCI6cm9vdCB7XG4gICAgQGVhY2ggJGJyLCAkdmFsdWUgaW4gJGV1aS1iYXNlLWNvbnRleHQtYm9yZGVyLXJhZGl1cyB7XG4gICAgICAgIC0tZXVpLWJyLSN7JGJyfTogdmFyKC0tZXVpLWJici0jeyRicn0pO1xuICAgIH1cbn1cbiIsIjpyb290IHtcbiAgICBAZWFjaCAkc2gsICR2YWx1ZSBpbiAkZXVpLWJhc2UtdG9rZW5zLXNoYWRvd3Mge1xuICAgICAgICAtLWV1aS1ic2gtI3skc2h9OiAjeyR2YWx1ZX07XG4gICAgfVxufVxuIiwiOnJvb3Qge1xuICAgIEBlYWNoICRzaCwgJHZhbHVlIGluICRldWktYmFzZS10b2tlbnMtc2hhZG93cyB7XG4gICAgICAgIC0tZXVpLXNoLSN7JHNofTogdmFyKC0tZXVpLWJzaC0jeyRzaH0pO1xuICAgIH1cbn1cbiIsIjpyb290IHtcblxuICAgIC8vIElDT04tU0laRVNcbiAgICBAZWFjaCAkaWNvbi1zaXplLCAkdmFsdWUgaW4gJGV1aS1iYXNlLXRva2Vucy1pY29uLXNpemVzIHtcbiAgICAgICAgLS1ldWktYmlzLSN7JGljb24tc2l6ZX06ICN7JHZhbHVlfTtcbiAgICB9XG4gICAgQGVhY2ggJGljb24tc2l6ZSwgJHZhbHVlIGluICRldWktYmFzZS10b2tlbnMtaWNvbi1zaXplcyB7XG4gICAgICAgIC0tZXVpLWlzLSN7JGljb24tc2l6ZX06IHZhcigtLWV1aS1iaXMtI3skaWNvbi1zaXplfSk7XG4gICAgfVxuXG4gICAgLy8gWi1JTkRFWEVTXG4gICAgQGVhY2ggJGlkeCwgJHZhbHVlIGluICRldWktYmFzZS10b2tlbnMtei1pbmRleGVzIHtcbiAgICAgICAgLS1ldWktYnppLSN7JGlkeH06ICN7JHZhbHVlfTtcbiAgICB9XG4gICAgQGVhY2ggJGlkeCwgJHZhbHVlIGluICRldWktYmFzZS10b2tlbnMtei1pbmRleGVzIHtcbiAgICAgICAgLS1ldWktemktI3skaWR4fTogdmFyKC0tZXVpLWJ6aS0jeyRpZHh9KTtcbiAgICB9XG59XG4iLCI6cm9vdCB7XG4gICAgLS1ldWktYmFzZS1saW5lLWhlaWdodDogMS41O1xuICAgIC0tZXVpLWJhc2Utc2NhbGUtZmFjdG9yOiAxO1xuICAgIC0tZXVpLWJhc2UtZGlzYWJsZWQtb3BhY2l0eTogMC41O1xuXG4gICAgLS1ldWktYmFzZS1ib3JkZXItc3RhdGUtd2lkdGg6IHZhcigtLWV1aS1zLXhzKTtcblxuICAgIC0tZXVpLWJhc2UtYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZXVpLWNvbG9yLWdyZXktbGlnaHRlcik7XG4gICAgLS1ldWktYmFzZS1ib3JkZXItbGlnaHQ6IDFweCBzb2xpZCB2YXIoLS1ldWktY29sb3ItZ3JleS1saWdodCk7XG4gICAgLS1ldWktYmFzZS1ib3JkZXItbGlnaHRlcjogMXB4IHNvbGlkIHZhcigtLWV1aS1jb2xvci1ncmV5LWxpZ2h0ZXIpO1xuICAgIC0tZXVpLWJhc2UtYm9yZGVyLWxpZ2h0ZXN0OiAxcHggc29saWQgdmFyKC0tZXVpLWNvbG9yLWdyZXktbGlnaHRlc3QpO1xuXG4gICAgLy8gQW5pbWF0aW9ucyByZWxhdGVkXG4gICAgLS1ldWktYmFzZS1hbmltYXRpb24tbGluZWFyLW91dC1zbG93LWluLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG4gICAgLS1ldWktYmFzZS1hbmltYXRpb24tZmFzdC1vdXQtc2xvdy1pbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgLS1ldWktYmFzZS1hbmltYXRpb24tZmFzdC1vdXQtbGluZWFyLWluLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMSwgMSk7XG4gICAgLS1ldWktYmFzZS1hbmltYXRpb24tZWFzZS10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpOyAgICAvLyBlYXNlXG4gICAgLS1ldWktYmFzZS1hbmltYXRpb24tZWFzZS1pbi1vdXQtdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcblxuICAgIC0tZXVpLWJhc2UtYW5pbWF0aW9uLWR1cmF0aW9uLWZhc3Q6IDAuMjVzO1xuICAgIC0tZXVpLWJhc2UtYW5pbWF0aW9uLWR1cmF0aW9uLW1lZGl1bTogMC41cztcbiAgICAtLWV1aS1iYXNlLWFuaW1hdGlvbi1kdXJhdGlvbi1zbG93OiAxcztcbiAgICAtLWV1aS1iYXNlLWFuaW1hdGlvbi1kdXJhdGlvbi1iYXNlOiA1MDBtcztcbiAgICAtLWV1aS1iYXNlLWFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKC0tZXVpLWJhc2UtYW5pbWF0aW9uLWR1cmF0aW9uLWJhc2UpO1xuXG4gICAgLS1ldWktYmFzZS1hbmltYXRpb24tdHJhbnNpdGlvbi1iYXNlOiBhbGwgMC4ycyAje3ZhcigtLWV1aS1iYXNlLWFuaW1hdGlvbi1saW5lYXItb3V0LXNsb3ctaW4tdGltaW5nLWZ1bmN0aW9uKX07XG4gICAgLS1ldWktYmFzZS1hbmltYXRpb24tdHJhbnNpdGlvbi1lYXNlOiBhbGwgMC4ycyAje3ZhcigtLWV1aS1iYXNlLWFuaW1hdGlvbi1lYXNlLXRpbWluZy1mdW5jdGlvbil9O1xuICAgIC0tZXVpLWJhc2UtYW5pbWF0aW9uLXRyYW5zaXRpb24tZWFzZS1pbi1vdXQ6IGFsbCAwLjJzICN7dmFyKC0tZXVpLWJhc2UtYW5pbWF0aW9uLWVhc2UtaW4tb3V0LXRpbWluZy1mdW5jdGlvbil9O1xuICAgIC0tZXVpLWJhc2UtYW5pbWF0aW9uLXRyYW5zaXRpb24tZWFzZS1pbi1vdXQtMXM6IGFsbCAxcyAje3ZhcigtLWV1aS1iYXNlLWFuaW1hdGlvbi1lYXNlLWluLW91dC10aW1pbmctZnVuY3Rpb24pfTtcblxuICAgIC0tZXVpLWJhc2UtYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgICAtLWV1aS1iYXNlLWFuaW1hdGlvbi1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICAtLWV1aS1iYXNlLWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOyAgICAvLyB0aGlzIHByZXZlbnRzIHRoZSBhbmltYXRpb24gZnJvbSByZXN0YXJ0aW5nXG4gICAgLS1ldWktYmFzZS1hbmltYXRpb24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZXVpLWMtcHJpbWFyeS1saWdodGVyKTsgIC8vICNjZmNmZGY7XG59XG4iLCI6cm9vdCB7XG4gICAgLS1ldWktaW50ZXJuYWwtaWNvbi1jaGVja21hcmstcGF0aDogdXJsKCcjeyRldWktYXNzZXRzLWJhc2UtcGF0aH0vaWNvbnMvZXVpLWludGVybmFscy9jaGVja21hcmsuc3ZnJyk7XG4gICAgLS1ldWktaW50ZXJuYWwtaWNvbi1yZW1vdmUtcGF0aDogdXJsKCcjeyRldWktYXNzZXRzLWJhc2UtcGF0aH0vaWNvbnMvZXVpLWludGVybmFscy9yZW1vdmUuc3ZnJyk7XG4gICAgLS1ldWktaW50ZXJuYWwtaWNvbi1lbGxpcHNlLXBhdGg6IHVybCgnI3skZXVpLWFzc2V0cy1iYXNlLXBhdGh9L2ljb25zL2V1aS1pbnRlcm5hbHMvZWxsaXBzZS5zdmcnKTtcbiAgICAtLWV1aS1pbnRlcm5hbC1pY29uLWV4dGVybmFsLXBhdGg6IHVybCgnI3skZXVpLWFzc2V0cy1iYXNlLXBhdGh9L2ljb25zL2V1aS1pbnRlcm5hbHMvZXh0ZXJuYWwuc3ZnJyk7XG4gICAgLS1ldWktaW50ZXJuYWwtaWNvbi1jaGV2cm9uLWRvd24tcGF0aDogdXJsKCcjeyRldWktYXNzZXRzLWJhc2UtcGF0aH0vaWNvbnMvZXVpLWludGVybmFscy9jaGV2cm9uLWRvd24uc3ZnJyk7XG59XG4iLCI6cm9vdCB7XG4gICAgLy8gZVVJIEFQUFxuICAgIC0tZXVpLWFwcC1oZWFkZXItaGVpZ2h0LWRlZmF1bHQ6IDBweDtcbiAgICAtLWV1aS1hcHAtaGVhZGVyLWhlaWdodDogMHB4O1xuICAgIC0tZXVpLWFwcC1oZWFkZXItaGVpZ2h0LWFjdGl2ZTogOTBweDtcbiAgICAtLWV1aS1hcHAtaGVhZGVyLWhlaWdodC1zaHJpbms6IDBweDtcblxuICAgIC0tZXVpLWFwcC1icmVhZGNydW1iLWhlaWdodC1kZWZhdWx0OiAwcHg7XG4gICAgLS1ldWktYXBwLWJyZWFkY3J1bWItaGVpZ2h0OiAwcHg7XG4gICAgLS1ldWktYXBwLWJyZWFkY3J1bWItaGVpZ2h0LWFjdGl2ZTogMjBweDtcblxuICAgIC0tZXVpLWFwcC10b3AtbWVzc2FnZS1oZWlnaHQtZGVmYXVsdDogMHB4O1xuICAgIC0tZXVpLWFwcC10b3AtbWVzc2FnZS1oZWlnaHQ6IDBweDtcbiAgICAtLWV1aS1hcHAtdG9wLW1lc3NhZ2UtaGVpZ2h0LWFjdGl2ZTogNDJweDtcblxuICAgIC0tZXVpLWFwcC10b29sYmFyLWhlaWdodC1kZWZhdWx0OiAwcHg7XG4gICAgLS1ldWktYXBwLXRvb2xiYXItaGVpZ2h0OiAwcHg7XG4gICAgLS1ldWktYXBwLXRvb2xiYXItaGVpZ2h0LWFjdGl2ZTogNTVweDtcblxuICAgIC0tZXVpLWFwcC1zaWRlYmFyLXdpZHRoLWRlZmF1bHQ6IDBweDtcbiAgICAtLWV1aS1hcHAtc2lkZWJhci13aWR0aDogMHB4O1xuICAgIC0tZXVpLWFwcC1zaWRlYmFyLXdpZHRoLWFjdGl2ZTogMzAwcHg7XG4gICAgLS1ldWktYXBwLXNpZGViYXItd2lkdGgtY2xvc2UtZGVmYXVsdDogMHB4O1xuICAgIC0tZXVpLWFwcC1zaWRlYmFyLXdpZHRoLWNsb3NlOiAwcHg7XG4gICAgLS1ldWktYXBwLXNpZGViYXItd2lkdGgtY2xvc2UtYWN0aXZlOiA2NHB4O1xuICAgIC0tZXVpLWFwcC1zaWRlYmFyLWhlYWRlci1oZWlnaHQ6IDBweDtcbiAgICAtLWV1aS1hcHAtc2lkZWJhci1oZWFkZXItaGVpZ2h0LWRlZmF1bHQ6IDBweDtcbiAgICAtLWV1aS1hcHAtc2lkZWJhci1oZWFkZXItaGVpZ2h0LWFjdGl2ZTogNDhweDtcbiAgICAtLWV1aS1hcHAtc2lkZWJhci1oZWFkZXItdXNlci1wcm9maWxlOiA2NHB4O1xuICAgIC0tZXVpLWFwcC1zaWRlYmFyLWZvb3Rlci1oZWlnaHQ6IDBweDtcbiAgICAtLWV1aS1hcHAtc2lkZWJhci1mb290ZXItaGVpZ2h0LWRlZmF1bHQ6IDBweDtcbiAgICAtLWV1aS1hcHAtc2lkZWJhci1mb290ZXItaGVpZ2h0LWFjdGl2ZTogMjRweDtcblxuICAgIC8vIFBhZ2UgTGF5b3V0XG4gICAgLS1ldWktcGFnZS1oZWFkZXItd2l0aC1zdWJ0aXRsZS1oZWlnaHQ6IDRyZW07XG4gICAgLS1ldWktcGFnZS1oZWFkZXItd2l0aG91dC1zdWJ0aXRsZS1oZWlnaHQ6IDJyZW07XG5cbiAgICAtLWV1aS1wYWdlLWNvbHVtbi0tc2l6ZS1zOiA1MHB4O1xuICAgIC0tZXVpLXBhZ2UtY29sdW1uLS1zaXplLW06IDE1MHB4O1xuICAgIC0tZXVpLXBhZ2UtY29sdW1uLS1zaXplLWw6IDIwMHB4O1xuICAgIC0tZXVpLXBhZ2UtY29sdW1uLS1zaXplLXhsOiAyNTBweDtcbiAgICAtLWV1aS1wYWdlLWNvbHVtbi0tc2l6ZS14eGw6IDMwMHB4O1xuICAgIC0tZXVpLXBhZ2UtY29sdW1uLS1zaXplLXh4eGw6IDM1MHB4O1xuICAgIC0tZXVpLXBhZ2UtY29sdW1uLWZvb3Rlci1oZWlnaHQ6IDMuNXJlbTtcbn1cblxuLnhzLCAuc20ge1xuICAgIC0tZXVpLWFwcC1oZWFkZXItaGVpZ2h0OiAwcHg7XG59XG4iLCIuZXVpLWljb24tc3ZnIHtcbiAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpIHNjYWxlWSgxKSByb3RhdGVaKDBkZWcpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBlYXNlLWluLW91dDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4iLCIvLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuXG4gICAgPiAqIHtcbiAgICAgIEBpbmNsdWRlIG1ha2UtY29sLXJlYWR5KCk7XG4gICAgfVxuICB9XG59XG5cbkBpZiAkZW5hYmxlLWNzc2dyaWQge1xuICAuZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCh2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9cm93cywgMSksIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQodmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWNvbHVtbnMsICN7JGdyaWQtY29sdW1uc30pLCAxZnIpO1xuICAgIGdhcDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWdhcCwgI3skZ3JpZC1ndXR0ZXItd2lkdGh9KTtcblxuICAgIEBpbmNsdWRlIG1ha2UtY3NzZ3JpZCgpO1xuICB9XG59XG5cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAvLyBUT0RPOiBSZXZpc2l0IGNhbGMgb3JkZXIgYWZ0ZXIgaHR0cHM6Ly9naXRodWIuY29tL3JlYWN0LWJvb3RzdHJhcC9yZWFjdC1ib290c3RyYXAvaXNzdWVzLzYwMzkgaXMgZml4ZWRcbiAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHZhcmlhYmxlLXByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC8vIEFkZCBib3ggc2l6aW5nIGlmIG9ubHkgdGhlIGdyaWQgaXMgbG9hZGVkXG4gIGJveC1zaXppbmc6IGlmKHZhcmlhYmxlLWV4aXN0cyhpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nKSBhbmQgJGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcsIGJvcmRlci1ib3gsIG51bGwpO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2Ugc2V0IHRoZSB3aWR0aFxuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBQcmV2ZW50IGAuY29sLWF1dG9gLCBgLmNvbGAgKCYgcmVzcG9uc2l2ZSB2YXJpYW50cykgZnJvbSBicmVha2luZyBvdXQgdGhlIGdyaWRcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXgpICogLjUpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXRvcDogdmFyKC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci15KTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplOiBmYWxzZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgQGlmICRzaXplIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoJHNpemUsICRjb2x1bW5zKSk7XG5cbiAgfSBAZWxzZSB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06IGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogZGl2aWRlKDEwMCUsICRjb3VudCk7XG4gIH1cbn1cblxuLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXg6IDEgMCAwJTsgLy8gRmxleGJ1Z3MgIzQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MjZmxleGJ1Zy00XG4gICAgICB9XG5cbiAgICAgIC5yb3ctY29scyN7JGluZml4fS1hdXRvID4gKiB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xuICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gR3V0dGVyc1xuICAgICAgLy9cbiAgICAgIC8vIE1ha2UgdXNlIG9mIGAuZy0qYCwgYC5neC0qYCBvciBgLmd5LSpgIHV0aWxpdGllcyB0byBjaGFuZ2Ugc3BhY2luZyBiZXR3ZWVuIHRoZSBjb2x1bW5zLlxuICAgICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRndXR0ZXJzIHtcbiAgICAgICAgLmcjeyRpbmZpeH0tI3ska2V5fSxcbiAgICAgICAgLmd4I3skaW5maXh9LSN7JGtleX0ge1xuICAgICAgICAgIC0tI3skdmFyaWFibGUtcHJlZml4fWd1dHRlci14OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3kjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyR2YXJpYWJsZS1wcmVmaXh9Z3V0dGVyLXk6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1jc3NncmlkKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5nLWNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gJGk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gU3RhcnQgd2l0aCBgMWAgYmVjYXVzZSBgMGAgaXMgYW5kIGludmFsaWQgdmFsdWUuXG4gICAgICAgIC8vIEVuZHMgd2l0aCBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGUuXG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIC5nLXN0YXJ0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiBub3QgJG4ge1xuICAgIEBlcnJvciBcImJyZWFrcG9pbnQgYCN7JG5hbWV9YCBub3QgZm91bmQgaW4gYCN7JGJyZWFrcG9pbnRzfWBcIjtcbiAgfVxuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIHJlZHVjZWQgYnkgMC4wMnB4IHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZlxuLy8gYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChtZCwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJG1heCAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46ICBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogIGJyZWFrcG9pbnQtbWF4KCRuZXh0KTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5leHQsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIubWF0LXJpcHBsZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubWF0LXJpcHBsZTpub3QoOmVtcHR5KSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xufVxuLm1hdC1yaXBwbGUubWF0LXJpcHBsZS11bmJvdW5kZWQge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLm1hdC1yaXBwbGUtZWxlbWVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWF0LXJpcHBsZS1jb2xvciwgIzAwMDAwMDFhKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5LCB0cmFuc2Zvcm0gMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xufVxuLmNkay1oaWdoLWNvbnRyYXN0LWFjdGl2ZSAubWF0LXJpcHBsZS1lbGVtZW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLmNkay12aXN1YWxseS1oaWRkZW4ge1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW46IC0xcHg7XG4gICAgb3V0bGluZTogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgd2lkdGg6IDFweDtcbn1cbltkaXI9XCJydGxcIl0gLmNkay12aXN1YWxseS1oaWRkZW4ge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG59XG4uY2RrLWdsb2JhbC1vdmVybGF5LXdyYXBwZXIsXG4uY2RrLW92ZXJsYXktY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG59XG4uY2RrLW92ZXJsYXktY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMTAwMDtcbn1cbi5jZGstb3ZlcmxheS1jb250YWluZXI6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4uY2RrLWdsb2JhbC1vdmVybGF5LXdyYXBwZXIsXG4uY2RrLW92ZXJsYXktcGFuZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTAwMDtcbn1cbi5jZGstb3ZlcmxheS1wYW5lIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLmNkay1vdmVybGF5LWJhY2tkcm9wIHtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuOCwgMC4yNSwgMSk7XG4gICAgei1pbmRleDogMTAwMDtcbn1cbi5jZGstb3ZlcmxheS1iYWNrZHJvcC5jZGstb3ZlcmxheS1iYWNrZHJvcC1zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAxO1xufVxuLmNkay1oaWdoLWNvbnRyYXN0LWFjdGl2ZSAuY2RrLW92ZXJsYXktYmFja2Ryb3AuY2RrLW92ZXJsYXktYmFja2Ryb3Atc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMC42O1xufVxuLmNkay1vdmVybGF5LWRhcmstYmFja2Ryb3Age1xuICAgIGJhY2tncm91bmQ6ICMwMDAwMDA1Mjtcbn1cbi5jZGstb3ZlcmxheS10cmFuc3BhcmVudC1iYWNrZHJvcCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDFtcyBsaW5lYXIsIG9wYWNpdHkgMW1zIGxpbmVhcjtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uY2RrLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3AuY2RrLW92ZXJsYXktYmFja2Ryb3Atc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLmNkay1vdmVybGF5LWJhY2tkcm9wLW5vb3AtYW5pbWF0aW9uIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xufVxuLmNkay1vdmVybGF5LWNvbm5lY3RlZC1wb3NpdGlvbi1ib3VuZGluZy1ib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgbWluLXdpZHRoOiAxcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDEwMDA7XG59XG4uY2RrLWdsb2JhbC1zY3JvbGxibG9jayB7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTtcbn1cbnRleHRhcmVhLmNkay10ZXh0YXJlYS1hdXRvc2l6ZSB7XG4gICAgcmVzaXplOiBub25lO1xufVxudGV4dGFyZWEuY2RrLXRleHRhcmVhLWF1dG9zaXplLW1lYXN1cmluZyB7XG4gICAgYm94LXNpemluZzogaW5pdGlhbCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAycHggMCAhaW1wb3J0YW50O1xufVxudGV4dGFyZWEuY2RrLXRleHRhcmVhLWF1dG9zaXplLW1lYXN1cmluZy1maXJlZm94IHtcbiAgICBib3gtc2l6aW5nOiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMnB4IDAgIWltcG9ydGFudDtcbn1cbkBrZXlmcmFtZXMgY2RrLXRleHQtZmllbGQtYXV0b2ZpbGwtc3RhcnQge1xuICAgIC8qISovXG59XG5Aa2V5ZnJhbWVzIGNkay10ZXh0LWZpZWxkLWF1dG9maWxsLWVuZCB7XG4gICAgLyohKi9cbn1cbi5jZGstdGV4dC1maWVsZC1hdXRvZmlsbC1tb25pdG9yZWQ6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgYW5pbWF0aW9uOiBjZGstdGV4dC1maWVsZC1hdXRvZmlsbC1zdGFydCAwcyAxbXM7XG59XG4uY2RrLXRleHQtZmllbGQtYXV0b2ZpbGwtbW9uaXRvcmVkOm5vdCg6LXdlYmtpdC1hdXRvZmlsbCkge1xuICAgIGFuaW1hdGlvbjogY2RrLXRleHQtZmllbGQtYXV0b2ZpbGwtZW5kIDBzIDFtcztcbn1cbi5tYXQtZm9jdXMtaW5kaWNhdG9yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubWF0LWZvY3VzLWluZGljYXRvcjpiZWZvcmUge1xuICAgIGJvcmRlcjogdmFyKC0tbWF0LWZvY3VzLWluZGljYXRvci1ib3JkZXItd2lkdGgsIDNweClcbiAgICAgICAgdmFyKC0tbWF0LWZvY3VzLWluZGljYXRvci1ib3JkZXItc3R5bGUsIHNvbGlkKVxuICAgICAgICB2YXIoLS1tYXQtZm9jdXMtaW5kaWNhdG9yLWJvcmRlci1jb2xvciwgIzAwMDApO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLW1hdC1mb2N1cy1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cywgNHB4KTtcbiAgICBib3R0b206IDA7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiB2YXIoLS1tYXQtZm9jdXMtaW5kaWNhdG9yLWRpc3BsYXksIG5vbmUpO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbn1cbi5tYXQtZm9jdXMtaW5kaWNhdG9yOmZvY3VzOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbn1cbi5jZGstaGlnaC1jb250cmFzdC1hY3RpdmUge1xuICAgIC0tbWF0LWZvY3VzLWluZGljYXRvci1kaXNwbGF5OiBibG9jaztcbn1cbi5tYXQtbWRjLWZvY3VzLWluZGljYXRvciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm1hdC1tZGMtZm9jdXMtaW5kaWNhdG9yOmJlZm9yZSB7XG4gICAgYm9yZGVyOiB2YXIoLS1tYXQtbWRjLWZvY3VzLWluZGljYXRvci1ib3JkZXItd2lkdGgsIDNweClcbiAgICAgICAgdmFyKC0tbWF0LW1kYy1mb2N1cy1pbmRpY2F0b3ItYm9yZGVyLXN0eWxlLCBzb2xpZClcbiAgICAgICAgdmFyKC0tbWF0LW1kYy1mb2N1cy1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yLCAjMDAwMCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tbWF0LW1kYy1mb2N1cy1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cywgNHB4KTtcbiAgICBib3R0b206IDA7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiB2YXIoLS1tYXQtbWRjLWZvY3VzLWluZGljYXRvci1kaXNwbGF5LCBub25lKTtcbiAgICBsZWZ0OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG59XG4ubWF0LW1kYy1mb2N1cy1pbmRpY2F0b3I6Zm9jdXM6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xufVxuLmNkay1oaWdoLWNvbnRyYXN0LWFjdGl2ZSB7XG4gICAgLS1tYXQtbWRjLWZvY3VzLWluZGljYXRvci1kaXNwbGF5OiBibG9jaztcbn1cbi5tYXQtYXBwLWJhY2tncm91bmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1hdC1hcHAtYmFja2dyb3VuZC1jb2xvciwgIzAwMDApO1xuICAgIGNvbG9yOiB2YXIoLS1tYXQtYXBwLXRleHQtY29sb3IsIGluaGVyaXQpO1xufVxuaHRtbCB7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1jb250YWluZXItc2hhcGU6IDRweDtcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWNvbnRhaW5lci10b3VjaC1zaGFwZTogNHB4O1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItY29udGFpbmVyLWVsZXZhdGlvbi1zaGFkb3c6IDBweCAycHggNHB4IC0xcHggIzAwMDMsXG4gICAgICAgIDBweCA0cHggNXB4IDBweCAjMDAwMDAwMjQsIDBweCAxcHggMTBweCAwcHggIzAwMDAwMDFmO1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItY29udGFpbmVyLXRvdWNoLWVsZXZhdGlvbi1zaGFkb3c6IDBweCAxMXB4IDE1cHggLTdweFxuICAgICAgICAgICAgIzAwMDMsXG4gICAgICAgIDBweCAyNHB4IDM4cHggM3B4ICMwMDAwMDAyNCwgMHB4IDlweCA0NnB4IDhweCAjMDAwMDAwMWY7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLXNlbGVjdGVkLXN0YXRlLXRleHQtY29sb3I6ICNmZmY7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLXNlbGVjdGVkLXN0YXRlLWJhY2tncm91bmQtY29sb3I6ICMwMDQ0OTQ7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLXNlbGVjdGVkLWRpc2FibGVkLXN0YXRlLWJhY2tncm91bmQtY29sb3I6ICMwMDQ0OTQ2NjtcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWRhdGUtdG9kYXktc2VsZWN0ZWQtc3RhdGUtb3V0bGluZS1jb2xvcjogI2ZmZjtcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWRhdGUtZm9jdXMtc3RhdGUtYmFja2dyb3VuZC1jb2xvcjogIzAwNDQ5NDRkO1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItZGF0ZS1ob3Zlci1zdGF0ZS1iYWNrZ3JvdW5kLWNvbG9yOiAjMDA0NDk0NGQ7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci10b2dnbGUtYWN0aXZlLXN0YXRlLWljb24tY29sb3I6ICMwMDQ0OTQ7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLWluLXJhbmdlLXN0YXRlLWJhY2tncm91bmQtY29sb3I6ICMwMDQ0OTQzMztcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWRhdGUtaW4tY29tcGFyaXNvbi1yYW5nZS1zdGF0ZS1iYWNrZ3JvdW5kLWNvbG9yOiAjZjlhYjAwMzM7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLWluLW92ZXJsYXAtcmFuZ2Utc3RhdGUtYmFja2dyb3VuZC1jb2xvcjogI2E4ZGFiNTtcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWRhdGUtaW4tb3ZlcmxhcC1yYW5nZS1zZWxlY3RlZC1zdGF0ZS1iYWNrZ3JvdW5kLWNvbG9yOiAjNDZhMzVlO1xuICAgIC0tbWF0LWRhdGVwaWNrZXItdG9nZ2xlLWljb24tY29sb3I6ICMwMDAwMDA4YTtcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWJvZHktbGFiZWwtdGV4dC1jb2xvcjogIzAwMDAwMDhhO1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItcGVyaW9kLWJ1dHRvbi10ZXh0LWNvbG9yOiAjMDAwO1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItcGVyaW9kLWJ1dHRvbi1pY29uLWNvbG9yOiAjMDAwMDAwOGE7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1uYXZpZ2F0aW9uLWJ1dHRvbi1pY29uLWNvbG9yOiAjMDAwMDAwOGE7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1oZWFkZXItZGl2aWRlci1jb2xvcjogIzAwMDAwMDFmO1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItaGVhZGVyLXRleHQtY29sb3I6ICMwMDAwMDA4YTtcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWRhdGUtdG9kYXktb3V0bGluZS1jb2xvcjogIzAwMDAwMDYxO1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItZGF0ZS10b2RheS1kaXNhYmxlZC1zdGF0ZS1vdXRsaW5lLWNvbG9yOiAjMDAwMDAwMmU7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLXRleHQtY29sb3I6ICMwMDAwMDBkZTtcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWRhdGUtb3V0bGluZS1jb2xvcjogIzAwMDA7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLWRpc2FibGVkLXN0YXRlLXRleHQtY29sb3I6ICMwMDAwMDA2MTtcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWRhdGUtcHJldmlldy1zdGF0ZS1vdXRsaW5lLWNvbG9yOiAjMDAwMDAwM2Q7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1yYW5nZS1pbnB1dC1zZXBhcmF0b3ItY29sb3I6ICMwMDAwMDBkZTtcbiAgICAtLW1hdC1kYXRlcGlja2VyLXJhbmdlLWlucHV0LWRpc2FibGVkLXN0YXRlLXNlcGFyYXRvci1jb2xvcjogIzAwMDAwMDYxO1xuICAgIC0tbWF0LWRhdGVwaWNrZXItcmFuZ2UtaW5wdXQtZGlzYWJsZWQtc3RhdGUtdGV4dC1jb2xvcjogIzAwMDAwMDYxO1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItY29udGFpbmVyLWJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1jb250YWluZXItdGV4dC1jb2xvcjogIzAwMDAwMGRlO1xufVxuLm1hdC1kYXRlcGlja2VyLWNvbnRlbnQubWF0LWFjY2VudCB7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLXNlbGVjdGVkLXN0YXRlLXRleHQtY29sb3I6ICM5OTk7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLXNlbGVjdGVkLXN0YXRlLWJhY2tncm91bmQtY29sb3I6ICNmZmZjZjQ7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLXNlbGVjdGVkLWRpc2FibGVkLXN0YXRlLWJhY2tncm91bmQtY29sb3I6ICNmZmZjZjQ2NjtcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWRhdGUtdG9kYXktc2VsZWN0ZWQtc3RhdGUtb3V0bGluZS1jb2xvcjogIzk5OTtcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWRhdGUtZm9jdXMtc3RhdGUtYmFja2dyb3VuZC1jb2xvcjogI2ZmZmNmNDRkO1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItZGF0ZS1ob3Zlci1zdGF0ZS1iYWNrZ3JvdW5kLWNvbG9yOiAjZmZmY2Y0NGQ7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLWluLXJhbmdlLXN0YXRlLWJhY2tncm91bmQtY29sb3I6ICNmZmZjZjQzMztcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWRhdGUtaW4tY29tcGFyaXNvbi1yYW5nZS1zdGF0ZS1iYWNrZ3JvdW5kLWNvbG9yOiAjZjlhYjAwMzM7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLWluLW92ZXJsYXAtcmFuZ2Utc3RhdGUtYmFja2dyb3VuZC1jb2xvcjogI2E4ZGFiNTtcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWRhdGUtaW4tb3ZlcmxhcC1yYW5nZS1zZWxlY3RlZC1zdGF0ZS1iYWNrZ3JvdW5kLWNvbG9yOiAjNDZhMzVlO1xufVxuLm1hdC1kYXRlcGlja2VyLWNvbnRlbnQubWF0LXdhcm4ge1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItZGF0ZS1zZWxlY3RlZC1zdGF0ZS10ZXh0LWNvbG9yOiAjZmZmO1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItZGF0ZS1zZWxlY3RlZC1zdGF0ZS1iYWNrZ3JvdW5kLWNvbG9yOiAjZjQ0MzM2O1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItZGF0ZS1zZWxlY3RlZC1kaXNhYmxlZC1zdGF0ZS1iYWNrZ3JvdW5kLWNvbG9yOiAjZjQ0MzM2NjY7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLXRvZGF5LXNlbGVjdGVkLXN0YXRlLW91dGxpbmUtY29sb3I6ICNmZmY7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLWZvY3VzLXN0YXRlLWJhY2tncm91bmQtY29sb3I6ICNmNDQzMzY0ZDtcbiAgICAtLW1hdC1kYXRlcGlja2VyLWNhbGVuZGFyLWRhdGUtaG92ZXItc3RhdGUtYmFja2dyb3VuZC1jb2xvcjogI2Y0NDMzNjRkO1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItZGF0ZS1pbi1yYW5nZS1zdGF0ZS1iYWNrZ3JvdW5kLWNvbG9yOiAjZjQ0MzM2MzM7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLWluLWNvbXBhcmlzb24tcmFuZ2Utc3RhdGUtYmFja2dyb3VuZC1jb2xvcjogI2Y5YWIwMDMzO1xuICAgIC0tbWF0LWRhdGVwaWNrZXItY2FsZW5kYXItZGF0ZS1pbi1vdmVybGFwLXJhbmdlLXN0YXRlLWJhY2tncm91bmQtY29sb3I6ICNhOGRhYjU7XG4gICAgLS1tYXQtZGF0ZXBpY2tlci1jYWxlbmRhci1kYXRlLWluLW92ZXJsYXAtcmFuZ2Utc2VsZWN0ZWQtc3RhdGUtYmFja2dyb3VuZC1jb2xvcjogIzQ2YTM1ZTtcbn1cbi5tYXQtZGF0ZXBpY2tlci10b2dnbGUtYWN0aXZlLm1hdC1hY2NlbnQge1xuICAgIC0tbWF0LWRhdGVwaWNrZXItdG9nZ2xlLWFjdGl2ZS1zdGF0ZS1pY29uLWNvbG9yOiAjZmZmY2Y0O1xufVxuLm1hdC1kYXRlcGlja2VyLXRvZ2dsZS1hY3RpdmUubWF0LXdhcm4ge1xuICAgIC0tbWF0LWRhdGVwaWNrZXItdG9nZ2xlLWFjdGl2ZS1zdGF0ZS1pY29uLWNvbG9yOiAjZjQ0MzM2O1xufVxuLm1hdC1jYWxlbmRhci1jb250cm9scyB7XG4gICAgLS1tYXQtaWNvbi1idXR0b24tdG91Y2gtdGFyZ2V0LWRpc3BsYXk6IG5vbmU7XG59XG4ubWF0LWNhbGVuZGFyLWNvbnRyb2xzIC5tYXQtbWRjLWljb24tYnV0dG9uLm1hdC1tZGMtYnV0dG9uLWJhc2Uge1xuICAgIC0tbWRjLWljb24tYnV0dG9uLXN0YXRlLWxheWVyLXNpemU6IDQwcHg7XG4gICAgaGVpZ2h0OiB2YXIoLS1tZGMtaWNvbi1idXR0b24tc3RhdGUtbGF5ZXItc2l6ZSk7XG4gICAgcGFkZGluZzogOHB4O1xuICAgIHdpZHRoOiB2YXIoLS1tZGMtaWNvbi1idXR0b24tc3RhdGUtbGF5ZXItc2l6ZSk7XG59XG4iLCIubWF0LWNhbGVuZGFyIHtcbiAgICBmb250LXNpemU6IHNtYWxsICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IHYoZXVpLWYtZmFtaWx5KSAhaW1wb3J0YW50O1xuXG4gICAgJi5tYXQtY2FsZW5kYXIteWVhciB7XG4gICAgICAgIC5tYXQtY2FsZW5kYXItcGVyaW9kLWJ1dHRvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gTUFURVJJQUwgRHJhZyAmIERyb3Agb3ZlcnJpZGVzXG4uY2RrLWRyYWctaGFuZGxlIHtcbiAgICBjdXJzb3I6IG1vdmUgIWltcG9ydGFudDtcbn1cblxuLmNkay1kcm9wLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuXG4gICAgJjpub3QoLmNkay1kcm9wLWxpc3QtZGlzYWJsZWQpIHtcbiAgICAgICAgbWluLWhlaWdodDogdihldWktcy14bCk7XG4gICAgfVxufVxuXG4vLyBBbmltYXRlIGl0ZW1zIGFzIHRoZXkncmUgYmVpbmcgc29ydGVkXG4uY2RrLWRyb3AtbGlzdC1kcmFnZ2luZyAuY2RrLWRyYWcge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbn1cblxuLy8gQW5pbWF0ZSBhbiBpdGVtIHRoYXQgaGFzIGJlZW4gZHJvcHBlZFxuLmNkay1kcmFnLWFuaW1hdGluZyB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xufVxuXG4vLyBHcmFiYmVkIGVsZW1lbnRcbi5jZGstZHJhZy1wcmV2aWV3IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgIC8vIHYoZXVpLWMtd2hpdGUpO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY3Vyc29yOiBncmFiICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogdGFibGU7ICAgICAvLyB0cmljayB0byBnZXQgdGhlIGZ1bGwgcm93IHdpZHRoXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jZGstZHJhZy1kcmFnZ2luZyB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLmNkay1kcmFnLXBsYWNlaG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAwLjM1O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIG91dGxpbmU6IDJweCBkYXNoZWQgdihldWktYy1uZXV0cmFsLWxpZ2h0ZXIpO1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICAgIH1cbn1cbiIsIi8vIERpc2FibGUgZ2xvYmFsIHNjcm9sbGJhcnMgKHVzZWQgaW4gZnVsbCBzY3JlZW4gZXVpLWRpYWxvZyBmb3IgZXhhbXBsZSlcbi5jZGstZ2xvYmFsLXNjcm9sbGJsb2NrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZTsgICAgIC8vIE1hdGVyaWFsIGRlZmF1bHQ6IHNjcm9sbFxuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGV1aS1zY3JvbGxiYXJzO1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbn1cbkBpbmNsdWRlIG1lZGlhKCRldWktYmtwLW1vYmlsZSkge1xuICAgIC5jZGstZ2xvYmFsLXNjcm9sbGJsb2NrIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgQGluY2x1ZGUgZXVpLXNjcm9sbGJhcnM7XG4gICAgfVxufVxuIiwiQG1peGluIGV1aS1zY3JvbGxiYXJzKCAkc2l6ZTogMTBweCwgJGZvcmVncm91bmQtY29sb3I6IHYoZXVpLWMtbmV1dHJhbC1saWdodGVzdCksICRiYWNrZ3JvdW5kLWNvbG9yOiB2KGV1aS1jLW5ldXRyYWwtYmctbGlnaHQpLCAkYm9yZGVyLXJhZGl1czogNXJlbSwgJHN0YXRlOiBhY3RpdmUgKSB7XG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgICAgICBoZWlnaHQ6ICRzaXplOyAgICAgIC8vIGhvcml6b250YWwgc2Nyb2xsXG4gICAgICAgIHdpZHRoOiAkc2l6ZTsgICAgICAgLy8gdmVydGljYWwgc2Nyb2xsXG4gICAgICAgIEBpZiAoJHN0YXRlID09IGFjdGl2ZSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUaGlzIGlzIHRoZSBzY3JvbGxpbmcgYmFyXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICBAaWYgKCRzdGF0ZSA9PSBhY3RpdmUpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHYoZXVpLWMtbmV1dHJhbC1saWdodGVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRoaXMgaXMgdGhlIHNjcm9sbCBjb250YWluZXJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICAgIEBpZiAoJHN0YXRlID09IGFjdGl2ZSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuQG1peGluIGV1aS1zY3JvbGxiYXJzLWluYWN0aXZlKCRzaXplOiA4cHgpIHtcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgICAgICBoZWlnaHQ6ICRzaXplOyAgICAgIC8vIGhvcml6b250YWwgc2Nyb2xsXG4gICAgICAgIHdpZHRoOiAkc2l6ZTsgICAgICAgLy8gdmVydGljYWwgc2Nyb2xsXG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbiIsIiRkZWZhdWx0LWZlYXR1cmU6IFwibWluLXdpZHRoXCI7XG5AbWl4aW4gbWVkaWEoJHF1ZXJ5OiAkZmVhdHVyZSAkdmFsdWUgJGNvbHVtbnMpIHtcbiAgICBAaWYgbGVuZ3RoKCRxdWVyeSkgPT0gMSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICgkZGVmYXVsdC1mZWF0dXJlOiBudGgoJHF1ZXJ5LCAxKSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICAkbG9vcC10bzogbGVuZ3RoKCRxdWVyeSk7XG4gICAgICAgICRtZWRpYS1xdWVyeTogXCJzY3JlZW4gYW5kIFwiO1xuICAgICAgICBAaWYgaXMtbm90KGlzLWV2ZW4obGVuZ3RoKCRxdWVyeSkpKSB7XG4gICAgICAgICAgICAkbG9vcC10bzogJGxvb3AtdG8gLSAxO1xuICAgICAgICB9XG4gICAgICAgICRpOiAxO1xuICAgICAgICBAd2hpbGUgJGkgPD0kbG9vcC10byB7XG4gICAgICAgICAgICAkbWVkaWEtcXVlcnk6ICRtZWRpYS1xdWVyeSArIFwiKFwiICsgbnRoKCRxdWVyeSwgJGkpICsgXCI6IFwiICsgbnRoKCRxdWVyeSwgJGkgKyAxKSArIFwiKSBcIjtcbiAgICAgICAgICAgIEBpZiAoJGkgKyAxKSAhPSAkbG9vcC10byB7XG4gICAgICAgICAgICAgICAgJG1lZGlhLXF1ZXJ5OiAkbWVkaWEtcXVlcnkgKyBcImFuZCBcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICRpOiAkaSsyO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRtZWRpYS1xdWVyeX0ge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuY2RrLW92ZXJsYXktY29udGFpbmVyIHtcbiAgICB6LWluZGV4OiB2KGV1aS16aS1jZGstb3ZlcmxheS1jb250YWluZXIpOyAgIC8vIE1EOiAxMDAwXG5cbiAgICAubWF0LW1lbnUtcGFuZWwge1xuICAgICAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHYoZXVpLXMtbCk7XG4gICAgICAgIEBpbmNsdWRlIGV1aS1zY3JvbGxiYXJzO1xuICAgIH1cblxuICAgIC5tYXQtYXV0b2NvbXBsZXRlLXBhbmVsIHtcbiAgICAgICAgQGluY2x1ZGUgZXVpLXNjcm9sbGJhcnM7XG4gICAgfVxufVxuIiwiQGluY2x1ZGUgbWVkaWEoJGV1aS1ia3AtbW9iaWxlKSB7XG4gICAgLmNkay1vdmVybGF5LWNvbnRhaW5lciB7XG4gICAgICAgIGhlaWdodDogMTAwdmg7ICAvLyBGYWxsYmFja1xuICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tZXVpLWFwcC12aCwgMXZoKSAqIDEwMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgfVxufVxuIiwiLmNkay1vdmVybGF5LXBhbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHYoZXVpLWMtd2hpdGUpO1xuICAgIHotaW5kZXg6IHYoZXVpLXppLWNkay1vdmVybGF5LXBhbmUpOyAgLy8gRHluYW1pY2FsbHkgY2hhbmdlcyBiYXNlZCBvbiBDREsgY29udGV4dFxufVxuIiwiLy8gSGlkZSBicm93c2VyIGFnZW50IGRlZmF1bHQgKGJsYWNrKSBjb2xvclxuOmZvY3VzLFxuOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IG5vbmU7XG59XG5cbi8vIFJlc29sdmVzIGlzc3VlIGluIEZpcmVmb3ggd2l0aCBleHRyYSBib3JkZXJzXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7ICAgLy8gRGVmYXVsdDogYnV0dG9uXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbn1cbiIsImh0bWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmb250LXNpemU6IHZhcigtLWV1aS1mLXNpemUtYmFzZSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWV1aS1iYXNlLWxpbmUtaGVpZ2h0KTtcbn1cbiIsImJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWV1aS1jLWJnKTtcbiAgICBjb2xvcjogdmFyKC0tZXVpLWMtdGV4dCk7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWV1aS1mLWZhbWlseSk7XG4gICAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYSc7XG4gICAgZm9udC1zaXplOiB2YXIoLS1ldWktZi1zaXplLWJhc2UpO1xuICAgIC1tb3otZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tZXVpLWJhc2UtbGluZS1oZWlnaHQpO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuIiwiLy8gTWFrZSB2aWV3cG9ydCByZXNwb25zaXZlXG4vL1xuLy8gQHZpZXdwb3J0IGlzIG5lZWRlZCBiZWNhdXNlIElFIDEwKyBkb2Vzbid0IGhvbm9yIDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiPiBpblxuLy8gc29tZSBjYXNlcy4gU2VlIGh0dHBzOi8vdGlta2FkbGVjLmNvbS8yMDEyLzEwL2llMTAtc25hcC1tb2RlLWFuZC1yZXNwb25zaXZlLWRlc2lnbi8uXG4vLyBFdmVudHVhbGx5IEB2aWV3cG9ydCB3aWxsIHJlcGxhY2UgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCI+LlxuLy9cbi8vIEhvd2V2ZXIsIGBkZXZpY2Utd2lkdGhgIGlzIGJyb2tlbiBvbiBJRSAxMCBvbiBXaW5kb3dzIChQaG9uZSkgOCxcbi8vIChzZWUgaHR0cHM6Ly90aW1rYWRsZWMuY29tLzIwMTMvMDEvd2luZG93cy1waG9uZS04LWFuZC1kZXZpY2Utd2lkdGgvIGFuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwNDk3KVxuLy8gYW5kIHRoZSBmaXggZm9yIHRoYXQgaW52b2x2ZXMgYSBzbmlwcGV0IG9mIEphdmFTY3JpcHQgdG8gc25pZmYgdGhlIHVzZXIgYWdlbnRcbi8vIGFuZCBhcHBseSBzb21lIGNvbmRpdGlvbmFsIENTUy5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9nZXRib290c3RyYXAuY29tL2dldHRpbmctc3RhcnRlZC8jc3VwcG9ydC1pZTEwLXdpZHRoIGZvciB0aGUgcmVsZXZhbnQgaGFjay5cbi8vXG4vLyBXcmFwIGBAdmlld3BvcnRgIHdpdGggYEBhdC1yb290YCBmb3Igd2hlbiBmb2xrcyBkbyBhIG5lc3RlZCBpbXBvcnQgKGUuZy4sXG4vLyBgLmNsYXNzLW5hbWUgeyBAaW1wb3J0IFwiYm9vdHN0cmFwXCI7IH1gKS5cbkBhdC1yb290IHtcbiAgICBALW1zLXZpZXdwb3J0IHtcbiAgICAgICAgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAjQk9YLVNJWklOR1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBNb3JlIHNlbnNpYmxlIGRlZmF1bHQgYm94LXNpemluZzpcbiAqIGNzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZVxuICovXG5cbmh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbioge1xuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlcixcbiAgICAmIHtcbiAgICAgICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgICB9XG59XG5cbi8vIEF2b2lkIDMwMG1zIGNsaWNrIGRlbGF5IG9uIHRvdWNoIGRldmljZXMgdGhhdCBzdXBwb3J0IHRoZSBgdG91Y2gtYWN0aW9uYCBDU1MgcHJvcGVydHkuXG4vL1xuLy8gSW4gcGFydGljdWxhciwgdW5saWtlIG1vc3Qgb3RoZXIgYnJvd3NlcnMsIElFMTErRWRnZSBvbiBXaW5kb3dzIDEwIG9uIHRvdWNoIGRldmljZXMgYW5kIElFIE1vYmlsZSAxMC0xMVxuLy8gRE9OJ1QgcmVtb3ZlIHRoZSBjbGljayBkZWxheSB3aGVuIGA8bWV0YSBuYW1lPVwidmlld3BvcnRcIiBjb250ZW50PVwid2lkdGg9ZGV2aWNlLXdpZHRoXCI+YCBpcyBwcmVzZW50LlxuLy8gSG93ZXZlciwgdGhleSBETyBzdXBwb3J0IHJlbW92aW5nIHRoZSBjbGljayBkZWxheSB2aWEgYHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uYC5cbi8vIFNlZTpcbi8vICogaHR0cHM6Ly92NC1hbHBoYS5nZXRib290c3RyYXAuY29tL2NvbnRlbnQvcmVib290LyNjbGljay1kZWxheS1vcHRpbWl6YXRpb24tZm9yLXRvdWNoXG4vLyAqIGh0dHA6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtdG91Y2gtYWN0aW9uXG4vLyAqIGh0dHBzOi8vcGF0cmlja2hsYXVrZS5naXRodWIuaW8vdG91Y2gvdGVzdHMvcmVzdWx0cy8jc3VwcHJlc3NpbmctMzAwbXMtZGVsYXlcblxuYSxcbmFyZWEsXG5idXR0b24sXG5bcm9sZT1cImJ1dHRvblwiXSxcbmlucHV0LFxubGFiZWwsXG5zZWxlY3QsXG5zdW1tYXJ5LFxudGV4dGFyZWEge1xuICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xufVxuXG4vLyBBbHdheXMgaGlkZSBhbiBlbGVtZW50IHdpdGggdGhlIGBoaWRkZW5gIEhUTUwgYXR0cmlidXRlIChmcm9tIFB1cmVDU1MpLlxuW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLy8gTk9STUFMSVpFIHJlc2V0IGFsaWduZW1lbnRzIChzZWUgMDAtcmVzZXQpXG5wLFxubGFiZWwsXG5ibG9ja3F1b3RlLFxuYWJicixcbm1hcmssXG5kZWwge1xuICAgIGZvbnQtc2l6ZTogdihldWktZi1zaXplLWJhc2UpO1xufVxuXG5iLCBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG59XG4iLCJ0YWJsZS5ldWktdGFibGUtZGVmYXVsdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBjb2xvcjogdihldWktYy10ZXh0KTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLy8gQWRkIGRlZmF1bHQgYm9yZGVyc1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdihldWktYy1uZXV0cmFsLWJnLWxpZ2h0KTtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE92ZXJhbGwgc2V0dGluZ3MgKGRlZmF1bHQpXG4gICAgdGhlYWQgPiB0ciA+IHRoLFxuICAgIHRib2R5ID4gdHIgPiB0ZCxcbiAgICB0Zm9vdCA+IHRyID4gdGQge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cblxuICAgIHRyID4gdGgsXG4gICAgdHIgPiB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IHYoZXVpLXMtcyk7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgdGhlYWQge1xuICAgICAgICB0aCB7XG4gICAgICAgICAgICBjb2xvcjogdihldWktYy10ZXh0KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdihldWktZi1zaXplLWJhc2UpO1xuICAgICAgICAgICAgcGFkZGluZzogdihldWktcy1tKSB2KGV1aS1zLXMpO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIGZvbnQ6IHZhcigtLWV1aS1mLW0tYm9sZCk7XG4gICAgICAgIH1cblxuICAgICAgICB0ciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2KGV1aS1jLW5ldXRyYWwtYmcpO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFN0cmlwZWQgJiBob3ZlcmVkIHRhYmxlcyBieSBkZWZhdWx0IChVWClcbiAgICB0Ym9keSB7XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgIC8vIG9wdGlvbmFsIC0gZW5hYmxlIGlPUyBtb21lbnR1bSBzY3JvbGxpbmdcblxuICAgICAgICB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHYoZXVpLWMtYmcpO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2KGV1aS1jLXByaW1hcnktYmcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHYoZXVpLWMtcHJpbWFyeS1saWdodGVzdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdHI6bnRoLW9mLXR5cGUoZXZlbikge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdihldWktYy1uZXV0cmFsLWJnLWxpZ2h0KTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdihldWktYy1wcmltYXJ5LWJnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2KGV1aS1jLXByaW1hcnktbGlnaHRlc3QpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRmb290IHtcbiAgICAgICAgdHIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdihldWktYy1uZXV0cmFsLWJnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHYoZXVpLWMtYmcwKTtcbiAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgIH1cblxuICAgIC8vIENvbXBhY3QgdGFibGVcbiAgICAmLS1jb21wYWN0IHtcbiAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHYoZXVpLXMteHMpIHYoZXVpLXMtcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0ciA+IHRkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHYoZXVpLXMtMnhzKSB2KGV1aS1zLXMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSB0YWJsZVxuICAgICYtLXJlc3BvbnNpdmUge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJi0tYm9yZGVyZWQge1xuICAgICAgICAgICAgYm9yZGVyOiAwOyAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5vV3JhcCB0YWJsZSBjb250ZW50IChhbHNvIGRpc2FibGVzIGVsbGlwc2lzKVxuICAgICYtLW5vd3JhcCB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgdGhlYWQgPiB0ciA+IHRoLFxuICAgICAgICB0Ym9keSA+IHRyID4gdGQsXG4gICAgICAgIHRmb290ID4gdHIgPiB0ZCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2VudGVyZWQgdGFibGVcbiAgICAmLS1jZW50ZXJlZCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gTWlkZGxlIGFsaWduZWQgY2VsbHMgY29udGVudFxuICAgICYtLWFsaWduLW1pZGRsZSB7XG4gICAgICAgIHRoZWFkID4gdHIgPiB0aCxcbiAgICAgICAgdGJvZHkgPiB0ciA+IHRkLFxuICAgICAgICB0Zm9vdCA+IHRyID4gdGQge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIFNldHMgdGhlIGxheW91dCBvZiB0aGUgZXVpQ2xlYXJhYmxlIGRpcmVjdGl2ZVxuLmV1aS1jbGVhcmFibGUtd3JhcHBlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC5ldWktaW5wdXQtdGV4dC0tY2xlYXJhYmxlLWljb24ge1xuICAgICAgICBib3R0b206IGNhbGMoI3t2KGV1aS1zLXMpfSAtIDJweCk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogdihldWktcy1zKTtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIHotaW5kZXg6IHYoZXVpLXppLWNsZWFyYWJsZS1pY29uKTtcbiAgICAgICAgQGluY2x1ZGUgZXVpLWFjY2Vzc2libGUtZm9jdXMoKTtcblxuICAgICAgICA+IHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiB2KGV1aS1jLW5ldXRyYWwtbGlnaHRlcik7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGZpbGw6IHYoZXVpLWMtZGFuZ2VyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIiRvdXRsaW5lLW9mZnNldDogLTJweDtcbiRvdXRsaW5lLXNpemU6IDJweDtcblxuLy8gQ2FsbCB0aGlzIG1peGluIHRvIGVuZm9yY2UgdGhlIGFjY2Vzc2liaWxpdHkgdmlzdWFscyB3aGVuIG9uIGZvY3VzL2FjdGl2ZVxuQG1peGluIGV1aS1hY2Nlc3NpYmxlLWZvY3VzKCRvZmZzZXQ6ICRvdXRsaW5lLW9mZnNldCwgJHNpemU6ICRvdXRsaW5lLXNpemUpIHtcbiAgICAmOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XG4gICAgICAgIG91dGxpbmU6ICRzaXplIHNvbGlkIHZhcigtLWV1aS1jLWZvY3VzKSAhaW1wb3J0YW50O1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogJG9mZnNldCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cblxuICAgICY6Zm9jdXMtdmlzaWJsZTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgICBvdXRsaW5lOiAkc2l6ZSBzb2xpZCB2YXIoLS1ldWktYy1mb2N1cy12aXNpYmxlKSAhaW1wb3J0YW50O1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogJG9mZnNldCAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC8vIEZvcmNlZCBmb2N1c2FibGUgZWxlbWVudFxuICAgIFt0YWJpbmRleD1cIjBcIl0ge1xuICAgICAgICAvLyAmOmFjdGl2ZTpub3QoW3JlYWRvbmx5XSksXG4gICAgICAgICY6Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcbiAgICAgICAgICAgIG91dGxpbmU6ICRzaXplIHNvbGlkIHZhcigtLWV1aS1jLWZvY3VzLXZpc2libGUpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogJG9mZnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGV1aS1hY2Nlc3NpYmxlLWZvY3VzLWJvcmRlcigpIHtcbiAgICBib3JkZXItbGVmdDogdihldWktcy0yeHMpIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgJjpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgICBib3JkZXI6IHZhcigtLWV1aS1zLTJ4cykgc29saWQgdmFyKC0tZXVpLWMtZm9jdXMtdmlzaWJsZSkgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG59XG4iLCIuZXVpLWlucHV0LW1heGxlbmd0aC13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuZXVpLWlucHV0LW1heGxlbmd0aCB7XG4gICAgICAgIGZvbnQ6IHZhcigtLWV1aS1mLXhzKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdihldWktYy1uZXV0cmFsLWJnKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdihldWktYy1uZXV0cmFsLWxpZ2h0ZXIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2KGV1aS1ici1tKTtcbiAgICAgICAgY29sb3I6IHYoZXVpLWMtdGV4dCk7XG4gICAgICAgIHBhZGRpbmc6IDAgdihldWktcy0yeHMpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiBjYWxjKC0xICogI3t2KGV1aS1zLXhzKX0pO1xuICAgICAgICB0b3A6IGNhbGMoLTEgKiAje3YoZXVpLXMteHMpfSk7XG4gICAgICAgIHotaW5kZXg6IHYoZXVpLXppLWlucHV0LW1heGxlbmd0aCk7XG5cbiAgICAgICAgJi0taW52YWxpZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2KGV1aS1jLXdhcm5pbmcpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2KGV1aS1jLXdhcm5pbmcpO1xuICAgICAgICAgICAgY29sb3I6IHYoZXVpLWMtd2hpdGUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gSUUxMCsgU1ZHJ3MgYXNwZWN0IHJhdGlvcyBhbmQgc2l6ZXMgZml4XG5AbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAgIGltZ1tzcmMkPVwiLnN2Z1wiXSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cbkBtZWRpYSBzY3JlZW4ge1xuICAgIC8vIElFIEZpeDogQmljdWJpYyBTY2FsaW5nIGZvciBJbWFnZXMgJiBmdWxsIHdpZHRoIGJhY2tncm91bmQgKEVDIGxvZ28pXG4gICAgaW1nIHtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgICAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICAgIH1cbn1cbiIsIi8vIENPT0tJRSBDT05TRU5UXG4uY29va2llLWNvbnNlbnQtYmFubmVyIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIHRvcDogdihldWktcy1tKSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpICFpbXBvcnRhbnQ7XG4gICAgei1pbmRleDogdihldWktemktbWF4KSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IHYoZXVpLXNoLTI0KSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHYoZXVpLWMtcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKGV1aS1jLXdoaXRlKSAhaW1wb3J0YW50O1xufVxuIiwiI2xvYWRlci13cmFwcGVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDEwMDA7XG5cbiAgICAjbG9hZGVyIHtcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4gMnMgbGluZWFyIGluZmluaXRlOyAvKiBDaHJvbWUsIE9wZXJhIDE1KywgU2FmYXJpIDUrICovXG4gICAgICAgIGFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7IC8qIENocm9tZSwgRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgICAgICAgYW5pbWF0aW9uOiBob3VyZ2xhc3MgNXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICBib3JkZXI6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdihldWktYy13YXJuaW5nKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luOiAtMTAwcHggMCAwIC0xMDBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7IC8qIENocm9tZSwgT3BlcmEgMTUrLCBTYWZhcmkgNSsgKi9cbiAgICAgICAgICAgIGFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7IC8qIENocm9tZSwgRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgICAgICAgICAgIGFuaW1hdGlvbjogaG91cmdsYXNzIDRzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHYoZXVpLWMtZGFuZ2VyKTtcbiAgICAgICAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGxlZnQ6IDVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTsgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSA1KyAqL1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTsgLyogQ2hyb21lLCBGaXJlZm94IDE2KywgSUUgMTArLCBPcGVyYSAqL1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBob3VyZ2xhc3MgM3MgbGluZWFyIGluZmluaXRlO1xuICAgICAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdihldWktYy1wcmltYXJ5KTtcbiAgICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcbiAgICAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuQGtleWZyYW1lcyBzcGluIHtcbiAgICAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGhvdXJnbGFzcyAge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MDBkZWcpO1xuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MDBkZWcpO1xuICAgIH1cbn1cbkBrZXlmcmFtZXMgaG91cmdsYXNzIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICB9XG4gICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTAwZGVnKTtcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODAwZGVnKTtcbiAgICB9XG59XG4iXX0= */",":root {\n --eui-bc-transparent: transparent;\n\n // COLOR SHADES\n @each $color, $shades in $eui-base-tokens-colors {\n @each $shade, $value in $shades {\n --eui-bc-#{$color + '-' + $shade}: #{$value};\n --eui-bc-#{$color + '-' + $shade}-contrast: #{getContrast($value)};\n }\n }\n}\n",":root {\n --eui-c-white: var(--eui-bc-neutral-0);\n --eui-c-black: var(--eui-bc-neutral-160);\n\n --eui-c-bg: var(--eui-bc-neutral-2);\n --eui-c-text: var(--eui-bc-neutral-100);\n\n --eui-c-focus-visible: var(--eui-bc-primary-100);\n --eui-c-focus: var(--eui-bc-primary-40);\n\n --eui-c-hover: var(--eui-bc-primary-5);\n --eui-c-hover-disabled: var(--eui-bc-neutral-10);\n --eui-c-active: var(--eui-bc-primary-10);\n --eui-c-disabled: var(--eui-bc-neutral-60);\n\n @each $color, $shades in $eui-base-context-colors {\n @each $shade, $value in $shades {\n $base-color: $color;\n\n @if $shade == base {\n --eui-c-#{$color}: var(--eui-bc-#{$base-color + '-' + $value});\n --eui-c-#{$color}-contrast: var(--eui-bc-#{$base-color + '-' + $value}-contrast);\n } @else {\n --eui-c-#{$color + '-' + $shade}: var(--eui-bc-#{$base-color + '-' + $value});\n --eui-c-#{$color + '-' + $shade}-contrast: var(--eui-bc-#{$base-color + '-' + $value}-contrast);\n }\n }\n }\n}\n",":root {\n @each $br, $value in $eui-base-tokens-border-radius {\n --eui-bbr-#{$br}: #{$value};\n }\n}\n",":root {\n @each $spacing, $value in $eui-base-context-spacings {\n --eui-s-#{$spacing}: var(--eui-bs-#{$spacing});\n }\n}\n",":root {\n @each $size, $def in $eui-base-tokens-fonts {\n --eui-bf-#{$size}: #{$def};\n }\n\n @each $size, $def in $eui-base-tokens-font-sizes {\n --eui-bf-size-#{$size}: #{$def};\n }\n}\n",":root {\n // FONTS DEFINITIONS\n --eui-f-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;\n // --eui-f-family: 'Source Sans Pro', sans-serif; <link href=\"https://fonts.cdnfonts.com/css/source-sans-pro\" rel=\"stylesheet\">\n // --eui-f-family: 'Roboto', sans-serif; <link href=\"https://fonts.cdnfonts.com/css/roboto\" rel=\"stylesheet\">\n --eui-f-family-monospace: 'Consolas', 'Liberation Mono', 'Courier New', monospace;\n\n // BASE FONT SIZE\n --eui-f-size-base: 16px;\n\n // FONTS VARIANTS\n @each $font, $def in $eui-base-context-fonts {\n --eui-f-#{$font}: var(--eui-bf-#{$def});\n }\n\n // FONTS VARIANTS\n @each $font, $def in $eui-base-context-font-sizes {\n --eui-f-size-#{$font}: var(--eui-bf-size-#{$def});\n }\n\n // ALIASES\n --eui-f: var(--eui-bf-m);\n --eui-f-bold: var(--eui-bf-m-b);\n}\n",":root {\n @each $spacing, $value in $eui-base-tokens-spacings {\n --eui-bs-#{$spacing}: #{$value};\n }\n}\n",":root {\n @each $br, $value in $eui-base-context-border-radius {\n --eui-br-#{$br}: var(--eui-bbr-#{$br});\n }\n}\n",":root {\n @each $sh, $value in $eui-base-tokens-shadows {\n --eui-bsh-#{$sh}: #{$value};\n }\n}\n",":root {\n @each $sh, $value in $eui-base-tokens-shadows {\n --eui-sh-#{$sh}: var(--eui-bsh-#{$sh});\n }\n}\n",":root {\n\n // ICON-SIZES\n @each $icon-size, $value in $eui-base-tokens-icon-sizes {\n --eui-bis-#{$icon-size}: #{$value};\n }\n @each $icon-size, $value in $eui-base-tokens-icon-sizes {\n --eui-is-#{$icon-size}: var(--eui-bis-#{$icon-size});\n }\n\n // Z-INDEXES\n @each $idx, $value in $eui-base-tokens-z-indexes {\n --eui-bzi-#{$idx}: #{$value};\n }\n @each $idx, $value in $eui-base-tokens-z-indexes {\n --eui-zi-#{$idx}: var(--eui-bzi-#{$idx});\n }\n}\n",":root {\n --eui-base-line-height: 1.5;\n --eui-base-scale-factor: 1;\n --eui-base-disabled-opacity: 0.5;\n\n --eui-base-border-state-width: var(--eui-s-xs);\n\n --eui-base-border: 1px solid var(--eui-color-grey-lighter);\n --eui-base-border-light: 1px solid var(--eui-color-grey-light);\n --eui-base-border-lighter: 1px solid var(--eui-color-grey-lighter);\n --eui-base-border-lightest: 1px solid var(--eui-color-grey-lightest);\n\n // Animations related\n --eui-base-animation-linear-out-slow-in-timing-function: cubic-bezier(0, 0, 0.2, 1);\n --eui-base-animation-fast-out-slow-in-timing-function: cubic-bezier(0.4, 0, 0.2, 1);\n --eui-base-animation-fast-out-linear-in-timing-function: cubic-bezier(0.4, 0, 1, 1);\n --eui-base-animation-ease-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1); // ease\n --eui-base-animation-ease-in-out-timing-function: ease-in-out;\n\n --eui-base-animation-duration-fast: 0.25s;\n --eui-base-animation-duration-medium: 0.5s;\n --eui-base-animation-duration-slow: 1s;\n --eui-base-animation-duration-base: 500ms;\n --eui-base-animation-duration: var(--eui-base-animation-duration-base);\n\n --eui-base-animation-transition-base: all 0.2s #{var(--eui-base-animation-linear-out-slow-in-timing-function)};\n --eui-base-animation-transition-ease: all 0.2s #{var(--eui-base-animation-ease-timing-function)};\n --eui-base-animation-transition-ease-in-out: all 0.2s #{var(--eui-base-animation-ease-in-out-timing-function)};\n --eui-base-animation-transition-ease-in-out-1s: all 1s #{var(--eui-base-animation-ease-in-out-timing-function)};\n\n --eui-base-animation-delay: 0s;\n --eui-base-animation-direction: normal;\n --eui-base-animation-fill-mode: forwards; // this prevents the animation from restarting\n --eui-base-animation-background-color: var(--eui-c-primary-lighter); // #cfcfdf;\n}\n",":root {\n --eui-internal-icon-checkmark-path: url('#{$eui-assets-base-path}/icons/eui-internals/checkmark.svg');\n --eui-internal-icon-remove-path: url('#{$eui-assets-base-path}/icons/eui-internals/remove.svg');\n --eui-internal-icon-ellipse-path: url('#{$eui-assets-base-path}/icons/eui-internals/ellipse.svg');\n --eui-internal-icon-external-path: url('#{$eui-assets-base-path}/icons/eui-internals/external.svg');\n --eui-internal-icon-chevron-down-path: url('#{$eui-assets-base-path}/icons/eui-internals/chevron-down.svg');\n}\n",":root {\n // eUI APP\n --eui-app-header-height-default: 0px;\n --eui-app-header-height: 0px;\n --eui-app-header-height-active: 90px;\n --eui-app-header-height-shrink: 0px;\n\n --eui-app-breadcrumb-height-default: 0px;\n --eui-app-breadcrumb-height: 0px;\n --eui-app-breadcrumb-height-active: 20px;\n\n --eui-app-top-message-height-default: 0px;\n --eui-app-top-message-height: 0px;\n --eui-app-top-message-height-active: 42px;\n\n --eui-app-toolbar-height-default: 0px;\n --eui-app-toolbar-height: 0px;\n --eui-app-toolbar-height-active: 55px;\n\n --eui-app-sidebar-width-default: 0px;\n --eui-app-sidebar-width: 0px;\n --eui-app-sidebar-width-active: 300px;\n --eui-app-sidebar-width-close-default: 0px;\n --eui-app-sidebar-width-close: 0px;\n --eui-app-sidebar-width-close-active: 64px;\n --eui-app-sidebar-header-height: 0px;\n --eui-app-sidebar-header-height-default: 0px;\n --eui-app-sidebar-header-height-active: 48px;\n --eui-app-sidebar-header-user-profile: 64px;\n --eui-app-sidebar-footer-height: 0px;\n --eui-app-sidebar-footer-height-default: 0px;\n --eui-app-sidebar-footer-height-active: 24px;\n\n // Page Layout\n --eui-page-header-with-subtitle-height: 4rem;\n --eui-page-header-without-subtitle-height: 2rem;\n\n --eui-page-column--size-s: 50px;\n --eui-page-column--size-m: 150px;\n --eui-page-column--size-l: 200px;\n --eui-page-column--size-xl: 250px;\n --eui-page-column--size-xxl: 300px;\n --eui-page-column--size-xxxl: 350px;\n --eui-page-column-footer-height: 3.5rem;\n}\n\n.xs, .sm {\n --eui-app-header-height: 0px;\n}\n",".eui-icon-svg {\n fill: currentColor;\n margin: 0;\n transform: scaleX(1) scaleY(1) rotateZ(0deg);\n transition: transform 300ms ease-in-out;\n display: inline-flex;\n align-items: center;\n}\n\n","// Row\n//\n// Rows contain your columns.\n\n@if $enable-grid-classes {\n .row {\n @include make-row();\n\n > * {\n @include make-col-ready();\n }\n }\n}\n\n@if $enable-cssgrid {\n .grid {\n display: grid;\n grid-template-rows: repeat(var(--#{$variable-prefix}rows, 1), 1fr);\n grid-template-columns: repeat(var(--#{$variable-prefix}columns, #{$grid-columns}), 1fr);\n gap: var(--#{$variable-prefix}gap, #{$grid-gutter-width});\n\n @include make-cssgrid();\n }\n}\n\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n@if $enable-grid-classes {\n @include make-grid-columns();\n}\n","// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n@mixin make-row($gutter: $grid-gutter-width) {\n --#{$variable-prefix}gutter-x: #{$gutter};\n --#{$variable-prefix}gutter-y: 0;\n display: flex;\n flex-wrap: wrap;\n // TODO: Revisit calc order after https://github.com/react-bootstrap/react-bootstrap/issues/6039 is fixed\n margin-top: calc(-1 * var(--#{$variable-prefix}gutter-y)); // stylelint-disable-line function-disallowed-list\n margin-right: calc(-.5 * var(--#{$variable-prefix}gutter-x)); // stylelint-disable-line function-disallowed-list\n margin-left: calc(-.5 * var(--#{$variable-prefix}gutter-x)); // stylelint-disable-line function-disallowed-list\n}\n\n@mixin make-col-ready($gutter: $grid-gutter-width) {\n // Add box sizing if only the grid is loaded\n box-sizing: if(variable-exists(include-column-box-sizing) and $include-column-box-sizing, border-box, null);\n // Prevent columns from becoming too narrow when at smaller grid tiers by\n // always setting `width: 100%;`. This works because we set the width\n // later on to override this initial width.\n flex-shrink: 0;\n width: 100%;\n max-width: 100%; // Prevent `.col-auto`, `.col` (& responsive variants) from breaking out the grid\n padding-right: calc(var(--#{$variable-prefix}gutter-x) * .5); // stylelint-disable-line function-disallowed-list\n padding-left: calc(var(--#{$variable-prefix}gutter-x) * .5); // stylelint-disable-line function-disallowed-list\n margin-top: var(--#{$variable-prefix}gutter-y);\n}\n\n@mixin make-col($size: false, $columns: $grid-columns) {\n @if $size {\n flex: 0 0 auto;\n width: percentage(divide($size, $columns));\n\n } @else {\n flex: 1 1 0;\n max-width: 100%;\n }\n}\n\n@mixin make-col-auto() {\n flex: 0 0 auto;\n width: auto;\n}\n\n@mixin make-col-offset($size, $columns: $grid-columns) {\n $num: divide($size, $columns);\n margin-left: if($num == 0, 0, percentage($num));\n}\n\n// Row columns\n//\n// Specify on a parent element(e.g., .row) to force immediate children into NN\n// numberof columns. Supports wrapping to new lines, but does not do a Masonry\n// style grid.\n@mixin row-cols($count) {\n > * {\n flex: 0 0 auto;\n width: divide(100%, $count);\n }\n}\n\n// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `$grid-columns`.\n\n@mixin make-grid-columns($columns: $grid-columns, $gutter: $grid-gutter-width, $breakpoints: $grid-breakpoints) {\n @each $breakpoint in map-keys($breakpoints) {\n $infix: breakpoint-infix($breakpoint, $breakpoints);\n\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n // Provide basic `.col-{bp}` classes for equal-width flexbox columns\n .col#{$infix} {\n flex: 1 0 0%; // Flexbugs #4: https://github.com/philipwalton/flexbugs#flexbug-4\n }\n\n .row-cols#{$infix}-auto > * {\n @include make-col-auto();\n }\n\n @if $grid-row-columns > 0 {\n @for $i from 1 through $grid-row-columns {\n .row-cols#{$infix}-#{$i} {\n @include row-cols($i);\n }\n }\n }\n\n .col#{$infix}-auto {\n @include make-col-auto();\n }\n\n @if $columns > 0 {\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @include make-col($i, $columns);\n }\n }\n\n // `$columns - 1` because offsetting by the width of an entire row isn't possible\n @for $i from 0 through ($columns - 1) {\n @if not ($infix == \"\" and $i == 0) { // Avoid emitting useless .offset-0\n .offset#{$infix}-#{$i} {\n @include make-col-offset($i, $columns);\n }\n }\n }\n }\n\n // Gutters\n //\n // Make use of `.g-*`, `.gx-*` or `.gy-*` utilities to change spacing between the columns.\n @each $key, $value in $gutters {\n .g#{$infix}-#{$key},\n .gx#{$infix}-#{$key} {\n --#{$variable-prefix}gutter-x: #{$value};\n }\n\n .g#{$infix}-#{$key},\n .gy#{$infix}-#{$key} {\n --#{$variable-prefix}gutter-y: #{$value};\n }\n }\n }\n }\n}\n\n@mixin make-cssgrid($columns: $grid-columns, $breakpoints: $grid-breakpoints) {\n @each $breakpoint in map-keys($breakpoints) {\n $infix: breakpoint-infix($breakpoint, $breakpoints);\n\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n @if $columns > 0 {\n @for $i from 1 through $columns {\n .g-col#{$infix}-#{$i} {\n grid-column: auto / span $i;\n }\n }\n\n // Start with `1` because `0` is and invalid value.\n // Ends with `$columns - 1` because offsetting by the width of an entire row isn't possible.\n @for $i from 1 through ($columns - 1) {\n .g-start#{$infix}-#{$i} {\n grid-column-start: $i;\n }\n }\n }\n }\n }\n}\n","// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @if not $n {\n @error \"breakpoint `#{$name}` not found in `#{$breakpoints}`\";\n }\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {\n $min: map-get($breakpoints, $name);\n @return if($min != 0, $min, null);\n}\n\n// Maximum breakpoint width.\n// The maximum value is reduced by 0.02px to work around the limitations of\n// `min-` and `max-` prefixes and viewports with fractional widths.\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(md, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {\n $max: map-get($breakpoints, $name);\n @return if($max and $max > 0, $max - .02, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media that spans multiple breakpoint widths.\n// Makes the @content apply between the min and max breakpoints\n@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($lower, $breakpoints);\n $max: breakpoint-max($upper, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($lower, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($upper, $breakpoints) {\n @content;\n }\n }\n}\n\n// Media between the breakpoint's minimum and maximum widths.\n// No minimum for the smallest breakpoint, and no maximum for the largest one.\n// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.\n@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n $next: breakpoint-next($name, $breakpoints);\n $max: breakpoint-max($next);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($name, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($next, $breakpoints) {\n @content;\n }\n }\n}\n",".mat-ripple {\n overflow: hidden;\n position: relative;\n}\n.mat-ripple:not(:empty) {\n transform: translateZ(0);\n}\n.mat-ripple.mat-ripple-unbounded {\n overflow: visible;\n}\n.mat-ripple-element {\n background-color: var(--mat-ripple-color, #0000001a);\n border-radius: 50%;\n pointer-events: none;\n position: absolute;\n transform: scale3d(0, 0, 0);\n transition: opacity, transform 0ms cubic-bezier(0, 0, 0.2, 1);\n}\n.cdk-high-contrast-active .mat-ripple-element {\n display: none;\n}\n.cdk-visually-hidden {\n clip: rect(0 0 0 0);\n -webkit-appearance: none;\n -moz-appearance: none;\n border: 0;\n height: 1px;\n left: 0;\n margin: -1px;\n outline: 0;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n[dir=\"rtl\"] .cdk-visually-hidden {\n left: auto;\n right: 0;\n}\n.cdk-global-overlay-wrapper,\n.cdk-overlay-container {\n height: 100%;\n left: 0;\n pointer-events: none;\n top: 0;\n width: 100%;\n}\n.cdk-overlay-container {\n position: fixed;\n z-index: 1000;\n}\n.cdk-overlay-container:empty {\n display: none;\n}\n.cdk-global-overlay-wrapper,\n.cdk-overlay-pane {\n display: flex;\n position: absolute;\n z-index: 1000;\n}\n.cdk-overlay-pane {\n box-sizing: border-box;\n max-height: 100%;\n max-width: 100%;\n pointer-events: auto;\n}\n.cdk-overlay-backdrop {\n -webkit-tap-highlight-color: transparent;\n bottom: 0;\n left: 0;\n opacity: 0;\n pointer-events: auto;\n position: absolute;\n right: 0;\n top: 0;\n transition: opacity 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);\n z-index: 1000;\n}\n.cdk-overlay-backdrop.cdk-overlay-backdrop-showing {\n opacity: 1;\n}\n.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing {\n opacity: 0.6;\n}\n.cdk-overlay-dark-backdrop {\n background: #00000052;\n}\n.cdk-overlay-transparent-backdrop {\n opacity: 1;\n transition: visibility 1ms linear, opacity 1ms linear;\n visibility: hidden;\n}\n.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing {\n opacity: 0;\n visibility: visible;\n}\n.cdk-overlay-backdrop-noop-animation {\n transition: none;\n}\n.cdk-overlay-connected-position-bounding-box {\n display: flex;\n flex-direction: column;\n min-height: 1px;\n min-width: 1px;\n position: absolute;\n z-index: 1000;\n}\n.cdk-global-scrollblock {\n overflow-y: scroll;\n position: fixed;\n width: 100%;\n}\ntextarea.cdk-textarea-autosize {\n resize: none;\n}\ntextarea.cdk-textarea-autosize-measuring {\n box-sizing: initial !important;\n height: auto !important;\n overflow: hidden !important;\n padding: 2px 0 !important;\n}\ntextarea.cdk-textarea-autosize-measuring-firefox {\n box-sizing: initial !important;\n height: 0 !important;\n padding: 2px 0 !important;\n}\n@keyframes cdk-text-field-autofill-start {\n /*!*/\n}\n@keyframes cdk-text-field-autofill-end {\n /*!*/\n}\n.cdk-text-field-autofill-monitored:-webkit-autofill {\n animation: cdk-text-field-autofill-start 0s 1ms;\n}\n.cdk-text-field-autofill-monitored:not(:-webkit-autofill) {\n animation: cdk-text-field-autofill-end 0s 1ms;\n}\n.mat-focus-indicator {\n position: relative;\n}\n.mat-focus-indicator:before {\n border: var(--mat-focus-indicator-border-width, 3px)\n var(--mat-focus-indicator-border-style, solid)\n var(--mat-focus-indicator-border-color, #0000);\n border-radius: var(--mat-focus-indicator-border-radius, 4px);\n bottom: 0;\n box-sizing: border-box;\n display: var(--mat-focus-indicator-display, none);\n left: 0;\n pointer-events: none;\n position: absolute;\n right: 0;\n top: 0;\n}\n.mat-focus-indicator:focus:before {\n content: \"\";\n}\n.cdk-high-contrast-active {\n --mat-focus-indicator-display: block;\n}\n.mat-mdc-focus-indicator {\n position: relative;\n}\n.mat-mdc-focus-indicator:before {\n border: var(--mat-mdc-focus-indicator-border-width, 3px)\n var(--mat-mdc-focus-indicator-border-style, solid)\n var(--mat-mdc-focus-indicator-border-color, #0000);\n border-radius: var(--mat-mdc-focus-indicator-border-radius, 4px);\n bottom: 0;\n box-sizing: border-box;\n display: var(--mat-mdc-focus-indicator-display, none);\n left: 0;\n pointer-events: none;\n position: absolute;\n right: 0;\n top: 0;\n}\n.mat-mdc-focus-indicator:focus:before {\n content: \"\";\n}\n.cdk-high-contrast-active {\n --mat-mdc-focus-indicator-display: block;\n}\n.mat-app-background {\n background-color: var(--mat-app-background-color, #0000);\n color: var(--mat-app-text-color, inherit);\n}\nhtml {\n --mat-datepicker-calendar-container-shape: 4px;\n --mat-datepicker-calendar-container-touch-shape: 4px;\n --mat-datepicker-calendar-container-elevation-shadow: 0px 2px 4px -1px #0003,\n 0px 4px 5px 0px #00000024, 0px 1px 10px 0px #0000001f;\n --mat-datepicker-calendar-container-touch-elevation-shadow: 0px 11px 15px -7px\n #0003,\n 0px 24px 38px 3px #00000024, 0px 9px 46px 8px #0000001f;\n --mat-datepicker-calendar-date-selected-state-text-color: #fff;\n --mat-datepicker-calendar-date-selected-state-background-color: #004494;\n --mat-datepicker-calendar-date-selected-disabled-state-background-color: #00449466;\n --mat-datepicker-calendar-date-today-selected-state-outline-color: #fff;\n --mat-datepicker-calendar-date-focus-state-background-color: #0044944d;\n --mat-datepicker-calendar-date-hover-state-background-color: #0044944d;\n --mat-datepicker-toggle-active-state-icon-color: #004494;\n --mat-datepicker-calendar-date-in-range-state-background-color: #00449433;\n --mat-datepicker-calendar-date-in-comparison-range-state-background-color: #f9ab0033;\n --mat-datepicker-calendar-date-in-overlap-range-state-background-color: #a8dab5;\n --mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color: #46a35e;\n --mat-datepicker-toggle-icon-color: #0000008a;\n --mat-datepicker-calendar-body-label-text-color: #0000008a;\n --mat-datepicker-calendar-period-button-text-color: #000;\n --mat-datepicker-calendar-period-button-icon-color: #0000008a;\n --mat-datepicker-calendar-navigation-button-icon-color: #0000008a;\n --mat-datepicker-calendar-header-divider-color: #0000001f;\n --mat-datepicker-calendar-header-text-color: #0000008a;\n --mat-datepicker-calendar-date-today-outline-color: #00000061;\n --mat-datepicker-calendar-date-today-disabled-state-outline-color: #0000002e;\n --mat-datepicker-calendar-date-text-color: #000000de;\n --mat-datepicker-calendar-date-outline-color: #0000;\n --mat-datepicker-calendar-date-disabled-state-text-color: #00000061;\n --mat-datepicker-calendar-date-preview-state-outline-color: #0000003d;\n --mat-datepicker-range-input-separator-color: #000000de;\n --mat-datepicker-range-input-disabled-state-separator-color: #00000061;\n --mat-datepicker-range-input-disabled-state-text-color: #00000061;\n --mat-datepicker-calendar-container-background-color: #fff;\n --mat-datepicker-calendar-container-text-color: #000000de;\n}\n.mat-datepicker-content.mat-accent {\n --mat-datepicker-calendar-date-selected-state-text-color: #999;\n --mat-datepicker-calendar-date-selected-state-background-color: #fffcf4;\n --mat-datepicker-calendar-date-selected-disabled-state-background-color: #fffcf466;\n --mat-datepicker-calendar-date-today-selected-state-outline-color: #999;\n --mat-datepicker-calendar-date-focus-state-background-color: #fffcf44d;\n --mat-datepicker-calendar-date-hover-state-background-color: #fffcf44d;\n --mat-datepicker-calendar-date-in-range-state-background-color: #fffcf433;\n --mat-datepicker-calendar-date-in-comparison-range-state-background-color: #f9ab0033;\n --mat-datepicker-calendar-date-in-overlap-range-state-background-color: #a8dab5;\n --mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color: #46a35e;\n}\n.mat-datepicker-content.mat-warn {\n --mat-datepicker-calendar-date-selected-state-text-color: #fff;\n --mat-datepicker-calendar-date-selected-state-background-color: #f44336;\n --mat-datepicker-calendar-date-selected-disabled-state-background-color: #f4433666;\n --mat-datepicker-calendar-date-today-selected-state-outline-color: #fff;\n --mat-datepicker-calendar-date-focus-state-background-color: #f443364d;\n --mat-datepicker-calendar-date-hover-state-background-color: #f443364d;\n --mat-datepicker-calendar-date-in-range-state-background-color: #f4433633;\n --mat-datepicker-calendar-date-in-comparison-range-state-background-color: #f9ab0033;\n --mat-datepicker-calendar-date-in-overlap-range-state-background-color: #a8dab5;\n --mat-datepicker-calendar-date-in-overlap-range-selected-state-background-color: #46a35e;\n}\n.mat-datepicker-toggle-active.mat-accent {\n --mat-datepicker-toggle-active-state-icon-color: #fffcf4;\n}\n.mat-datepicker-toggle-active.mat-warn {\n --mat-datepicker-toggle-active-state-icon-color: #f44336;\n}\n.mat-calendar-controls {\n --mat-icon-button-touch-target-display: none;\n}\n.mat-calendar-controls .mat-mdc-icon-button.mat-mdc-button-base {\n --mdc-icon-button-state-layer-size: 40px;\n height: var(--mdc-icon-button-state-layer-size);\n padding: 8px;\n width: var(--mdc-icon-button-state-layer-size);\n}\n",".mat-calendar {\n font-size: small !important;\n font-family: v(eui-f-family) !important;\n\n &.mat-calendar-year {\n .mat-calendar-period-button {\n display: none;\n }\n }\n}\n","// MATERIAL Drag & Drop overrides\n.cdk-drag-handle {\n cursor: move !important;\n}\n\n.cdk-drop-list {\n display: flex;\n min-width: 100%;\n\n &:not(.cdk-drop-list-disabled) {\n min-height: v(eui-s-xl);\n }\n}\n\n// Animate items as they're being sorted\n.cdk-drop-list-dragging .cdk-drag {\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n// Animate an item that has been dropped\n.cdk-drag-animating {\n transition: transform 300ms cubic-bezier(0, 0, 0.2, 1);\n}\n\n// Grabbed element\n.cdk-drag-preview {\n background-color: transparent; // v(eui-c-white);\n box-shadow: none;\n cursor: grab !important;\n display: table; // trick to get the full row width\n margin: 0 !important;\n opacity: 1;\n position: relative;\n}\n\n.cdk-drag-dragging {\n opacity: 1;\n}\n\n.cdk-drag-placeholder {\n background-color: transparent;\n opacity: 0.35;\n\n &:hover {\n outline: 2px dashed v(eui-c-neutral-lighter);\n outline-offset: 2px;\n }\n}\n","// Disable global scrollbars (used in full screen eui-dialog for example)\n.cdk-global-scrollblock {\n position: fixed;\n overflow-y: visible; // Material default: scroll\n width: 100%;\n @include eui-scrollbars;\n left: 0 !important;\n}\n@include media($eui-bkp-mobile) {\n .cdk-global-scrollblock {\n height: 100%;\n overflow: auto;\n position: fixed;\n width: 100%;\n @include eui-scrollbars;\n }\n}\n","@mixin eui-scrollbars( $size: 10px, $foreground-color: v(eui-c-neutral-lightest), $background-color: v(eui-c-neutral-bg-light), $border-radius: 5rem, $state: active ) {\n &::-webkit-scrollbar {\n display: inherit;\n height: $size; // horizontal scroll\n width: $size; // vertical scroll\n @if ($state == active) {\n background-color: $background-color;\n }\n @else {\n background-color: transparent;\n }\n }\n\n // This is the scrolling bar\n &::-webkit-scrollbar-thumb {\n @if ($state == active) {\n background-color: $foreground-color;\n border-radius: $border-radius;\n\n &:hover {\n background-color: v(eui-c-neutral-lighter);\n }\n }\n @else {\n background-color: transparent;\n }\n }\n\n // This is the scroll container\n &::-webkit-scrollbar-track {\n @if ($state == active) {\n background-color: $background-color;\n border-radius: 0;\n }\n @else {\n background-color: transparent;\n }\n }\n}\n@mixin eui-scrollbars-inactive($size: 8px) {\n &::-webkit-scrollbar {\n background-color: transparent;\n display: inherit;\n height: $size; // horizontal scroll\n width: $size; // vertical scroll\n }\n\n &::-webkit-scrollbar-thumb {\n background-color: transparent;\n }\n\n &::-webkit-scrollbar-track {\n background-color: transparent;\n }\n}\n","$default-feature: \"min-width\";\n@mixin media($query: $feature $value $columns) {\n @if length($query) == 1 {\n @media screen and ($default-feature: nth($query, 1)) {\n @content;\n }\n }\n @else {\n $loop-to: length($query);\n $media-query: \"screen and \";\n @if is-not(is-even(length($query))) {\n $loop-to: $loop-to - 1;\n }\n $i: 1;\n @while $i <=$loop-to {\n $media-query: $media-query + \"(\" + nth($query, $i) + \": \" + nth($query, $i + 1) + \") \";\n @if ($i + 1) != $loop-to {\n $media-query: $media-query + \"and \";\n }\n $i: $i+2;\n }\n @media #{$media-query} {\n @content;\n }\n }\n}\n",".cdk-overlay-container {\n z-index: v(eui-zi-cdk-overlay-container); // MD: 1000\n\n .mat-menu-panel {\n max-width: inherit;\n min-height: v(eui-s-l);\n @include eui-scrollbars;\n }\n\n .mat-autocomplete-panel {\n @include eui-scrollbars;\n }\n}\n","@include media($eui-bkp-mobile) {\n .cdk-overlay-container {\n height: 100vh; // Fallback\n height: calc(var(--eui-app-vh, 1vh) * 100);\n left: 0;\n position: fixed;\n top: 0;\n width: 100vw;\n }\n}\n",".cdk-overlay-pane {\n background-color: v(eui-c-white);\n z-index: v(eui-zi-cdk-overlay-pane); // Dynamically changes based on CDK context\n}\n","// Hide browser agent default (black) color\n:focus,\n:focus-visible {\n outline: none;\n}\n\n// Resolves issue in Firefox with extra borders\nbutton,\nhtml [type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: none; // Default: button\n appearance: none;\n}\n","html {\n display: block;\n height: 100%;\n font-size: var(--eui-f-size-base);\n line-height: var(--eui-base-line-height);\n}\n","body {\n background-color: var(--eui-c-bg);\n color: var(--eui-c-text);\n font-family: var(--eui-f-family);\n font-feature-settings: 'liga';\n font-size: var(--eui-f-size-base);\n -moz-font-smoothing: antialiased;\n -webkit-font-smoothing: antialiased;\n font-style: normal;\n font-weight: normal;\n height: 100%;\n line-height: var(--eui-base-line-height);\n margin: 0;\n text-align: start;\n text-rendering: optimizeLegibility;\n}\n","// Make viewport responsive\n//\n// @viewport is needed because IE 10+ doesn't honor <meta name=\"viewport\"> in\n// some cases. See https://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/.\n// Eventually @viewport will replace <meta name=\"viewport\">.\n//\n// However, `device-width` is broken on IE 10 on Windows (Phone) 8,\n// (see https://timkadlec.com/2013/01/windows-phone-8-and-device-width/ and https://github.com/twbs/bootstrap/issues/10497)\n// and the fix for that involves a snippet of JavaScript to sniff the user agent\n// and apply some conditional CSS.\n//\n// See https://getbootstrap.com/getting-started/#support-ie10-width for the relevant hack.\n//\n// Wrap `@viewport` with `@at-root` for when folks do a nested import (e.g.,\n// `.class-name { @import \"bootstrap\"; }`).\n@at-root {\n @-ms-viewport {\n width: device-width;\n }\n}\n\n/* ==========================================================================\n #BOX-SIZING\n ========================================================================== */\n\n/**\n * More sensible default box-sizing:\n * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice\n */\n\nhtml {\n box-sizing: border-box;\n}\n\n* {\n &::before,\n &::after,\n & {\n box-sizing: inherit;\n }\n}\n\n// Avoid 300ms click delay on touch devices that support the `touch-action` CSS property.\n//\n// In particular, unlike most other browsers, IE11+Edge on Windows 10 on touch devices and IE Mobile 10-11\n// DON'T remove the click delay when `<meta name=\"viewport\" content=\"width=device-width\">` is present.\n// However, they DO support removing the click delay via `touch-action: manipulation`.\n// See:\n// * https://v4-alpha.getbootstrap.com/content/reboot/#click-delay-optimization-for-touch\n// * http://caniuse.com/#feat=css-touch-action\n// * https://patrickhlauke.github.io/touch/tests/results/#suppressing-300ms-delay\n\na,\narea,\nbutton,\n[role=\"button\"],\ninput,\nlabel,\nselect,\nsummary,\ntextarea {\n touch-action: manipulation;\n}\n\n// Always hide an element with the `hidden` HTML attribute (from PureCSS).\n[hidden] {\n display: none !important;\n}\n\n// NORMALIZE reset alignements (see 00-reset)\np,\nlabel,\nblockquote,\nabbr,\nmark,\ndel {\n font-size: v(eui-f-size-base);\n}\n\nb, strong {\n font-weight: bold !important;\n}\n","table.eui-table-default {\n background-color: transparent;\n border-collapse: collapse;\n border-spacing: 0;\n color: v(eui-c-text);\n max-width: 100%;\n overflow: auto;\n position: relative;\n\n // Add default borders\n th,\n td {\n border: 1px solid v(eui-c-neutral-bg-light);\n\n &:first-child {\n border-left: 0;\n }\n\n &:last-child {\n border-right: 0;\n }\n }\n\n // Overall settings (default)\n thead > tr > th,\n tbody > tr > td,\n tfoot > tr > td {\n vertical-align: top;\n }\n\n tr > th,\n tr > td {\n padding: v(eui-s-s);\n text-align: left;\n }\n\n thead {\n th {\n color: v(eui-c-text);\n font-size: v(eui-f-size-base);\n padding: v(eui-s-m) v(eui-s-s);\n vertical-align: middle;\n font: var(--eui-f-m-bold);\n }\n\n tr {\n background: v(eui-c-neutral-bg);\n border-top: 0;\n }\n }\n\n // Striped & hovered tables by default (UX)\n tbody {\n -webkit-overflow-scrolling: touch; // optional - enable iOS momentum scrolling\n\n tr:nth-of-type(odd) {\n background-color: v(eui-c-bg);\n\n &:hover {\n background-color: v(eui-c-primary-bg);\n }\n\n td {\n &:hover {\n background-color: v(eui-c-primary-lightest);\n }\n }\n }\n\n tr:nth-of-type(even) {\n background-color: v(eui-c-neutral-bg-light);\n\n &:hover {\n background-color: v(eui-c-primary-bg);\n }\n\n td {\n &:hover {\n background-color: v(eui-c-primary-lightest);\n }\n }\n }\n }\n\n tfoot {\n tr {\n background: v(eui-c-neutral-bg);\n }\n }\n\n tr {\n border-bottom: 1px solid v(eui-c-bg0);\n display: table-row;\n }\n\n // Compact table\n &--compact {\n thead {\n th {\n padding: v(eui-s-xs) v(eui-s-s);\n }\n }\n\n tr > td {\n padding: v(eui-s-2xs) v(eui-s-s);\n }\n }\n\n // Responsive table\n &--responsive {\n display: table;\n width: 100%;\n\n &--bordered {\n border: 0; // Prevent double border on horizontal scroll due to use of `display: block;`\n }\n }\n\n // NoWrap table content (also disables ellipsis)\n &--nowrap {\n white-space: nowrap;\n\n thead > tr > th,\n tbody > tr > td,\n tfoot > tr > td {\n white-space: nowrap;\n }\n }\n\n // Centered table\n &--centered {\n display: table;\n margin: 0 auto;\n width: auto;\n }\n\n // Middle aligned cells content\n &--align-middle {\n thead > tr > th,\n tbody > tr > td,\n tfoot > tr > td {\n vertical-align: middle;\n }\n }\n}\n","// Sets the layout of the euiClearable directive\n.eui-clearable-wrapper {\n align-items: center;\n display: flex;\n position: relative;\n width: 100%;\n\n .eui-input-text--clearable-icon {\n bottom: calc(#{v(eui-s-s)} - 2px);\n cursor: pointer;\n position: absolute;\n right: v(eui-s-s);\n user-select: none;\n visibility: visible;\n z-index: v(eui-zi-clearable-icon);\n @include eui-accessible-focus();\n\n > svg {\n fill: v(eui-c-neutral-lighter);\n\n &:hover {\n fill: v(eui-c-danger);\n }\n }\n }\n}\n","$outline-offset: -2px;\n$outline-size: 2px;\n\n// Call this mixin to enforce the accessibility visuals when on focus/active\n@mixin eui-accessible-focus($offset: $outline-offset, $size: $outline-size) {\n &:focus:not([readonly]) {\n outline: $size solid var(--eui-c-focus) !important;\n outline-offset: $offset !important;\n transition: none;\n }\n\n &:focus-visible:not([readonly]) {\n outline: $size solid var(--eui-c-focus-visible) !important;\n outline-offset: $offset !important;\n transition: none;\n }\n\n // Forced focusable element\n [tabindex=\"0\"] {\n // &:active:not([readonly]),\n &:focus:not([readonly]) {\n outline: $size solid var(--eui-c-focus-visible) !important;\n outline-offset: $offset !important;\n transition: none;\n }\n }\n}\n\n@mixin eui-accessible-focus-border() {\n border-left: v(eui-s-2xs) solid transparent;\n\n &:focus:not([readonly]) {\n border: var(--eui-s-2xs) solid var(--eui-c-focus-visible) !important;\n transition: none;\n }\n}\n",".eui-input-maxlength-wrapper {\n position: relative;\n width: 100%;\n\n .eui-input-maxlength {\n font: var(--eui-f-xs);\n background-color: v(eui-c-neutral-bg);\n border: 1px solid v(eui-c-neutral-lighter);\n border-radius: v(eui-br-m);\n color: v(eui-c-text);\n padding: 0 v(eui-s-2xs);\n position: absolute;\n right: calc(-1 * #{v(eui-s-xs)});\n top: calc(-1 * #{v(eui-s-xs)});\n z-index: v(eui-zi-input-maxlength);\n\n &--invalid {\n background-color: v(eui-c-warning);\n border-color: v(eui-c-warning);\n color: v(eui-c-white);\n }\n }\n}\n","// IE10+ SVG's aspect ratios and sizes fix\n@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {\n img[src$=\".svg\"] {\n width: 100%;\n }\n}\n@media screen {\n // IE Fix: Bicubic Scaling for Images & full width background (EC logo)\n img {\n background-repeat: no-repeat;\n background-size: 100%;\n -ms-interpolation-mode: bicubic;\n }\n}\n","// COOKIE CONSENT\n.cookie-consent-banner {\n display: block !important;\n min-width: 50% !important;\n position: absolute !important;\n right: 50% !important;\n top: v(eui-s-m) !important;\n transform: translateX(50%) !important;\n z-index: v(eui-zi-max) !important;\n box-shadow: v(eui-sh-24) !important;\n background: v(eui-c-primary) !important;\n color: var(eui-c-white) !important;\n}\n","#loader-wrapper {\n height: 100%;\n left: 0;\n position: fixed;\n top: 0;\n width: 100%;\n z-index: 1000;\n\n #loader {\n -webkit-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */\n animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n animation: hourglass 5s linear infinite;\n border: 10px solid transparent;\n border-radius: 50%;\n border-top-color: v(eui-c-warning);\n display: block;\n height: 200px;\n left: 50%;\n margin: -100px 0 0 -100px;\n position: relative;\n top: 50%;\n width: 200px;\n\n &::before {\n -webkit-animation: spin 2s linear infinite; /* Chrome, Opera 15+, Safari 5+ */\n animation: spin 2s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n animation: hourglass 4s linear infinite;\n border: 10px solid transparent;\n border-radius: 50%;\n border-top-color: v(eui-c-danger);\n bottom: 5px;\n content: \"\";\n left: 5px;\n position: absolute;\n right: 5px;\n top: 5px;\n }\n\n &::after {\n -webkit-animation: spin 1s linear infinite; /* Chrome, Opera 15+, Safari 5+ */\n animation: spin 1s linear infinite; /* Chrome, Firefox 16+, IE 10+, Opera */\n animation: hourglass 3s linear infinite;\n border: 10px solid transparent;\n border-radius: 50%;\n border-top-color: v(eui-c-primary);\n bottom: 20px;\n content: \"\";\n left: 20px;\n position: absolute;\n right: 20px;\n top: 20px;\n }\n }\n}\n\n/* stylelint-enable */\n@-webkit-keyframes spin {\n 0% {\n -webkit-transform: rotate(0deg);\n -ms-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(360deg);\n -ms-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n@keyframes spin {\n 0% {\n -webkit-transform: rotate(0deg);\n -ms-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n\n 100% {\n -webkit-transform: rotate(360deg);\n -ms-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n@-webkit-keyframes hourglass {\n 0% {\n transform: rotate(0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n 50% {\n transform: rotate(900deg);\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n 100% {\n transform: rotate(1800deg);\n }\n}\n@keyframes hourglass {\n 0% {\n transform: rotate(0);\n animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);\n }\n 50% {\n transform: rotate(900deg);\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n 100% {\n transform: rotate(1800deg);\n }\n}\n"]}