.mlbs4-container{width:100%;max-width:1400px;margin:auto;padding:0 15px}.mlbs4-row{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.mlbs4-col{width:100%;min-height:1px;padding-right:15px;padding-left:15px;position:relative}.mlbs4-col-sm-10{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px;-webkit-box-flex:0;-ms-flex:0 0 83.33333%;flex:0 0 83.33333%;max-width:83.33333%}.mlbs4-justify-content-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}body .mktoModal .mktoModalContent .mktoModalClose{font-family:"HelveticaNeueW01-75Bold", sans-serif}body form.mktoForm .mktoButtonWrap.mktoSimple .mktoButton,body form.mktoForm .mktoButtonWrap .mktoButton,body form.mktoForm .mktoButtonWrap.mktoInset .mktoButton,body .mktoModal .mktoModalContent .mktoButton,body form.mktoForm .mktoFieldWrap label,body form.mktoForm fieldset legend,body .mktoModal .mktoModalContent h4{font-family:"HelveticaNeueW01-65Medi", sans-serif}body form.mktoForm .mktoFieldWrap>input[type="text"],body form.mktoForm .mktoFieldWrap>input[type="email"],body form.mktoForm .mktoFieldWrap>input[type="tel"],body form.mktoForm .mktoFieldWrap>input[type="date"],body form.mktoForm .mktoFieldWrap>textarea,body form.mktoForm .mktoFieldWrap>select{font-family:"HelveticaNeueW31-Light", sans-serif}body form.mktoForm .mktoButtonWrap.mktoSimple .mktoButton,body form.mktoForm .mktoButtonWrap .mktoButton,body form.mktoForm .mktoButtonWrap.mktoInset .mktoButton,body .mktoModal .mktoModalContent .mktoButton{max-width:100%;background:#fb3449;border:none;border-radius:4px;-webkit-box-shadow:0 6px 18px rgba(0,0,0,0.1);box-shadow:0 6px 18px rgba(0,0,0,0.1);color:white;display:inline-block;font-size:.88889rem;letter-spacing:.05556rem;line-height:normal;margin:0;padding:12px 20px;text-align:center;text-transform:uppercase;word-break:normal;word-wrap:break-word;white-space:normal}body form.mktoForm .mktoButtonWrap .mktoButton:active,body .mktoModal .mktoModalContent .mktoButton:active,body form.mktoForm .mktoButtonWrap .mktoButton:focus,body .mktoModal .mktoModalContent .mktoButton:focus,body form.mktoForm .mktoButtonWrap .mktoButton:hover,body .mktoModal .mktoModalContent .mktoButton:hover{background:#e73144;border:none;color:white;text-decoration:none}body form.mktoForm .mktoFieldWrap label,body form.mktoForm fieldset legend{color:#5c6770;font-size:14px;line-height:1;margin:0 0 20px;text-transform:uppercase}body form.mktoForm .mktoFieldWrap>input[type="text"],body form.mktoForm .mktoFieldWrap>input[type="email"],body form.mktoForm .mktoFieldWrap>input[type="tel"],body form.mktoForm .mktoFieldWrap>input[type="date"],body form.mktoForm .mktoFieldWrap>textarea,body form.mktoForm .mktoFieldWrap>select{background:white;border:1px solid #bac3ca;border-radius:4px;color:#333e48;font-size:18px;line-height:normal;padding:0 18px 6px}body form.mktoForm .mktoFieldWrap>input:focus[type="text"],body form.mktoForm .mktoFieldWrap>input:focus[type="email"],body form.mktoForm .mktoFieldWrap>input:focus[type="tel"],body form.mktoForm .mktoFieldWrap>input:focus[type="date"],body form.mktoForm .mktoFieldWrap>textarea:focus,body form.mktoForm .mktoFieldWrap>select:focus{outline:none !important}body form.mktoForm{width:100% !important}body form.mktoForm .mktoFormRow .mktoOffset{display:none}body form.mktoForm .mktoFormCol,body form.mktoForm .mktoFieldWrap{float:none}body form.mktoForm .mktoFormCol{margin:0 0 30px !important}body form.mktoForm .mktoRequiredField .mktoAsterix{display:inline-block;float:none;padding-right:5px}body form.mktoForm .mktoFieldWrap label{width:100% !important}body form.mktoForm .mktoFieldWrap .mktoGutter{display:none}body form.mktoForm .mktoFieldWrap>input[type="text"],body form.mktoForm .mktoFieldWrap>input[type="email"],body form.mktoForm .mktoFieldWrap>input[type="tel"],body form.mktoForm .mktoFieldWrap>input[type="date"]{width:100% !important;height:auto !important}body form.mktoForm .mktoFieldWrap>input[type="text"].mktoInvalid,body form.mktoForm .mktoFieldWrap>input[type="email"].mktoInvalid,body form.mktoForm .mktoFieldWrap>input[type="tel"].mktoInvalid,body form.mktoForm .mktoFieldWrap>input[type="date"].mktoInvalid{border-color:#fb3449}body form.mktoForm .mktoFieldWrap>textarea{width:100% !important;height:200px !important}body form.mktoForm .mktoFieldWrap>textarea.mktoInvalid{border-color:#fb3449}body form.mktoForm .mktoFieldWrap>select{width:100% !important;height:45px !important;padding:0 18px 6px}body form.mktoForm .mktoFieldWrap>select.mktoInvalid{border-color:#fb3449}body form.mktoForm .mktoCheckboxList{width:100% !important;padding:0}body form.mktoForm .mktoCheckboxList input[type="checkbox"]{margin-top:2px}body form.mktoForm .mktoCheckboxList label{line-height:normal;padding-left:20px;text-transform:none}body form.mktoForm .mktoHtmlText{width:100% !important;line-height:normal}body form.mktoForm fieldset{background:white;border:1px solid #dce1e5;margin:0 0 30px !important;padding:30px !important}body form.mktoForm fieldset legend{width:auto;background:white;margin:0 0 0 -15px;padding:0 15px}body form.mktoForm fieldset .mktoFormRow:last-of-type .mktoFormCol{margin-bottom:0 !important}body form.mktoForm .mktoButtonRow .mktoButtonWrap{margin:0 !important}body form.mktoForm .mktoButtonWrap.mktoSimple .mktoButton:hover,body form.mktoForm .mktoButtonWrap .mktoButton:hover,body form.mktoForm .mktoButtonWrap.mktoInset .mktoButton:hover{border:none}body .mktoModal .mktoModalContent{background:transparent !important;top:0 !important}@media (max-width: 767px){body .mktoModal .mktoModalContent{left:15px !important;right:15px !important;padding:60px 30px}body .mktoModal .mktoModalContent:before{top:30px;bottom:30px}body .mktoModal .mktoModalContent .mktoModalClose{top:20px}}@media (min-width: 768px){body .mktoModal .mktoModalContent{left:25% !important;right:25% !important;padding:90px 30px}body .mktoModal .mktoModalContent:before{top:60px;bottom:60px}body .mktoModal .mktoModalContent .mktoModalClose{top:50px}}body .mktoModal .mktoModalContent:before{background:white;content:"";position:absolute;right:0;left:0}body .mktoModal .mktoModalContent h4{color:#333e48;font-size:28px;line-height:33px;margin:0 0 33px}body .mktoModal .mktoModalContent .mktoModalClose{width:30px;height:30px;border-radius:50%;background:#fb3449;border:none;font-size:.88889rem;font-weight:bold;line-height:28px}body .mktoModal .mktoModalContent .mktoModalMain{width:100% !important}body .mktoModal .mktoModalContent .mktoAsterix{color:#fb3449}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvcmUvX2ZhdXgtYnM0LnNjc3MiLCJtYXJrZXRvLnNjc3MiLCJjb3JlL19taXhpbnMuc2NzcyIsImNvcmUvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vLi4vdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxpQkFDSSxXQUNBLGlCQUNBLFlBQ0EsY0FBZSxDQUNsQixXQUdHLG9CQUFBLEFBQ0Esb0JBREEsQUFDQSxhQUFBLG1CQUFBLEFBQ0EsZUFBQSxtQkFDQSxpQkFBa0IsQ0FDckIsV0FHRyxXQUNBLGVBQ0EsbUJBQ0Esa0JBQ0EsaUJBQWtCLENBQ3JCLGlCQUdHLGtCQUNBLFdBQ0EsZUFDQSxtQkFDQSxrQkFDQSxtQkFBQSxBQUNBLHVCQURBLEFBQ0EsbUJBQUEsbUJBQW9CLENBQ3ZCLDhCQUdHLG1DQUFBLEFBQWtDLGdDQUFsQyxBQUFrQyxpQ0FBQSxDQ3hCdEMsa0RDVkksaURBQWtELENEdUZ0RCxnVUNuRkksaURBQWtELENEbUZ0RCx3U0MzRUksZ0RBQWlELENEMkVyRCxnTkNHSSxlQUNBLG1CQUNBLFlBQ0Esa0JBQ0EsOENBQUEsQUFDQSxzQ0FBQSxZQUNBLHFCQUNBLG9CQUNBLHlCQUNBLG1CQUNBLFNBQ0Esa0JBQ0Esa0JBQ0EseUJBQ0Esa0JBQ0EscUJBQ0Esa0JBQW1CLENEbkJ2Qiw2VENzQlEsbUJBQ0EsWUFDQSxZQUNBLG9CQUFxQixDRHpCN0IsMkVDOENJLGNBQ0EsZUFDQSxjQUNBLGdCQUNBLHdCQUF5QixDRGxEN0Isd1NDdURJLGlCQUNBLHlCQUNBLGtCQUNBLGNBQ0EsZUFDQSxtQkFDQSxrQkFBbUIsQ0Q3RHZCLDRVQ2dFUSx1QkFBd0IsQ0RoRWhDLG1CQ3FFSSxxQkFBc0IsQ0RyRTFCLDRDQ3lFUSxZQUFhLENEekVyQixrRUM4RVEsVUFBVyxDRDlFbkIsZ0NDa0ZRLDBCQUEyQixDRGxGbkMsbURDc0ZRLHFCQUNBLFdBQ0EsaUJBQWtCLENEeEYxQix3Q0M4RlkscUJBQXNCLENEOUZsQyw4Q0NtR1ksWUFBYSxDRG5HekIsb05DNEdZLHNCQUNBLHNCQUF1QixDRDdHbkMsb1FDZ0hnQixvQkN0S08sQ0ZzRHZCLDJDQ3NIWSxzQkFDQSx1QkFBd0IsQ0R2SHBDLHVEQzBIZ0Isb0JDaExPLENGc0R2Qix5Q0NnSVksc0JBQ0EsdUJBQ0Esa0JBQW1CLENEbEkvQixxRENxSWdCLG9CQzNMTyxDRnNEdkIscUNDMklRLHNCQUNBLFNBQVUsQ0Q1SWxCLDREQytJWSxjQUFlLENEL0kzQiwyQ0NtSlksbUJBQ0Esa0JBQ0EsbUJBQW9CLENEckpoQyxpQ0MwSlEsc0JBQ0Esa0JBQW1CLENEM0ozQiw0QkMrSlEsaUJBQ0EseUJBQ0EsMkJBQ0EsdUJBQXdCLENEbEtoQyxtQ0NxS1ksV0FFQSxpQkFDQSxtQkFDQSxjQUFlLENEekszQixtRUM2S1ksMEJBQTJCLENEN0t2QyxrRENtTFksbUJBQW9CLENEbkxoQyxvTEM2TFksV0FBWSxDRDFReEIsa0NBRVEsa0NBQ0EsZ0JBQWlCLENBdUVwQiwwQkExRUwsa0NBTVkscUJBQ0Esc0JBQ0EsaUJBQWtCLENBUjlCLHlDQVdnQixTQUNBLFdBQVksQ0FaNUIsa0RBZ0JnQixRQUFTLENBQ1osQ0d3QlQsMEJIekNKLGtDQXFCWSxvQkFDQSxxQkFDQSxpQkFBa0IsQ0F2QjlCLHlDQTBCZ0IsU0FDQSxXQUFZLENBM0I1QixrREErQmdCLFFBQVMsQ0FDWixDQWhDYix5Q0FvQ1ksaUJBQ0EsV0FDQSxrQkFDQSxRQUNBLE1BQU8sQ0F4Q25CLHFDQTZDWSxjQUNBLGVBQ0EsaUJBQ0EsZUFBZ0IsQ0FoRDVCLGtEQXFEWSxXQUNBLFlBQ0Esa0JBQ0EsbUJBQ0EsWUFDQSxvQkFDQSxpQkFDQSxnQkFBaUIsQ0E1RDdCLGlEQWdFWSxxQkFBc0IsQ0FoRWxDLCtDQW9FWSxhRTdDVyxDRjhDZCIsImZpbGUiOiJtYXJrZXRvLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAvL1xuLy8gRmF1eCBCb290c3RyYXAgNCBNaXhpbnMvQ2xhc3Nlc1xuLy8gVGhlc2UgY2xhc3NlcyBhcmUgcmVxdWlyZWQgYmVjYXVzZSB0aGUgaGVhZGVyIGFuZCBmb290ZXIgY2FuIGFwcGVhciBvblxuLy8gdGhpcmQtcGFydHkgc2l0ZXMgdGhhdCB1c2UgQm9vdHN0cmFwIDQsIEJvb3RzdHJhcCAzLCBvciBuZWl0aGVyLlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vXG5cbi5tbGJzNC1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTQwMHB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG59XG5cbi5tbGJzNC1yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xufVxuXG4ubWxiczQtY29sIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubWxiczQtY29sLXNtLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7XG59XG5cbi5tbGJzNC1qdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xufSIsIi8vIFRoaXMgZmlsZSB3aWxsIGJlIGNvbXBpbGVkIHRvIFwiaGVhZGVyLmNzc1wiIGFuZCB3aWxsIGJlIGxvYWRlZCBieSB0aGlyZC1wYXJ0eVxuLy8gc2l0ZXMgdG8gY29ycmVjdGx5IHJlbmRlciB0aGUgaGVhZGVyLCBtZWdhbWVudSwgYW5kIG1vYmlsZSBtZW51LlxuXG4vLyBJbXBvcnQgQm9vdHN0cmFwIHBhcnRpYWxzLlxuQGltcG9ydCBcIi4uLy4uL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCIuLi8uLi92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiLi4vLi4vdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGluc1wiO1xuXG4vLyBJbXBvcnQgb3VyIHNpdGUtc3BlY2lmaWMgdmFyaWFibGVzLCBmdW5jdGlvbnMsIGFuZCBtaXhpbnMuXG5AaW1wb3J0IFwiY29yZS9mYXV4LWJzNFwiO1xuQGltcG9ydCBcImNvcmUvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiY29yZS9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJjb3JlL21peGluc1wiO1xuXG4vLyBCZSBtb3JlIHNwZWNpZmljIHRoYW4gTWFya2V0by5cbmJvZHkge1xuICAgIC5ta3RvTW9kYWwgLm1rdG9Nb2RhbENvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICB0b3A6IDAgIWltcG9ydGFudDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pIHtcbiAgICAgICAgICAgIGxlZnQ6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiA2MHB4IDMwcHg7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0b3A6IDMwcHg7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWt0b01vZGFsQ2xvc2Uge1xuICAgICAgICAgICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgIGxlZnQ6IDI1JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcmlnaHQ6IDI1JSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZzogOTBweCAzMHB4O1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdG9wOiA2MHB4O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogNjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1rdG9Nb2RhbENsb3NlIHtcbiAgICAgICAgICAgICAgICB0b3A6IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBAZXh0ZW5kICVoZWx2ZXRpY2EtbmV1ZS1tZWRpdW07XG4gICAgICAgICAgICBjb2xvcjogJG1hcmtsb2dpYy1ncmF5LWRhcms7XG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDMzcHg7XG4gICAgICAgIH1cblxuICAgICAgICAubWt0b01vZGFsQ2xvc2Uge1xuICAgICAgICAgICAgQGV4dGVuZCAlaGVsdmV0aWNhLW5ldWUtYm9sZDtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJG1hcmtsb2dpYy1yZWQ7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBmb250LXNpemU6IG9tcy1weC10by1yZW0oMTZweCk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm1rdG9Nb2RhbE1haW4ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ta3RvQXN0ZXJpeCB7XG4gICAgICAgICAgICBjb2xvcjogJG1hcmtsb2dpYy1yZWQ7XG4gICAgICAgIH1cblxuICAgICAgICAubWt0b0J1dHRvbiB7XG4gICAgICAgICAgICBAZXh0ZW5kICVidXR0b247XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmJvZHkgZm9ybS5ta3RvRm9ybSB7XG4gICAgQGV4dGVuZCAlbWFya2V0by1mb3JtO1xufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vXG4vLyBGb250cy5jb20gRm9udHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAvL1xuXG4laGVsdmV0aWNhLW5ldWUtYm9sZCB7XG4gICAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhTmV1ZVcwMS03NUJvbGRcIiwgc2Fucy1zZXJpZjtcbn1cblxuJWhlbHZldGljYS1uZXVlLW1lZGl1bSB7XG4gICAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhTmV1ZVcwMS02NU1lZGlcIiwgc2Fucy1zZXJpZjtcbn1cblxuJWhlbHZldGljYS1uZXVlLXJvbWFuIHtcbiAgICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2FOZXVlVzAxLTU1Um9tYVwiLCBzYW5zLXNlcmlmO1xufVxuXG4laGVsdmV0aWNhLW5ldWUtbGlnaHQge1xuICAgIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYU5ldWVXMzEtTGlnaHRcIiwgc2Fucy1zZXJpZjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vXG4vLyBIZWFkaW5nc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vXG5cbi8vIE5vdGU6IFRoZSBIMSBhbmQgSDIgc2hhcmUgdGhlIHNhbWUgYmFzZSBzdHlsZXMgYmVjYXVzZSB0aGUgSDEgb24gdGhlIGhvbWVwYWdlIGlzIHNtYWxsIHdoaWxlIHRoZVxuLy8gSDEgb24gaW50ZXJpb3IgcGFnZXMgaXMgbm9ybWFsIHNpemUuXG5cbiVoMSB7XG4gICAgQGV4dGVuZCAlaGVsdmV0aWNhLW5ldWUtbWVkaXVtO1xuICAgIGNvbG9yOiAkbWFya2xvZ2ljLWVib255LWNsYXk7XG4gICAgZm9udC1zaXplOiBvbXMtcHgtdG8tcmVtKDE0cHgpO1xuICAgIGxldHRlci1zcGFjaW5nOiBvbXMtcHgtdG8tcmVtKDJweCk7XG4gICAgbGluZS1oZWlnaHQ6IG9tcy1weC10by1yZW0oMTdweCk7XG4gICAgbWFyZ2luOiAwIDAgb21zLXB4LXRvLXJlbSgxN3B4KTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4laDIge1xuICAgIEBleHRlbmQgJWhlbHZldGljYS1uZXVlLWJvbGQ7XG4gICAgY29sb3I6ICRtYXJrbG9naWMtZWJvbnktY2xheTtcbiAgICBmb250LXNpemU6IG9tcy1weC10by1yZW0oNDRweCk7XG4gICAgbGluZS1oZWlnaHQ6IDEyMCU7IC8vICg1MC80NCk7XG4gICAgbWFyZ2luOiAwIDAgb21zLXB4LXRvLXJlbSgyNXB4KTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICBmb250LXNpemU6IG9tcy1weC10by1yZW0oMzRweCk7XG4gICAgICAgIG1hcmdpbjogMCAwIG9tcy1weC10by1yZW0oMzBweCk7XG4gICAgfVxufVxuXG4laDMge1xuICAgIEBleHRlbmQgJWhlbHZldGljYS1uZXVlLWJvbGQ7XG4gICAgY29sb3I6ICRtYXJrbG9naWMtZWJvbnktY2xheTtcbiAgICBmb250LXNpemU6IG9tcy1weC10by1yZW0oMzZweCk7XG4gICAgbGluZS1oZWlnaHQ6IDE0MCU7IC8vICg0My8zNik7XG4gICAgbWFyZ2luOiAwIDAgb21zLXB4LXRvLXJlbSgzMHB4KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICBmb250LXNpemU6IG9tcy1weC10by1yZW0oMzJweCk7XG4gICAgfVxufVxuXG4laDQge1xuICAgIEBleHRlbmQgJWhlbHZldGljYS1uZXVlLW1lZGl1bTtcbiAgICBjb2xvcjogJG1hcmtsb2dpYy1lYm9ueS1jbGF5O1xuICAgIGZvbnQtc2l6ZTogb21zLXB4LXRvLXJlbSgyOHB4KTtcbiAgICBsaW5lLWhlaWdodDogKDMzLzI4KTtcbiAgICBtYXJnaW46IDAgMCBvbXMtcHgtdG8tcmVtKDMzcHgpO1xufVxuXG4laDUge1xuICAgIEBleHRlbmQgJWhlbHZldGljYS1uZXVlLW1lZGl1bTtcbiAgICBjb2xvcjogJG1hcmtsb2dpYy1lYm9ueS1jbGF5O1xuICAgIGZvbnQtc2l6ZTogb21zLXB4LXRvLXJlbSgyNHB4KTtcbiAgICBsaW5lLWhlaWdodDogKDI4LzI0KTtcbiAgICBtYXJnaW46IDAgMCBvbXMtcHgtdG8tcmVtKDE4cHgpO1xufVxuXG4laDYge1xuICAgIEBleHRlbmQgJWhlbHZldGljYS1uZXVlLW1lZGl1bTtcbiAgICBjb2xvcjogJG1hcmtsb2dpYy1lYm9ueS1jbGF5O1xuICAgIGZvbnQtc2l6ZTogb21zLXB4LXRvLXJlbSgxNHB4KTtcbiAgICBsZXR0ZXItc3BhY2luZzogb21zLXB4LXRvLXJlbSgycHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAoMTcvMTQpO1xuICAgIG1hcmdpbjogMCAwIG9tcy1weC10by1yZW0oMTdweCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vXG4vLyBCdXR0b25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLy9cblxuJWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaGVsdmV0aWNhLW5ldWUtbWVkaXVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkbWFya2xvZ2ljLXJlZDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJveC1zaGFkb3c6IDAgNnB4IDE4cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiBvbXMtcHgtdG8tcmVtKDE2cHgpO1xuICAgIGxldHRlci1zcGFjaW5nOiBvbXMtcHgtdG8tcmVtKDFweCk7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMTJweCAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcblxuICAgICY6YWN0aXZlLCAmOmZvY3VzLCAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2U3MzE0NDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAvL1xuLy8gQXJyb3dzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLy9cblxuJWFwcGVuZC1zaW5nbGUtYXJyb3cge1xuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlxcMDBhMFxcMjAzQVwiO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtYXdlc29tZTtcbiAgICB9XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAvL1xuLy8gRm9ybXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAvL1xuXG4lbGFiZWwge1xuICAgIEBleHRlbmQgJWhlbHZldGljYS1uZXVlLW1lZGl1bTtcbiAgICBjb2xvcjogJG1hcmtsb2dpYy1ncmF5O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbiVpbnB1dCB7XG4gICAgQGV4dGVuZCAlaGVsdmV0aWNhLW5ldWUtbGlnaHQ7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJG1hcmtsb2dpYy1ncmF5LWxpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBjb2xvcjogJG1hcmtsb2dpYy1ncmF5LWRhcms7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgcGFkZGluZzogMCAxOHB4IDZweDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4lbWFya2V0by1mb3JtIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgLy8gV2VpcmQgMTBweCBvZmZzZXQgYmV0d2VlbiBsZWZ0IHNpZGUgb2YgZm9ybSBhbmQgbGFiZWwuXG4gICAgLm1rdG9Gb3JtUm93IC5ta3RvT2Zmc2V0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubWt0b0Zvcm1Db2wsXG4gICAgLm1rdG9GaWVsZFdyYXAge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG5cbiAgICAubWt0b0Zvcm1Db2wge1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLm1rdG9SZXF1aXJlZEZpZWxkIC5ta3RvQXN0ZXJpeCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICB9XG5cbiAgICAubWt0b0ZpZWxkV3JhcCB7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIEBleHRlbmQgJWxhYmVsO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFNwYWNlIGJldHdlZW4gbGFiZWwgYW5kIGZpZWxkLlxuICAgICAgICAubWt0b0d1dHRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRGlyZWN0IGNoaWxkcmVuIGluIGNhc2Ugb2Ygc3RyYW5nZSBuZXN0ZWQgbWFya3VwLlxuICAgICAgICA+IGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgICA+IGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICAgICAgPiBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAgICAgICA+IGlucHV0W3R5cGU9XCJkYXRlXCJdIHtcbiAgICAgICAgICAgIEBleHRlbmQgJWlucHV0O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAmLm1rdG9JbnZhbGlkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRtYXJrbG9naWMtcmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiB0ZXh0YXJlYSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVpbnB1dDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICYubWt0b0ludmFsaWQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJG1hcmtsb2dpYy1yZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IHNlbGVjdCB7XG4gICAgICAgICAgICBAZXh0ZW5kICVpbnB1dDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMThweCA2cHg7XG5cbiAgICAgICAgICAgICYubWt0b0ludmFsaWQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJG1hcmtsb2dpYy1yZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWt0b0NoZWNrYm94TGlzdCB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ta3RvSHRtbFRleHQge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIH1cblxuICAgIGZpZWxkc2V0IHtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRtYXJrbG9naWMtZ3JheS11bHRyYWxpZ2h0O1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggIWltcG9ydGFudDtcblxuICAgICAgICBsZWdlbmQge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBAZXh0ZW5kICVsYWJlbDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAtMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ta3RvRm9ybVJvdzpsYXN0LW9mLXR5cGUgLm1rdG9Gb3JtQ29sIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ta3RvQnV0dG9uUm93IHtcbiAgICAgICAgLm1rdG9CdXR0b25XcmFwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1rdG9CdXR0b25XcmFwLm1rdG9TaW1wbGUgLm1rdG9CdXR0b24sIC8vIFBvcHVwIGZvcm1zLi4uXG4gICAgLm1rdG9CdXR0b25XcmFwIC5ta3RvQnV0dG9uLCAvLyBJbmxpbmUgZm9ybXMuLi5cbiAgICAubWt0b0J1dHRvbldyYXAubWt0b0luc2V0IC5ta3RvQnV0dG9uIHsgLy8gU2VyaW91c2x5LCBNYXJrZXRvPz9cbiAgICAgICAgQGV4dGVuZCAlYnV0dG9uO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vXG4vLyBGb250c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vXG5cbiRmb250LWF3ZXNvbWU6IFwiRm9udEF3ZXNvbWVcIiwgc2Fucy1zZXJpZjtcbiRoZWx2ZXRpY2EtbmV1ZTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLy9cbi8vIEZvbnQgU2l6ZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAvL1xuXG4kcm9vdC1mb250LXNpemU6IDE4cHg7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAvL1xuLy8gRm9udCBXZWlnaHRzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLy9cblxuJHd0LTEwMC10aGluOiAxMDA7XG4kd3QtMjAwLWV4dHJhLWxpZ2h0OiAyMDA7XG4kd3QtMzAwLWxpZ2h0OiAzMDA7XG4kd3QtNDAwLW5vcm1hbC1ib29rOiA0MDA7XG4kd3QtNTAwLW1lZGl1bTogNTAwO1xuJHd0LTYwMC1zZW1pLWJvbGQ6IDYwMDtcbiR3dC03MDAtYm9sZDogNzAwO1xuJHd0LTgwMC1oZWF2eTogODAwO1xuJHd0LTkwMC1ibGFjazogOTAwO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLy9cbi8vIENvbG9yc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vXG5cbiRjb2xvci1ub3Qtc3BlY2lmaWVkOiBkZWVwcGluaztcblxuJG1hcmtsb2dpYy1ncmVlbjogIzAyYjE4ODtcbiRtYXJrbG9naWMtcHVycGxlLWRhcms6ICMzMzM1Nzk7XG4kbWFya2xvZ2ljLXB1cnBsZTogIzQ1NDg5YjtcbiRtYXJrbG9naWMtcHVycGxlLWxpZ2h0OiAjNTY1ZmFiO1xuJG1hcmtsb2dpYy1wdXJwbGUtdWx0cmFsaWdodDogIzgzOGRjOTtcbiRtYXJrbG9naWMtcmVkOiAjZmIzNDQ5O1xuJG1hcmtsb2dpYy1ncmF5LXVsdHJhZGFyazogIzI5MzMzZDtcbiRtYXJrbG9naWMtZ3JheS1kYXJrOiAjMzMzZTQ4O1xuJG1hcmtsb2dpYy1ncmF5OiAjNWM2NzcwO1xuJG1hcmtsb2dpYy1ncmF5LWxpZ2h0OiAjYmFjM2NhO1xuJG1hcmtsb2dpYy1ncmF5LXVsdHJhbGlnaHQ6ICNkY2UxZTU7XG5cbiRtYXJrbG9naWMtbWVudS1iZy0xOiAjMjkzMzNkO1xuJG1hcmtsb2dpYy1tZW51LWJnLTI6ICMxZjI1MmM7XG4kbWFya2xvZ2ljLW1lbnUtYWN0aXZlOiAjNTg2YWQ2O1xuXG4kbWFya2xvZ2ljLWNoYW1icmF5OiAjMzk0NDk0O1xuJG1hcmtsb2dpYy1lYm9ueS1jbGF5OiAjMWUyNTJjO1xuJG1hcmtsb2dpYy1pbmRpZ286ICM0ODc5Y2Q7XG4kbWFya2xvZ2ljLWphdmE6ICMxYWNjYTg7XG4kbWFya2xvZ2ljLWxpbWVkLXNwcnVjZTogIzM1M2Y0NztcbiRtYXJrbG9naWMtbWVscm9zZTogI2JlYzZmZjtcbi8vICRtYXJrbG9naWMtdGl0YW4td2hpdGU6ICNlOWViZmY7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAvL1xuLy8gTWlzY1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vXG5cbiRtYXJrbG9naWMtdHgtdGltZTogMC4ycztcbiRtYXJrbG9naWMtdHgtc3R5bGU6IGVhc2U7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAvL1xuLy8gUGFkZGluZ1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC8vXG5cbiRtYXJrbG9naWMtaGVhZGVyLWltYWdlLXBhZGRpbmc6IDgwcHg7XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMS5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2N3B4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAxcHgsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lKVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lKVxuICB9XG59XG4iXX0= */
