.column-block ul{display:flex;gap:1.75rem;list-style-type:none;margin:0 0 1.75rem;padding:0}@media (min-width:768px){.column-block ul{gap:.25rem;margin-bottom:.25rem}}.column-block .column-block-column{background-position:center calc(100% - 1.75rem);background-repeat:no-repeat;background-size:100%;border-radius:var(--default-border-radius);overflow:hidden}@media (min-width:768px){.column-block .column-block-column{background-position:center calc(100% - .625rem)}}@media (min-width:1440px){.column-block .column-block-column{background-position:center calc(100% - .9375rem)}}.column-block .column-block-column:first-child{background-color:var(--itd-gray)}.column-block .column-block-column:nth-child(2){background-color:var(--itd-orange)}.column-block .column-block-column:nth-child(3){background-color:var(--itd-mint-green)}.column-block .column-block-column.single-column{background-position:center calc(100% - 1.75rem)}@media (min-width:768px){.column-block .column-block-column.single-column{background-position:center calc(100% - 4.375rem)}}@media (min-width:1440px){.column-block .column-block-column.single-column{background-position:center calc(100% - 5rem)}}.column-block h2{font-size:var(--itd-fs-heading-h3);font-size:var(--font-size-h4);font-weight:var(--itd-fw-bold);line-height:var(--itd-lh-heading-h3);text-indent:0}.column-block p{font-size:var(--itd-fs-body-18);line-height:var(--itd-lh-body-18);margin:0;text-indent:0}.column-block p a{font-weight:var(--itd-fw-bold)}.column-block .column-block-content{padding:1.5rem}.column-block .column-block-content>*{margin-bottom:1rem}.column-block .column-block-content>:last-child{margin-bottom:0}@media (min-width:768px){.column-block .column-block-content{padding:2rem}}.column-block .column-block-image-wrapper{align-items:center;display:flex;height:14.375rem;justify-content:center;overflow:hidden;position:relative;width:100%}.column-block .column-block-image-wrapper img{min-height:100%;min-width:100%;-o-object-fit:cover;object-fit:cover}.column-block a.button{padding-right:2.25rem;position:relative;text-indent:0}@media (min-width:768px){.column-block a.button{padding-right:3rem}}.column-block a.button:after{display:none}.column-block a.button .button-icon{font-family:var(--itd-ff-icons);font-weight:var(--itd-fw-regular);text-decoration:none;text-transform:none;word-wrap:normal;direction:ltr;white-space:nowrap;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;color:var(--itd-white);content:"arrow_circle_right";display:inline;font-feature-settings:"liga";font-size:1.25rem;margin-left:.375rem;position:absolute}@media (min-width:768px){.column-block a.button .button-icon{font-size:1.5rem;margin-left:.5rem}.column-block .column-layout-1{margin-bottom:0}.column-block .column-layout-1 .column-block-content{padding:3rem}.column-block .column-layout-1 .column-block-image-wrapper{height:26.875rem}}@media (min-width:1440px){.column-block .column-layout-1 .column-block-column{margin:0 auto;max-width:100%}.column-block .column-layout-1 .column-block-image-wrapper{height:30.625rem}}.column-block .column-layout-2{flex-direction:column}@media (min-width:768px){.column-block .column-layout-2{flex-direction:row;flex-wrap:nowrap}.column-block .column-layout-2 .column-block-column{width:calc(50% - .125rem)}}@media (min-width:1440px){.column-block .column-layout-2 .column-block-image-wrapper{height:20rem}}.column-block .column-layout-3{flex-direction:column}@media (min-width:768px) and (max-width:1439.98px){.column-block .column-layout-3 .column-block-column{background-image:none;display:flex;flex-direction:row-reverse;justify-content:space-between;width:100%}.column-block .column-layout-3 .column-block-column:not(.with-image){flex-direction:row}.column-block .column-layout-3 .column-block-image-wrapper{flex-shrink:0;height:11.25rem;width:15.625rem}}@media (min-width:1440px){.column-block .column-layout-3{flex-direction:row;flex-wrap:nowrap}.column-block .column-layout-3 .column-block-column{width:calc(33.3% - .125rem)}.column-block .column-layout-3 .column-block-image-wrapper{height:13.375rem}}/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbHVtbi1ibG9jay9zcmMvY29sdW1uLWJsb2NrLnNjc3MiLCJjb2x1bW4tYmxvY2svc3JjL2NvbHVtbi1ibG9jay5jc3MiLCIuLi9saWJyYXJpZXMvcGFydGlhbHMvX2JyZWFrcG9pbnRzLnNjc3MiLCIuLi9saWJyYXJpZXMvcGFydGlhbHMvX3R5cG9ncmFwaHkuc2NzcyIsIi4uL2xpYnJhcmllcy9wYXJ0aWFscy9fbGF5b3V0cy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlFLGlCQUlFLFlBQUEsQ0FDQSxXQUFBLENBSkEsb0JBQUEsQ0FLQSxrQkFBQSxDQUpBLFNDQ0osQ0NvSEkseUJGdkhGLGlCQVNJLFVBQUEsQ0FDQSxvQkNGSixDQUNGLENES0UsbUNBSUUsK0NBQUEsQ0FGQSwyQkFBQSxDQUNBLG9CQUFBLENBRUEsMENBQUEsQ0FKQSxlQ0NKLENDdUdJLHlCRnpHRixtQ0FRSSwrQ0NGSixDQUNGLENDa0dJLDBCRnpHRixtQ0FZSSxnRENESixDQUNGLENER0ksK0NBQ0UsZ0NDRE4sQ0RJSSxnREFDRSxrQ0NGTixDREtJLGdEQUNFLHNDQ0hOLENETUksaURBQ0UsK0NDSk4sQ0NpRkkseUJGOUVBLGlEQUlJLGdEQ0hOLENBQ0YsQ0M0RUksMEJGOUVBLGlEQVFJLDRDQ0ZOLENBQ0YsQ0RNRSxpQkcvQkEsa0NBQUEsQ0hpQ0UsNkJBQUEsQ0FDQSw4QkFBQSxDR2pDRixvQ0FBQSxDSGtDRSxhQ0hKLENETUUsZ0JHdENBLCtCQUFBLENBQ0EsaUNBQUEsQ0h3Q0UsUUFBQSxDQUZBLGFDREosQ0RLSSxrQkFDRSw4QkNITixDRE9FLG9DQUNFLGNDTEosQ0RPSSxzQ0FDRSxrQkNMTixDRE9NLGdEQUNFLGVDTFIsQ0M4Q0kseUJGaERGLG9DQVlJLFlDTkosQ0FDRixDRFNFLDBDSWhGQSxrQkFBQSxDQUNBLFlBQUEsQ0ppRkUsZ0JBQUEsQ0loRkYsc0JBQUEsQ0FDQSxlQUFBLENBQ0EsaUJBQUEsQ0o2RUUsVUNESixDRzFFRSw4Q0FFRSxlQUFBLENBREEsY0FBQSxDQUVBLG1CQUFBLENBQUEsZ0JINEVKLENEQ0UsdUJBRUUscUJBQUEsQ0FDQSxpQkFBQSxDQUZBLGFDR0osQ0NzQkkseUJGMUJGLHVCQU1JLGtCQ0VKLENBQ0YsQ0RBSSw2QkFDRSxZQ0VOLENEQ0ksb0NHa0hGLCtCQUFBLENBQ0EsaUNBQUEsQ0FDQSxvQkFBQSxDQUNBLG1CQUFBLENBQ0EsZ0JBQUEsQ0FFQSxhQUFBLENBREEsa0JBQUEsQ0FFQSxrQ0FBQSxDQUNBLGlDQUFBLENBQ0EsaUNBQUEsQ0h4SEksc0JBQUEsQ0FDQSw0QkFBQSxDQUNBLGNBQUEsQ0d3SEosNEJBQUEsQ0h2SEksaUJBQUEsQ0FDQSxtQkFBQSxDQUxBLGlCQ2lCTixDQ05JLHlCRmJBLG9DQVVJLGdCQUFBLENBQ0EsaUJDYU4sQ0RQQSwrQkFFSSxlQ1VKLENEUkkscURBQ0UsWUNVTixDRFBJLDJEQUNFLGdCQ1NOLENBVkYsQ0NaSSwwQkZrQkUsb0RBRUUsYUFBQSxDQURBLGNDU04sQ0RMSSwyREFDRSxnQkNPTixDQUNGLENERkUsK0JBQ0UscUJDSUosQ0NuQ0kseUJGOEJGLCtCQUlJLGtCQUFBLENBQ0EsZ0JDS0osQ0RISSxvREFDRSx5QkNLTixDQUNGLENDNUNJLDBCRjJDRSwyREFDRSxZQ0lOLENBQ0YsQ0RDRSwrQkFDRSxxQkNDSixDQ1hJLG1ERmFFLG9EQUNFLHFCQUFBLENBQ0EsWUFBQSxDQUNBLDBCQUFBLENBQ0EsNkJBQUEsQ0FDQSxVQ0NOLENEQ00scUVBQ0Usa0JDQ1IsQ0RHSSwyREFHRSxhQUFBLENBREEsZUFBQSxDQURBLGVDQ04sQ0FDRixDQ3JFSSwwQkZrREYsK0JBd0JJLGtCQUFBLENBQ0EsZ0JDREosQ0RHSSxvREFDRSwyQkNETixDRElJLDJEQUNFLGdCQ0ZOLENBQ0YiLCJmaWxlIjoiY29sdW1uLWJsb2NrL2NvbHVtbi1ibG9jay5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi8uLi8uLi9saWJyYXJpZXMvcGFydGlhbHMvcGFydGlhbHMnIGFzICo7XG5cbi8vIENvbHVtbiBCbG9jayBTdHlsZXNcbi5jb2x1bW4tYmxvY2sge1xuICB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiByZW0oMjhweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDI4cHgpO1xuXG4gICAgQGluY2x1ZGUgYnAtbWluKHRhYmxldCkge1xuICAgICAgZ2FwOiByZW0oNHB4KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg0cHgpO1xuICAgIH1cbiAgfVxuXG4gIC5jb2x1bW4tYmxvY2stY29sdW1uIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjYWxjKDEwMCUgLSByZW0oMjhweCkpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWRlZmF1bHQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICBAaW5jbHVkZSBicC1taW4odGFibGV0KSB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2FsYygxMDAlIC0gcmVtKDEwcHgpKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicC1taW4obGctZGVza3RvcCkge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNhbGMoMTAwJSAtIHJlbSgxNXB4KSk7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXRkLWdyYXkpO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0ZC1vcmFuZ2UpO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0ZC1taW50LWdyZWVuKTtcbiAgICB9XG5cbiAgICAmLnNpbmdsZS1jb2x1bW4ge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNhbGMoMTAwJSAtIHJlbSgyOHB4KSk7XG5cbiAgICAgIEBpbmNsdWRlIGJwLW1pbih0YWJsZXQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNhbGMoMTAwJSAtIHJlbSg3MHB4KSk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJwLW1pbihsZy1kZXNrdG9wKSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjYWxjKDEwMCUgLSByZW0oODBweCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGgyIHtcbiAgICBAaW5jbHVkZSB0eXBlLXNjYWxlKGhlYWRpbmcsIGgzKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oNCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWl0ZC1mdy1ib2xkKTtcbiAgICB0ZXh0LWluZGVudDogMDtcbiAgfVxuXG4gIHAge1xuICAgIHRleHQtaW5kZW50OiAwO1xuICAgIEBpbmNsdWRlIHR5cGUtc2NhbGUoYm9keSwgMTgpO1xuICAgIG1hcmdpbjogMDtcblxuICAgIGEge1xuICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWl0ZC1mdy1ib2xkKTtcbiAgICB9XG4gIH1cblxuICAuY29sdW1uLWJsb2NrLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IHJlbSgyNHB4KTtcblxuICAgID4gKiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTZweCk7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnAtbWluKHRhYmxldCkge1xuICAgICAgcGFkZGluZzogcmVtKDMycHgpO1xuICAgIH1cbiAgfVxuXG4gIC5jb2x1bW4tYmxvY2staW1hZ2Utd3JhcHBlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiByZW0oMjMwcHgpO1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQtaW1hZ2Utd3JhcHBlcjtcbiAgfVxuXG4gIGEuYnV0dG9uIHtcbiAgICB0ZXh0LWluZGVudDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0oMzZweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgYnAtbWluKHRhYmxldCkge1xuICAgICAgcGFkZGluZy1yaWdodDogcmVtKDQ4cHgpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmJ1dHRvbi1pY29uIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtbWF0ZXJpYWwtaWNvbnM7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb2xvcjogdmFyKC0taXRkLXdoaXRlKTtcbiAgICAgIGNvbnRlbnQ6ICdhcnJvd19jaXJjbGVfcmlnaHQnO1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgZm9udC1zaXplOiByZW0oMjBweCk7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtKDZweCk7XG5cbiAgICAgIEBpbmNsdWRlIGJwLW1pbih0YWJsZXQpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjRweCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oOHB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTaW5nbGUgY29sdW1uIGxheW91dFxuICAuY29sdW1uLWxheW91dC0xIHtcbiAgICBAaW5jbHVkZSBicC1taW4odGFibGV0KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAuY29sdW1uLWJsb2NrLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiByZW0oNDhweCk7XG4gICAgICB9XG5cbiAgICAgIC5jb2x1bW4tYmxvY2staW1hZ2Utd3JhcHBlciB7XG4gICAgICAgIGhlaWdodDogcmVtKDQzMHB4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicC1taW4obGctZGVza3RvcCkge1xuICAgICAgLmNvbHVtbi1ibG9jay1jb2x1bW4ge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuXG4gICAgICAuY29sdW1uLWJsb2NrLWltYWdlLXdyYXBwZXIge1xuICAgICAgICBoZWlnaHQ6IHJlbSg0OTBweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVHdvIGNvbHVtbiBsYXlvdXRcbiAgLmNvbHVtbi1sYXlvdXQtMiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgIEBpbmNsdWRlIGJwLW1pbih0YWJsZXQpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgICAgLmNvbHVtbi1ibG9jay1jb2x1bW4ge1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSByZW0oMnB4KSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnAtbWluKGxnLWRlc2t0b3ApIHtcbiAgICAgIC5jb2x1bW4tYmxvY2staW1hZ2Utd3JhcHBlciB7XG4gICAgICAgIGhlaWdodDogcmVtKDMyMHB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBUaHJlZSBjb2x1bW4gbGF5b3V0XG4gIC5jb2x1bW4tbGF5b3V0LTMge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBAaW5jbHVkZSBicC1iZXR3ZWVuKHRhYmxldCwgbGctZGVza3RvcCkge1xuICAgICAgLmNvbHVtbi1ibG9jay1jb2x1bW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJjpub3QoLndpdGgtaW1hZ2UpIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2x1bW4tYmxvY2staW1hZ2Utd3JhcHBlciB7XG4gICAgICAgIHdpZHRoOiByZW0oMjUwcHgpO1xuICAgICAgICBoZWlnaHQ6IHJlbSgxODBweCk7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJwLW1pbihsZy1kZXNrdG9wKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAgIC5jb2x1bW4tYmxvY2stY29sdW1uIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMuMyUgLSByZW0oMnB4KSk7XG4gICAgICB9XG5cbiAgICAgIC5jb2x1bW4tYmxvY2staW1hZ2Utd3JhcHBlciB7XG4gICAgICAgIGhlaWdodDogcmVtKDIxNHB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jb2x1bW4tYmxvY2sgdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxLjc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjc1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2x1bW4tYmxvY2sgdWwge1xuICAgIGdhcDogMC4yNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB9XG59XG4uY29sdW1uLWJsb2NrIC5jb2x1bW4tYmxvY2stY29sdW1uIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2FsYygxMDAlIC0gMS43NXJlbSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWRlZmF1bHQtYm9yZGVyLXJhZGl1cyk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbHVtbi1ibG9jayAuY29sdW1uLWJsb2NrLWNvbHVtbiB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNhbGMoMTAwJSAtIDAuNjI1cmVtKTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0NDBweCkge1xuICAuY29sdW1uLWJsb2NrIC5jb2x1bW4tYmxvY2stY29sdW1uIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2FsYygxMDAlIC0gMC45Mzc1cmVtKTtcbiAgfVxufVxuLmNvbHVtbi1ibG9jayAuY29sdW1uLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMSkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdGQtZ3JheSk7XG59XG4uY29sdW1uLWJsb2NrIC5jb2x1bW4tYmxvY2stY29sdW1uOm50aC1jaGlsZCgyKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0ZC1vcmFuZ2UpO1xufVxuLmNvbHVtbi1ibG9jayAuY29sdW1uLWJsb2NrLWNvbHVtbjpudGgtY2hpbGQoMykge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdGQtbWludC1ncmVlbik7XG59XG4uY29sdW1uLWJsb2NrIC5jb2x1bW4tYmxvY2stY29sdW1uLnNpbmdsZS1jb2x1bW4ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2FsYygxMDAlIC0gMS43NXJlbSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbHVtbi1ibG9jayAuY29sdW1uLWJsb2NrLWNvbHVtbi5zaW5nbGUtY29sdW1uIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2FsYygxMDAlIC0gNC4zNzVyZW0pO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gIC5jb2x1bW4tYmxvY2sgLmNvbHVtbi1ibG9jay1jb2x1bW4uc2luZ2xlLWNvbHVtbiB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNhbGMoMTAwJSAtIDVyZW0pO1xuICB9XG59XG4uY29sdW1uLWJsb2NrIGgyIHtcbiAgZm9udC1zaXplOiB2YXIoLS1pdGQtZnMtaGVhZGluZy1oMyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1pdGQtbGgtaGVhZGluZy1oMyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWg0KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWl0ZC1mdy1ib2xkKTtcbiAgdGV4dC1pbmRlbnQ6IDA7XG59XG4uY29sdW1uLWJsb2NrIHAge1xuICB0ZXh0LWluZGVudDogMDtcbiAgZm9udC1zaXplOiB2YXIoLS1pdGQtZnMtYm9keS0xOCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1pdGQtbGgtYm9keS0xOCk7XG4gIG1hcmdpbjogMDtcbn1cbi5jb2x1bW4tYmxvY2sgcCBhIHtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWl0ZC1mdy1ib2xkKTtcbn1cbi5jb2x1bW4tYmxvY2sgLmNvbHVtbi1ibG9jay1jb250ZW50IHtcbiAgcGFkZGluZzogMS41cmVtO1xufVxuLmNvbHVtbi1ibG9jayAuY29sdW1uLWJsb2NrLWNvbnRlbnQgPiAqIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5jb2x1bW4tYmxvY2sgLmNvbHVtbi1ibG9jay1jb250ZW50ID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sdW1uLWJsb2NrIC5jb2x1bW4tYmxvY2stY29udGVudCB7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgfVxufVxuLmNvbHVtbi1ibG9jayAuY29sdW1uLWJsb2NrLWltYWdlLXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxNC4zNzVyZW07XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uY29sdW1uLWJsb2NrIC5jb2x1bW4tYmxvY2staW1hZ2Utd3JhcHBlciBpbWcge1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuLmNvbHVtbi1ibG9jayBhLmJ1dHRvbiB7XG4gIHRleHQtaW5kZW50OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbHVtbi1ibG9jayBhLmJ1dHRvbiB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgfVxufVxuLmNvbHVtbi1ibG9jayBhLmJ1dHRvbjo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmNvbHVtbi1ibG9jayBhLmJ1dHRvbiAuYnV0dG9uLWljb24ge1xuICBmb250LWZhbWlseTogdmFyKC0taXRkLWZmLWljb25zKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWl0ZC1mdy1yZWd1bGFyKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpcmVjdGlvbjogbHRyO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6IFwibGlnYVwiO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwibGlnYVwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiB2YXIoLS1pdGQtd2hpdGUpO1xuICBjb250ZW50OiBcImFycm93X2NpcmNsZV9yaWdodFwiO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuMzc1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2x1bW4tYmxvY2sgYS5idXR0b24gLmJ1dHRvbi1pY29uIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbHVtbi1ibG9jayAuY29sdW1uLWxheW91dC0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5jb2x1bW4tYmxvY2sgLmNvbHVtbi1sYXlvdXQtMSAuY29sdW1uLWJsb2NrLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDNyZW07XG4gIH1cbiAgLmNvbHVtbi1ibG9jayAuY29sdW1uLWxheW91dC0xIC5jb2x1bW4tYmxvY2staW1hZ2Utd3JhcHBlciB7XG4gICAgaGVpZ2h0OiAyNi44NzVyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgLmNvbHVtbi1ibG9jayAuY29sdW1uLWxheW91dC0xIC5jb2x1bW4tYmxvY2stY29sdW1uIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbiAgLmNvbHVtbi1ibG9jayAuY29sdW1uLWxheW91dC0xIC5jb2x1bW4tYmxvY2staW1hZ2Utd3JhcHBlciB7XG4gICAgaGVpZ2h0OiAzMC42MjVyZW07XG4gIH1cbn1cbi5jb2x1bW4tYmxvY2sgLmNvbHVtbi1sYXlvdXQtMiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbHVtbi1ibG9jayAuY29sdW1uLWxheW91dC0yIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5jb2x1bW4tYmxvY2sgLmNvbHVtbi1sYXlvdXQtMiAuY29sdW1uLWJsb2NrLWNvbHVtbiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMC4xMjVyZW0pO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gIC5jb2x1bW4tYmxvY2sgLmNvbHVtbi1sYXlvdXQtMiAuY29sdW1uLWJsb2NrLWltYWdlLXdyYXBwZXIge1xuICAgIGhlaWdodDogMjByZW07XG4gIH1cbn1cbi5jb2x1bW4tYmxvY2sgLmNvbHVtbi1sYXlvdXQtMyB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxNDM5Ljk4cHgpIHtcbiAgLmNvbHVtbi1ibG9jayAuY29sdW1uLWxheW91dC0zIC5jb2x1bW4tYmxvY2stY29sdW1uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuY29sdW1uLWJsb2NrIC5jb2x1bW4tbGF5b3V0LTMgLmNvbHVtbi1ibG9jay1jb2x1bW46bm90KC53aXRoLWltYWdlKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAuY29sdW1uLWJsb2NrIC5jb2x1bW4tbGF5b3V0LTMgLmNvbHVtbi1ibG9jay1pbWFnZS13cmFwcGVyIHtcbiAgICB3aWR0aDogMTUuNjI1cmVtO1xuICAgIGhlaWdodDogMTEuMjVyZW07XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgLmNvbHVtbi1ibG9jayAuY29sdW1uLWxheW91dC0zIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5jb2x1bW4tYmxvY2sgLmNvbHVtbi1sYXlvdXQtMyAuY29sdW1uLWJsb2NrLWNvbHVtbiB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMyUgLSAwLjEyNXJlbSk7XG4gIH1cbiAgLmNvbHVtbi1ibG9jayAuY29sdW1uLWxheW91dC0zIC5jb2x1bW4tYmxvY2staW1hZ2Utd3JhcHBlciB7XG4gICAgaGVpZ2h0OiAxMy4zNzVyZW07XG4gIH1cbn0iLCJAdXNlIFwic2FzczpsaXN0XCI7XG4vL1xuLy8gTWl4aW5zIC0gQnJlYWtwb2ludHNcbi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbVxuLy8geHNtYWxsIHRvIHhsYXJnZTogKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KS4gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgXG4vLyBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cbi8vXG4vLyAtIDAxIC0gSW1wb3J0c1xuLy8gLSAwMiAtIE1hcHBpbmdcbi8vIC0gMDMgLSBGdW5jdGlvbnMgZm9yIEJyZWFrcG9pbnRzXG4vLyAgIC0gMDEgLSBCcmVha3BvaW50IE1pbmltdW1cbi8vICAgLSAwMiAtIEJyZWFrcG9pbnQgTWF4aW11bVxuLy8gICAtIDAzIC0gQnJlYWtwb2ludCBJbmZpeFxuLy8gLSAwNCAtIE1pbnhpbnMgZm9yIEJyZWFrcG9pbnRzXG4vLyAgIC0gMDEgLSBNaW5pbXVtIEJyZWFrcG9pbnRcbi8vICAgLSAwMiAtIE1heGltdW0gQnJlYWtwb2ludFxuLy8gICAtIDAzIC0gQmV0d2VlbiBCcmVha3BvaW50XG4vLyAgIC0gMDQgLSBPbmx5IEJyZWFrcG9pbnRcbi8vXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAgMDEgLSBJbXBvcnRzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQHVzZSAnc2FzczptYXAnO1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gIDAyIC0gTWFwcGluZ1xuLy8gIERlZmF1bHQgbWFwcGluZyBvZiBncmlkIGJyZWFrcG9pbnRzLCB3aGljaCBpcyB1c2VkIGluIHRoZSBmdW5jdGlvbiBhbmQgbWl4aW4gYnJlYWtwb2ludCBmaWxlcy4gQW4gZXhhbXBsZSBvZiB1c2luZ1xuLy8gIGJyZWFrcG9pbnRzIGluIGEgZmlsZSBpcyBieSB1c2luZyB0aGUgbWl4aW4gd2l0aCB0aGUgbmFtZSBvZiBhIGJyZWFrcG9pbnQ6IGBAaW5jbHVkZSBicC1taW4odGFibGV0KSB7fWAuXG4vL1xuLy8gIFRoZXNlIGJyZWFrcG9pbnRzIG1heSBiZSBhbHRlcmVkIGRlcGVuZGluZyBvbiB0aGUgdGhlbWUgbmVlZHMuXG4vL1xuLy8gIE5vdGU6IFRoZSBicmVha3BvaW50cyBsaXN0ZWQgaGVyZSBjb3JyZXNwb25kIHdpdGggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiB0aGUgJHR5cG9ncmFwaGljLXNjYWxlXG4vLyAgV2hlbiByZW1vdmluZyBvciByZW5hbWluZyBicmVha3BvaW50cyBoZXJlLCBiZSBzdXJlIHRvIHVwZGF0ZSB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50cyBpblxuLy8gIGB0eXBvZ3JhcGh5LnNjc3NgIGFzIG5lZWRlZC5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIG1vYmlsZTogMHB4LFxuICBsZy1tb2JpbGU6IDQ3NXB4LFxuICBzbS10YWJsZXQ6IDU3NnB4LFxuICB0YWJsZXQ6IDc2OHB4LFxuICBsZy10YWJsZXQ6IDk5MnB4LFxuICBzbS1kZXNrdG9wOiAxMDI0cHgsXG4gIGRlc2t0b3A6IDEyMDBweCxcbiAgbGctZGVza3RvcDogMTQ0MHB4LFxuICBtYXgtd2lkdGg6IDE1MDBweCxcbiAgd3JhcHBlcjogMTYyMHB4LFxuKTtcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICAwMyAtIEZ1bmN0aW9uczogQnJlYWtwb2ludCBOZXh0XG4vLyAgTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy8gIC0gQHBhcmFtICRuYW1lOiBTZWxlY3RlZCBicmVha3BvaW50IG5hbWUgYXMgZGVmaW5lZCBpbiBtYXBwaW5ncyBhYm92ZS5cbi8vICAtIEBwYXJhbSAkYnJlYWtwb2ludHM6IEJyZWFrcG9pbnRzIG1hcHBpbmcgdmFsdWVzIGFzIGRlZmluZWQgaW4gbWFwcGluZ3MgYWJvdmUuXG4vLyAgLSBAcGFyYW0gJGJyZWFrcG9pbnQtbmFtZXM6IEJyZWFrcG9pbnRzIG1hcHBpbmcgbmFtZXMgYXMgZGVmaW5lZCBpbiBtYXBwaW5ncyBhYm92ZS5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoXG4gICRuYW1lLFxuICAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLFxuICAkYnJlYWtwb2ludC1uYW1lczogbWFwLmtleXMoJGJyZWFrcG9pbnRzKVxuKSB7XG4gICRuOiBsaXN0LmluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiBub3QgJG4ge1xuICAgIEBlcnJvciBcImJyZWFrcG9pbnQgYCN7JG5hbWV9YCBub3QgZm91bmQgaW4gYCN7JGJyZWFrcG9pbnRzfWBcIjtcbiAgfVxuICBAcmV0dXJuIGlmKFxuICAgICRuIDwgbGlzdC5sZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLFxuICAgIGxpc3QubnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLFxuICAgIG51bGxcbiAgKTtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICAwMyAtIEZ1bmN0aW9uczogMDEgLSBCcmVha3BvaW50IE1pbmltdW1cbi8vICBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vLyAgLSBAcGFyYW0gJG5hbWU6IFNlbGVjdGVkIGJyZWFrcG9pbnQgbmFtZSBhcyBkZWZpbmVkIGluIG1hcHBpbmdzIGFib3ZlLlxuLy8gIC0gQHBhcmFtICRicmVha3BvaW50czogQnJlYWtwb2ludHMgbWFwcGluZyB2YWx1ZXMgYXMgZGVmaW5lZCBpbiBtYXBwaW5ncyBhYm92ZS5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAgMDMgLSBGdW5jdGlvbnM6IDAyIC0gQnJlYWtwb2ludCBNYXhpbXVtXG4vLyAgVGhlIG1heGltdW0gdmFsdWUgaXMgcmVkdWNlZCBieSAwLjAycHggdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHNcbi8vICB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLiBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4LiBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29ya1xuLy8gIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS4gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vICAtIEBwYXJhbSAkbmFtZTogU2VsZWN0ZWQgYnJlYWtwb2ludCBuYW1lIGFzIGRlZmluZWQgaW4gbWFwcGluZ3MgYWJvdmUuXG4vLyAgLSBAcGFyYW0gJGJyZWFrcG9pbnRzOiBCcmVha3BvaW50cyBtYXBwaW5nIHZhbHVlcyBhcyBkZWZpbmVkIGluIG1hcHBpbmdzIGFib3ZlLlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IG1hcC5nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAwLjAyLCBudWxsKTtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICAwMyAtIEZ1bmN0aW9uczogMDMgLSBCcmVha3BvaW50IEluZml4XG4vLyAgUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC4gVXNlZnVsIGZvciBtYWtpbmdcbi8vICByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vICAtIEBwYXJhbSAkbmFtZTogU2VsZWN0ZWQgYnJlYWtwb2ludCBuYW1lIGFzIGRlZmluZWQgaW4gbWFwcGluZ3MgYWJvdmUuXG4vLyAgLSBAcGFyYW0gJGJyZWFrcG9pbnRzOiBCcmVha3BvaW50cyBtYXBwaW5nIHZhbHVlcyBhcyBkZWZpbmVkIGluIG1hcHBpbmdzIGFib3ZlLlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCAnJywgJy0jeyRuYW1lfScpO1xufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gIDA0IC0gTWl4aW46IDAxIC0gTWluaW11bSBCcmVha3BvaW50XG4vLyAgTWVkaWEvc2NyZWVuLXNpemUgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aCAtLSBhcHBseSB0byBzY3JlZW4tc2l6ZXMgYWJvdmUgdGhlIGJyZWFrcG9pbnQgc3BlY2lmaWVkLlxuLy8gIC0gQHBhcmFtICRuYW1lOiBTZWxlY3RlZCBicmVha3BvaW50IG5hbWUgYXMgZGVmaW5lZCBpbiBwYXJ0aWFscy9zZXR0aW5ncy9fYnJlYWtwb2ludHMuc2Nzc1xuLy8gIC0gQHBhcmFtICRicmVha3BvaW50czogQnJlYWtwb2ludHMgbWFwcGluZyB2YWx1ZXMgYXMgZGVmaW5lZCBpbiBwYXJ0aWFscy9zZXR0aW5ncy9fYnJlYWtwb2ludHMuc2Nzc1xuLy8gIC0gQGV4YW1wbGUgPSBAaW5jbHVkZSBicC1taW4obGctdGFibGV0KSB7fVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIGJwLW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBlcnJvciAnWyAjeyRuYW1lfSBdIGlzIG5vdCBkZWZpbmVkIGluICRicmVha3BvaW50cy4gRm91bmQ6IFsgI3ttYXAua2V5cygkYnJlYWtwb2ludHMpfSBdLiBNYWtlIHN1cmUgdGhlIGJyZWFrcG9pbnQgeW91IGFyZSB0cnlpbmcgdG8gdXNlIGlzIGRlZmluZWQuJztcbiAgfVxufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gIDA0IC0gTWl4aW46IDAyIC0gTWF4aW11bSBCcmVha3BvaW50XG4vLyAgTWVkaWEvc2NyZWVuLXNpemUgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoIC0tIGFwcGx5IHRvIHNjcmVlbi1zaXplcyBiZWxvdyB0aGUgYnJlYWtwb2ludCBzcGVjaWZpZWQuXG4vLyAgLSBAcGFyYW0gJG5hbWU6IFNlbGVjdGVkIGJyZWFrcG9pbnQgbmFtZSBhcyBkZWZpbmVkIGluIHBhcnRpYWxzL3NldHRpbmdzL19icmVha3BvaW50cy5zY3NzXG4vLyAgLSBAcGFyYW0gJGJyZWFrcG9pbnRzOiBCcmVha3BvaW50cyBtYXBwaW5nIHZhbHVlcyBhcyBkZWZpbmVkIGluIHBhcnRpYWxzL3NldHRpbmdzL19icmVha3BvaW50cy5zY3NzXG4vLyAgLSBAZXhhbXBsZSA9IEBpbmNsdWRlIGJwLW1heChsZy10YWJsZXQpIHt9XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AbWl4aW4gYnAtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGVycm9yICdbICN7JG5hbWV9IF0gaXMgbm90IGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzLiBGb3VuZDogWyAje21hcC5rZXlzKCRicmVha3BvaW50cyl9IF0uIE1ha2Ugc3VyZSB0aGUgYnJlYWtwb2ludCB5b3UgYXJlIHRyeWluZyB0byB1c2UgaXMgZGVmaW5lZC4nO1xuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAgMDQgLSBNaXhpbjogMDMgLSBCZXR3ZWVuIEJyZWFrcG9pbnRcbi8vICBNZWRpYS9zY3JlZW4tc2l6ZSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzIC0tIGFwcGx5IHRvIHNjcmVlbi1zaXplcyBiZXR3ZWVuIHRoZSBicmVha3BvaW50cyBzcGVjaWZpZWQuXG4vLyAgLSBAcGFyYW0gJGxvd2VyOiBTZWxlY3RlZCBtaW5pbXVtIGJyZWFrcG9pbnQgbmFtZSBhcyBkZWZpbmVkIGluIHBhcnRpYWxzL3NldHRpbmdzL19icmVha3BvaW50cy5zY3NzXG4vLyAgLSBAcGFyYW0gJHVwcGVyOiBTZWxlY3RlZCBtYXhpbXVtIGJyZWFrcG9pbnQgbmFtZSBhcyBkZWZpbmVkIGluIHBhcnRpYWxzL3NldHRpbmdzL19icmVha3BvaW50cy5zY3NzXG4vLyAgLSBAcGFyYW0gJGJyZWFrcG9pbnRzOiBCcmVha3BvaW50cyBtYXBwaW5nIHZhbHVlcyBhcyBkZWZpbmVkIGluIHBhcnRpYWxzL3NldHRpbmdzL19icmVha3BvaW50cy5zY3NzXG4vLyAgLSBAZXhhbXBsZSA9IEBpbmNsdWRlIGJwLWJldHdlZW4oeHNtYWxsLCBsYXJnZSkge31cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiBicC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBicC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIGJwLW1heCgkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAgMDQgLSBNaXhpbjogMDQgLSBPbmx5IEJyZWFrcG9pbnRcbi8vICBNZWRpYS9zY3JlZW4tc2l6ZSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMgLS0gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZFxuLy8gIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vICAtIEBwYXJhbSAkbmFtZTogU2VsZWN0ZWQgYnJlYWtwb2ludCBuYW1lIGFzIGRlZmluZWQgaW4gcGFydGlhbHMvc2V0dGluZ3MvX2JyZWFrcG9pbnRzLnNjc3Ncbi8vICAtIEBwYXJhbSAkYnJlYWtwb2ludHM6IEJyZWFrcG9pbnRzIG1hcHBpbmcgdmFsdWVzIGFzIGRlZmluZWQgaW4gcGFydGlhbHMvc2V0dGluZ3MvX2JyZWFrcG9pbnRzLnNjc3Ncbi8vICAtIEBleGFtcGxlID0gQGluY2x1ZGUgYnAtb25seShsYXJnZSkge31cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiBicC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgYnAtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIGJwLW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBNaXhpbnMgLSBUeXBvZ3JhcGh5XG4vLyBVc2UgdGhlc2UgbWl4aW5zIHdoZW4gbmVlZGluZyB0byBlYXNpbHkgZGVmaW5lIHR5cG9ncmFwaHkgc3R5bGVzLCBzdWNoIGFzIHNpemVzIGFuZCB0eXBvZ3JhcGhpY2FsIGxheW91dC5cbi8vXG4vLyAtIDAxIC0gVHlwb2dyYXBoeVxuLy8gLSAwMiAtIEhlYWRpbmdzXG4vLyAtIDAzIC0gQm9keVxuLy8gLSAwNCAtIEdvb2dsZSBNYXRlcmlhbCBTeW1ib2xzIEljb24gRm9udFxuLy9cbkB1c2UgJ3Nhc3M6bGlzdCc7XG5AdXNlICdzYXNzOm1hcCc7XG5AdXNlICdzYXNzOm1hdGgnO1xuQHVzZSAnLi9iYXNlJyBhcyBzZXR0aW5ncy1iYXNlO1xuQHVzZSAnLi9icmVha3BvaW50cycgYXMgYnA7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gMDEgLSBUeXBvZ3JhcGh5XG4vLyBNaXhpbiBmb3IgZGV0ZXJtaW5pbmcgZm9udCBzaXppbmcgYW5kIGxpbmUgaGVpZ2h0cyBmcm9tIENTUyB2YXJpYWJsZXMuXG4vLyBAcGFyYW0gJGZvbnQtc2l6ZTogW2ludGVnZXJdIHNpemUgb2YgZm9udCBkZXBpY3RlZCBieSBhIG51bWJlciAvIGFzc29jaWF0ZXMgd2l0aCBDU1MgdmFyaWFibGVzLlxuLy8gQHBhcmFtICRsaW5lLWhlaWdodDogW3N0cmluZ10gc2V0dGluZyBvZiBsaW5lIGhlaWdodCBhcyBkZXBpY3RlZCBieSBhIHN0cmluZyAvIGFzc29jaWF0ZXMgd2l0aCBDU1MgdmFyaWFibGVzLlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiB0eXBlLXNjYWxlKCRjYXRlZ29yeSwgJHNpemUsICRwcmVmaXg6IHNldHRpbmdzLWJhc2UuJHByb3BlcnR5LXByZWZpeCkge1xuICBAaWYgJHByZWZpeCAhPSAnJyB7XG4gICAgJHByZWZpeDogJHByZWZpeCArICctJztcbiAgfVxuXG4gIGZvbnQtc2l6ZTogdmFyKC0tI3skcHJlZml4fWZzLSN7JGNhdGVnb3J5fS0jeyRzaXplfSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bGgtI3skY2F0ZWdvcnl9LSN7JHNpemV9KTtcbn1cblxuQGZ1bmN0aW9uIGNvbnZlcnQtbWFwKCRpbnB1dC1tYXApIHtcbiAgJG91dHB1dC1tYXA6ICgpO1xuXG4gIEBlYWNoICRjYXRlZ29yeSwgJHNpemVzIGluICRpbnB1dC1tYXAge1xuICAgIEBlYWNoICRzaXplLCAkYnJlYWtwb2ludHMgaW4gJHNpemVzIHtcbiAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWVzIGluICRicmVha3BvaW50cyB7XG4gICAgICAgICRmb250LXNpemU6IG1hdGguZGl2KGxpc3QubnRoKCR2YWx1ZXMsIDEpLCAxNik7XG4gICAgICAgICRsaW5lLWhlaWdodDogbWF0aC5kaXYobGlzdC5udGgoJHZhbHVlcywgMiksIGxpc3QubnRoKCR2YWx1ZXMsIDEpKTtcbiAgICAgICAgJG91dHB1dC1tYXA6IG1hcC5kZWVwLW1lcmdlKFxuICAgICAgICAgICRvdXRwdXQtbWFwLFxuICAgICAgICAgIChcbiAgICAgICAgICAgICRicmVha3BvaW50OiAoXG4gICAgICAgICAgICAgIGZzOiAoXG4gICAgICAgICAgICAgICAgJGNhdGVnb3J5OiAoXG4gICAgICAgICAgICAgICAgICAkc2l6ZTogKFxuICAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLFxuICAgICAgICAgICAgICAgICAgICBsaXN0Lm50aCgkdmFsdWVzLCAxKSxcbiAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgbGg6IChcbiAgICAgICAgICAgICAgICAkY2F0ZWdvcnk6IChcbiAgICAgICAgICAgICAgICAgICRzaXplOiAoXG4gICAgICAgICAgICAgICAgICAgICRsaW5lLWhlaWdodCxcbiAgICAgICAgICAgICAgICAgICAgbGlzdC5udGgoJHZhbHVlcywgMiksXG4gICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICApLFxuICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRvdXRwdXQtbWFwO1xufVxuXG4vLy8gVGhpcyBtaXhpbiBnZW5lcmF0ZXMgYSBmdWxsIHJhbmdlIG9mIDpyb290IGRlZmluaXRpb25zIGZvciBlYWNoIGNhdGVnb3J5LCBzaXplLCBhbmQgYnJlYWtwb2ludFxuLy8vIGZyb20gYSB0eXBvZ3JhcGhpYyBzY2FsZS5cbi8vL1xuLy8vIFRoZSB0eXBvZ3JhcGhpYyBzY2FsZSBzaG91bGQgYmUgaW4gdGhlIGZvcm1hdDpcbi8vLyAkdHlwb2dyYXBoaWMtc2NhbGU6IChcbi8vLyAgIGNhdGVnb3J5MTogKFxuLy8vICAgICBzaXplMTogKFxuLy8vICAgICAgIGJyZWFrcG9pbnQxOiAoZm9udFNpemVQaXhlbFZhbHVlLCBsaW5lSGVpZ2h0UGl4ZWxWYWx1ZSksXG4vLy8gICAgICAgYnJlYWtwb2ludDI6IChmb250U2l6ZVBpeGVsVmFsdWUsIGxpbmVIZWlnaHRQaXhlbFZhbHVlKSxcbi8vLyAgICAgICAuLi5cbi8vLyAgICAgKSxcbi8vLyAgICAgc2l6ZTI6ICggLi4uICksXG4vLy8gICAgIC4uLlxuLy8vICAgKSxcbi8vLyAgIGNhdGVnb3J5MjogKCAuLi4gKSxcbi8vLyAgIC4uLlxuLy8vICk7XG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gVGhlIHR5cG9ncmFwaHkgbWFwXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwcmVmaXggLSBUaGUgcHJlZml4IHRvIHVzZSBmb3IgdGhlIENTUyBjdXN0b20gcHJvcGVydGllc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICBAaW5jbHVkZSB0eXBlLXNjYWxlLWN1c3RvbS1wcm9wcygkdHlwb2dyYXBoeS1tYXApO1xuLy8vICAgQGluY2x1ZGUgdHlwZS1zY2FsZS1jdXN0b20tcHJvcHMoJHR5cG9ncmFwaHktbWFwLCAndGhlbWUtbmFtZScpO1xuQG1peGluIHR5cGUtc2NhbGUtY3VzdG9tLXByb3BzKFxuICAkc2NhbGUsXG4gICRwcmVmaXg6IHNldHRpbmdzLWJhc2UuJHByb3BlcnR5LXByZWZpeFxuKSB7XG4gICRtYXA6IGNvbnZlcnQtbWFwKCRzY2FsZSk7XG4gIEBpZiAkcHJlZml4ICE9ICcnIHtcbiAgICAkcHJlZml4OiAkcHJlZml4ICsgJy0nO1xuICB9XG4gICRuZXctcHJlZml4OiAkcHJlZml4ICRwcmVmaXggKyAnLSc7XG5cbiAgOnJvb3Qge1xuICAgIEBlYWNoICRicmVha3BvaW50LCAkcHJvcHMgaW4gJG1hcCB7XG4gICAgICBAaWYgKCRicmVha3BvaW50ID09ICdtb2JpbGUnKSB7XG4gICAgICAgIEBlYWNoICRjYXRlZ29yeSwgJHNpemVzIGluIG1hcC5nZXQoJHByb3BzLCAnZnMnKSB7XG4gICAgICAgICAgLyogZm9udC1zaXplczogI3skY2F0ZWdvcnl9ICovXG4gICAgICAgICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgICAgLS0jeyRwcmVmaXh9ZnMtI3skY2F0ZWdvcnl9LSN7JHNpemV9OiAje2xpc3QubnRoKFxuICAgICAgICAgICAgICAgICR2YWx1ZSxcbiAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICl9cmVtOyAvKiAje2xpc3QubnRoKCR2YWx1ZSwgMil9cHggKi9cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkY2F0ZWdvcnksICRzaXplcyBpbiBtYXAuZ2V0KCRwcm9wcywgJ2xoJykge1xuICAgICAgICAgIC8qIGxpbmUtaGVpZ2h0czogI3skY2F0ZWdvcnl9ICovXG4gICAgICAgICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgICAgLS0jeyRwcmVmaXh9bGgtI3skY2F0ZWdvcnl9LSN7JHNpemV9OiAje2xpc3QubnRoKFxuICAgICAgICAgICAgICAgICR2YWx1ZSxcbiAgICAgICAgICAgICAgICAxXG4gICAgICAgICAgICAgICl9OyAvKiAje2xpc3QubnRoKCR2YWx1ZSwgMil9cHggKi9cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBicC5icC1taW4oJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBAZWFjaCAkY2F0ZWdvcnksICRzaXplcyBpbiBtYXAuZ2V0KCRwcm9wcywgJ2ZzJykge1xuICAgICAgICAgICAgLyogZm9udC1zaXplczogI3skY2F0ZWdvcnl9ICovXG4gICAgICAgICAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluICRzaXplcyB7XG4gICAgICAgICAgICAgIC0tI3skcHJlZml4fWZzLSN7JGNhdGVnb3J5fS0jeyRzaXplfTogI3tsaXN0Lm50aChcbiAgICAgICAgICAgICAgICAgICR2YWx1ZSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApfXJlbTsgLyogI3tsaXN0Lm50aCgkdmFsdWUsIDIpfXB4ICovXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGVhY2ggJGNhdGVnb3J5LCAkc2l6ZXMgaW4gbWFwLmdldCgkcHJvcHMsICdsaCcpIHtcbiAgICAgICAgICAgIC8qIGxpbmUtaGVpZ2h0czogI3skY2F0ZWdvcnl9ICovXG4gICAgICAgICAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluICRzaXplcyB7XG4gICAgICAgICAgICAgIC0tI3skcHJlZml4fWxoLSN7JGNhdGVnb3J5fS0jeyRzaXplfTogI3tsaXN0Lm50aChcbiAgICAgICAgICAgICAgICAgICR2YWx1ZSxcbiAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICApfTsgLyogI3tsaXN0Lm50aCgkdmFsdWUsIDIpfXB4ICovXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gMDIgLSBIZWFkaW5nc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiBoZWFkaW5nLWJhc2UoKSB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1pdGQtZnctYm9sZCk7XG59XG5cbkBtaXhpbiBoZWFkaW5nLTAxKCkge1xuICBAaW5jbHVkZSBoZWFkaW5nLWJhc2UoKTtcbiAgQGluY2x1ZGUgdHlwZS1zY2FsZShoZWFkaW5nLCBoMSk7XG59XG5cbkBtaXhpbiBoZWFkaW5nLTAyKCkge1xuICBAaW5jbHVkZSBoZWFkaW5nLWJhc2UoKTtcbiAgQGluY2x1ZGUgdHlwZS1zY2FsZShoZWFkaW5nLCBoMik7XG59XG5cbkBtaXhpbiBoZWFkaW5nLTAzKCkge1xuICBAaW5jbHVkZSBoZWFkaW5nLWJhc2UoKTtcbiAgQGluY2x1ZGUgdHlwZS1zY2FsZShoZWFkaW5nLCBoMyk7XG59XG5cbkBtaXhpbiBoZWFkaW5nLTA0KCkge1xuICBAaW5jbHVkZSBoZWFkaW5nLWJhc2UoKTtcbiAgQGluY2x1ZGUgdHlwZS1zY2FsZShoZWFkaW5nLCBoNCk7XG59XG5cbkBtaXhpbiBoZWFkaW5nLTA1KCkge1xuICBAaW5jbHVkZSBoZWFkaW5nLWJhc2UoKTtcbiAgQGluY2x1ZGUgdHlwZS1zY2FsZShoZWFkaW5nLCBoNSk7XG59XG5cbkBtaXhpbiBoZWFkaW5nLTA2KCkge1xuICBAaW5jbHVkZSBoZWFkaW5nLWJhc2UoKTtcbiAgQGluY2x1ZGUgdHlwZS1zY2FsZShoZWFkaW5nLCBoNik7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gMDMgLSBCb2R5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIGJvZHktYmFzZSgpIHtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWl0ZC1mdy1yZWd1bGFyKTtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAwNCAtIExpbmtzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIGxpbmtzLWludmVyc2UoKSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIDA1IC0gTGFiZWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIGxhYmVsLWJhc2UoKSB7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gMDYgLSBHb29nbGUgTWF0ZXJpYWwgU3ltYm9scyBJY29uIEZvbnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIGZvbnQtbWF0ZXJpYWwtaWNvbnMge1xuICBmb250LWZhbWlseTogdmFyKC0taXRkLWZmLWljb25zKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWl0ZC1mdy1yZWd1bGFyKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpcmVjdGlvbjogbHRyO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJztcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYSc7XG59XG4iLCJAbWl4aW4gYTExeS12aXNpYmxlIHtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogMXB4O1xufVxuXG5AbWl4aW4gb2JqZWN0LWZpdC1pbWFnZS13cmFwcGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBpbWcge1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG59Il19 */
